@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
---

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

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

.header {
  color: #53565a;
  font-family: Volvo Novum Regular, Assistant, Noto Sans Regular, sans-serif;
}
.header__mainnav.navigation--open {
  background-color: rgba(0, 0, 0, 0.5);
}
@media (min-width: 960px) {
  .header__brand {
    grid-column: 1;
    grid-row: 1/span 2;
    max-height: 160px;
  }
}
.header__brand-name {
  color: #53565a;
}
.header__brand .img__container {
  align-self: center;
}
.header__brand .img__asset {
  max-width: 100%;
  max-height: 40px;
  width: auto;
  height: auto;
}
@media (min-width: 768px) {
  .header__brand .img__asset {
    max-width: 100%;
    max-height: 70px;
  }
}
.header__dealers {
  display: none;
}
@media (min-width: 960px) {
  .header__dealers {
    grid-row: 2;
    grid-column: 2;
    display: flex;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .header__dealers .img__asset {
    max-width: 55px;
  }
}
@media (min-width: 960px) {
  .header__meta {
    grid-row: 1;
    grid-column: 2/span 2;
  }
}
@media (min-width: 960px) {
  .header__search {
    margin: 0;
    align-self: center;
    grid-column: 3;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3RhcmdldC92YXVsdC13b3JrL2pjcl9yb290L2FwcHMvdm9sdm8vY2xpZW50bGlicy92b2x2by10cnVja3Mvdm9sdm8tYnJhbmQvdHJ1Y2tzLnB1Ymxpc2gudm9sdm8tYnJhbmQuYnVuZGxlLmNzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL3ZhcmlhYmxlcy9faW1wb3J0X3ZhcmlhYmxlcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvdmFyaWFibGVzL190eXBvZ3JhcGhpZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL3ZhcmlhYmxlcy9fel9pbmRleC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19ubi1weC10by1lbS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19ubi1weC10by1yZW0uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L2Z1bmN0aW9ucy9fbm4tcHgtdG8tdW5pdC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19ubi1weC10by11bml0bGVzcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19ubi1zdHJpcC11bml0LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX25uLXotaW5kZXguc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L2Z1bmN0aW9ucy9fc3RyaXAtdW5pdC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19weC10by1heGlzLXVuaXQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L2Z1bmN0aW9ucy9fc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19zd2FwLWxlZnQtcmlnaHQtbmFtZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L2Z1bmN0aW9ucy9fc3BhY2luZy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19mb250LWljb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9fZm9jdXMtY29sb3Iuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9faWdub3JlLWNvbnRhaW5lci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19nZW5lcmF0ZS1hZW0tZ3JpZC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19idXR0b24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9fbGluZS1jbGFtcC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL190eXBvZ3JhcGh5LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2hpZGRlbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19vdmVybGF5LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX3RvcC1ib3R0b20tYm9yZGVyLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX3Jlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9fY3VzdG9tcHJvcGVydGllcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9fcmVib290LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX2FlbS1ncmlkLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX2JyZWFrcG9pbnRzLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX2dyaWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX2ZvbnRmYWNlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9iYXNlL19hbmltYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2xpYi92b2x2b2ljb25zL19wYXRoLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9saWIvdm9sdm9pY29ucy9fY29yZS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvbGliL3ZvbHZvaWNvbnMvX2ljb25zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9saWIvdm9sdm9pY29ucy9fdmFyaWFibGVzLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9saWIvZm9udGF3ZXNvbWUvZm9udGF3ZXNvbWUuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9mb250YXdlc29tZS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19jb3JlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2xhcmdlci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbGlzdC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19ib3JkZXJlZC1wdWxsZWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fYW5pbWF0ZWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fcm90YXRlZC1mbGlwcGVkLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX21peGlucy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19zdGFja2VkLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2ljb25zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3NjcmVlbi1yZWFkZXIuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX3RleHRzdHlsZS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9faWNvbnMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL3N0YXRlcy9zdGF0ZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL2ljb25zL2ljb25zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2F0b21pYy9idXR0b24vYnV0dG9uLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2F0b21pYy91dGlsaXR5L3V0aWxpdHkuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL2NoZWNrYm94L2NoZWNrYm94LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2F0b21pYy9jaGVja2JveHN3aXRjaC9jaGVja2JveHN3aXRjaC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9hdG9taWMvZHJvcGRvd24vZHJvcGRvd24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL3JhZGlvYnV0dG9uL3JhZGlvYnV0dG9uLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL2hlYWRlci9oZWFkZXIuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvbWFpbi1uYXZpZ2F0aW9uL21haW4tbmF2aWdhdGlvbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS9tYWluLW5hdmlnYXRpb24tZXh0ZW5kZWQvbWFpbi1uYXZpZ2F0aW9uLWV4dGVuZGVkLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL21ldGEtbmF2aWdhdGlvbi9tZXRhLW5hdmlnYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvc2Vjb25kYXJ5LW5hdmlnYXRpb24vc2Vjb25kYXJ5LW5hdmlnYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvYnJlYWRjcnVtYi9icmVhZGNydW1iLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlYXJjaC9zZWFyY2guc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvZm9vdGVyL2Zvb3Rlci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS9tb2RhbC9tb2RhbC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvdmFyaWFibGVzL19taXNjLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX3R5cG9ncmFwaHktc2V0dGluZ3Muc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9jb250ZW50L2ltYWdlL2ltYWdlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2NvbXBvbmVudC10b3AtYm90dG9tLW1hcmdpbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL2NvbnRlbnQvbGlzdC9saXN0LWljb25zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvY29udGVudC9saXN0L2xpc3Quc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by92b2x2by10cnVja3MvcHVibGlzaC9jb21wb25lbnRzL3N0cnVjdHVyZS9oZWFkZXIvaGVhZGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDRWhCOzs7OztDQUFBO0FDRkE7OztDQUFBO0FDRUE7O0VBQUE7QUNGQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7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RGQ7O0F1Q24zQ0U7RUFDRSxnQkNsTFE7QXhDd2lEWjs7QXVDbDNDRTtFQUNFLFlDdExZO0F4QzJpRGhCOztBdUNqM0NFO0VBQ0UsWUMxTGE7QXhDOGlEakI7O0F1Q2gzQ0U7RUFDRSxZQzlMWTtBeENpakRoQjs7QXVDLzJDRTtFQUNFLFlDbE1hO0F4Q29qRGpCOztBdUM5MkNFO0VBQ0UsWUN0TW9CO0F4Q3VqRHhCOztBdUM3MkNFO0VBQ0UsWUMxTW1CO0F4QzBqRHZCOztBdUM1MkNFO0VBQ0UsZ0JDOU1jO0F4QzZqRGxCOztBdUMzMkNFO0VBQ0UsZ0JDbE5hO0F4Q2drRGpCOztBdUMxMkNFO0VBQ0UsZ0JDdE5TO0F4Q21rRGI7O0F1Q3oyQ0U7RUFDRSxnQkMxTlE7QXhDc2tEWjs7QXVDeDJDRTtFQUNFLGdCQzdOUTtBeEN3a0RaOztBdUN2MkNFO0VBQ0UsZ0JDaE5VO0VEaU5WLGNUeFBlO0E5QmttRG5COztBdUN0MkNFO0VBQ0UsZ0JDdE9TO0F4QytrRGI7O0F1Q3IyQ0U7RUFDRSxnQkMxT087QXhDa2xEWDs7QXVDcDJDRTtFQUNFLGdCQzlPVTtBeENxbERkOztBdUNuMkNFO0VBQ0UsZ0JDbFBjO0F4Q3dsRGxCOztBdUNsMkNFO0VBQ0UsZ0JDdFBlO0F4QzJsRG5COztBdUNqMkNFO0VBQ0UsZ0JDMVBlO0F4QzhsRG5COztBdUNoMkNFO0VBQ0UsZ0JDOVBjO0F4Q2ltRGxCOztBdUMvMUNFO0VBQ0UsZ0JDbFFjO0F4Q29tRGxCOztBdUM5MUNFO0VBQ0UsZ0JDdFFZO0F4Q3VtRGhCOztBdUM3MUNFO0VBQ0UsZ0JDMVFPO0F4QzBtRFg7O0F1QzUxQ0U7RUFDRSxnQkM5UU07QXhDNm1EVjs7QWdCamxESTtFQUNJLHlCYzlEVztFZCtEWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSw0R0FBQTtVQUFBLG9HQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCMmtEWjtBZ0JwbERRO0VBVEo7SUFVUSw0R0FBQTtZQUFBLG9HQUFBO0VoQnVsRFY7QUFDRjs7QXVDcDJDRTtFQUNFLGdCQ3pSeUI7QXhDZ29EN0I7O0F1Q24yQ0U7RUFDRSxnQkM3UmE7QXhDbW9EakI7O0F1Q2wyQ0U7RUFDRSxnQkNqU1k7QXhDc29EaEI7O0F1Q2oyQ0U7RUFDRSxnQkNyU007QXhDeW9EVjs7QXVDaDJDRTtFQUNFLGdCQ3pTVTtFRDBTVixjVGpWZTtBOUJvckRuQjs7QXVDLzFDRTtFQUNFLGdCQzlTYTtBeENncERqQjs7QXVDOTFDRTtFQUNFLGdCQ2xUTTtBeENtcERWOztBdUM3MUNFO0VBQ0UsZ0JDdFRhO0F4Q3NwRGpCOztBdUM1MUNFO0VBQ0UsZ0JDMVRZO0F4Q3lwRGhCOztBdUMzMUNDO0VBQ0MsZ0JDOVRlO0F4QzRwRGpCOztBeUM3dURBLG9FQUFBO0FDQUE7OztFQUFBO0FDR0E7Ozs7OztFQU1FLGtDQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQkFBQTtFQUNBLGNBQUE7QTNDa3ZERjs7QTRDN3ZEQTtFQUNFLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtBNUNnd0RGOztBNEM3dkRBO0VBQ0UsaUJBQUE7QTVDZ3dERjs7QTRDN3ZEQTtFQUNFLGtCQUFBO0E1Q2d3REY7O0E0QzV2REU7RUFDRSxjQUFBO0E1Qyt2REo7O0E0Q2h3REU7RUFDRSxjQUFBO0E1Q213REo7O0E0Q3B3REU7RUFDRSxjQUFBO0E1Q3V3REo7O0E0Q3h3REU7RUFDRSxjQUFBO0E1QzJ3REo7O0E0QzV3REU7RUFDRSxjQUFBO0E1Qyt3REo7O0E0Q2h4REU7RUFDRSxjQUFBO0E1Q214REo7O0E0Q3B4REU7RUFDRSxjQUFBO0E1Q3V4REo7O0E0Q3h4REU7RUFDRSxjQUFBO0E1QzJ4REo7O0E0QzV4REU7RUFDRSxjQUFBO0E1Qyt4REo7O0E0Q2h5REU7RUFDRSxlQUFBO0E1Q215REo7O0E2Q3J6REE7RUFDRSxrQkFBQTtFQUNBLGFDT3FCO0E5Q2l6RHZCOztBK0N6ekRBO0VBQ0UscUJBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7QS9DNHpERjtBK0MxekRFO0VBQU8sa0JBQUE7QS9DNnpEVDs7QStDMXpEQTtFQUNFLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsVURMcUI7RUNNckIsb0JBQUE7QS9DNnpERjs7QWdEMTBEQTtFQUNFLHlCQUFBO0VBQ0Esb0JBQUE7RUFDQSw0QkFBQTtBaEQ2MERGOztBZ0QxMERBO0VBQStCLFdBQUE7QWhEODBEL0I7O0FnRDcwREE7RUFBZ0MsWUFBQTtBaERpMURoQzs7QWdEMTBERTs7Ozs7RUFBZ0MsbUJBQUE7QWhEazFEbEM7QWdEajFERTs7Ozs7RUFBaUMsa0JBQUE7QWhEdzFEbkM7O0FpRHYyREE7RUFDRSxxQ0FBQTtBakQwMkRGOztBaUR2MkRBO0VBQ0UsdUNBQUE7QWpEMDJERjs7QWlEdjJEQTtFQUNFO0lBQ0UsdUJBQUE7RWpEMDJERjtFaUR2MkRBO0lBQ0UseUJBQUE7RWpEeTJERjtBQUNGO0FrRHgzREE7RUNXRSxzRUFBQTtFQUNBLHdCQUFBO0FuRGczREY7O0FrRDMzREE7RUNVRSxzRUFBQTtFQUNBLHlCQUFBO0FuRHEzREY7O0FrRC8zREE7RUNTRSxzRUFBQTtFQUNBLHlCQUFBO0FuRDAzREY7O0FrRGw0REE7RUNZRSxnRkFBQTtFQUNBLHVCQUFBO0FuRDAzREY7O0FrRHQ0REE7RUNXRSxnRkFBQTtFQUNBLHVCQUFBO0FuRCszREY7O0FrRDE0REE7RUNVRSxnRkFBQTtFQUNBLHdCQUFBO0FuRG80REY7O0FrRHo0REU7Ozs7OztFQU1FLFlBQUE7QWxENDRESjs7QW9EOTVEQTtFQUNFLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7QXBEaTZERjs7QW9EOTVEQTs7RUFFRSxPQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QXBEaTZERjs7QW9EOTVEQTtFQUNFLG9CQUFBO0FwRGk2REY7O0FvRDk1REE7RUFDRSxjQUFBO0FwRGk2REY7O0FvRDk1REE7RUFDRSxXTnBCcUI7QTlDcTdEdkI7O0FxRDk3REE7Z0VBQUE7QUFHQTtFQUFrQyxnQkFBQTtBckRpOERsQzs7QXFEaDhEQTtFQUE0QyxnQkFBQTtBckRvOEQ1Qzs7QXFEbjhEQTtFQUFxQyxnQkFBQTtBckR1OERyQzs7QXFEdDhEQTtFQUFzRCxnQkFBQTtBckQwOER0RDs7QXFEejhEQTtFQUErQixnQkFBQTtBckQ2OEQvQjs7QXFENThEQTtFQUF5QyxnQkFBQTtBckRnOUR6Qzs7QXFELzhEQTtFQUF5QyxnQkFBQTtBckRtOUR6Qzs7QXFEbDlEQTtFQUFtQyxnQkFBQTtBckRzOURuQzs7QXFEcjlEQTtFQUFnQyxnQkFBQTtBckR5OURoQzs7QXFEeDlEQTtFQUFrQyxnQkFBQTtBckQ0OURsQzs7QXFEMzlEQTtFQUFxQyxnQkFBQTtBckQrOURyQzs7QXFEOTlEQTtFQUEyQyxnQkFBQTtBckRrK0QzQzs7QXFEaitEQTtFQUEwQyxnQkFBQTtBckRxK0QxQzs7QXFEcCtEQTtFQUFtQyxnQkFBQTtBckR3K0RuQzs7QXFEditEQTtFQUFvQyxnQkFBQTtBckQyK0RwQzs7QXFEMStEQTtFQUF5QyxnQkFBQTtBckQ4K0R6Qzs7QXFENytEQTtFQUEwQyxnQkFBQTtBckRpL0QxQzs7QXFEaC9EQTtFQUF1QyxnQkFBQTtBckRvL0R2Qzs7QXFEbi9EQTtFQUF3QyxnQkFBQTtBckR1L0R4Qzs7QXFEdC9EQTtFQUFtQyxnQkFBQTtBckQwL0RuQzs7QXFEei9EQTtFQUFzQyxnQkFBQTtBckQ2L0R0Qzs7QXFENS9EQTtFQUFtQyxnQkFBQTtBckRnZ0VuQzs7QXFELy9EQTtFQUF1QyxnQkFBQTtBckRtZ0V2Qzs7QXFEbGdFQTtFQUFzQyxnQkFBQTtBckRzZ0V0Qzs7QXFEcmdFQTtFQUFnRSxnQkFBQTtBckR5Z0VoRTs7QXFEeGdFQTtFQUFtQyxnQkFBQTtBckQ0Z0VuQzs7QXFEM2dFQTtFQUFtQyxnQkFBQTtBckQrZ0VuQzs7QXFEOWdFQTtFQUFvQyxnQkFBQTtBckRraEVwQzs7QXFEamhFQTtFQUFzQyxnQkFBQTtBckRxaEV0Qzs7QXFEcGhFQTtFQUE4QyxnQkFBQTtBckR3aEU5Qzs7QXFEdmhFQTtFQUE4QyxnQkFBQTtBckQyaEU5Qzs7QXFEMWhFQTtFQUErQyxnQkFBQTtBckQ4aEUvQzs7QXFEN2hFQTtFQUE0QyxnQkFBQTtBckRpaUU1Qzs7QXFEaGlFQTtFQUF1QyxnQkFBQTtBckRvaUV2Qzs7QXFEbmlFQTtFQUF1QyxnQkFBQTtBckR1aUV2Qzs7QXFEdGlFQTtFQUF3QyxnQkFBQTtBckQwaUV4Qzs7QXFEemlFQTtFQUFxQyxnQkFBQTtBckQ2aUVyQzs7QXFENWlFQTtFQUFrQyxnQkFBQTtBckRnakVsQzs7QXFEL2lFQTtFQUEwQyxnQkFBQTtBckRtakUxQzs7QXFEbGpFQTtFQUFvQyxnQkFBQTtBckRzakVwQzs7QXFEcmpFQTtFQUFpQyxnQkFBQTtBckR5akVqQzs7QXFEeGpFQTtFQUFzQyxnQkFBQTtBckQ0akV0Qzs7QXFEM2pFQTtFQUEwQyxnQkFBQTtBckQrakUxQzs7QXFEOWpFQTtFQUFrQyxnQkFBQTtBckRra0VsQzs7QXFEamtFQTtFQUFrQyxnQkFBQTtBckRxa0VsQzs7QXFEcGtFQTtFQUFzQyxnQkFBQTtBckR3a0V0Qzs7QXFEdmtFQTtFQUFzQyxnQkFBQTtBckQya0V0Qzs7QXFEMWtFQTtFQUFvQyxnQkFBQTtBckQ4a0VwQzs7QXFEN2tFQTtFQUFvQyxnQkFBQTtBckRpbEVwQzs7QXFEaGxFQTtFQUFrRCxnQkFBQTtBckRvbEVsRDs7QXFEbmxFQTtFQUFrRCxnQkFBQTtBckR1bEVsRDs7QXFEdGxFQTtFQUFtRCxnQkFBQTtBckQwbEVuRDs7QXFEemxFQTtFQUFnRCxnQkFBQTtBckQ2bEVoRDs7QXFENWxFQTtFQUE4QyxnQkFBQTtBckRnbUU5Qzs7QXFEL2xFQTtFQUE4QyxnQkFBQTtBckRtbUU5Qzs7QXFEbG1FQTtFQUErQyxnQkFBQTtBckRzbUUvQzs7QXFEcm1FQTtFQUE0QyxnQkFBQTtBckR5bUU1Qzs7QXFEeG1FQTtFQUF1QyxnQkFBQTtBckQ0bUV2Qzs7QXFEM21FQTtFQUF1QyxnQkFBQTtBckQrbUV2Qzs7QXFEOW1FQTtFQUF3QyxnQkFBQTtBckRrbkV4Qzs7QXFEam5FQTtFQUFxQyxnQkFBQTtBckRxbkVyQzs7QXFEcG5FQTtFQUF1QyxnQkFBQTtBckR3bkV2Qzs7QXFEdm5FQTtFQUF5QyxnQkFBQTtBckQybkV6Qzs7QXFEMW5FQTtFQUF5QyxnQkFBQTtBckQ4bkV6Qzs7QXFEN25FQTtFQUF1QyxnQkFBQTtBckRpb0V2Qzs7QXFEaG9FQTtFQUF3RCxnQkFBQTtBckRvb0V4RDs7QXFEbm9FQTtFQUFxQyxnQkFBQTtBckR1b0VyQzs7QXFEdG9FQTtFQUF1QyxnQkFBQTtBckQwb0V2Qzs7QXFEem9FQTtFQUErQixnQkFBQTtBckQ2b0UvQjs7QXFENW9FQTtFQUFrQyxnQkFBQTtBckRncEVsQzs7QXFEL29FQTtFQUFzQyxnQkFBQTtBckRtcEV0Qzs7QXFEbHBFQTtFQUFpQyxnQkFBQTtBckRzcEVqQzs7QXFEcnBFQTtFQUFvQyxnQkFBQTtBckR5cEVwQzs7QXFEeHBFQTtFQUE4QyxnQkFBQTtBckQ0cEU5Qzs7QXFEM3BFQTtFQUF5QyxnQkFBQTtBckQrcEV6Qzs7QXFEOXBFQTtFQUFvQyxnQkFBQTtBckRrcUVwQzs7QXFEanFFQTtFQUFtQyxnQkFBQTtBckRxcUVuQzs7QXFEcHFFQTtFQUFrQyxnQkFBQTtBckR3cUVsQzs7QXFEdnFFQTtFQUFnQyxnQkFBQTtBckQycUVoQzs7QXFEMXFFQTtFQUFpQyxnQkFBQTtBckQ4cUVqQzs7QXFEN3FFQTtFQUEwQyxnQkFBQTtBckRpckUxQzs7QXFEaHJFQTtFQUFzQyxnQkFBQTtBckRvckV0Qzs7QXFEbnJFQTtFQUFxQyxnQkFBQTtBckR1ckVyQzs7QXFEdHJFQTtFQUFrQyxnQkFBQTtBckQwckVsQzs7QXFEenJFQTtFQUFxQyxnQkFBQTtBckQ2ckVyQzs7QXFENXJFQTtFQUFzQyxnQkFBQTtBckRnc0V0Qzs7QXFEL3JFQTtFQUFrQyxnQkFBQTtBckRtc0VsQzs7QXFEbHNFQTtFQUEwQyxnQkFBQTtBckRzc0UxQzs7QXFEcnNFQTtFQUErQyxnQkFBQTtBckR5c0UvQzs7QXFEeHNFQTtFQUFnRCxnQkFBQTtBckQ0c0VoRDs7QXFEM3NFQTtFQUFnQyxnQkFBQTtBckQrc0VoQzs7QXFEOXNFQTtFQUFxQyxnQkFBQTtBckRrdEVyQzs7QXFEanRFQTtFQUFxQyxnQkFBQTtBckRxdEVyQzs7QXFEcHRFQTtFQUFvQyxnQkFBQTtBckR3dEVwQzs7QXFEdnRFQTtFQUFpQyxnQkFBQTtBckQydEVqQzs7QXFEMXRFQTtFQUEwQyxnQkFBQTtBckQ4dEUxQzs7QXFEN3RFQTtFQUE0QyxnQkFBQTtBckRpdUU1Qzs7QXFEaHVFQTtFQUFpQyxnQkFBQTtBckRvdUVqQzs7QXFEbnVFQTtFQUEwQyxnQkFBQTtBckR1dUUxQzs7QXFEdHVFQTtFQUF5QyxnQkFBQTtBckQwdUV6Qzs7QXFEenVFQTtFQUF5QyxnQkFBQTtBckQ2dUV6Qzs7QXFENXVFQTtFQUE0QyxnQkFBQTtBckRndkU1Qzs7QXFEL3VFQTtFQUFtRCxnQkFBQTtBckRtdkVuRDs7QXFEbHZFQTtFQUF1QyxnQkFBQTtBckRzdkV2Qzs7QXFEcnZFQTtFQUFnQyxnQkFBQTtBckR5dkVoQzs7QXFEeHZFQTtFQUFpQyxnQkFBQTtBckQ0dkVqQzs7QXFEM3ZFQTtFQUFvQyxnQkFBQTtBckQrdkVwQzs7QXFEOXZFQTtFQUEyQyxnQkFBQTtBckRrd0UzQzs7QXFEandFQTtFQUFpQyxnQkFBQTtBckRxd0VqQzs7QXFEcHdFQTtFQUF1QyxnQkFBQTtBckR3d0V2Qzs7QXFEdndFQTtFQUF5QyxnQkFBQTtBckQyd0V6Qzs7QXFEMXdFQTtFQUFrQyxnQkFBQTtBckQ4d0VsQzs7QXFEN3dFQTtFQUFvQyxnQkFBQTtBckRpeEVwQzs7QXFEaHhFQTtFQUFtQyxnQkFBQTtBckRveEVuQzs7QXFEbnhFQTtFQUFzQyxnQkFBQTtBckR1eEV0Qzs7QXFEdHhFQTtFQUF1QyxnQkFBQTtBckQweEV2Qzs7QXFEenhFQTtFQUFzQyxnQkFBQTtBckQ2eEV0Qzs7QXFENXhFQTtFQUEwQyxnQkFBQTtBckRneUUxQzs7QXFEL3hFQTtFQUFzQyxnQkFBQTtBckRteUV0Qzs7QXFEbHlFQTtFQUFvQyxnQkFBQTtBckRzeUVwQzs7QXFEcnlFQTtFQUFpQyxnQkFBQTtBckR5eUVqQzs7QXFEeHlFQTtFQUFzQyxnQkFBQTtBckQ0eUV0Qzs7QXFEM3lFQTtFQUF1QyxnQkFBQTtBckQreUV2Qzs7QXFEOXlFQTtFQUFvQyxnQkFBQTtBckRrekVwQzs7QXFEanpFQTtFQUEwQyxnQkFBQTtBckRxekUxQzs7QXFEcHpFQTtFQUFrQyxnQkFBQTtBckR3ekVsQzs7QXFEdnpFQTtFQUFpQyxnQkFBQTtBckQyekVqQzs7QXFEMXpFQTtFQUFvQyxnQkFBQTtBckQ4ekVwQzs7QXFEN3pFQTtFQUFzQyxnQkFBQTtBckRpMEV0Qzs7QXFEaDBFQTtFQUFzQyxnQkFBQTtBckRvMEV0Qzs7QXFEbjBFQTtFQUF3QyxnQkFBQTtBckR1MEV4Qzs7QXFEdDBFQTtFQUFpQyxnQkFBQTtBckQwMEVqQzs7QXFEejBFQTtFQUFpQyxnQkFBQTtBckQ2MEVqQzs7QXFENTBFQTtFQUFpQyxnQkFBQTtBckRnMUVqQzs7QXFELzBFQTtFQUFpQyxnQkFBQTtBckRtMUVqQzs7QXFEbDFFQTtFQUFpQyxnQkFBQTtBckRzMUVqQzs7QXFEcjFFQTtFQUFpQyxnQkFBQTtBckR5MUVqQzs7QXFEeDFFQTtFQUFzQyxnQkFBQTtBckQ0MUV0Qzs7QXFEMzFFQTtFQUF5QyxnQkFBQTtBckQrMUV6Qzs7QXFEOTFFQTtFQUFzQyxnQkFBQTtBckRrMkV0Qzs7QXFEajJFQTtFQUF3QyxnQkFBQTtBckRxMkV4Qzs7QXFEcDJFQTtFQUFxQyxnQkFBQTtBckR3MkVyQzs7QXFEdjJFQTtFQUFzQyxnQkFBQTtBckQyMkV0Qzs7QXFEMTJFQTtFQUF1QyxnQkFBQTtBckQ4MkV2Qzs7QXFENzJFQTtFQUF3QyxnQkFBQTtBckRpM0V4Qzs7QXFEaDNFQTtFQUF5QyxnQkFBQTtBckRvM0V6Qzs7QXFEbjNFQTtFQUF5QyxnQkFBQTtBckR1M0V6Qzs7QXFEdDNFQTtFQUFnQyxnQkFBQTtBckQwM0VoQzs7QXFEejNFQTtFQUFxQyxnQkFBQTtBckQ2M0VyQzs7QXFENTNFQTtFQUF1QyxnQkFBQTtBckRnNEV2Qzs7QXFELzNFQTtFQUFrQyxnQkFBQTtBckRtNEVsQzs7QXFEbDRFQTtFQUFvQyxnQkFBQTtBckRzNEVwQzs7QXFEcjRFQTtFQUFrQyxnQkFBQTtBckR5NEVsQzs7QXFEeDRFQTtFQUF3QyxnQkFBQTtBckQ0NEV4Qzs7QXFEMzRFQTtFQUFzQyxnQkFBQTtBckQrNEV0Qzs7QXFEOTRFQTtFQUE4QyxnQkFBQTtBckRrNUU5Qzs7QXFEajVFQTtFQUE0QyxnQkFBQTtBckRxNUU1Qzs7QXFEcDVFQTtFQUFrQyxnQkFBQTtBckR3NUVsQzs7QXFEdjVFQTtFQUFrQyxnQkFBQTtBckQyNUVsQzs7QXFEMTVFQTtFQUFnQyxnQkFBQTtBckQ4NUVoQzs7QXFENzVFQTtFQUFtQyxnQkFBQTtBckRpNkVuQzs7QXFEaDZFQTtFQUFnQyxnQkFBQTtBckRvNkVoQzs7QXFEbjZFQTtFQUFxQyxnQkFBQTtBckR1NkVyQzs7QXFEdDZFQTtFQUFxQyxnQkFBQTtBckQwNkVyQzs7QXFEejZFQTtFQUFxQyxnQkFBQTtBckQ2NkVyQzs7QXFENTZFQTtFQUFpQyxnQkFBQTtBckRnN0VqQzs7QXFELzZFQTtFQUE2QyxnQkFBQTtBckRtN0U3Qzs7QXFEbDdFQTtFQUFnQyxnQkFBQTtBckRzN0VoQzs7QXFEcjdFQTtFQUFvQyxnQkFBQTtBckR5N0VwQzs7QXFEeDdFQTtFQUEwQyxnQkFBQTtBckQ0N0UxQzs7QXFEMzdFQTtFQUF3QyxnQkFBQTtBckQrN0V4Qzs7QXFEOTdFQTtFQUF1QyxnQkFBQTtBckRrOEV2Qzs7QXFEajhFQTtFQUF1QyxnQkFBQTtBckRxOEV2Qzs7QXFEcDhFQTtFQUFxQyxnQkFBQTtBckR3OEVyQzs7QXFEdjhFQTtFQUF5QyxnQkFBQTtBckQyOEV6Qzs7QXFEMThFQTtFQUEyQyxnQkFBQTtBckQ4OEUzQzs7QXFENzhFQTtFQUF5QyxnQkFBQTtBckRpOUV6Qzs7QXFEaDlFQTtFQUEyQyxnQkFBQTtBckRvOUUzQzs7QXFEbjlFQTtFQUEwQyxnQkFBQTtBckR1OUUxQzs7QXFEdDlFQTtFQUEyQyxnQkFBQTtBckQwOUUzQzs7QXFEejlFQTtFQUEwQyxnQkFBQTtBckQ2OUUxQzs7QXFENTlFQTtFQUFtQyxnQkFBQTtBckRnK0VuQzs7QXFELzlFQTtFQUF5QyxnQkFBQTtBckRtK0V6Qzs7QXFEbCtFQTtFQUF1QyxnQkFBQTtBckRzK0V2Qzs7QXFEcitFQTtFQUFnRCxnQkFBQTtBckR5K0VoRDs7QXFEeCtFQTtFQUF1QyxnQkFBQTtBckQ0K0V2Qzs7QXFEMytFQTtFQUFxQyxnQkFBQTtBckQrK0VyQzs7QXFEOStFQTtFQUFxQyxnQkFBQTtBckRrL0VyQzs7QXFEai9FQTtFQUFnQyxnQkFBQTtBckRxL0VoQzs7QXFEcC9FQTtFQUFvQyxnQkFBQTtBckR3L0VwQzs7QXFEdi9FQTtFQUF3QyxnQkFBQTtBckQyL0V4Qzs7QXFEMS9FQTtFQUFzQyxnQkFBQTtBckQ4L0V0Qzs7QXFENy9FQTtFQUFxQyxnQkFBQTtBckRpZ0ZyQzs7QXFEaGdGQTtFQUFvQyxnQkFBQTtBckRvZ0ZwQzs7QXFEbmdGQTtFQUF1QyxnQkFBQTtBckR1Z0Z2Qzs7QXFEdGdGQTtFQUF1QyxnQkFBQTtBckQwZ0Z2Qzs7QXFEemdGQTtFQUF3QyxnQkFBQTtBckQ2Z0Z4Qzs7QXFENWdGQTtFQUE4QyxnQkFBQTtBckRnaEY5Qzs7QXFEL2dGQTtFQUE4QyxnQkFBQTtBckRtaEY5Qzs7QXFEbGhGQTtFQUErQyxnQkFBQTtBckRzaEYvQzs7QXFEcmhGQTtFQUE0QyxnQkFBQTtBckR5aEY1Qzs7QXFEeGhGQTtFQUFxQyxnQkFBQTtBckQ0aEZyQzs7QXFEM2hGQTtFQUFtQyxnQkFBQTtBckQraEZuQzs7QXFEOWhGQTtFQUE0QyxnQkFBQTtBckRraUY1Qzs7QXFEamlGQTtFQUFzQyxnQkFBQTtBckRxaUZ0Qzs7QXFEcGlGQTtFQUEwQyxnQkFBQTtBckR3aUYxQzs7QXFEdmlGQTtFQUFnQyxnQkFBQTtBckQyaUZoQzs7QXFEMWlGQTtFQUEwQyxnQkFBQTtBckQ4aUYxQzs7QXFEN2lGQTtFQUFvQyxnQkFBQTtBckRpakZwQzs7QXFEaGpGQTtFQUF5QyxnQkFBQTtBckRvakZ6Qzs7QXFEbmpGQTtFQUEyQyxnQkFBQTtBckR1akYzQzs7QXFEdGpGQTtFQUF3QyxnQkFBQTtBckQwakZ4Qzs7QXFEempGQTtFQUFtQyxnQkFBQTtBckQ2akZuQzs7QXFENWpGQTtFQUEwQyxnQkFBQTtBckRna0YxQzs7QXFEL2pGQTtFQUFzQyxnQkFBQTtBckRta0Z0Qzs7QXFEbGtGQTtFQUFzQyxnQkFBQTtBckRza0Z0Qzs7QXFEcmtGQTtFQUFvQyxnQkFBQTtBckR5a0ZwQzs7QXFEeGtGQTtFQUF1QyxnQkFBQTtBckQ0a0Z2Qzs7QXFEM2tGQTtFQUFtQyxnQkFBQTtBckQra0ZuQzs7QXFEOWtGQTtFQUF3QyxnQkFBQTtBckRrbEZ4Qzs7QXFEamxGQTtFQUFrQyxnQkFBQTtBckRxbEZsQzs7QXFEcGxGQTtFQUF1QyxnQkFBQTtBckR3bEZ2Qzs7QXFEdmxGQTtFQUErQyxnQkFBQTtBckQybEYvQzs7QXFEMWxGQTtFQUE2QyxnQkFBQTtBckQ4bEY3Qzs7QXFEN2xGQTtFQUF1QyxnQkFBQTtBckRpbUZ2Qzs7QXFEaG1GQTtFQUFzQyxnQkFBQTtBckRvbUZ0Qzs7QXFEbm1GQTtFQUF1QyxnQkFBQTtBckR1bUZ2Qzs7QXFEdG1GQTtFQUFzQyxnQkFBQTtBckQwbUZ0Qzs7QXFEem1GQTtFQUFrQyxnQkFBQTtBckQ2bUZsQzs7QXFENW1GQTtFQUF5QyxnQkFBQTtBckRnbkZ6Qzs7QXFEL21GQTtFQUF5QyxnQkFBQTtBckRtbkZ6Qzs7QXFEbG5GQTtFQUF5QyxnQkFBQTtBckRzbkZ6Qzs7QXFEcm5GQTtFQUFtQyxnQkFBQTtBckR5bkZuQzs7QXFEeG5GQTtFQUFrQyxnQkFBQTtBckQ0bkZsQzs7QXFEM25GQTtFQUF5QyxnQkFBQTtBckQrbkZ6Qzs7QXFEOW5GQTtFQUF3QyxnQkFBQTtBckRrb0Z4Qzs7QXFEam9GQTtFQUF1QyxnQkFBQTtBckRxb0Z2Qzs7QXFEcG9GQTtFQUF5QyxnQkFBQTtBckR3b0Z6Qzs7QXFEdm9GQTtFQUF1QyxnQkFBQTtBckQyb0Z2Qzs7QXFEMW9GQTtFQUF3QyxnQkFBQTtBckQ4b0Z4Qzs7QXFEN29GQTtFQUF1QyxnQkFBQTtBckRpcEZ2Qzs7QXFEaHBGQTtFQUFnRCxnQkFBQTtBckRvcEZoRDs7QXFEbnBGQTtFQUFnRCxnQkFBQTtBckR1cEZoRDs7QXFEdHBGQTtFQUFpRCxnQkFBQTtBckQwcEZqRDs7QXFEenBGQTtFQUE4QyxnQkFBQTtBckQ2cEY5Qzs7QXFENXBGQTtFQUF5QyxnQkFBQTtBckRncUZ6Qzs7QXFEL3BGQTtFQUF5QyxnQkFBQTtBckRtcUZ6Qzs7QXFEbHFGQTtFQUEwQyxnQkFBQTtBckRzcUYxQzs7QXFEcnFGQTtFQUF1QyxnQkFBQTtBckR5cUZ2Qzs7QXFEeHFGQTtFQUFrQyxnQkFBQTtBckQ0cUZsQzs7QXFEM3FGQTtFQUFtQyxnQkFBQTtBckQrcUZuQzs7QXFEOXFGQTtFQUF1QyxnQkFBQTtBckRrckZ2Qzs7QXFEanJGQTtFQUFtQyxnQkFBQTtBckRxckZuQzs7QXFEcHJGQTtFQUFtQyxnQkFBQTtBckR3ckZuQzs7QXFEdnJGQTtFQUF5QyxnQkFBQTtBckQyckZ6Qzs7QXFEMXJGQTtFQUFpQyxnQkFBQTtBckQ4ckZqQzs7QXFEN3JGQTtFQUEyQyxnQkFBQTtBckRpc0YzQzs7QXFEaHNGQTtFQUFzQyxnQkFBQTtBckRvc0Z0Qzs7QXFEbnNGQTtFQUE0QyxnQkFBQTtBckR1c0Y1Qzs7QXFEdHNGQTtFQUEyQyxnQkFBQTtBckQwc0YzQzs7QXFEenNGQTtFQUFrQyxnQkFBQTtBckQ2c0ZsQzs7QXFENXNGQTtFQUFrQyxnQkFBQTtBckRndEZsQzs7QXFEL3NGQTtFQUE4QyxnQkFBQTtBckRtdEY5Qzs7QXFEbHRGQTtFQUFrQyxnQkFBQTtBckRzdEZsQzs7QXFEcnRGQTtFQUErQyxnQkFBQTtBckR5dEYvQzs7QXFEeHRGQTtFQUEyQyxnQkFBQTtBckQ0dEYzQzs7QXFEM3RGQTtFQUF1QyxnQkFBQTtBckQrdEZ2Qzs7QXFEOXRGQTtFQUE0QyxnQkFBQTtBckRrdUY1Qzs7QXFEanVGQTtFQUF1QyxnQkFBQTtBckRxdUZ2Qzs7QXFEcHVGQTtFQUFnRCxnQkFBQTtBckR3dUZoRDs7QXFEdnVGQTtFQUFzQyxnQkFBQTtBckQydUZ0Qzs7QXFEMXVGQTtFQUEyQyxnQkFBQTtBckQ4dUYzQzs7QXFEN3VGQTtFQUE2QyxnQkFBQTtBckRpdkY3Qzs7QXFEaHZGQTtFQUF1QyxnQkFBQTtBckRvdkZ2Qzs7QXFEbnZGQTtFQUF1QyxnQkFBQTtBckR1dkZ2Qzs7QXFEdHZGQTtFQUF5QyxnQkFBQTtBckQwdkZ6Qzs7QXFEenZGQTtFQUFxQyxnQkFBQTtBckQ2dkZyQzs7QXFENXZGQTtFQUFpQyxnQkFBQTtBckRnd0ZqQzs7QXFEL3ZGQTtFQUF3QyxnQkFBQTtBckRtd0Z4Qzs7QXFEbHdGQTtFQUFvQyxnQkFBQTtBckRzd0ZwQzs7QXFEcndGQTtFQUFxQyxnQkFBQTtBckR5d0ZyQzs7QXFEeHdGQTtFQUFtQyxnQkFBQTtBckQ0d0ZuQzs7QXFEM3dGQTtFQUFnQyxnQkFBQTtBckQrd0ZoQzs7QXFEOXdGQTtFQUFpQyxnQkFBQTtBckRreEZqQzs7QXFEanhGQTtFQUFrQyxnQkFBQTtBckRxeEZsQzs7QXFEcHhGQTtFQUFvQyxnQkFBQTtBckR3eEZwQzs7QXFEdnhGQTtFQUFvQyxnQkFBQTtBckQyeEZwQzs7QXFEMXhGQTtFQUF3QyxnQkFBQTtBckQ4eEZ4Qzs7QXFEN3hGQTtFQUEyQyxnQkFBQTtBckRpeUYzQzs7QXFEaHlGQTtFQUF5QyxnQkFBQTtBckRveUZ6Qzs7QXFEbnlGQTtFQUE0QyxnQkFBQTtBckR1eUY1Qzs7QXFEdHlGQTtFQUEwQyxnQkFBQTtBckQweUYxQzs7QXFEenlGQTtFQUFxQyxnQkFBQTtBckQ2eUZyQzs7QXFENXlGQTtFQUE0QyxnQkFBQTtBckRnekY1Qzs7QXFEL3lGQTtFQUF5QyxnQkFBQTtBckRtekZ6Qzs7QXFEbHpGQTtFQUFvQyxnQkFBQTtBckRzekZwQzs7QXFEcnpGQTtFQUFxQyxnQkFBQTtBckR5ekZyQzs7QXFEeHpGQTtFQUF5QyxnQkFBQTtBckQ0ekZ6Qzs7QXFEM3pGQTtFQUFnRCxnQkFBQTtBckQrekZoRDs7QXFEOXpGQTtFQUEyQyxnQkFBQTtBckRrMEYzQzs7QXFEajBGQTtFQUF1QyxnQkFBQTtBckRxMEZ2Qzs7QXFEcDBGQTtFQUEyQyxnQkFBQTtBckR3MEYzQzs7QXFEdjBGQTtFQUFtQyxnQkFBQTtBckQyMEZuQzs7QXFEMTBGQTtFQUFtQyxnQkFBQTtBckQ4MEZuQzs7QXFENzBGQTtFQUF3QyxnQkFBQTtBckRpMUZ4Qzs7QXFEaDFGQTtFQUFpQyxnQkFBQTtBckRvMUZqQzs7QXFEbjFGQTtFQUFzQyxnQkFBQTtBckR1MUZ0Qzs7QXFEdDFGQTtFQUEwQyxnQkFBQTtBckQwMUYxQzs7QXFEejFGQTtFQUFrQyxnQkFBQTtBckQ2MUZsQzs7QXFENTFGQTtFQUFtQyxnQkFBQTtBckRnMkZuQzs7QXFELzFGQTtFQUE2QyxnQkFBQTtBckRtMkY3Qzs7QXFEbDJGQTtFQUFnRCxnQkFBQTtBckRzMkZoRDs7QXFEcjJGQTtFQUFnRCxnQkFBQTtBckR5MkZoRDs7QXFEeDJGQTtFQUFtRCxnQkFBQTtBckQ0MkZuRDs7QXFEMzJGQTtFQUFtRCxnQkFBQTtBckQrMkZuRDs7QXFEOTJGQTtFQUFnRCxnQkFBQTtBckRrM0ZoRDs7QXFEajNGQTtFQUFnRCxnQkFBQTtBckRxM0ZoRDs7QXFEcDNGQTtFQUFvRCxnQkFBQTtBckR3M0ZwRDs7QXFEdjNGQTtFQUFtRCxnQkFBQTtBckQyM0ZuRDs7QXFEMTNGQTtFQUFnRCxnQkFBQTtBckQ4M0ZoRDs7QXFENzNGQTtFQUFzRCxnQkFBQTtBckRpNEZ0RDs7QXFEaDRGQTtFQUEyRCxnQkFBQTtBckRvNEYzRDs7QXFEbjRGQTtFQUFtRCxnQkFBQTtBckR1NEZuRDs7QXFEdDRGQTtFQUFrRCxnQkFBQTtBckQwNEZsRDs7QXFEejRGQTtFQUF3QyxnQkFBQTtBckQ2NEZ4Qzs7QXFENTRGQTtFQUEwQyxnQkFBQTtBckRnNUYxQzs7QXFELzRGQTtFQUFpQyxnQkFBQTtBckRtNUZqQzs7QXFEbDVGQTtFQUFxQyxnQkFBQTtBckRzNUZyQzs7QXFEcjVGQTtFQUFrQyxnQkFBQTtBckR5NUZsQzs7QXFEeDVGQTtFQUF1QyxnQkFBQTtBckQ0NUZ2Qzs7QXFEMzVGQTtFQUFpQyxnQkFBQTtBckQrNUZqQzs7QXFEOTVGQTtFQUFrQyxnQkFBQTtBckRrNkZsQzs7QXFEajZGQTtFQUFtQyxnQkFBQTtBckRxNkZuQzs7QXFEcDZGQTtFQUFpQyxnQkFBQTtBckR3NkZqQzs7QXFEdjZGQTtFQUFxQyxnQkFBQTtBckQyNkZyQzs7QXFEMTZGQTtFQUFpQyxnQkFBQTtBckQ4NkZqQzs7QXFENzZGQTtFQUFrQyxnQkFBQTtBckRpN0ZsQzs7QXFEaDdGQTtFQUFnQyxnQkFBQTtBckRvN0ZoQzs7QXFEbjdGQTtFQUF1QyxnQkFBQTtBckR1N0Z2Qzs7QXFEdDdGQTtFQUFvQyxnQkFBQTtBckQwN0ZwQzs7QXFEejdGQTtFQUEyQyxnQkFBQTtBckQ2N0YzQzs7QXFENTdGQTtFQUF3QyxnQkFBQTtBckRnOEZ4Qzs7QXFELzdGQTtFQUFxQyxnQkFBQTtBckRtOEZyQzs7QXFEbDhGQTtFQUFxQyxnQkFBQTtBckRzOEZyQzs7QXFEcjhGQTtFQUFpQyxnQkFBQTtBckR5OEZqQzs7QXFEeDhGQTtFQUFtQyxnQkFBQTtBckQ0OEZuQzs7QXFEMzhGQTtFQUFzQyxnQkFBQTtBckQrOEZ0Qzs7QXFEOThGQTtFQUFxQyxnQkFBQTtBckRrOUZyQzs7QXFEajlGQTtFQUFzQyxnQkFBQTtBckRxOUZ0Qzs7QXFEcDlGQTtFQUFvQyxnQkFBQTtBckR3OUZwQzs7QXFEdjlGQTtFQUFvQyxnQkFBQTtBckQyOUZwQzs7QXFEMTlGQTtFQUFnQyxnQkFBQTtBckQ4OUZoQzs7QXFENzlGQTtFQUF1QyxnQkFBQTtBckRpK0Z2Qzs7QXFEaCtGQTtFQUF5QyxnQkFBQTtBckRvK0Z6Qzs7QXFEbitGQTtFQUFnQyxnQkFBQTtBckR1K0ZoQzs7QXFEdCtGQTtFQUFzQyxnQkFBQTtBckQwK0Z0Qzs7QXFEeitGQTtFQUFxQyxnQkFBQTtBckQ2K0ZyQzs7QXFENStGQTtFQUFpQyxnQkFBQTtBckRnL0ZqQzs7QXFELytGQTtFQUFxQyxnQkFBQTtBckRtL0ZyQzs7QXFEbC9GQTtFQUFvQyxnQkFBQTtBckRzL0ZwQzs7QXFEci9GQTtFQUFzQyxnQkFBQTtBckR5L0Z0Qzs7QXFEeC9GQTtFQUFzQyxnQkFBQTtBckQ0L0Z0Qzs7QXFEMy9GQTtFQUFxQyxnQkFBQTtBckQrL0ZyQzs7QXFEOS9GQTtFQUFxQyxnQkFBQTtBckRrZ0dyQzs7QXFEamdHQTtFQUF1QyxnQkFBQTtBckRxZ0d2Qzs7QXFEcGdHQTtFQUFxQyxnQkFBQTtBckR3Z0dyQzs7QXFEdmdHQTtFQUFpQyxnQkFBQTtBckQyZ0dqQzs7QXFEMWdHQTtFQUEwQyxnQkFBQTtBckQ4Z0cxQzs7QXFEN2dHQTtFQUErQyxnQkFBQTtBckRpaEcvQzs7QXFEaGhHQTtFQUF1QyxnQkFBQTtBckRvaEd2Qzs7QXFEbmhHQTtFQUFvQyxnQkFBQTtBckR1aEdwQzs7QXFEdGhHQTtFQUFzQyxnQkFBQTtBckQwaEd0Qzs7QXFEemhHQTtFQUFvQyxnQkFBQTtBckQ2aEdwQzs7QXFENWhHQTtFQUFtQyxnQkFBQTtBckRnaUduQzs7QXFEL2hHQTtFQUFrQyxnQkFBQTtBckRtaUdsQzs7QXFEbGlHQTtFQUFnQyxnQkFBQTtBckRzaUdoQzs7QXFEcmlHQTtFQUFtQyxnQkFBQTtBckR5aUduQzs7QXFEeGlHQTtFQUFtQyxnQkFBQTtBckQ0aUduQzs7QXFEM2lHQTtFQUFnQyxnQkFBQTtBckQraUdoQzs7QXFEOWlHQTtFQUF3QyxnQkFBQTtBckRrakd4Qzs7QXFEampHQTtFQUFrQyxnQkFBQTtBckRxakdsQzs7QXFEcGpHQTtFQUEwQyxnQkFBQTtBckR3akcxQzs7QXFEdmpHQTtFQUFtQyxnQkFBQTtBckQyakduQzs7QXFEMWpHQTtFQUF3QyxnQkFBQTtBckQ4akd4Qzs7QXFEN2pHQTtFQUFzQyxnQkFBQTtBckRpa0d0Qzs7QXFEaGtHQTtFQUF1QyxnQkFBQTtBckRva0d2Qzs7QXFEbmtHQTtFQUFpQyxnQkFBQTtBckR1a0dqQzs7QXFEdGtHQTtFQUFxQyxnQkFBQTtBckQwa0dyQzs7QXFEemtHQTtFQUEwQyxnQkFBQTtBckQ2a0cxQzs7QXFENWtHQTtFQUE2QyxnQkFBQTtBckRnbEc3Qzs7QXFEL2tHQTtFQUFtQyxnQkFBQTtBckRtbEduQzs7QXFEbGxHQTtFQUF5QyxnQkFBQTtBckRzbEd6Qzs7QXFEcmxHQTtFQUFxQyxnQkFBQTtBckR5bEdyQzs7QXFEeGxHQTtFQUE0QyxnQkFBQTtBckQ0bEc1Qzs7QXFEM2xHQTtFQUFvQyxnQkFBQTtBckQrbEdwQzs7QXFEOWxHQTtFQUFpQyxnQkFBQTtBckRrbUdqQzs7QXFEam1HQTtFQUEwQyxnQkFBQTtBckRxbUcxQzs7QXFEcG1HQTtFQUEyQyxnQkFBQTtBckR3bUczQzs7QXFEdm1HQTtFQUFtQyxnQkFBQTtBckQybUduQzs7QXFEMW1HQTtFQUFxQyxnQkFBQTtBckQ4bUdyQzs7QXFEN21HQTtFQUFxQyxnQkFBQTtBckRpbkdyQzs7QXFEaG5HQTtFQUEwQyxnQkFBQTtBckRvbkcxQzs7QXFEbm5HQTtFQUFvQyxnQkFBQTtBckR1bkdwQzs7QXFEdG5HQTtFQUFtQyxnQkFBQTtBckQwbkduQzs7QXFEem5HQTtFQUF1QyxnQkFBQTtBckQ2bkd2Qzs7QXFENW5HQTtFQUFpQyxnQkFBQTtBckRnb0dqQzs7QXFEL25HQTtFQUFpQyxnQkFBQTtBckRtb0dqQzs7QXFEbG9HQTtFQUF3QyxnQkFBQTtBckRzb0d4Qzs7QXFEcm9HQTtFQUFpQyxnQkFBQTtBckR5b0dqQzs7QXFEeG9HQTtFQUFnQyxnQkFBQTtBckQ0b0doQzs7QXFEM29HQTtFQUFrQyxnQkFBQTtBckQrb0dsQzs7QXFEOW9HQTtFQUFzQyxnQkFBQTtBckRrcEd0Qzs7QXFEanBHQTtFQUF1QyxnQkFBQTtBckRxcEd2Qzs7QXFEcHBHQTtFQUF1QyxnQkFBQTtBckR3cEd2Qzs7QXFEdnBHQTtFQUFpQyxnQkFBQTtBckQycEdqQzs7QXFEMXBHQTtFQUFrQyxnQkFBQTtBckQ4cEdsQzs7QXFEN3BHQTtFQUFtQyxnQkFBQTtBckRpcUduQzs7QXFEaHFHQTtFQUFxQyxnQkFBQTtBckRvcUdyQzs7QXFEbnFHQTtFQUEwQyxnQkFBQTtBckR1cUcxQzs7QXFEdHFHQTtFQUErQyxnQkFBQTtBckQwcUcvQzs7QXFEenFHQTtFQUE0QyxnQkFBQTtBckQ2cUc1Qzs7QXFENXFHQTtFQUFtQyxnQkFBQTtBckRnckduQzs7QXFEL3FHQTtFQUFtQyxnQkFBQTtBckRtckduQzs7QXFEbHJHQTtFQUFtQyxnQkFBQTtBckRzckduQzs7QXFEcnJHQTtFQUFtQyxnQkFBQTtBckR5ckduQzs7QXFEeHJHQTtFQUFxQyxnQkFBQTtBckQ0ckdyQzs7QXFEM3JHQTtFQUFxQyxnQkFBQTtBckQrckdyQzs7QXFEOXJHQTtFQUFpQyxnQkFBQTtBckRrc0dqQzs7QXFEanNHQTtFQUFzQyxnQkFBQTtBckRxc0d0Qzs7QXFEcHNHQTtFQUFxQyxnQkFBQTtBckR3c0dyQzs7QXFEdnNHQTtFQUF5QyxnQkFBQTtBckQyc0d6Qzs7QXFEMXNHQTtFQUF3QyxnQkFBQTtBckQ4c0d4Qzs7QXFEN3NHQTtFQUErQyxnQkFBQTtBckRpdEcvQzs7QXFEaHRHQTtFQUFpRCxnQkFBQTtBckRvdEdqRDs7QXFEbnRHQTtFQUFtQyxnQkFBQTtBckR1dEduQzs7QXFEdHRHQTtFQUF1QyxnQkFBQTtBckQwdEd2Qzs7QXFEenRHQTtFQUE4QyxnQkFBQTtBckQ2dEc5Qzs7QXFENXRHQTtFQUF5QyxnQkFBQTtBckRndUd6Qzs7QXFEL3RHQTtFQUE4QyxnQkFBQTtBckRtdUc5Qzs7QXFEbHVHQTtFQUFxRCxnQkFBQTtBckRzdUdyRDs7QXFEcnVHQTtFQUFnQyxnQkFBQTtBckR5dUdoQzs7QXFEeHVHQTtFQUF3QyxnQkFBQTtBckQ0dUd4Qzs7QXFEM3VHQTtFQUFzQyxnQkFBQTtBckQrdUd0Qzs7QXFEOXVHQTtFQUFxQyxnQkFBQTtBckRrdkdyQzs7QXFEanZHQTtFQUF1QyxnQkFBQTtBckRxdkd2Qzs7QXFEcHZHQTtFQUErQyxnQkFBQTtBckR3dkcvQzs7QXFEdnZHQTtFQUE0QyxnQkFBQTtBckQydkc1Qzs7QXFEMXZHQTtFQUFnQyxnQkFBQTtBckQ4dkdoQzs7QXFEN3ZHQTtFQUFpRCxnQkFBQTtBckRpd0dqRDs7QXFEaHdHQTtFQUEwQyxnQkFBQTtBckRvd0cxQzs7QXFEbndHQTtFQUF5QyxnQkFBQTtBckR1d0d6Qzs7QXFEdHdHQTtFQUFtQyxnQkFBQTtBckQwd0duQzs7QXFEendHQTtFQUFnQyxnQkFBQTtBckQ2d0doQzs7QXFENXdHQTtFQUFvQyxnQkFBQTtBckRneEdwQzs7QXFEL3dHQTtFQUF3QyxnQkFBQTtBckRteEd4Qzs7QXFEbHhHQTtFQUFrQyxnQkFBQTtBckRzeEdsQzs7QXFEcnhHQTtFQUFtQyxnQkFBQTtBckR5eEduQzs7QXFEeHhHQTtFQUFtQyxnQkFBQTtBckQ0eEduQzs7QXFEM3hHQTtFQUF3QyxnQkFBQTtBckQreEd4Qzs7QXFEOXhHQTtFQUFrQyxnQkFBQTtBckRreUdsQzs7QXFEanlHQTtFQUFpQyxnQkFBQTtBckRxeUdqQzs7QXFEcHlHQTtFQUFxQyxnQkFBQTtBckR3eUdyQzs7QXFEdnlHQTtFQUF5QyxnQkFBQTtBckQyeUd6Qzs7QXFEMXlHQTtFQUF1QyxnQkFBQTtBckQ4eUd2Qzs7QXFEN3lHQTtFQUFzQyxnQkFBQTtBckRpekd0Qzs7QXFEaHpHQTtFQUEwQyxnQkFBQTtBckRvekcxQzs7QXFEbnpHQTtFQUFxQyxnQkFBQTtBckR1ekdyQzs7QXFEdHpHQTtFQUEwQyxnQkFBQTtBckQwekcxQzs7QXFEenpHQTtFQUF1QyxnQkFBQTtBckQ2ekd2Qzs7QXFENXpHQTtFQUF3QyxnQkFBQTtBckRnMEd4Qzs7QXFEL3pHQTtFQUF1QyxnQkFBQTtBckRtMEd2Qzs7QXFEbDBHQTtFQUF3QyxnQkFBQTtBckRzMEd4Qzs7QXFEcjBHQTtFQUF5QyxnQkFBQTtBckR5MEd6Qzs7QXFEeDBHQTtFQUFnRCxnQkFBQTtBckQ0MEdoRDs7QXFEMzBHQTtFQUF5QyxnQkFBQTtBckQrMEd6Qzs7QXFEOTBHQTtFQUE2QyxnQkFBQTtBckRrMUc3Qzs7QXFEajFHQTtFQUFxQyxnQkFBQTtBckRxMUdyQzs7QXFEcDFHQTtFQUE0QyxnQkFBQTtBckR3MUc1Qzs7QXFEdjFHQTtFQUE4QyxnQkFBQTtBckQyMUc5Qzs7QXFEMTFHQTtFQUEyQyxnQkFBQTtBckQ4MUczQzs7QXFENzFHQTtFQUF3QyxnQkFBQTtBckRpMkd4Qzs7QXFEaDJHQTtFQUF1QyxnQkFBQTtBckRvMkd2Qzs7QXFEbjJHQTtFQUFzQyxnQkFBQTtBckR1Mkd0Qzs7QXFEdDJHQTtFQUFpQyxnQkFBQTtBckQwMkdqQzs7QXFEejJHQTtFQUFzQyxnQkFBQTtBckQ2Mkd0Qzs7QXFENTJHQTtFQUFpQyxnQkFBQTtBckRnM0dqQzs7QXFELzJHQTtFQUFtQyxnQkFBQTtBckRtM0duQzs7QXFEbDNHQTtFQUF3QyxnQkFBQTtBckRzM0d4Qzs7QXFEcjNHQTtFQUFpQyxnQkFBQTtBckR5M0dqQzs7QXFEeDNHQTtFQUFxQyxnQkFBQTtBckQ0M0dyQzs7QXFEMzNHQTtFQUE4QyxnQkFBQTtBckQrM0c5Qzs7QXFEOTNHQTtFQUFvQyxnQkFBQTtBckRrNEdwQzs7QXFEajRHQTtFQUE0QyxnQkFBQTtBckRxNEc1Qzs7QXFEcDRHQTtFQUFzQyxnQkFBQTtBckR3NEd0Qzs7QXFEdjRHQTtFQUF3QyxnQkFBQTtBckQyNEd4Qzs7QXFEMTRHQTtFQUE0QyxnQkFBQTtBckQ4NEc1Qzs7QXFENzRHQTtFQUF1QyxnQkFBQTtBckRpNUd2Qzs7QXFEaDVHQTtFQUFpQyxnQkFBQTtBckRvNUdqQzs7QXFEbjVHQTtFQUF3QyxnQkFBQTtBckR1NUd4Qzs7QXFEdDVHQTtFQUFpQyxnQkFBQTtBckQwNUdqQzs7QXFEejVHQTtFQUEyQyxnQkFBQTtBckQ2NUczQzs7QXFENTVHQTtFQUFxQyxnQkFBQTtBckRnNkdyQzs7QXFELzVHQTtFQUFrQyxnQkFBQTtBckRtNkdsQzs7QXFEbDZHQTtFQUFtQyxnQkFBQTtBckRzNkduQzs7QXFEcjZHQTtFQUFzQyxnQkFBQTtBckR5Nkd0Qzs7QXFEeDZHQTtFQUFvQyxnQkFBQTtBckQ0NkdwQzs7QXFEMzZHQTtFQUFnQyxnQkFBQTtBckQrNkdoQzs7QXFEOTZHQTtFQUFtQyxnQkFBQTtBckRrN0duQzs7QXFEajdHQTtFQUF5QyxnQkFBQTtBckRxN0d6Qzs7QXFEcDdHQTtFQUF3QyxnQkFBQTtBckR3N0d4Qzs7QXFEdjdHQTtFQUF3QyxnQkFBQTtBckQyN0d4Qzs7QXFEMTdHQTtFQUFpQyxnQkFBQTtBckQ4N0dqQzs7QXFENzdHQTtFQUF5QyxnQkFBQTtBckRpOEd6Qzs7QXFEaDhHQTtFQUE2QyxnQkFBQTtBckRvOEc3Qzs7QXFEbjhHQTtFQUE4QyxnQkFBQTtBckR1OEc5Qzs7QXFEdDhHQTtFQUFtRCxnQkFBQTtBckQwOEduRDs7QXFEejhHQTtFQUFzQyxnQkFBQTtBckQ2OEd0Qzs7QXFENThHQTtFQUF5QyxnQkFBQTtBckRnOUd6Qzs7QXFELzhHQTtFQUEwQyxnQkFBQTtBckRtOUcxQzs7QXFEbDlHQTtFQUF5QyxnQkFBQTtBckRzOUd6Qzs7QXFEcjlHQTtFQUE2QyxnQkFBQTtBckR5OUc3Qzs7QXFEeDlHQTtFQUFxQyxnQkFBQTtBckQ0OUdyQzs7QXFEMzlHQTtFQUFvQyxnQkFBQTtBckQrOUdwQzs7QXFEOTlHQTtFQUF1QyxnQkFBQTtBckRrK0d2Qzs7QXFEaitHQTtFQUEyQyxnQkFBQTtBckRxK0czQzs7QXFEcCtHQTtFQUFvQyxnQkFBQTtBckR3K0dwQzs7QXFEditHQTtFQUFpQyxnQkFBQTtBckQyK0dqQzs7QXFEMStHQTtFQUFrQyxnQkFBQTtBckQ4K0dsQzs7QXFENytHQTtFQUF1QyxnQkFBQTtBckRpL0d2Qzs7QXFEaC9HQTtFQUFvQyxnQkFBQTtBckRvL0dwQzs7QXFEbi9HQTtFQUEwQyxnQkFBQTtBckR1L0cxQzs7QXFEdC9HQTtFQUFtQyxnQkFBQTtBckQwL0duQzs7QXFEei9HQTtFQUE4QyxnQkFBQTtBckQ2L0c5Qzs7QXFENS9HQTtFQUE0QyxnQkFBQTtBckRnZ0g1Qzs7QXFELy9HQTtFQUFvQyxnQkFBQTtBckRtZ0hwQzs7QXFEbGdIQTtFQUFxQyxnQkFBQTtBckRzZ0hyQzs7QXFEcmdIQTtFQUFrQyxnQkFBQTtBckR5Z0hsQzs7QXFEeGdIQTtFQUFnQyxnQkFBQTtBckQ0Z0hoQzs7QXFEM2dIQTtFQUF1QyxnQkFBQTtBckQrZ0h2Qzs7QXFEOWdIQTtFQUF1QyxnQkFBQTtBckRraEh2Qzs7QXFEamhIQTtFQUErQixnQkFBQTtBckRxaEgvQjs7QXFEcGhIQTtFQUFzQyxnQkFBQTtBckR3aEh0Qzs7QXFEdmhIQTtFQUFrQyxnQkFBQTtBckQyaEhsQzs7QXFEMWhIQTtFQUFpQyxnQkFBQTtBckQ4aEhqQzs7QXFEN2hIQTtFQUFrQyxnQkFBQTtBckRpaUhsQzs7QXFEaGlIQTtFQUFnQyxnQkFBQTtBckRvaUhoQzs7QXFEbmlIQTtFQUFvQyxnQkFBQTtBckR1aUhwQzs7QXFEdGlIQTtFQUF1QyxnQkFBQTtBckQwaUh2Qzs7QXFEemlIQTtFQUFtQyxnQkFBQTtBckQ2aUhuQzs7QXFENWlIQTtFQUF1QyxnQkFBQTtBckRnakh2Qzs7QXFEL2lIQTtFQUEwQyxnQkFBQTtBckRtakgxQzs7QXFEbGpIQTtFQUFzQyxnQkFBQTtBckRzakh0Qzs7QXFEcmpIQTtFQUFtQyxnQkFBQTtBckR5akhuQzs7QXFEeGpIQTtFQUFtQyxnQkFBQTtBckQ0akhuQzs7QXFEM2pIQTtFQUF5QyxnQkFBQTtBckQrakh6Qzs7QXFEOWpIQTtFQUEwQyxnQkFBQTtBckRra0gxQzs7QXFEamtIQTtFQUE4QyxnQkFBQTtBckRxa0g5Qzs7QXFEcGtIQTtFQUEwQyxnQkFBQTtBckR3a0gxQzs7QXFEdmtIQTtFQUFvQyxnQkFBQTtBckQya0hwQzs7QXFEMWtIQTtFQUFrQyxnQkFBQTtBckQ4a0hsQzs7QXFEN2tIQTtFQUFvQyxnQkFBQTtBckRpbEhwQzs7QXFEaGxIQTtFQUFrQyxnQkFBQTtBckRvbEhsQzs7QXFEbmxIQTtFQUF5QyxnQkFBQTtBckR1bEh6Qzs7QXFEdGxIQTtFQUEyQyxnQkFBQTtBckQwbEgzQzs7QXFEemxIQTtFQUF1QyxnQkFBQTtBckQ2bEh2Qzs7QXFENWxIQTtFQUF5QyxnQkFBQTtBckRnbUh6Qzs7QXFEL2xIQTtFQUFtQyxnQkFBQTtBckRtbUhuQzs7QXFEbG1IQTtFQUFzQyxnQkFBQTtBckRzbUh0Qzs7QXFEcm1IQTtFQUFzQyxnQkFBQTtBckR5bUh0Qzs7QXFEeG1IQTtFQUF3QyxnQkFBQTtBckQ0bUh4Qzs7QXFEM21IQTtFQUFtQyxnQkFBQTtBckQrbUhuQzs7QXFEOW1IQTtFQUF5QyxnQkFBQTtBckRrbkh6Qzs7QXFEam5IQTtFQUF1QyxnQkFBQTtBckRxbkh2Qzs7QXFEcG5IQTtFQUF3QyxnQkFBQTtBckR3bkh4Qzs7QXFEdm5IQTtFQUF3QyxnQkFBQTtBckQybkh4Qzs7QXFEMW5IQTtFQUEwQyxnQkFBQTtBckQ4bkgxQzs7QXFEN25IQTtFQUErQyxnQkFBQTtBckRpb0gvQzs7QXFEaG9IQTtFQUEwQyxnQkFBQTtBckRvb0gxQzs7QXFEbm9IQTtFQUFvQyxnQkFBQTtBckR1b0hwQzs7QXFEdG9IQTtFQUEyQyxnQkFBQTtBckQwb0gzQzs7QXFEem9IQTtFQUFxQyxnQkFBQTtBckQ2b0hyQzs7QXFENW9IQTtFQUFpQyxnQkFBQTtBckRncEhqQzs7QXFEL29IQTtFQUF5QyxnQkFBQTtBckRtcEh6Qzs7QXFEbHBIQTtFQUErQyxnQkFBQTtBckRzcEgvQzs7QXFEcnBIQTtFQUFvQyxnQkFBQTtBckR5cEhwQzs7QXFEeHBIQTtFQUFpQyxnQkFBQTtBckQ0cEhqQzs7QXFEM3BIQTtFQUFxQyxnQkFBQTtBckQrcEhyQzs7QXFEOXBIQTtFQUFzQyxnQkFBQTtBckRrcUh0Qzs7QXFEanFIQTtFQUE0QyxnQkFBQTtBckRxcUg1Qzs7QXFEcHFIQTtFQUF3QyxnQkFBQTtBckR3cUh4Qzs7QXFEdnFIQTtFQUF3QyxnQkFBQTtBckQycUh4Qzs7QXFEMXFIQTtFQUE4QyxnQkFBQTtBckQ4cUg5Qzs7QXFEN3FIQTtFQUF1QyxnQkFBQTtBckRpckh2Qzs7QXFEaHJIQTtFQUF1QyxnQkFBQTtBckRvckh2Qzs7QXFEbnJIQTtFQUF3QyxnQkFBQTtBckR1ckh4Qzs7QXFEdHJIQTtFQUErQyxnQkFBQTtBckQwckgvQzs7QXFEenJIQTtFQUE2QyxnQkFBQTtBckQ2ckg3Qzs7QXFENXJIQTtFQUFzQyxnQkFBQTtBckRnc0h0Qzs7QXFEL3JIQTtFQUE0QyxnQkFBQTtBckRtc0g1Qzs7QXFEbHNIQTtFQUF1QyxnQkFBQTtBckRzc0h2Qzs7QXFEcnNIQTtFQUFnRCxnQkFBQTtBckR5c0hoRDs7QXFEeHNIQTtFQUEwQyxnQkFBQTtBckQ0c0gxQzs7QXFEM3NIQTtFQUFxQyxnQkFBQTtBckQrc0hyQzs7QXFEOXNIQTtFQUFrQyxnQkFBQTtBckRrdEhsQzs7QXFEanRIQTtFQUFtQyxnQkFBQTtBckRxdEhuQzs7QXFEcHRIQTtFQUFpQyxnQkFBQTtBckR3dEhqQzs7QXFEdnRIQTtFQUFxQyxnQkFBQTtBckQydEhyQzs7QXFEMXRIQTtFQUF3QyxnQkFBQTtBckQ4dEh4Qzs7QXFEN3RIQTtFQUErQyxnQkFBQTtBckRpdUgvQzs7QXFEaHVIQTtFQUF1QyxnQkFBQTtBckRvdUh2Qzs7QXFEbnVIQTtFQUFzQyxnQkFBQTtBckR1dUh0Qzs7QXFEdHVIQTtFQUFtQyxnQkFBQTtBckQwdUhuQzs7QXFEenVIQTtFQUFrQyxnQkFBQTtBckQ2dUhsQzs7QXFENXVIQTtFQUF5QyxnQkFBQTtBckRndkh6Qzs7QXFEL3VIQTtFQUErQyxnQkFBQTtBckRtdkgvQzs7QXFEbHZIQTtFQUFpRCxnQkFBQTtBckRzdkhqRDs7QXFEcnZIQTtFQUE2QyxnQkFBQTtBckR5dkg3Qzs7QXFEeHZIQTtFQUErQyxnQkFBQTtBckQ0dkgvQzs7QXFEM3ZIQTtFQUF3QyxnQkFBQTtBckQrdkh4Qzs7QXFEOXZIQTtFQUErQyxnQkFBQTtBckRrd0gvQzs7QXFEandIQTtFQUF1QyxnQkFBQTtBckRxd0h2Qzs7QXFEcHdIQTtFQUF1QyxnQkFBQTtBckR3d0h2Qzs7QXFEdndIQTtFQUE0QyxnQkFBQTtBckQyd0g1Qzs7QXFEMXdIQTtFQUE0QyxnQkFBQTtBckQ4d0g1Qzs7QXFEN3dIQTtFQUE2QyxnQkFBQTtBckRpeEg3Qzs7QXFEaHhIQTtFQUEwQyxnQkFBQTtBckRveEgxQzs7QXFEbnhIQTtFQUF5QyxnQkFBQTtBckR1eEh6Qzs7QXFEdHhIQTtFQUFzQyxnQkFBQTtBckQweEh0Qzs7QXFEenhIQTtFQUEwQyxnQkFBQTtBckQ2eEgxQzs7QXFENXhIQTtFQUEwQyxnQkFBQTtBckRneUgxQzs7QXFEL3hIQTtFQUF1QyxnQkFBQTtBckRteUh2Qzs7QXFEbHlIQTtFQUFrQyxnQkFBQTtBckRzeUhsQzs7QXFEcnlIQTtFQUEwQyxnQkFBQTtBckR5eUgxQzs7QXFEeHlIQTtFQUF1QyxnQkFBQTtBckQ0eUh2Qzs7QXFEM3lIQTtFQUFzQyxnQkFBQTtBckQreUh0Qzs7QXFEOXlIQTtFQUFnRCxnQkFBQTtBckRrekhoRDs7QXFEanpIQTtFQUE0QyxnQkFBQTtBckRxekg1Qzs7QXFEcHpIQTtFQUFxQyxnQkFBQTtBckR3ekhyQzs7QXFEdnpIQTtFQUFxQyxnQkFBQTtBckQyekhyQzs7QXFEMXpIQTtFQUFvQyxnQkFBQTtBckQ4ekhwQzs7QXFEN3pIQTtFQUF1QyxnQkFBQTtBckRpMEh2Qzs7QXFEaDBIQTtFQUE0QyxnQkFBQTtBckRvMEg1Qzs7QXFEbjBIQTtFQUF1QyxnQkFBQTtBckR1MEh2Qzs7QXFEdDBIQTtFQUFnQyxnQkFBQTtBckQwMEhoQzs7QXFEejBIQTtFQUE0QyxnQkFBQTtBckQ2MEg1Qzs7QXFENTBIQTtFQUFrRCxnQkFBQTtBckRnMUhsRDs7QXFELzBIQTtFQUEyQyxnQkFBQTtBckRtMUgzQzs7QXFEbDFIQTtFQUE0QyxnQkFBQTtBckRzMUg1Qzs7QXFEcjFIQTtFQUFvQyxnQkFBQTtBckR5MUhwQzs7QXFEeDFIQTtFQUF1QyxnQkFBQTtBckQ0MUh2Qzs7QXFEMzFIQTtFQUEyQyxnQkFBQTtBckQrMUgzQzs7QXFEOTFIQTtFQUFvQyxnQkFBQTtBckRrMkhwQzs7QXFEajJIQTtFQUFrQyxnQkFBQTtBckRxMkhsQzs7QXFEcDJIQTtFQUF5QyxnQkFBQTtBckR3Mkh6Qzs7QXFEdjJIQTtFQUFzQyxnQkFBQTtBckQyMkh0Qzs7QXFEMTJIQTtFQUF1QyxnQkFBQTtBckQ4Mkh2Qzs7QXFENzJIQTtFQUF3QyxnQkFBQTtBckRpM0h4Qzs7QXFEaDNIQTtFQUFtQyxnQkFBQTtBckRvM0huQzs7QXFEbjNIQTtFQUFrQyxnQkFBQTtBckR1M0hsQzs7QXFEdDNIQTtFQUFpQyxnQkFBQTtBckQwM0hqQzs7QXFEejNIQTtFQUEwQyxnQkFBQTtBckQ2M0gxQzs7QXFENTNIQTtFQUFvQyxnQkFBQTtBckRnNEhwQzs7QXFELzNIQTtFQUF3QyxnQkFBQTtBckRtNEh4Qzs7QXFEbDRIQTtFQUF3QyxnQkFBQTtBckRzNEh4Qzs7QXFEcjRIQTtFQUFpQyxnQkFBQTtBckR5NEhqQzs7QXFEeDRIQTtFQUFrQyxnQkFBQTtBckQ0NEhsQzs7QXFEMzRIQTtFQUFxQyxnQkFBQTtBckQrNEhyQzs7QXFEOTRIQTtFQUFrQyxnQkFBQTtBckRrNUhsQzs7QXFEajVIQTtFQUF1QyxnQkFBQTtBckRxNUh2Qzs7QXFEcDVIQTtFQUFxQyxnQkFBQTtBckR3NUhyQzs7QXFEdjVIQTtFQUF5QyxnQkFBQTtBckQyNUh6Qzs7QXFEMTVIQTtFQUE0QyxnQkFBQTtBckQ4NUg1Qzs7QXFENzVIQTtFQUEwQyxnQkFBQTtBckRpNkgxQzs7QXFEaDZIQTtFQUFvQyxnQkFBQTtBckRvNkhwQzs7QXFEbjZIQTtFQUFtQyxnQkFBQTtBckR1NkhuQzs7QXFEdDZIQTtFQUFrQyxnQkFBQTtBckQwNkhsQzs7QXFEejZIQTtFQUFtQyxnQkFBQTtBckQ2NkhuQzs7QXFENTZIQTtFQUFzQyxnQkFBQTtBckRnN0h0Qzs7QXFELzZIQTtFQUEwQyxnQkFBQTtBckRtN0gxQzs7QXFEbDdIQTtFQUEyQyxnQkFBQTtBckRzN0gzQzs7QXFEcjdIQTtFQUE0QyxnQkFBQTtBckR5N0g1Qzs7QXFEeDdIQTtFQUF5QyxnQkFBQTtBckQ0N0h6Qzs7QXFEMzdIQTtFQUF1QyxnQkFBQTtBckQrN0h2Qzs7QXFEOTdIQTtFQUFrQyxnQkFBQTtBckRrOEhsQzs7QXFEajhIQTtFQUFvQyxnQkFBQTtBckRxOEhwQzs7QXFEcDhIQTtFQUFrQyxnQkFBQTtBckR3OEhsQzs7QXFEdjhIQTtFQUFvQyxnQkFBQTtBckQyOEhwQzs7QXFEMThIQTtFQUFxQyxnQkFBQTtBckQ4OEhyQzs7QXFENzhIQTtFQUFzQyxnQkFBQTtBckRpOUh0Qzs7QXFEaDlIQTtFQUFvQyxnQkFBQTtBckRvOUhwQzs7QXFEbjlIQTtFQUFrQyxnQkFBQTtBckR1OUhsQzs7QXFEdDlIQTtFQUFxQyxnQkFBQTtBckQwOUhyQzs7QXFEejlIQTtFQUFvQyxnQkFBQTtBckQ2OUhwQzs7QXFENTlIQTtFQUF3QyxnQkFBQTtBckRnK0h4Qzs7QXFELzlIQTtFQUFrQyxnQkFBQTtBckRtK0hsQzs7QXFEbCtIQTtFQUFrQyxnQkFBQTtBckRzK0hsQzs7QXFEcitIQTtFQUFrQyxnQkFBQTtBckR5K0hsQzs7QXFEeCtIQTtFQUFtQyxnQkFBQTtBckQ0K0huQzs7QXFEMytIQTtFQUFpQyxnQkFBQTtBckQrK0hqQzs7QXFEOStIQTtFQUFrQyxnQkFBQTtBckRrL0hsQzs7QXFEai9IQTtFQUFtQyxnQkFBQTtBckRxL0huQzs7QXFEcC9IQTtFQUFxQyxnQkFBQTtBckR3L0hyQzs7QXFEdi9IQTtFQUFxQyxnQkFBQTtBckQyL0hyQzs7QXFEMS9IQTtFQUFpQyxnQkFBQTtBckQ4L0hqQzs7QXFENy9IQTtFQUF3QyxnQkFBQTtBckRpZ0l4Qzs7QXFEaGdJQTtFQUFzQyxnQkFBQTtBckRvZ0l0Qzs7QXFEbmdJQTtFQUE2QyxnQkFBQTtBckR1Z0k3Qzs7QXFEdGdJQTtFQUFxQyxnQkFBQTtBckQwZ0lyQzs7QXFEemdJQTtFQUE4QyxnQkFBQTtBckQ2Z0k5Qzs7QXFENWdJQTtFQUFxQyxnQkFBQTtBckRnaElyQzs7QXFEL2dJQTtFQUFvQyxnQkFBQTtBckRtaElwQzs7QXFEbGhJQTtFQUFtQyxnQkFBQTtBckRzaEluQzs7QXFEcmhJQTtFQUFvQyxnQkFBQTtBckR5aElwQzs7QXFEeGhJQTtFQUFtQyxnQkFBQTtBckQ0aEluQzs7QXFEM2hJQTtFQUF3QyxnQkFBQTtBckQraEl4Qzs7QXFEOWhJQTtFQUFpQyxnQkFBQTtBckRraUlqQzs7QXFEamlJQTtFQUFpQyxnQkFBQTtBckRxaUlqQzs7QXFEcGlJQTtFQUF1QyxnQkFBQTtBckR3aUl2Qzs7QXFEdmlJQTtFQUFvQyxnQkFBQTtBckQyaUlwQzs7QXFEMWlJQTtFQUFpQyxnQkFBQTtBckQ4aUlqQzs7QXFEN2lJQTtFQUFrQyxnQkFBQTtBckRpaklsQzs7QXFEaGpJQTtFQUFrQyxnQkFBQTtBckRvaklsQzs7QXFEbmpJQTtFQUFtQyxnQkFBQTtBckR1akluQzs7QXFEdGpJQTtFQUEyQyxnQkFBQTtBckQwakkzQzs7QXFEempJQTtFQUErQixnQkFBQTtBckQ2akkvQjs7QXFENWpJQTtFQUFzQyxnQkFBQTtBckRna0l0Qzs7QXFEL2pJQTtFQUFxQyxnQkFBQTtBckRta0lyQzs7QXFEbGtJQTtFQUFrQyxnQkFBQTtBckRza0lsQzs7QXFEcmtJQTtFQUFtQyxnQkFBQTtBckR5a0luQzs7QXFEeGtJQTtFQUFnQyxnQkFBQTtBckQ0a0loQzs7QXFEM2tJQTtFQUFvQyxnQkFBQTtBckQra0lwQzs7QXFEOWtJQTtFQUFxQyxnQkFBQTtBckRrbElyQzs7QXFEamxJQTtFQUFtQyxnQkFBQTtBckRxbEluQzs7QXFEcGxJQTtFQUFtQyxnQkFBQTtBckR3bEluQzs7QXFEdmxJQTtFQUF3QyxnQkFBQTtBckQybEl4Qzs7QXFEMWxJQTtFQUEwQyxnQkFBQTtBckQ4bEkxQzs7QXFEN2xJQTtFQUFpQyxnQkFBQTtBckRpbUlqQzs7QXFEaG1JQTtFQUFzQyxnQkFBQTtBckRvbUl0Qzs7QXFEbm1JQTtFQUE0QyxnQkFBQTtBckR1bUk1Qzs7QXFEdG1JQTtFQUFzQyxnQkFBQTtBckQwbUl0Qzs7QXFEem1JQTtFQUFtQyxnQkFBQTtBckQ2bUluQzs7QXFENW1JQTtFQUFxQyxnQkFBQTtBckRnbklyQzs7QXFEL21JQTtFQUFxQyxnQkFBQTtBckRtbklyQzs7QXFEbG5JQTtFQUFtQyxnQkFBQTtBckRzbkluQzs7QXFEcm5JQTtFQUF3QyxnQkFBQTtBckR5bkl4Qzs7QXFEeG5JQTtFQUF5QyxnQkFBQTtBckQ0bkl6Qzs7QXFEM25JQTtFQUEyQyxnQkFBQTtBckQrbkkzQzs7QXFEOW5JQTtFQUFvQyxnQkFBQTtBckRrb0lwQzs7QXFEam9JQTtFQUFtQyxnQkFBQTtBckRxb0luQzs7QXFEcG9JQTtFQUEwQyxnQkFBQTtBckR3b0kxQzs7QXFEdm9JQTtFQUFrQyxnQkFBQTtBckQyb0lsQzs7QXFEMW9JQTtFQUF1QyxnQkFBQTtBckQ4b0l2Qzs7QXFEN29JQTtFQUF5QyxnQkFBQTtBckRpcEl6Qzs7QXFEaHBJQTtFQUF1QyxnQkFBQTtBckRvcEl2Qzs7QXFEbnBJQTtFQUF3QyxnQkFBQTtBckR1cEl4Qzs7QXFEdHBJQTtFQUFpQyxnQkFBQTtBckQwcElqQzs7QXFEenBJQTtFQUFvQyxnQkFBQTtBckQ2cElwQzs7QXFENXBJQTtFQUFrQyxnQkFBQTtBckRncUlsQzs7QXFEL3BJQTtFQUFpQyxnQkFBQTtBckRtcUlqQzs7QXFEbHFJQTtFQUFzQyxnQkFBQTtBckRzcUl0Qzs7QXFEcnFJQTtFQUE0QyxnQkFBQTtBckR5cUk1Qzs7QXFEeHFJQTtFQUEyQyxnQkFBQTtBckQ0cUkzQzs7QXFEM3FJQTtFQUF5QyxnQkFBQTtBckQrcUl6Qzs7QXFEOXFJQTtFQUFzQyxnQkFBQTtBckRrckl0Qzs7QXFEanJJQTtFQUFzQyxnQkFBQTtBckRxckl0Qzs7QXFEcHJJQTtFQUFpQyxnQkFBQTtBckR3cklqQzs7QXFEdnJJQTtFQUFpQyxnQkFBQTtBckQycklqQzs7QXFEMXJJQTtFQUFxQyxnQkFBQTtBckQ4cklyQzs7QXFEN3JJQTtFQUF3QyxnQkFBQTtBckRpc0l4Qzs7QXFEaHNJQTtFQUFtQyxnQkFBQTtBckRvc0luQzs7QXFEbnNJQTtFQUFrQyxnQkFBQTtBckR1c0lsQzs7QXFEdHNJQTtFQUFzQyxnQkFBQTtBckQwc0l0Qzs7QXFEenNJQTtFQUFpQyxnQkFBQTtBckQ2c0lqQzs7QXFENXNJQTtFQUFxQyxnQkFBQTtBckRndElyQzs7QXFEL3NJQTtFQUFvQyxnQkFBQTtBckRtdElwQzs7QXFEbHRJQTtFQUFvQyxnQkFBQTtBckRzdElwQzs7QXFEcnRJQTtFQUEyQyxnQkFBQTtBckR5dEkzQzs7QXFEeHRJQTtFQUFpQyxnQkFBQTtBckQ0dElqQzs7QXFEM3RJQTtFQUFzQyxnQkFBQTtBckQrdEl0Qzs7QXFEOXRJQTtFQUFnRCxnQkFBQTtBckRrdUloRDs7QXFEanVJQTtFQUFnRCxnQkFBQTtBckRxdUloRDs7QXFEcHVJQTtFQUFpRCxnQkFBQTtBckR3dUlqRDs7QXFEdnVJQTtFQUE4QyxnQkFBQTtBckQydUk5Qzs7QXFEMXVJQTtFQUF1QyxnQkFBQTtBckQ4dUl2Qzs7QXFEN3VJQTtFQUF5QyxnQkFBQTtBckRpdkl6Qzs7QXFEaHZJQTtFQUFrQyxnQkFBQTtBckRvdklsQzs7QXFEbnZJQTtFQUF3QyxnQkFBQTtBckR1dkl4Qzs7QXFEdHZJQTtFQUFpQyxnQkFBQTtBckQwdklqQzs7QXFEenZJQTtFQUFvQyxnQkFBQTtBckQ2dklwQzs7QXFENXZJQTtFQUFrQyxnQkFBQTtBckRnd0lsQzs7QXFEL3ZJQTtFQUFtQyxnQkFBQTtBckRtd0luQzs7QXFEbHdJQTtFQUFzQyxnQkFBQTtBckRzd0l0Qzs7QXFEcndJQTtFQUFzQyxnQkFBQTtBckR5d0l0Qzs7QXFEeHdJQTtFQUFpQyxnQkFBQTtBckQ0d0lqQzs7QXFEM3dJQTtFQUF3QyxnQkFBQTtBckQrd0l4Qzs7QXFEOXdJQTtFQUFnQyxnQkFBQTtBckRreEloQzs7QXFEanhJQTtFQUF1QyxnQkFBQTtBckRxeEl2Qzs7QXFEcHhJQTtFQUEyQyxnQkFBQTtBckR3eEkzQzs7QXFEdnhJQTtFQUF1QyxnQkFBQTtBckQyeEl2Qzs7QXFEMXhJQTtFQUEyQyxnQkFBQTtBckQ4eEkzQzs7QXFEN3hJQTtFQUFvQyxnQkFBQTtBckRpeUlwQzs7QXFEaHlJQTtFQUFzQyxnQkFBQTtBckRveUl0Qzs7QXFEbnlJQTtFQUFxQyxnQkFBQTtBckR1eUlyQzs7QXFEdHlJQTtFQUFtQyxnQkFBQTtBckQweUluQzs7QXFEenlJQTtFQUFpQyxnQkFBQTtBckQ2eUlqQzs7QXFENXlJQTtFQUF3QyxnQkFBQTtBckRnekl4Qzs7QXFEL3lJQTtFQUF3QyxnQkFBQTtBckRtekl4Qzs7QXFEbHpJQTtFQUEwQyxnQkFBQTtBckRzekkxQzs7QXFEcnpJQTtFQUEwQyxnQkFBQTtBckR5ekkxQzs7QXFEeHpJQTtFQUFpQyxnQkFBQTtBckQ0eklqQzs7QXFEM3pJQTtFQUFxQyxnQkFBQTtBckQreklyQzs7QXFEOXpJQTtFQUFtQyxnQkFBQTtBckRrMEluQzs7QXFEajBJQTtFQUFnQyxnQkFBQTtBckRxMEloQzs7QXFEcDBJQTtFQUFrQyxnQkFBQTtBckR3MElsQzs7QXFEdjBJQTtFQUFvQyxnQkFBQTtBckQyMElwQzs7QXFEMTBJQTtFQUFtQyxnQkFBQTtBckQ4MEluQzs7QXFENzBJQTtFQUFxQyxnQkFBQTtBckRpMUlyQzs7QXFEaDFJQTtFQUFtQyxnQkFBQTtBckRvMUluQzs7QXFEbjFJQTtFQUFrQyxnQkFBQTtBckR1MUlsQzs7QXFEdDFJQTtFQUFtQyxnQkFBQTtBckQwMUluQzs7QXFEejFJQTtFQUFxQyxnQkFBQTtBckQ2MUlyQzs7QXFENTFJQTtFQUFnQyxnQkFBQTtBckRnMkloQzs7QXFELzFJQTtFQUFzQyxnQkFBQTtBckRtMkl0Qzs7QXFEbDJJQTtFQUE2QyxnQkFBQTtBckRzMkk3Qzs7QXFEcjJJQTtFQUFtQyxnQkFBQTtBckR5MkluQzs7QXFEeDJJQTtFQUFxQyxnQkFBQTtBckQ0MklyQzs7QXFEMzJJQTtFQUFvQyxnQkFBQTtBckQrMklwQzs7QXFEOTJJQTtFQUFvQyxnQkFBQTtBckRrM0lwQzs7QXFEajNJQTtFQUFtQyxnQkFBQTtBckRxM0luQzs7QXFEcDNJQTtFQUFzQyxnQkFBQTtBckR3M0l0Qzs7QXFEdjNJQTtFQUFzQyxnQkFBQTtBckQyM0l0Qzs7QXFEMTNJQTtFQUF1QyxnQkFBQTtBckQ4M0l2Qzs7QXFENzNJQTtFQUEyQyxnQkFBQTtBckRpNEkzQzs7QXFEaDRJQTtFQUFpRCxnQkFBQTtBckRvNElqRDs7QXFEbjRJQTtFQUE2QyxnQkFBQTtBckR1NEk3Qzs7QXFEdDRJQTtFQUF1QyxnQkFBQTtBckQwNEl2Qzs7QXFEejRJQTtFQUFzQyxnQkFBQTtBckQ2NEl0Qzs7QXFENTRJQTtFQUFrQyxnQkFBQTtBckRnNUlsQzs7QXFELzRJQTtFQUF5QyxnQkFBQTtBckRtNUl6Qzs7QXFEbDVJQTtFQUF5QyxnQkFBQTtBckRzNUl6Qzs7QXFEcjVJQTtFQUFtQyxnQkFBQTtBckR5NUluQzs7QXFEeDVJQTtFQUFnQyxnQkFBQTtBckQ0NUloQzs7QXFEMzVJQTtFQUFxQyxnQkFBQTtBckQrNUlyQzs7QXFEOTVJQTtFQUFrQyxnQkFBQTtBckRrNklsQzs7QXFEajZJQTtFQUFtQyxnQkFBQTtBckRxNkluQzs7QXFEcDZJQTtFQUFtQyxnQkFBQTtBckR3NkluQzs7QXFEdjZJQTtFQUF1QyxnQkFBQTtBckQyNkl2Qzs7QXFEMTZJQTtFQUFpQyxnQkFBQTtBckQ4NklqQzs7QXFENzZJQTtFQUFtQyxnQkFBQTtBckRpN0luQzs7QXFEaDdJQTtFQUF1QyxnQkFBQTtBckRvN0l2Qzs7QXFEbjdJQTtFQUEyQyxnQkFBQTtBckR1N0kzQzs7QXFEdDdJQTtFQUE0QyxnQkFBQTtBckQwN0k1Qzs7QXFEejdJQTtFQUFnRCxnQkFBQTtBckQ2N0loRDs7QXFENTdJQTtFQUF3QyxnQkFBQTtBckRnOEl4Qzs7QXFELzdJQTtFQUE0QyxnQkFBQTtBckRtOEk1Qzs7QXFEbDhJQTtFQUFxQyxnQkFBQTtBckRzOElyQzs7QXFEcjhJQTtFQUFpQyxnQkFBQTtBckR5OElqQzs7QXFEeDhJQTtFQUEwQyxnQkFBQTtBckQ0OEkxQzs7QXFEMzhJQTtFQUFtQyxnQkFBQTtBckQrOEluQzs7QXFEOThJQTtFQUF1QyxnQkFBQTtBckRrOUl2Qzs7QXFEajlJQTtFQUFxQyxnQkFBQTtBckRxOUlyQzs7QXFEcDlJQTtFQUFrQyxnQkFBQTtBckR3OUlsQzs7QXFEdjlJQTtFQUEwQyxnQkFBQTtBckQyOUkxQzs7QXFEMTlJQTtFQUFvQyxnQkFBQTtBckQ4OUlwQzs7QXFENzlJQTtFQUFrQyxnQkFBQTtBckRpK0lsQzs7QXFEaCtJQTtFQUFvQyxnQkFBQTtBckRvK0lwQzs7QXFEbitJQTtFQUFpQyxnQkFBQTtBckR1K0lqQzs7QXFEdCtJQTtFQUEwQyxnQkFBQTtBckQwK0kxQzs7QXFEeitJQTtFQUFtQyxnQkFBQTtBckQ2K0luQzs7QXFENStJQTtFQUFzQyxnQkFBQTtBckRnL0l0Qzs7QXFELytJQTtFQUFtQyxnQkFBQTtBckRtL0luQzs7QXFEbC9JQTtFQUFpQyxnQkFBQTtBckRzL0lqQzs7QXFEci9JQTtFQUFvQyxnQkFBQTtBckR5L0lwQzs7QXFEeC9JQTtFQUFzQyxnQkFBQTtBckQ0L0l0Qzs7QXFEMy9JQTtFQUEwQyxnQkFBQTtBckQrL0kxQzs7QXFEOS9JQTtFQUFnQyxnQkFBQTtBckRrZ0poQzs7QXFEamdKQTtFQUFnQyxnQkFBQTtBckRxZ0poQzs7QXFEcGdKQTtFQUF3QyxnQkFBQTtBckR3Z0p4Qzs7QXFEdmdKQTtFQUF5QyxnQkFBQTtBckQyZ0p6Qzs7QXFEMWdKQTtFQUEyQyxnQkFBQTtBckQ4Z0ozQzs7QXFEN2dKQTtFQUEwQyxnQkFBQTtBckRpaEoxQzs7QXFEaGhKQTtFQUFpRCxnQkFBQTtBckRvaEpqRDs7QXFEbmhKQTtFQUFvQyxnQkFBQTtBckR1aEpwQzs7QXFEdGhKQTtFQUF5QyxnQkFBQTtBckQwaEp6Qzs7QXFEemhKQTtFQUErQixnQkFBQTtBckQ2aEovQjs7QXFENWhKQTtFQUFxQyxnQkFBQTtBckRnaUpyQzs7QXFEL2hKQTtFQUFtQyxnQkFBQTtBckRtaUpuQzs7QXFEbGlKQTtFQUFrQyxnQkFBQTtBckRzaUpsQzs7QXFEcmlKQTtFQUEwQyxnQkFBQTtBckR5aUoxQzs7QXFEeGlKQTtFQUFrQyxnQkFBQTtBckQ0aUpsQzs7QXFEM2lKQTtFQUFnQyxnQkFBQTtBckQraUpoQzs7QXFEOWlKQTtFQUFrQyxnQkFBQTtBckRrakpsQzs7QXFEampKQTtFQUFvQyxnQkFBQTtBckRxakpwQzs7QXFEcGpKQTtFQUFrQyxnQkFBQTtBckR3akpsQzs7QXFEdmpKQTtFQUFzQyxnQkFBQTtBckQyakp0Qzs7QXFEMWpKQTtFQUFrQyxnQkFBQTtBckQ4akpsQzs7QXFEN2pKQTtFQUF3QyxnQkFBQTtBckRpa0p4Qzs7QXFEaGtKQTtFQUF5QyxnQkFBQTtBckRva0p6Qzs7QXFEbmtKQTtFQUFvQyxnQkFBQTtBckR1a0pwQzs7QXFEdGtKQTtFQUFtQyxnQkFBQTtBckQwa0puQzs7QXFEemtKQTtFQUFtQyxnQkFBQTtBckQ2a0puQzs7QXFENWtKQTtFQUF3QyxnQkFBQTtBckRnbEp4Qzs7QXFEL2tKQTtFQUFzQyxnQkFBQTtBckRtbEp0Qzs7QXFEbGxKQTtFQUEwQyxnQkFBQTtBckRzbEoxQzs7QXFEcmxKQTtFQUFzQyxnQkFBQTtBckR5bEp0Qzs7QXFEeGxKQTtFQUFvQyxnQkFBQTtBckQ0bEpwQzs7QXFEM2xKQTtFQUFxQyxnQkFBQTtBckQrbEpyQzs7QXFEOWxKQTtFQUEyQyxnQkFBQTtBckRrbUozQzs7QXFEam1KQTtFQUFrQyxnQkFBQTtBckRxbUpsQzs7QXFEcG1KQTtFQUFvQyxnQkFBQTtBckR3bUpwQzs7QXFEdm1KQTtFQUFrQyxnQkFBQTtBckQybUpsQzs7QXFEMW1KQTtFQUF5QyxnQkFBQTtBckQ4bUp6Qzs7QXFEN21KQTtFQUFnQyxnQkFBQTtBckRpbkpoQzs7QXFEaG5KQTtFQUFtQyxnQkFBQTtBckRvbkpuQzs7QXFEbm5KQTtFQUFrQyxnQkFBQTtBckR1bkpsQzs7QXFEdG5KQTtFQUFnQyxnQkFBQTtBckQwbkpoQzs7QXFEem5KQTtFQUFvQyxnQkFBQTtBckQ2bkpwQzs7QXFENW5KQTtFQUFzQyxnQkFBQTtBckRnb0p0Qzs7QXFEL25KQTtFQUFvQyxnQkFBQTtBckRtb0pwQzs7QXFEbG9KQTtFQUF1QyxnQkFBQTtBckRzb0p2Qzs7QXFEcm9KQTtFQUF1QyxnQkFBQTtBckR5b0p2Qzs7QXFEeG9KQTtFQUF5QyxnQkFBQTtBckQ0b0p6Qzs7QXFEM29KQTtFQUF5QyxnQkFBQTtBckQrb0p6Qzs7QXFEOW9KQTtFQUEwQyxnQkFBQTtBckRrcEoxQzs7QXFEanBKQTtFQUF5QyxnQkFBQTtBckRxcEp6Qzs7QXFEcHBKQTtFQUF1QyxnQkFBQTtBckR3cEp2Qzs7QXFEdnBKQTtFQUFvQyxnQkFBQTtBckQycEpwQzs7QXFEMXBKQTtFQUF1QyxnQkFBQTtBckQ4cEp2Qzs7QXFEN3BKQTtFQUFzQyxnQkFBQTtBckRpcUp0Qzs7QXFEaHFKQTtFQUF5QyxnQkFBQTtBckRvcUp6Qzs7QXFEbnFKQTtFQUF3QyxnQkFBQTtBckR1cUp4Qzs7QXFEdHFKQTtFQUE4QyxnQkFBQTtBckQwcUo5Qzs7QXFEenFKQTtFQUE2QyxnQkFBQTtBckQ2cUo3Qzs7QXFENXFKQTtFQUFrQyxnQkFBQTtBckRnckpsQzs7QXFEL3FKQTtFQUFzQyxnQkFBQTtBckRtckp0Qzs7QXFEbHJKQTtFQUF3QyxnQkFBQTtBckRzckp4Qzs7QXFEcnJKQTtFQUF5QyxnQkFBQTtBckR5ckp6Qzs7QXFEeHJKQTtFQUE2QyxnQkFBQTtBckQ0cko3Qzs7QXFEM3JKQTtFQUF5QyxnQkFBQTtBckQrckp6Qzs7QXFEOXJKQTtFQUF3QyxnQkFBQTtBckRrc0p4Qzs7QXFEanNKQTtFQUFnQyxnQkFBQTtBckRxc0poQzs7QXFEcHNKQTtFQUF1QyxnQkFBQTtBckR3c0p2Qzs7QXFEdnNKQTtFQUEyQyxnQkFBQTtBckQyc0ozQzs7QXFEMXNKQTtFQUEyQyxnQkFBQTtBckQ4c0ozQzs7QXFEN3NKQTtFQUEwQyxnQkFBQTtBckRpdEoxQzs7QXFEaHRKQTtFQUE4QyxnQkFBQTtBckRvdEo5Qzs7QXFEbnRKQTtFQUF1QyxnQkFBQTtBckR1dEp2Qzs7QXFEdHRKQTtFQUFrQyxnQkFBQTtBckQwdEpsQzs7QXFEenRKQTtFQUFzQyxnQkFBQTtBckQ2dEp0Qzs7QXFENXRKQTtFQUF3QyxnQkFBQTtBckRndUp4Qzs7QXFEL3RKQTtFQUE2QyxnQkFBQTtBckRtdUo3Qzs7QXFEbHVKQTtFQUF3QyxnQkFBQTtBckRzdUp4Qzs7QXFEcnVKQTtFQUE2QyxnQkFBQTtBckR5dUo3Qzs7QXFEeHVKQTtFQUFrQyxnQkFBQTtBckQ0dUpsQzs7QXFEM3VKQTtFQUEwQyxnQkFBQTtBckQrdUoxQzs7QXFEOXVKQTtFQUE0QyxnQkFBQTtBckRrdko1Qzs7QXFEanZKQTtFQUF3QyxnQkFBQTtBckRxdkp4Qzs7QXFEcHZKQTtFQUFpQyxnQkFBQTtBckR3dkpqQzs7QXFEdnZKQTtFQUF3QyxnQkFBQTtBckQydkp4Qzs7QXFEMXZKQTtFQUF3QyxnQkFBQTtBckQ4dkp4Qzs7QXFEN3ZKQTtFQUFpQyxnQkFBQTtBckRpd0pqQzs7QXFEaHdKQTtFQUFpQyxnQkFBQTtBckRvd0pqQzs7QXFEbndKQTtFQUF3QyxnQkFBQTtBckR1d0p4Qzs7QXFEdHdKQTtFQUF3QyxnQkFBQTtBckQwd0p4Qzs7QXFEendKQTtFQUFvQyxnQkFBQTtBckQ2d0pwQzs7QXFENXdKQTtFQUFpQyxnQkFBQTtBckRneEpqQzs7QXFEL3dKQTtFQUFtQyxnQkFBQTtBckRteEpuQzs7QXFEbHhKQTtFQUFnQyxnQkFBQTtBckRzeEpoQzs7QXFEcnhKQTtFQUFzQyxnQkFBQTtBckR5eEp0Qzs7QXFEeHhKQTtFQUFpQyxnQkFBQTtBckQ0eEpqQzs7QXFEM3hKQTtFQUFxQyxnQkFBQTtBckQreEpyQzs7QXFEOXhKQTtFQUF1QyxnQkFBQTtBckRreUp2Qzs7QXFEanlKQTtFQUFzQyxnQkFBQTtBckRxeUp0Qzs7QXFEcHlKQTtFQUFpQyxnQkFBQTtBckR3eUpqQzs7QXFEdnlKQTtFQUEwQyxnQkFBQTtBckQyeUoxQzs7QXFEMXlKQTtFQUF5QyxnQkFBQTtBckQ4eUp6Qzs7QXFEN3lKQTtFQUFnRCxnQkFBQTtBckRpekpoRDs7QXFEaHpKQTtFQUFvRCxnQkFBQTtBckRvekpwRDs7QXFEbnpKQTtFQUFrQyxnQkFBQTtBckR1ekpsQzs7QXFEdHpKQTtFQUF1QyxnQkFBQTtBckQwekp2Qzs7QXFEenpKQTtFQUF5QyxnQkFBQTtBckQ2ekp6Qzs7QXFENXpKQTtFQUE0QyxnQkFBQTtBckRnMEo1Qzs7QXFEL3pKQTtFQUF5QyxnQkFBQTtBckRtMEp6Qzs7QXFEbDBKQTtFQUFzQyxnQkFBQTtBckRzMEp0Qzs7QXFEcjBKQTtFQUFtQyxnQkFBQTtBckR5MEpuQzs7QXFEeDBKQTtFQUF5QyxnQkFBQTtBckQ0MEp6Qzs7QXFEMzBKQTtFQUFtQyxnQkFBQTtBckQrMEpuQzs7QXFEOTBKQTtFQUErQixnQkFBQTtBckRrMUovQjs7QXFEajFKQTtFQUFtQyxnQkFBQTtBckRxMUpuQzs7QXFEcDFKQTtFQUFxQyxnQkFBQTtBckR3MUpyQzs7QXFEdjFKQTtFQUE0QyxnQkFBQTtBckQyMUo1Qzs7QXFEMTFKQTtFQUFzQyxnQkFBQTtBckQ4MUp0Qzs7QXFENzFKQTtFQUFzQyxnQkFBQTtBckRpMkp0Qzs7QXFEaDJKQTtFQUFrQyxnQkFBQTtBckRvMkpsQzs7QXFEbjJKQTtFQUF1QyxnQkFBQTtBckR1Mkp2Qzs7QXFEdDJKQTtFQUF3QyxnQkFBQTtBckQwMkp4Qzs7QXFEejJKQTtFQUFrQyxnQkFBQTtBckQ2MkpsQzs7QXFENTJKQTtFQUFzQyxnQkFBQTtBckRnM0p0Qzs7QXFELzJKQTtFQUFzQyxnQkFBQTtBckRtM0p0Qzs7QXFEbDNKQTtFQUEwQyxnQkFBQTtBckRzM0oxQzs7QXFEcjNKQTtFQUFvQyxnQkFBQTtBckR5M0pwQzs7QXFEeDNKQTtFQUFtQyxnQkFBQTtBckQ0M0puQzs7QXFEMzNKQTtFQUF5QyxnQkFBQTtBckQrM0p6Qzs7QXFEOTNKQTtFQUFvQyxnQkFBQTtBckRrNEpwQzs7QXFEajRKQTtFQUFrQyxnQkFBQTtBckRxNEpsQzs7QXFEcDRKQTtFQUF3QyxnQkFBQTtBckR3NEp4Qzs7QXFEdjRKQTtFQUFtQyxnQkFBQTtBckQyNEpuQzs7QXFEMTRKQTtFQUFrQyxnQkFBQTtBckQ4NEpsQzs7QXFENzRKQTtFQUFvQyxnQkFBQTtBckRpNUpwQzs7QXFEaDVKQTtFQUF5QyxnQkFBQTtBckRvNUp6Qzs7QXFEbjVKQTtFQUFvQyxnQkFBQTtBckR1NUpwQzs7QXFEdDVKQTtFQUFzQyxnQkFBQTtBckQwNUp0Qzs7QXFEejVKQTtFQUFtQyxnQkFBQTtBckQ2NUpuQzs7QXFENTVKQTtFQUF5QyxnQkFBQTtBckRnNkp6Qzs7QXFELzVKQTtFQUEwQyxnQkFBQTtBckRtNkoxQzs7QXFEbDZKQTtFQUFtQyxnQkFBQTtBckRzNkpuQzs7QXFEcjZKQTtFQUFpQyxnQkFBQTtBckR5NkpqQzs7QXFEeDZKQTtFQUFxQyxnQkFBQTtBckQ0NkpyQzs7QXFEMzZKQTtFQUF1QyxnQkFBQTtBckQrNkp2Qzs7QXFEOTZKQTtFQUEwQyxnQkFBQTtBckRrN0oxQzs7QXFEajdKQTtFQUFtQyxnQkFBQTtBckRxN0puQzs7QXFEcDdKQTtFQUFrQyxnQkFBQTtBckR3N0psQzs7QXFEdjdKQTtFQUFzQyxnQkFBQTtBckQyN0p0Qzs7QXFEMTdKQTtFQUFtQyxnQkFBQTtBckQ4N0puQzs7QXFENzdKQTtFQUF1QyxnQkFBQTtBckRpOEp2Qzs7QXFEaDhKQTtFQUF5QyxnQkFBQTtBckRvOEp6Qzs7QXFEbjhKQTtFQUFzQyxnQkFBQTtBckR1OEp0Qzs7QXFEdDhKQTtFQUFxQyxnQkFBQTtBckQwOEpyQzs7QXFEejhKQTtFQUFvQyxnQkFBQTtBckQ2OEpwQzs7QXFENThKQTtFQUFnQyxnQkFBQTtBckRnOUpoQzs7QXFELzhKQTtFQUFtQyxnQkFBQTtBckRtOUpuQzs7QXFEbDlKQTtFQUFpQyxnQkFBQTtBckRzOUpqQzs7QXFEcjlKQTtFQUFpQyxnQkFBQTtBckR5OUpqQzs7QXFEeDlKQTtFQUFrQyxnQkFBQTtBckQ0OUpsQzs7QXFEMzlKQTtFQUFtQyxnQkFBQTtBckQrOUpuQzs7QXFEOTlKQTtFQUF1QyxnQkFBQTtBckRrK0p2Qzs7QXFEaitKQTtFQUFvQyxnQkFBQTtBckRxK0pwQzs7QXFEcCtKQTtFQUFrQyxnQkFBQTtBckR3K0psQzs7QXFEditKQTtFQUFnQyxnQkFBQTtBckQyK0poQzs7QXFEMStKQTtFQUF1QyxnQkFBQTtBckQ4K0p2Qzs7QXFENytKQTtFQUF1QyxnQkFBQTtBckRpL0p2Qzs7QXFEaC9KQTtFQUFrQyxnQkFBQTtBckRvL0psQzs7QXFEbi9KQTtFQUEyQyxnQkFBQTtBckR1L0ozQzs7QXFEdC9KQTtFQUE2QyxnQkFBQTtBckQwL0o3Qzs7QXFEei9KQTtFQUEyQyxnQkFBQTtBckQ2L0ozQzs7QXFENS9KQTtFQUFvQyxnQkFBQTtBckRnZ0twQzs7QXFELy9KQTtFQUF1QyxnQkFBQTtBckRtZ0t2Qzs7QXFEbGdLQTtFQUFpQyxnQkFBQTtBckRzZ0tqQzs7QXFEcmdLQTtFQUFvQyxnQkFBQTtBckR5Z0twQzs7QXFEeGdLQTtFQUFxQyxnQkFBQTtBckQ0Z0tyQzs7QXFEM2dLQTtFQUFtQyxnQkFBQTtBckQrZ0tuQzs7QXFEOWdLQTtFQUF1QyxnQkFBQTtBckRraEt2Qzs7QXFEamhLQTtFQUFpQyxnQkFBQTtBckRxaEtqQzs7QXFEcGhLQTtFQUFzQyxnQkFBQTtBckR3aEt0Qzs7QXFEdmhLQTtFQUEyQyxnQkFBQTtBckQyaEszQzs7QXFEMWhLQTtFQUFpQyxnQkFBQTtBckQ4aEtqQzs7QXFEN2hLQTtFQUFtQyxnQkFBQTtBckRpaUtuQzs7QXFEaGlLQTtFQUFtQyxnQkFBQTtBckRvaUtuQzs7QXFEbmlLQTtFQUF3QyxnQkFBQTtBckR1aUt4Qzs7QXFEdGlLQTtFQUFtQyxnQkFBQTtBckQwaUtuQzs7QXFEemlLQTtFQUFtQyxnQkFBQTtBckQ2aUtuQzs7QXFENWlLQTtFQUFvQyxnQkFBQTtBckRnaktwQzs7QXFEL2lLQTtFQUFtQyxnQkFBQTtBckRtaktuQzs7QXFEbGpLQTtFQUEwQyxnQkFBQTtBckRzaksxQzs7QXFEcmpLQTtFQUE0QyxnQkFBQTtBckR5aks1Qzs7QXFEeGpLQTtFQUF5QyxnQkFBQTtBckQ0akt6Qzs7QXFEM2pLQTtFQUF3QyxnQkFBQTtBckQrakt4Qzs7QXFEOWpLQTtFQUF3QyxnQkFBQTtBckRra0t4Qzs7QXFEamtLQTtFQUFxQyxnQkFBQTtBckRxa0tyQzs7QXFEcGtLQTtFQUFxQyxnQkFBQTtBckR3a0tyQzs7QXFEdmtLQTtFQUFtQyxnQkFBQTtBckQya0tuQzs7QXFEMWtLQTtFQUFtQyxnQkFBQTtBckQ4a0tuQzs7QXFEN2tLQTtFQUF5QyxnQkFBQTtBckRpbEt6Qzs7QXFEaGxLQTtFQUFtQyxnQkFBQTtBckRvbEtuQzs7QXFEbmxLQTtFQUFrQyxnQkFBQTtBckR1bEtsQzs7QXFEdGxLQTtFQUFzQyxnQkFBQTtBckQwbEt0Qzs7QXFEemxLQTtFQUE2QyxnQkFBQTtBckQ2bEs3Qzs7QXFENWxLQTtFQUF5QyxnQkFBQTtBckRnbUt6Qzs7QXFEL2xLQTtFQUF3QyxnQkFBQTtBckRtbUt4Qzs7QXFEbG1LQTtFQUF1QyxnQkFBQTtBckRzbUt2Qzs7QXFEcm1LQTtFQUF5QyxnQkFBQTtBckR5bUt6Qzs7QXFEeG1LQTtFQUFpQyxnQkFBQTtBckQ0bUtqQzs7QXFEM21LQTtFQUEwQyxnQkFBQTtBckQrbUsxQzs7QXFEOW1LQTtFQUF5QyxnQkFBQTtBckRrbkt6Qzs7QXFEam5LQTtFQUF3QyxnQkFBQTtBckRxbkt4Qzs7QXFEcG5LQTtFQUFvQyxnQkFBQTtBckR3bktwQzs7QXFEdm5LQTtFQUF5QyxnQkFBQTtBckQybkt6Qzs7QXFEMW5LQTtFQUE0QyxnQkFBQTtBckQ4bks1Qzs7QXFEN25LQTtFQUEwQyxnQkFBQTtBckRpb0sxQzs7QXFEaG9LQTtFQUFxQyxnQkFBQTtBckRvb0tyQzs7QXFEbm9LQTtFQUFtQyxnQkFBQTtBckR1b0tuQzs7QXFEdG9LQTtFQUF3QyxnQkFBQTtBckQwb0t4Qzs7QXFEem9LQTtFQUFpQyxnQkFBQTtBckQ2b0tqQzs7QXFENW9LQTtFQUF3QyxnQkFBQTtBckRncEt4Qzs7QXFEL29LQTtFQUEwQyxnQkFBQTtBckRtcEsxQzs7QXFEbHBLQTtFQUF5QyxnQkFBQTtBckRzcEt6Qzs7QXFEcnBLQTtFQUFtQyxnQkFBQTtBckR5cEtuQzs7QXFEeHBLQTtFQUFzQyxnQkFBQTtBckQ0cEt0Qzs7QXFEM3BLQTtFQUFxQyxnQkFBQTtBckQrcEtyQzs7QXFEOXBLQTtFQUF3QyxnQkFBQTtBckRrcUt4Qzs7QXFEanFLQTtFQUFpQyxnQkFBQTtBckRxcUtqQzs7QXFEcHFLQTtFQUFvQyxnQkFBQTtBckR3cUtwQzs7QXFEdnFLQTtFQUFvQyxnQkFBQTtBckQycUtwQzs7QXFEMXFLQTtFQUFpQyxnQkFBQTtBckQ4cUtqQzs7QXFEN3FLQTtFQUFvQyxnQkFBQTtBckRpcktwQzs7QXFEaHJLQTtFQUFtQyxnQkFBQTtBckRvcktuQzs7QXFEbnJLQTtFQUFtQyxnQkFBQTtBckR1cktuQzs7QXFEdHJLQTtFQUEwQyxnQkFBQTtBckQwcksxQzs7QXFEenJLQTtFQUFrQyxnQkFBQTtBckQ2cktsQzs7QXFENXJLQTtFQUE2QyxnQkFBQTtBckRnc0s3Qzs7QXFEL3JLQTtFQUFxQyxnQkFBQTtBckRtc0tyQzs7QXFEbHNLQTtFQUFrQyxnQkFBQTtBckRzc0tsQzs7QXFEcnNLQTtFQUFrQyxnQkFBQTtBckR5c0tsQzs7QXFEeHNLQTtFQUF1QyxnQkFBQTtBckQ0c0t2Qzs7QXFEM3NLQTtFQUFrQyxnQkFBQTtBckQrc0tsQzs7QXFEOXNLQTtFQUFtQyxnQkFBQTtBckRrdEtuQzs7QXFEanRLQTtFQUFzQyxnQkFBQTtBckRxdEt0Qzs7QXFEcHRLQTtFQUF1QyxnQkFBQTtBckR3dEt2Qzs7QXFEdnRLQTtFQUFrQyxnQkFBQTtBckQydEtsQzs7QXFEMXRLQTtFQUF1QyxnQkFBQTtBckQ4dEt2Qzs7QXFEN3RLQTtFQUF1QyxnQkFBQTtBckRpdUt2Qzs7QXFEaHVLQTtFQUFpQyxnQkFBQTtBckRvdUtqQzs7QXFEbnVLQTtFQUFvQyxnQkFBQTtBckR1dUtwQzs7QXFEdHVLQTtFQUF3QyxnQkFBQTtBckQwdUt4Qzs7QXFEenVLQTtFQUFnQyxnQkFBQTtBckQ2dUtoQzs7QXFENXVLQTtFQUFxQyxnQkFBQTtBckRndktyQzs7QXFEL3VLQTtFQUEyQyxnQkFBQTtBckRtdkszQzs7QXFEbHZLQTtFQUE0QyxnQkFBQTtBckRzdks1Qzs7QXFEcnZLQTtFQUF5QyxnQkFBQTtBckR5dkt6Qzs7QXFEeHZLQTtFQUFzQyxnQkFBQTtBckQ0dkt0Qzs7QXFEM3ZLQTtFQUFvQyxnQkFBQTtBckQrdktwQzs7QXFEOXZLQTtFQUFxQyxnQkFBQTtBckRrd0tyQzs7QXFEandLQTtFQUFpQyxnQkFBQTtBckRxd0tqQzs7QXFEcHdLQTtFQUFrQyxnQkFBQTtBckR3d0tsQzs7QXFEdndLQTtFQUF3QyxnQkFBQTtBckQyd0t4Qzs7QXFEMXdLQTtFQUFpQyxnQkFBQTtBckQ4d0tqQzs7QXFEN3dLQTtFQUE0QyxnQkFBQTtBckRpeEs1Qzs7QXFEaHhLQTtFQUFnRCxnQkFBQTtBckRveEtoRDs7QXFEbnhLQTtFQUEwQyxnQkFBQTtBckR1eEsxQzs7QXFEdHhLQTtFQUE4QyxnQkFBQTtBckQweEs5Qzs7QXFEenhLQTtFQUE2QyxnQkFBQTtBckQ2eEs3Qzs7QXFENXhLQTtFQUFpRCxnQkFBQTtBckRneUtqRDs7QXFEL3hLQTtFQUEyQyxnQkFBQTtBckRteUszQzs7QXFEbHlLQTtFQUErQyxnQkFBQTtBckRzeUsvQzs7QXFEcnlLQTtFQUFzQyxnQkFBQTtBckR5eUt0Qzs7QXFEeHlLQTtFQUE4QyxnQkFBQTtBckQ0eUs5Qzs7QXFEM3lLQTtFQUFrRCxnQkFBQTtBckQreUtsRDs7QXFEOXlLQTtFQUE0QyxnQkFBQTtBckRreks1Qzs7QXFEanpLQTtFQUFnRCxnQkFBQTtBckRxektoRDs7QXFEcHpLQTtFQUFvQyxnQkFBQTtBckR3ektwQzs7QXFEdnpLQTtFQUF1QyxnQkFBQTtBckQyekt2Qzs7QXFEMXpLQTtFQUF1QyxnQkFBQTtBckQ4ekt2Qzs7QXFEN3pLQTtFQUFnQyxnQkFBQTtBckRpMEtoQzs7QXFEaDBLQTtFQUEwQyxnQkFBQTtBckRvMEsxQzs7QXFEbjBLQTtFQUFvQyxnQkFBQTtBckR1MEtwQzs7QXFEdDBLQTtFQUF5QyxnQkFBQTtBckQwMEt6Qzs7QXFEejBLQTtFQUF3QyxnQkFBQTtBckQ2MEt4Qzs7QXFENTBLQTtFQUFtQyxnQkFBQTtBckRnMUtuQzs7QXFELzBLQTtFQUFvQyxnQkFBQTtBckRtMUtwQzs7QXFEbDFLQTtFQUFvQyxnQkFBQTtBckRzMUtwQzs7QXFEcjFLQTtFQUFvQyxnQkFBQTtBckR5MUtwQzs7QXFEeDFLQTtFQUFzQyxnQkFBQTtBckQ0MUt0Qzs7QXFEMzFLQTtFQUFtQyxnQkFBQTtBckQrMUtuQzs7QXFEOTFLQTtFQUF3QyxnQkFBQTtBckRrMkt4Qzs7QXFEajJLQTtFQUE0QyxnQkFBQTtBckRxMks1Qzs7QXFEcDJLQTtFQUF3QyxnQkFBQTtBckR3Mkt4Qzs7QXFEdjJLQTtFQUEyQyxnQkFBQTtBckQyMkszQzs7QXFEMTJLQTtFQUEyQyxnQkFBQTtBckQ4MkszQzs7QXFENzJLQTtFQUFzQyxnQkFBQTtBckRpM0t0Qzs7QXFEaDNLQTtFQUFrQyxnQkFBQTtBckRvM0tsQzs7QXFEbjNLQTtFQUFpQyxnQkFBQTtBckR1M0tqQzs7QXFEdDNLQTtFQUE4QyxnQkFBQTtBckQwM0s5Qzs7QXFEejNLQTtFQUFzQyxnQkFBQTtBckQ2M0t0Qzs7QXFENTNLQTtFQUEwQyxnQkFBQTtBckRnNEsxQzs7QXFELzNLQTtFQUEwQyxnQkFBQTtBckRtNEsxQzs7QXFEbDRLQTtFQUF5QyxnQkFBQTtBckRzNEt6Qzs7QXFEcjRLQTtFQUF1QyxnQkFBQTtBckR5NEt2Qzs7QXFEeDRLQTtFQUFrQyxnQkFBQTtBckQ0NEtsQzs7QXFEMzRLQTtFQUF5QyxnQkFBQTtBckQrNEt6Qzs7QXFEOTRLQTtFQUF5QyxnQkFBQTtBckRrNUt6Qzs7QXFEajVLQTtFQUEwQyxnQkFBQTtBckRxNUsxQzs7QXFEcDVLQTtFQUF5QyxnQkFBQTtBckR3NUt6Qzs7QXFEdjVLQTtFQUF3QyxnQkFBQTtBckQyNUt4Qzs7QXFEMTVLQTtFQUF5QyxnQkFBQTtBckQ4NUt6Qzs7QXFENzVLQTtFQUF3QyxnQkFBQTtBckRpNkt4Qzs7QXFEaDZLQTtFQUFpQyxnQkFBQTtBckRvNktqQzs7QXFEbjZLQTtFQUF3QyxnQkFBQTtBckR1Nkt4Qzs7QXFEdDZLQTtFQUFzQyxnQkFBQTtBckQwNkt0Qzs7QXFEejZLQTtFQUF5QyxnQkFBQTtBckQ2Nkt6Qzs7QXFENTZLQTtFQUFrQyxnQkFBQTtBckRnN0tsQzs7QXFELzZLQTtFQUFzQyxnQkFBQTtBckRtN0t0Qzs7QXFEbDdLQTtFQUE0QyxnQkFBQTtBckRzN0s1Qzs7QXFEcjdLQTtFQUF3QyxnQkFBQTtBckR5N0t4Qzs7QXFEeDdLQTtFQUFtQyxnQkFBQTtBckQ0N0tuQzs7QXFEMzdLQTtFQUFtQyxnQkFBQTtBckQrN0tuQzs7QXFEOTdLQTtFQUF3QyxnQkFBQTtBckRrOEt4Qzs7QXFEajhLQTtFQUEwQyxnQkFBQTtBckRxOEsxQzs7QXFEcDhLQTtFQUFtQyxnQkFBQTtBckR3OEtuQzs7QXFEdjhLQTtFQUFxQyxnQkFBQTtBckQyOEtyQzs7QXFEMThLQTtFQUF3QyxnQkFBQTtBckQ4OEt4Qzs7QXFENzhLQTtFQUF5QyxnQkFBQTtBckRpOUt6Qzs7QXFEaDlLQTtFQUF3QyxnQkFBQTtBckRvOUt4Qzs7QXFEbjlLQTtFQUErQyxnQkFBQTtBckR1OUsvQzs7QXFEdDlLQTtFQUFzQyxnQkFBQTtBckQwOUt0Qzs7QXFEejlLQTtFQUFtQyxnQkFBQTtBckQ2OUtuQzs7QXFENTlLQTtFQUFxQyxnQkFBQTtBckRnK0tyQzs7QXFELzlLQTtFQUE2QyxnQkFBQTtBckRtK0s3Qzs7QXFEbCtLQTtFQUFnQyxnQkFBQTtBckRzK0toQzs7QXFEcitLQTtFQUF3QyxnQkFBQTtBckR5K0t4Qzs7QXFEeCtLQTtFQUF3QyxnQkFBQTtBckQ0K0t4Qzs7QXFEMytLQTtFQUFtQyxnQkFBQTtBckQrK0tuQzs7QXFEOStLQTtFQUFxQyxnQkFBQTtBckRrL0tyQzs7QXFEai9LQTtFQUFpQyxnQkFBQTtBckRxL0tqQzs7QXFEcC9LQTtFQUF1QyxnQkFBQTtBckR3L0t2Qzs7QXFEdi9LQTtFQUFrQyxnQkFBQTtBckQyL0tsQzs7QXFEMS9LQTtFQUFvQyxnQkFBQTtBckQ4L0twQzs7QXFENy9LQTtFQUEwQyxnQkFBQTtBckRpZ0wxQzs7QXFEaGdMQTtFQUFvQyxnQkFBQTtBckRvZ0xwQzs7QXFEbmdMQTtFQUFzQyxnQkFBQTtBckR1Z0x0Qzs7QXFEdGdMQTtFQUFpQyxnQkFBQTtBckQwZ0xqQzs7QXFEemdMQTtFQUFxQyxnQkFBQTtBckQ2Z0xyQzs7QXFENWdMQTtFQUFvQyxnQkFBQTtBckRnaExwQzs7QXFEL2dMQTtFQUFrQyxnQkFBQTtBckRtaExsQzs7QXFEbGhMQTtFQUF5QyxnQkFBQTtBckRzaEx6Qzs7QXFEcmhMQTtFQUFtQyxnQkFBQTtBckR5aExuQzs7QXFEeGhMQTtFQUF1QyxnQkFBQTtBckQ0aEx2Qzs7QXFEM2hMQTtFQUFvQyxnQkFBQTtBckQraExwQzs7QXFEOWhMQTtFQUEyQyxnQkFBQTtBckRraUwzQzs7QXFEamlMQTtFQUFnQyxnQkFBQTtBckRxaUxoQzs7QXFEcGlMQTtFQUFpQyxnQkFBQTtBckR3aUxqQzs7QXFEdmlMQTtFQUFpQyxnQkFBQTtBckQyaUxqQzs7QXFEMWlMQTtFQUFrQyxnQkFBQTtBckQ4aUxsQzs7QXFEN2lMQTtFQUFpQyxnQkFBQTtBckRpakxqQzs7QXFEaGpMQTtFQUFzQyxnQkFBQTtBckRvakx0Qzs7QXFEbmpMQTtFQUFrQyxnQkFBQTtBckR1akxsQzs7QXFEdGpMQTtFQUF1QyxnQkFBQTtBckQwakx2Qzs7QXFEempMQTtFQUFxQyxnQkFBQTtBckQ2akxyQzs7QXFENWpMQTtFQUEyQyxnQkFBQTtBckRna0wzQzs7QXFEL2pMQTtFQUE2QyxnQkFBQTtBckRta0w3Qzs7QXFEbGtMQTtFQUE0QyxnQkFBQTtBckRza0w1Qzs7QXFEcmtMQTtFQUEwQyxnQkFBQTtBckR5a0wxQzs7QXFEeGtMQTtFQUFrQyxnQkFBQTtBckQ0a0xsQzs7QXFEM2tMQTtFQUFxQyxnQkFBQTtBckQra0xyQzs7QXFEOWtMQTtFQUF3QyxnQkFBQTtBckRrbEx4Qzs7QXFEamxMQTtFQUF1QyxnQkFBQTtBckRxbEx2Qzs7QXFEcGxMQTtFQUErQixnQkFBQTtBckR3bEwvQjs7QXFEdmxMQTtFQUFxQyxnQkFBQTtBckQybExyQzs7QXFEMWxMQTtFQUFvQyxnQkFBQTtBckQ4bExwQzs7QXFEN2xMQTtFQUF5QyxnQkFBQTtBckRpbUx6Qzs7QXFEaG1MQTtFQUEwQyxnQkFBQTtBckRvbUwxQzs7QXFEbm1MQTtFQUFvQyxnQkFBQTtBckR1bUxwQzs7QXFEdG1MQTtFQUFzQyxnQkFBQTtBckQwbUx0Qzs7QXFEem1MQTtFQUF3QyxnQkFBQTtBckQ2bUx4Qzs7QXFENW1MQTtFQUE4QyxnQkFBQTtBckRnbkw5Qzs7QXFEL21MQTtFQUE2QyxnQkFBQTtBckRtbkw3Qzs7QXFEbG5MQTtFQUE2QyxnQkFBQTtBckRzbkw3Qzs7QXFEcm5MQTtFQUFnRCxnQkFBQTtBckR5bkxoRDs7QXFEeG5MQTtFQUF1RCxnQkFBQTtBckQ0bkx2RDs7QXFEM25MQTtFQUF3QyxnQkFBQTtBckQrbkx4Qzs7QXFEOW5MQTtFQUF3QyxnQkFBQTtBckRrb0x4Qzs7QXFEam9MQTtFQUFzQyxnQkFBQTtBckRxb0x0Qzs7QXFEcG9MQTtFQUFzQyxnQkFBQTtBckR3b0x0Qzs7QXFEdm9MQTtFQUF1QyxnQkFBQTtBckQyb0x2Qzs7QXFEMW9MQTtFQUFtQyxnQkFBQTtBckQ4b0xuQzs7QXFEN29MQTtFQUFrQyxnQkFBQTtBckRpcExsQzs7QXFEaHBMQTtFQUF5QyxnQkFBQTtBckRvcEx6Qzs7QXFEbnBMQTtFQUFpQyxnQkFBQTtBckR1cExqQzs7QXFEdHBMQTtFQUF1QyxnQkFBQTtBckQwcEx2Qzs7QXFEenBMQTtFQUFrQyxnQkFBQTtBckQ2cExsQzs7QXFENXBMQTtFQUF1QyxnQkFBQTtBckRncUx2Qzs7QXFEL3BMQTtFQUFzQyxnQkFBQTtBckRtcUx0Qzs7QXFEbHFMQTtFQUFtQyxnQkFBQTtBckRzcUxuQzs7QXFEcnFMQTtFQUF5QyxnQkFBQTtBckR5cUx6Qzs7QXFEeHFMQTtFQUErQyxnQkFBQTtBckQ0cUwvQzs7QXFEM3FMQTtFQUFvQyxnQkFBQTtBckQrcUxwQzs7QXFEOXFMQTtFQUFrQyxnQkFBQTtBckRrckxsQzs7QXFEanJMQTtFQUFrQyxnQkFBQTtBckRxckxsQzs7QXFEcHJMQTtFQUFrQyxnQkFBQTtBckR3ckxsQzs7QXFEdnJMQTtFQUF1QyxnQkFBQTtBckQyckx2Qzs7QXFEMXJMQTtFQUFvQyxnQkFBQTtBckQ4ckxwQzs7QXFEN3JMQTtFQUE2QyxnQkFBQTtBckRpc0w3Qzs7QXFEaHNMQTtFQUFzQyxnQkFBQTtBckRvc0x0Qzs7QXFEbnNMQTtFQUEwQyxnQkFBQTtBckR1c0wxQzs7QXFEdHNMQTtFQUFvQyxnQkFBQTtBckQwc0xwQzs7QXFEenNMQTtFQUFrQyxnQkFBQTtBckQ2c0xsQzs7QXFENXNMQTtFQUFpQyxnQkFBQTtBckRndExqQzs7QXFEL3NMQTtFQUF3QyxnQkFBQTtBckRtdEx4Qzs7QXFEbHRMQTtFQUE0QyxnQkFBQTtBckRzdEw1Qzs7QXFEcnRMQTtFQUFrQyxnQkFBQTtBckR5dExsQzs7QXFEeHRMQTtFQUFzQyxnQkFBQTtBckQ0dEx0Qzs7QXFEM3RMQTtFQUEwQyxnQkFBQTtBckQrdEwxQzs7QXFEOXRMQTtFQUE4QyxnQkFBQTtBckRrdUw5Qzs7QXFEanVMQTtFQUFpQyxnQkFBQTtBckRxdUxqQzs7QXFEcHVMQTtFQUFtQyxnQkFBQTtBckR3dUxuQzs7QXFEdnVMQTtFQUF3QyxnQkFBQTtBckQydUx4Qzs7QXFEMXVMQTtFQUFtQyxnQkFBQTtBckQ4dUxuQzs7QXFEN3VMQTtFQUFrQyxnQkFBQTtBckRpdkxsQzs7QXFEaHZMQTtFQUEwQyxnQkFBQTtBckRvdkwxQzs7QXFEbnZMQTtFQUEwQyxnQkFBQTtBckR1dkwxQzs7QXFEdHZMQTtFQUF5QyxnQkFBQTtBckQwdkx6Qzs7QXFEenZMQTtFQUF5QyxnQkFBQTtBckQ2dkx6Qzs7QXFENXZMQTtFQUFtQyxnQkFBQTtBckRnd0xuQzs7QXFEL3ZMQTtFQUFnQyxnQkFBQTtBckRtd0xoQzs7QXFEbHdMQTtFQUFtQyxnQkFBQTtBckRzd0xuQzs7QXFEcndMQTtFQUEwQyxnQkFBQTtBckR5d0wxQzs7QXFEeHdMQTtFQUErQixnQkFBQTtBckQ0d0wvQjs7QXFEM3dMQTtFQUFtQyxnQkFBQTtBckQrd0xuQzs7QXFEOXdMQTtFQUFvQyxnQkFBQTtBckRreExwQzs7QXFEanhMQTtFQUEyQyxnQkFBQTtBckRxeEwzQzs7QXFEcHhMQTtFQUFrQyxnQkFBQTtBckR3eExsQzs7QXFEdnhMQTtFQUFpQyxnQkFBQTtBckQyeExqQzs7QXFEMXhMQTtFQUFtQyxnQkFBQTtBckQ4eExuQzs7QXFEN3hMQTtFQUFrQyxnQkFBQTtBckRpeUxsQzs7QXFEaHlMQTtFQUFvQyxnQkFBQTtBckRveUxwQzs7QXFEbnlMQTtFQUFxQyxnQkFBQTtBckR1eUxyQzs7QXFEdHlMQTtFQUEyQyxnQkFBQTtBckQweUwzQzs7QXFEenlMQTtFQUFzQyxnQkFBQTtBckQ2eUx0Qzs7QXFENXlMQTtFQUFpQyxnQkFBQTtBckRnekxqQzs7QXFEL3lMQTtFQUFxQyxnQkFBQTtBckRtekxyQzs7QXFEbHpMQTtFQUF3QyxnQkFBQTtBckRzekx4Qzs7QXFEcnpMQTtFQUFrQyxnQkFBQTtBckR5ekxsQzs7QXFEeHpMQTtFQUE2QyxnQkFBQTtBckQ0ekw3Qzs7QXFEM3pMQTtFQUF1QyxnQkFBQTtBckQrekx2Qzs7QXFEOXpMQTtFQUFtQyxnQkFBQTtBckRrMExuQzs7QXFEajBMQTtFQUFtQyxnQkFBQTtBckRxMExuQzs7QXFEcDBMQTtFQUF1QyxnQkFBQTtBckR3MEx2Qzs7QXFEdjBMQTtFQUFxQyxnQkFBQTtBckQyMExyQzs7QXFEMTBMQTtFQUFvQyxnQkFBQTtBckQ4MExwQzs7QXFENzBMQTtFQUFtQyxnQkFBQTtBckRpMUxuQzs7QXFEaDFMQTtFQUFnQyxnQkFBQTtBckRvMUxoQzs7QXFEbjFMQTtFQUFnQyxnQkFBQTtBckR1MUxoQzs7QXFEdDFMQTtFQUFpQyxnQkFBQTtBckQwMUxqQzs7QXFEejFMQTtFQUFxQyxnQkFBQTtBckQ2MUxyQzs7QXFENTFMQTtFQUEyQyxnQkFBQTtBckRnMkwzQzs7QXFELzFMQTtFQUEyQyxnQkFBQTtBckRtMkwzQzs7QXFEbDJMQTtFQUF1QyxnQkFBQTtBckRzMkx2Qzs7QXFEcjJMQTtFQUF3QyxnQkFBQTtBckR5Mkx4Qzs7QXFEeDJMQTtFQUF1QyxnQkFBQTtBckQ0Mkx2Qzs7QXFEMzJMQTtFQUFxQyxnQkFBQTtBckQrMkxyQzs7QXFEOTJMQTtFQUFzQyxnQkFBQTtBckRrM0x0Qzs7QXFEajNMQTtFQUF5QyxnQkFBQTtBckRxM0x6Qzs7QXFEcDNMQTtFQUEwQyxnQkFBQTtBckR3M0wxQzs7QXFEdjNMQTtFQUF5QyxnQkFBQTtBckQyM0x6Qzs7QXFEMTNMQTtFQUFzQyxnQkFBQTtBckQ4M0x0Qzs7QXFENzNMQTtFQUFvQyxnQkFBQTtBckRpNExwQzs7QXFEaDRMQTtFQUF1QyxnQkFBQTtBckRvNEx2Qzs7QXFEbjRMQTtFQUF1QyxnQkFBQTtBckR1NEx2Qzs7QXFEdDRMQTtFQUF1QyxnQkFBQTtBckQwNEx2Qzs7QXFEejRMQTtFQUFzQyxnQkFBQTtBckQ2NEx0Qzs7QXFENTRMQTtFQUF3QyxnQkFBQTtBckRnNUx4Qzs7QXFELzRMQTtFQUF3QyxnQkFBQTtBckRtNUx4Qzs7QXFEbDVMQTtFQUF1QyxnQkFBQTtBckRzNUx2Qzs7QXFEcjVMQTtFQUFxQyxnQkFBQTtBckR5NUxyQzs7QXFEeDVMQTtFQUFxQyxnQkFBQTtBckQ0NUxyQzs7QXFEMzVMQTtFQUF1QyxnQkFBQTtBckQrNUx2Qzs7QXFEOTVMQTtFQUFrQyxnQkFBQTtBckRrNkxsQzs7QXFEajZMQTtFQUFzQyxnQkFBQTtBckRxNkx0Qzs7QXFEcDZMQTtFQUF3QyxnQkFBQTtBckR3Nkx4Qzs7QXFEdjZMQTtFQUFpQyxnQkFBQTtBckQyNkxqQzs7QXFEMTZMQTtFQUFxQyxnQkFBQTtBckQ4NkxyQzs7QXFENzZMQTtFQUEwQyxnQkFBQTtBckRpN0wxQzs7QXFEaDdMQTtFQUFxQyxnQkFBQTtBckRvN0xyQzs7QXFEbjdMQTtFQUFtQyxnQkFBQTtBckR1N0xuQzs7QXFEdDdMQTtFQUEwQyxnQkFBQTtBckQwN0wxQzs7QXFEejdMQTtFQUFrQyxnQkFBQTtBckQ2N0xsQzs7QXFENTdMQTtFQUF5QyxnQkFBQTtBckRnOEx6Qzs7QXFELzdMQTtFQUF1QyxnQkFBQTtBckRtOEx2Qzs7QXFEbDhMQTtFQUFvQyxnQkFBQTtBckRzOExwQzs7QXFEcjhMQTtFQUFtQyxnQkFBQTtBckR5OExuQzs7QXFEeDhMQTtFQUEwQyxnQkFBQTtBckQ0OEwxQzs7QXFEMzhMQTtFQUFpQyxnQkFBQTtBckQrOExqQzs7QXFEOThMQTtFQUFrQyxnQkFBQTtBckRrOUxsQzs7QXFEajlMQTtFQUFrQyxnQkFBQTtBckRxOUxsQzs7QXFEcDlMQTtFQUFrQyxnQkFBQTtBckR3OUxsQzs7QXFEdjlMQTtFQUF3QyxnQkFBQTtBckQyOUx4Qzs7QXFEMTlMQTtFQUFtQyxnQkFBQTtBckQ4OUxuQzs7QXFENzlMQTtFQUFrQyxnQkFBQTtBckRpK0xsQzs7QXFEaCtMQTtFQUF5QyxnQkFBQTtBckRvK0x6Qzs7QXFEbitMQTtFQUFvQyxnQkFBQTtBckR1K0xwQzs7QXFEdCtMQTtFQUFpQyxnQkFBQTtBckQwK0xqQzs7QXFEeitMQTtFQUFrQyxnQkFBQTtBckQ2K0xsQzs7QXFENStMQTtFQUF3QyxnQkFBQTtBckRnL0x4Qzs7QXFELytMQTtFQUFvQyxnQkFBQTtBckRtL0xwQzs7QXFEbC9MQTtFQUErQixnQkFBQTtBckRzL0wvQjs7QXFEci9MQTtFQUFnQyxnQkFBQTtBckR5L0xoQzs7QXFEeC9MQTtFQUFzQyxnQkFBQTtBckQ0L0x0Qzs7QXFEMy9MQTtFQUE0QyxnQkFBQTtBckQrL0w1Qzs7QXFEOS9MQTtFQUF3QyxnQkFBQTtBckRrZ014Qzs7QXFEamdNQTtFQUF3QyxnQkFBQTtBckRxZ014Qzs7QXFEcGdNQTtFQUF1QyxnQkFBQTtBckR3Z012Qzs7QXFEdmdNQTtFQUFzQyxnQkFBQTtBckQyZ010Qzs7QXFEMWdNQTtFQUFxQyxnQkFBQTtBckQ4Z01yQzs7QXFEN2dNQTtFQUF5QyxnQkFBQTtBckRpaE16Qzs7QXFEaGhNQTtFQUFrQyxnQkFBQTtBckRvaE1sQzs7QXFEbmhNQTtFQUFvQyxnQkFBQTtBckR1aE1wQzs7QXFEdGhNQTtFQUFtQyxnQkFBQTtBckQwaE1uQzs7QXFEemhNQTtFQUFzQyxnQkFBQTtBckQ2aE10Qzs7QXFENWhNQTtFQUFrQyxnQkFBQTtBckRnaU1sQzs7QXFEL2hNQTtFQUF3QyxnQkFBQTtBckRtaU14Qzs7QXFEbGlNQTtFQUFpQyxnQkFBQTtBckRzaU1qQzs7QXFEcmlNQTtFQUFtQyxnQkFBQTtBckR5aU1uQzs7QXFEeGlNQTtFQUFrQyxnQkFBQTtBckQ0aU1sQzs7QXFEM2lNQTtFQUFtQyxnQkFBQTtBckQraU1uQzs7QXFEOWlNQTtFQUEyQyxnQkFBQTtBckRrak0zQzs7QXFEampNQTtFQUFtQyxnQkFBQTtBckRxak1uQzs7QXFEcGpNQTtFQUFxQyxnQkFBQTtBckR3ak1yQzs7QXFEdmpNQTtFQUE0QyxnQkFBQTtBckQyak01Qzs7QXFEMWpNQTtFQUF1QyxnQkFBQTtBckQ4ak12Qzs7QXFEN2pNQTtFQUFrQyxnQkFBQTtBckRpa01sQzs7QXFEaGtNQTtFQUFpQyxnQkFBQTtBckRva01qQzs7QXFEbmtNQTtFQUF3QyxnQkFBQTtBckR1a014Qzs7QXFEdGtNQTtFQUFpQyxnQkFBQTtBckQwa01qQzs7QXFEemtNQTtFQUF5QyxnQkFBQTtBckQ2a016Qzs7QXFENWtNQTtFQUE0QyxnQkFBQTtBckRnbE01Qzs7QXFEL2tNQTtFQUE0QyxnQkFBQTtBckRtbE01Qzs7QXFEbGxNQTtFQUEyQyxnQkFBQTtBckRzbE0zQzs7QXFEcmxNQTtFQUFvQyxnQkFBQTtBckR5bE1wQzs7QXFEeGxNQTtFQUF3QyxnQkFBQTtBckQ0bE14Qzs7QXFEM2xNQTtFQUF1QyxnQkFBQTtBckQrbE12Qzs7QXFEOWxNQTtFQUEyQyxnQkFBQTtBckRrbU0zQzs7QXFEam1NQTtFQUFnQyxnQkFBQTtBckRxbU1oQzs7QXFEcG1NQTtFQUFpRCxnQkFBQTtBckR3bU1qRDs7QXFEdm1NQTtFQUFnRCxnQkFBQTtBckQybU1oRDs7QXFEMW1NQTtFQUFxQyxnQkFBQTtBckQ4bU1yQzs7QXFEN21NQTtFQUFzQyxnQkFBQTtBckRpbk10Qzs7QXFEaG5NQTtFQUE2QyxnQkFBQTtBckRvbk03Qzs7QXFEbm5NQTtFQUF1QyxnQkFBQTtBckR1bk12Qzs7QXFEdG5NQTtFQUF1QyxnQkFBQTtBckQwbk12Qzs7QXFEem5NQTtFQUFvQyxnQkFBQTtBckQ2bk1wQzs7QXFENW5NQTtFQUFvQyxnQkFBQTtBckRnb01wQzs7QXFEL25NQTtFQUFtQyxnQkFBQTtBckRtb01uQzs7QXFEbG9NQTtFQUFrQyxnQkFBQTtBckRzb01sQzs7QXFEcm9NQTtFQUFpQyxnQkFBQTtBckR5b01qQzs7QXFEeG9NQTtFQUFpQyxnQkFBQTtBckQ0b01qQzs7QXFEM29NQTtFQUF3QyxnQkFBQTtBckQrb014Qzs7QXFEOW9NQTtFQUF5QyxnQkFBQTtBckRrcE16Qzs7QXFEanBNQTtFQUFrQyxnQkFBQTtBckRxcE1sQzs7QXFEcHBNQTtFQUFtQyxnQkFBQTtBckR3cE1uQzs7QXFEdnBNQTtFQUFtQyxnQkFBQTtBckQycE1uQzs7QXFEMXBNQTtFQUFpRCxn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QTtFQUNJLGNBQUE7QTVEODNQSjs7QUNqNFBBOzs7OztDQUFBO0FDRkE7OztDQUFBO0FDRUE7O0VBQUE7QUNGQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDV0E7Ozs7Ozs7Ozs7Q0FBQTtBQW1CQTs7O0NBQUE7QUFRQTs7O0NBQUE7QUN0Q0Esc0JBQUE7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0ZBLHNCQUFBO0FBRUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNGQTtzRUFBQTtBQUlBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNKQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQ0Esd0NBQUE7QUNEQTs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0VBLGtGQUFBO0FBYUEsd0ZBQUE7QUFXQSxvR0FBQTtBQVVBLHdEQUFBO0FDcENBOzs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7RUFBQTtBQ0FBOzs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7O0NBQUE7QWtDRUE7RUFDSSxrQ0FBQTtFQUNBLHNCQUFBO0VBQ0EsbUNBQUE7RUFDQSxzQkFBQTtFQUNBLGdDQUFBO0VBQ0Esd0NBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0E3RGs3UUo7O0E2RDc2UUE7RUFDSSxjQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLGtEQUFBO0VBQ0EsNEJBQUE7RUFDQSw4Q0FBQTtFQUNBLHFDQUFBO0VBQ0Esb0RBQUE7RUFDQSw0QkFBQTtFQUNBLGVBQUE7RUFDQSxlQUFBO0E3RGc3UUo7QTZEOTZRSTtFQUNJLGtEQUFBO0VBQ0EsMkJBQUE7RUFDQSxxdkJBQUE7QTdEZzdRUjtBNkQ3NlFJO0VBQ0ksaURBQUE7RUFDQSxtREFBQTtBN0QrNlFSO0E2RDU2UUk7RUFDSSxhQUFBO0E3RDg2UVI7QTZEMzZRSTtFQUNJLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSw4QkFBQTtBN0Q2NlFSOztBQ3o5UUE7Ozs7O0NBQUE7QUNGQTs7O0NBQUE7QUNFQTs7RUFBQTtBQ0ZBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNXQTs7Ozs7Ozs7OztDQUFBO0FBbUJBOzs7Q0FBQTtBQVFBOzs7Q0FBQTtBQ3RDQSxzQkFBQTtBQUVBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDRkEsc0JBQUE7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0ZBO3NFQUFBO0FBSUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0pBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNDQSx3Q0FBQTtBQ0RBOzs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7OztDQUFBO0FDRUEsa0ZBQUE7QUFhQSx3RkFBQTtBQVdBLG9HQUFBO0FBVUEsd0RBQUE7QUNwQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7OztFQUFBO0FDQUE7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Q0FBQTtBbUNPQTtFQUNJLGtCQUFBO0VBQ0EscUJBQUE7QTlEcWdTSjtBOERuZ1NJO0VBQ0ksMEJBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0E5RHFnU1I7QThEbGdTSTtFQUNJLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxVQUFBO0VBQ0EsZUFBQTtBOURvZ1NSO0E4RGxnU1E7RUFDSSw0RUFBQTtBOURvZ1NaO0E4RGpnU1E7RUFDSSxtQmhDeEJRO0E5QjJoU3BCO0E4RGpnU1k7RUFDSSxVQUFBO0E5RG1nU2hCO0E4RDkvUkk7RUFDSSxXQXRDTztFQXVDUCxZQXRDUTtFQXVDUixtQmhDUlc7RWdDU1gsa0JBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7QTlEZ2dTUjtBOEQ5L1JRO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0EvQ0U7RUFnREYsWUFoREU7RUFpREYsbUJBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxnQmhDN0JPO0VnQzhCUCxzQ0FBQTtFQUNBLGdCQUFBO0E5RGdnU1o7QThENS9SSTtFbkNsREEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0EzQmlqU0o7O0FDdGtTQTs7Ozs7Q0FBQTtBQ0ZBOzs7Q0FBQTtBQ0VBOztFQUFBO0FDRkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ1dBOzs7Ozs7Ozs7O0NBQUE7QUFtQkE7OztDQUFBO0FBUUE7OztDQUFBO0FDdENBLHNCQUFBO0FBRUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNGQSxzQkFBQTtBQUVBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDRkE7c0VBQUE7QUFJQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDSkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0NBLHdDQUFBO0FDREE7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNFQSxrRkFBQTtBQWFBLHdGQUFBO0FBV0Esb0dBQUE7QUFVQSx3REFBQTtBQ3BDQTs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7O0VBQUE7QUNBQTs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7OztDQUFBO0FvQ1NBO0V6Q21CZ0IsOEJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0V5Q2pCWixrQkFBQTtBL0RvblRKO0ErRGxuVEk7RWpEdUZZOzs7O09BQUE7RUF3Qlosc0JBQUE7RWlEN0dJLGFBQUE7RUFDQSw4QkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLG9CQWZ3QjtFQWdCeEIsZUFsQmE7RUFtQmIseUJBQUE7RUFDQSxrQkFmaUI7RUFnQmpCLGdCQWpCb0I7RUFrQnBCLGVBQUE7QS9EeW5UUjtBK0R2blRRO0VBRUksYUFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7QS9Ed25UWjtBZ0JwalRJO0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDBHQUFBO1VBQUEsa0dBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBT0ksVytDckYrRjtFL0NzRi9GLFkrQ3RGK0Y7QS9Ec29UM0c7QWdCdGpUUTtFQVRKO0lBVVEsMEdBQUE7WUFBQSxrR0FBQTtFaEJ5alRWO0FBQ0Y7QStEdG9UWTtFQUNJLHlCQUFBO0EvRHdvVGhCO0ErRG5vVEk7RWpEOERZOzs7O09BQUE7RUF3Qlosd0JBQUE7RWlEcEZJLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQXpDdUI7RUEwQ3ZCLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQTFDb0I7RUEyQ3BCLDBCQUFBO0VBQ0EsOENBQUE7QS9EMG9UUjtBK0R4b1RRO0VqRGdEUTs7OztPQUFBO0VBQUE7Ozs7T0FBQTtFQXdCWixzQkFBQTtFaUR0RVEsZUFwRFM7RUFxRFQsZUFBQTtBL0RvcFRaO0ErRGxwVFk7RUFFSSxtQmpDckJHO0E5QndxVG5CO0ErRGhwVFk7RUFDSSxtQmpDekJHO0E5QjJxVG5COztBQy9zVEE7Ozs7O0NBQUE7QUNGQTs7O0NBQUE7QUNFQTs7RUFBQTtBQ0ZBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNXQTs7Ozs7Ozs7OztDQUFBO0FBbUJBOzs7Q0FBQTtBQVFBOzs7Q0FBQTtBQ3RDQSxzQkFBQTtBQUVBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDRkEsc0JBQUE7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0ZBO3NFQUFBO0FBSUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0pBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNDQSx3Q0FBQTtBQ0RBOzs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7OztDQUFBO0FDRUEsa0ZBQUE7QUFhQSx3RkFBQTtBQVdBLG9HQUFBO0FBVUEsd0RBQUE7QUNwQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7OztFQUFBO0FDQUE7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Q0FBQTtBcUNFQTtFQUNJLDhCQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtFQUNBLDBCQUFBO0VBQ0EsNENBQUE7RUFDQSwwQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtBaEVnd1VKO0FnRTl2VUk7RUFDSSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLHNCbENjVztFa0NiWCwyQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLHdCQUFBO0VBQ0Esa0JBQUE7RUFDQSx1Q0FBQTtFQUNBLGVBQUE7QWhFZ3dVUjtBZ0U5dlVRO0VBQ0ksd0NBQUE7QWhFZ3dVWjtBZ0U5dlVZO0VBQ0ksa0JBQUE7RUFDQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxrQ0FBQTtFQUNBLDRDQUFBO0VBQ0Esa0JBQUE7RUFDQSw4REFBQTtFQUNBLCtEQUFBO0FoRWd3VWhCO0FnRTN2VUk7RUFDSSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsMkNBQUE7QWhFNnZVUjs7QWlFeHlVQTtFQUNJLGdCQUFBO0VBQ0Esb0JBQUE7RUFDQSxzQm5Dd0JlO0VtQ3ZCZixVQUFBO0FqRTJ5VUo7QWlFenlVSTtFQUNJLHNCbkNvQlc7QTlCdXhVbkI7QWlFeHlVSTtFQUNJLGFBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VBQ0EsZUFBQTtBakUweVVSO0ErQjF2VUk7RWtDcERBO0lBT1EsYUFBQTtJQUNBLGdDQUFBO0lBQ0EsNEJBQUE7RWpFMnlVVjtBQUNGO0FpRXh5VUk7RUFDSSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtBakUweVVSO0ErQnh3VUk7RWtDdkNBO0lBUVEsa0JBQUE7SUFDQSx3QkFBQTtJQUNBLGlCQUFBO0VqRTJ5VVY7QUFDRjtBaUV6eVVRO0VBQ0ksY0FBQTtFQUNBLGlCQUFBO0FqRTJ5VVo7QWlFenlVWTtFQUNJLG9CQUFBO0FqRTJ5VWhCO0FpRXZ5VVE7RUFDSSxXQUFBO0VBQ0EsWUFBQTtBakV5eVVaO0FpRXZ5VVk7RUFDSSxxQkFBQTtFQUNBLDZCQUFBO0FqRXl5VWhCO0FpRXJ5VVE7RUFDSSxjbkN0Qk87QTlCNnpVbkI7QWlFcHlVUTtFQUNJLGFBQUE7RUFDQSxxQkFBQTtBakVzeVVaO0FpRWx5VUk7RUFDSSxhQUFBO0VBQ0Esb0NBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0FqRW95VVI7QStCOXlVSTtFa0NHQTtJQVVRLHFCQUFBO0VqRXF5VVY7QUFDRjtBaUVueVVRO0VBQ0ksVUFBQTtBakVxeVVaO0FpRWx5VVE7RUFDSSxzQkFBQTtFQUNBLGNuQzlFUTtFbUMrRVIsYUFBQTtFQUNBLG1CQUFBO0FqRW95VVo7QStCNXpVSTtFa0NvQkk7SUFPUSxhQUFBO0VqRXF5VWQ7QUFDRjtBaUVueVVZO0VBQ0ksd0JBQUE7QWpFcXlVaEI7QWlFanlVUTtFQUNJLHNCQUFBO0VBRUEsZ0dBQUE7RUFDQSxTQUFBO0FqRWt5VVo7QWlFL3hVUTs7RUFFSSwrRUFBQTtFQUNBLHNCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0Esc0JBQUE7QWpFaXlVWjtBaUU3eFVJO0VBQ0ksYUFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QWpFK3hVUjtBaUU3eFVRO0VBQ0ksdUJBQUE7QWpFK3hVWjtBK0J6MVVJO0VrQ29EQTtJQVVRLGtCQUFBO0lBQ0EsbUJBQUE7RWpFK3hVVjtBQUNGO0FpRTd4VVE7RUFDSSxlQUFBO0FqRSt4VVo7QStCbDJVSTtFa0NrRUk7SUFJUSxlQUFBO0VqRWd5VWQ7QUFDRjtBaUU1eFVJO0UzQy9HWSw4QkFBQTtFQUFBLGVBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUNBQUE7RTJDa0hSLGlCQUFBO0VBQ0EseUJBQUE7QWpFaXlVUjtBK0JoM1VJO0VrQzJFQTtJM0MvR1ksOEJBQUE7SUFBQSxlQUFBO0lBQUEsZ0JBQUE7SUFBQSxnQkFBQTtJQUFBLGlDQUFBO0kyQ3VISixpQkFBQTtFakVzeVVWO0FBQ0Y7QStCMTNVSTtFa0MyRUE7SUFZUSxlQUFBO0lBQ0EsaUJBQUE7RWpFdXlVVjtBQUNGO0FpRXB5VUk7RUFDSSxvQkFBQTtFQUNBLG9CQUFBO0FqRXN5VVI7QWlFbnlVSTtFQUNJLFVBQUE7RUFDQSxjbkMvSFc7QTlCbzZVbkI7QWlFbHlVSTtFQUNJLGVBQUE7QWpFb3lVUjtBK0IzNFVJO0VrQ3NHQTtJQUlRLGtCQUFBO0lBQ0EsY0FBQTtFakVxeVVWO0FBQ0Y7QWlFbHlVSTtFQUNJLGdCQUFBO0VBQ0EsdUJBQUE7QWpFb3lVUjtBK0JyNVVJO0VrQytHQTtJQUtRLFdBQUE7SUFDQSxjQUFBO0lBQ0Esc0JBQUE7RWpFcXlVVjtBQUNGO0FpRW55VVE7RUFPSSxhQUFBO0FqRSt4VVo7QWdCNzNVSTtFQUNJLHlCYy9EVztFZGdFWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSw4R0FBQTtVQUFBLHNHQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCczNVWjtBZ0IvM1VRO0VBVEo7SUFVUSw4R0FBQTtZQUFBLHNHQUFBO0VoQms0VVY7QUFDRjtBK0IvNlVJO0VrQ21JSTtJQUVRLFlBQUE7RWpFOHlVZDtBQUNGO0FnQmw1VUk7RUFDSSx5QmNoRVc7RWRpRVgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsOEZBQUE7VUFBQSxzRkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQjI0VVo7QWdCcDVVUTtFQVRKO0lBVVEsOEZBQUE7WUFBQSxzRkFBQTtFaEJ1NVVWO0FBQ0Y7QWlFcHpVZ0I7RUFDSSxjbkM3S0Q7QTlCbStVbkI7QWlFbHpVWTtFQUNJLGNuQ2xMRztBOUJzK1VuQjtBaUUveVVJO0VBQ0ksa0JBQUE7RUFDQSxhQUFBO0FqRWl6VVI7QWlFL3lVUTtFQUNJLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLG9CQUFBO0FqRWl6VVo7QStCdjlVSTtFa0N5S1k7SUFDSSxhQUFBO0VqRWl6VWxCO0FBQ0Y7QWlFN3lVUTtFQU9JLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FqRXl5VVo7QWdCajhVSTtFQUNJLHlCY2hFVztFZGlFWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSw4RkFBQTtVQUFBLHNGQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCMDdVWjtBZ0JuOFVRO0VBVEo7SUFVUSw4RkFBQTtZQUFBLHNGQUFBO0VoQnM4VVY7QUFDRjtBaUV2elVZO0VBQ0ksV25DbE9HO0E5QjJoVm5CO0FpRXZ6VWdCO0VBQ0kseUJuQzdORDtBOUJzaFZuQjtBK0J6L1VJO0VrQytLSTtJQXNCUSxtQkFBQTtFakV3elVkO0FBQ0Y7QWlFcHpVSTtFQUNJLHlCbkN6T1c7QTlCK2hWbkI7QWlFbnpVSTtFQU9JLGFBQUE7QWpFK3lVUjtBZ0JsK1VJO0VBQ0kseUJjL0RXO0VkZ0VYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDhHQUFBO1VBQUEsc0dBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEIyOVVaO0FnQnArVVE7RUFUSjtJQVVRLDhHQUFBO1lBQUEsc0dBQUE7RWhCdStVVjtBQUNGO0ErQnBoVkk7RWtDeU5ZO0lBQ0kseUJuQ3ZQRDtFOUJxalZqQjtFaUUxelVVO0lBQ0ksb0JBQUE7RWpFNHpVZDtBQUNGOztBK0I1aFZJO0VtQy9DQTtJQUNJLFFBQUE7SUFDQSxVQUFBO0lBQ0Esb0NwQ1VXO0lvQ1RYLFVBQUE7SUFDQSxlQUFBO0lBQ0Esa0JBQUE7SUFDQSxhQUFBO0lBQ0Esc0JBQUE7SUFDQSxxQkFBQTtJQUNBLFNBQUE7RWxFK2tWTjtFa0U3a1ZNO0lBQ0ksVUFBQTtJQUNBLG1CQUFBO0VsRStrVlY7RWtFN2tWVTtJQUNJLGdCQUFBO0lBQ0Esa0JBQUE7SUFDQSxxQkFBQTtJQUNBLDRDQUFBO0VsRStrVmQ7RWtFMWtWRTtJQUNJLGVBQUE7SUFDQSxXQUFBO0lBQ0EsZ0JBQUE7RWxFNGtWTjtBQUNGO0FrRXprVkE7RUFDSSx5QkFBQTtBbEUya1ZKO0FrRXprVkk7RUFDSSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0Esd0JBQUE7RUFDQSxxQkFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjcEN2Qlc7RW9Dd0JYLGVBQUE7QWxFMmtWUjtBa0V6a1ZRO0VBQ0ksbUJBQUE7RUFDQSwwQ0FBQTtBbEUya1ZaO0FrRXZrVkk7RUFDSSxZQUFBO0VBQ0Esc0JwQzFDVztFb0MyQ1gseUJBQUE7RUFDQSxZQUFBO0VBQ0EsbUJBQUE7QWxFeWtWUjtBK0JubFZJO0VtQ0tBO0lBUVEseUJBckVEO0lBc0VDLFlBdEVEO0VsRWdwVlQ7QUFDRjtBa0V4a1ZRO0VBQ0ksZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsOEJBQUE7QWxFMGtWWjtBa0V0a1ZJO0VBQ0ksbUJBQUE7QWxFd2tWUjtBa0Vya1ZJO0VBQ0ksa0JBQUE7QWxFdWtWUjtBa0Vya1ZRO0VBQ0kscUNBQUE7QWxFdWtWWjs7QWtFbGtWQTtFQUNJLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxnQnBDN0VlO0E5QmtwVm5CO0ErQi9tVkk7RW1Dc0NKO0lBT1EseUJBckdHO0lBc0dILFlBdEdHO0VsRTRxVlQ7QUFDRjtBK0JyblZJO0VtQ3NDSjtJQVlRLHFCQUFBO0lBQ0EsV0FBQTtJQUNBLG1CcENsRlc7RTlCeXBWakI7QUFDRjtBa0Vya1ZJO0VBQ0ksa0JBQUE7RUFDQSx1QkFBQTtBbEV1a1ZSO0ErQmhvVkk7RW1DdURBO0lBS1EsYUFBQTtJQUNBLGVBQUE7RWxFd2tWVjtBQUNGO0FrRXBrVlE7RUFDSSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsY3BDaEdPO0VvQ2lHUCxnQkFBQTtBbEVza1ZaO0FrRXBrVlk7RUFDSSxxQkFBQTtBbEVza1ZoQjtBK0Ivb1ZJO0VtQ2tFSTtJNUN0R1EsOEJBQUE7SUFBQSxlQUFBO0lBQUEsZ0JBQUE7SUFBQSxnQkFBQTtJQUFBLGlDQUFBO0k0Q2tIQSxnQkFBQTtFbEUwa1ZkO0VrRXhrVmM7SUFDSSxhQUFBO0VsRTBrVmxCO0VnQnpuVkU7SUFDSSx5QmM5RFc7SWQrRFgsV0FBQTtJQUNBLHFCQUFBO0lBQ0EsNEdBQUE7WUFBQSxvR0FBQTtJQUNBLDhCQUFBO1lBQUEsc0JBQUE7SUFDQSx3QkFBQTtZQUFBLGdCQUFBO0lBQ0Esb0JBQUE7SUFVSSx5QkFBQTtJQUNBLDBCQUFBO0VoQmtuVlY7QUFDRjtBZ0I1blZRO0VBVEo7SUFVUSw0R0FBQTtZQUFBLG9HQUFBO0VoQituVlY7QUFDRjtBK0I1cVZJO0Vma0NBO0lBQ0kseUJjOURXO0lkK0RYLFdBQUE7SUFDQSxxQkFBQTtJQUNBLDBHQUFBO1lBQUEsa0dBQUE7SUFDQSw4QkFBQTtZQUFBLHNCQUFBO0lBQ0Esd0JBQUE7WUFBQSxnQkFBQTtJQUNBLG9CQUFBO0lBVUkseUJBQUE7SUFDQSwwQkFBQTtFaEJvb1ZWO0FBQ0Y7QWdCOW9WUTtFQVRKO0lBVVEsMEdBQUE7WUFBQSxrR0FBQTtFaEJpcFZWO0FBQ0Y7QWdCNXBWSTtFQUNJLHlCYzlEVztFZCtEWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSxzR0FBQTtVQUFBLDhGQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCcXBWWjtBZ0I5cFZRO0VBVEo7SUFVUSxzR0FBQTtZQUFBLDhGQUFBO0VoQmlxVlY7QUFDRjtBa0UzbFZRO0VBQ0ksbUNBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtBbEU2bFZaO0FrRTNsVlk7RUFDSSxxQ0FBQTtBbEU2bFZoQjtBK0J2dFZJO0VtQ2dJb0I7SUFDSSxhQUFBO0VsRTBsVjFCO0FBQ0Y7QStCNXRWSTtFbUN3SVk7SUFDSSxtQkFBQTtFbEV1bFZsQjtFa0VybFZrQjtJQUNJLGNBQUE7RWxFdWxWdEI7QUFDRjtBK0JwdVZJO0VtQ21ISTtJQStCUSxnQkFBQTtJQUNBLFNBQUE7SUFDQSxTQUFBO0VsRXNsVmQ7RWtFcGxWYztJQUNJLHFCQUFBO0VsRXNsVmxCO0VrRW5sVmM7SUFDSSxtQkFBQTtFbEVxbFZsQjtFa0VubFZrQjtJQUNJLGFBQUE7RWxFcWxWdEI7RWtFbGxWa0I7SUFDSSxnQnBDck1MO0U5Qnl4VmpCO0VrRWxsVnNCO0lBQ0ksa0JBQUE7RWxFb2xWMUI7RWtFL2tWYztJQUNJLDhCQUFBO0lBQ0EseUJBQUE7SUFDQSxlQUFBO0lBQ0EsY0FBQTtFbEVpbFZsQjtFa0Uva1ZrQjtJQUNJLDJCQUFBO0VsRWlsVnRCO0VrRTVrVmtCO0lBQ0ksYUFBQTtFbEU4a1Z0QjtFa0Uxa1ZjO0lBQ0ksc0JwQy9ORDtFOUIyeVZqQjtFa0Uxa1ZrQjtJQUNJLFdBQUE7SUFDQSxrQkFBQTtJQUNBLCtDQUFBO0lBQ0EsNkNBQUE7SUFDQSxtQ0FBQTtJQUNBLGtCQUFBO0lBQ0EsdUJBQUE7SUFDQSwyQkFBQTtFbEU0a1Z0QjtFa0Uxa1ZzQjtJQUNJLDBCQUFBO0VsRTRrVjFCO0FBQ0Y7QWtFdmtWWTtFQUNJLHlCQUFBO0VBQ0EsY3BDNU9HO0VvQzZPSCxtQkFBQTtFQUNBLGNBQUE7QWxFeWtWaEI7QStCNXhWSTtFbUMrTVE7SUFPUSxtQkFBQTtJQUNBLG9CQUFBO0lBQ0Esa0JBQUE7RWxFMGtWbEI7RWtFeGtWa0I7SUFDSSxhQUFBO0VsRTBrVnRCO0FBQ0Y7QWtFdmtWZ0I7RUFDSSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvREFBQTtBbEV5a1ZwQjtBa0V2a1ZvQjtFQUNJLGlFQUFBO0FsRXlrVnhCO0ErQi95Vkk7RW1DME9ZO0lBRVEsZ0JwQy9RTDtJb0NnUkssbUJBQUE7RWxFdWtWdEI7QUFDRjtBa0Vua1ZZO0VBQ0ksaUJqQzlTRztFaUMrU0gsZ0JwQ3ZSRztFb0N3UkgsYUFBQTtBbEVxa1ZoQjtBK0IxelZJO0VtQ2tQUTtJQU1RLFdBQUE7SUFDQSxhQUFBO0lBQ0Esa0JBQUE7SUFDQSxxQkFBQTtJQUNBLHlCQUFBO0lBQ0EsNENBQUE7SUFDQSxVQUFBO0VsRXNrVmxCO0FBQ0Y7QWtFbGtWUTtFQUNJLG1DQUFBO0VBQ0Esa0JBQUE7QWxFb2tWWjtBK0J6MFZJO0VtQ21RSTtJQUtRLGVBQUE7SUFDQSxvQkFBQTtJQUNBLGdCQUFBO0lBQ0Esb0JBQUE7RWxFcWtWZDtBQUNGO0ErQmoxVkk7RW1DbVFJO0lBWVEseUJBQUE7SUFDQSxzQkFBQTtJQUNBLHNDQUFBO0lBQ0EsbUJBQUE7SUFDQSxPQUFBO0VsRXNrVmQ7QUFDRjtBK0IxMVZJO0VtQ3NSUTtJQUVRLGNBQUE7SUFDQSxhQUFBO0lBQ0EsMkJBQUE7RWxFc2tWbEI7QUFDRjtBK0JqMlZJO0VtQzhSUTtJNUNsVUksOEJBQUE7SUFBQSxlQUFBO0lBQUEsZ0JBQUE7SUFBQSxnQkFBQTtJQUFBLGlDQUFBO0k0Q3FVSSxrQkFBQTtJQUNBLHlCcENoVUQ7SW9DaVVDLGVBQUE7SUFDQSxjQUFBO0lBQ0EsbUJBQUE7SUFDQSxZQUFBO0VsRXlrVmxCO0FBQ0Y7QWtFdmtWZ0I7RUFDSSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7QWxFeWtWcEI7QWtFdmtWb0I7RUFDSSxhQUFBO0FsRXlrVnhCO0ErQngzVkk7RW1DeVNZO0lBVVEsY3BDM1dKO0lvQzRXSSxlQUFBO0lBQ0EsVUFBQTtJQUNBLGNBQUE7SUFDQSxtQkFBQTtJQUNBLG1CQUFBO0lBQ0EsY0FBQTtFbEV5a1Z0QjtBQUNGO0FrRXJrVlk7RUFDSSx5QkFBQTtBbEV1a1ZoQjtBa0Vwa1ZZO0VBQ0ksYUFBQTtFQUNBLHVCcENwU1E7QTlCMDJWeEI7QStCMTRWSTtFbUNrVVE7SUFLUSxjQUFBO0VsRXVrVmxCO0FBQ0Y7QStCLzRWSTtFbUM2VWdCO0lBQ0ksY0FBQTtJQUNBLHFDQUFBO0VsRXFrVnRCO0FBQ0Y7QStCcjVWSTtFbUNzVmdCO0lBQ0ksY0FBQTtJQUNBLHdCQUFBO0VsRWtrVnRCO0VrRTlqVmM7SUFDSSx1QkFBQTtFbEVna1ZsQjtBQUNGO0FrRTdqVlk7RUFDSSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSw4QkFBQTtFQUNBLGNwQ2hZRztBOUIrN1ZuQjtBK0JwNlZJO0VtQ2lXUTtJQU9RLHdCQUFBO0lBQ0Esc0JBQUE7RWxFZ2tWbEI7QUFDRjtBa0U5alZnQjtFQUNJLGdCQUFBO0FsRWdrVnBCO0ErQjc2Vkk7RW1DNFdZO0lBSVEsMEJBQUE7RWxFaWtWdEI7QUFDRjtBa0U5alZnQjtFQUNJLGVBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QWxFZ2tWcEI7QStCMTdWSTtFbUNvWFk7SUFTUSxlQUFBO0lBQ0Esc0JBQUE7RWxFaWtWdEI7QUFDRjtBK0JoOFZJO0VtQ2lXUTtJNUNyWUksOEJBQUE7SUFBQSxlQUFBO0lBQUEsZ0JBQUE7SUFBQSxnQkFBQTtJQUFBLGlDQUFBO0lBQUEsa0JBQUE7RXRCNitWZDtBQUNGO0FnQng2Vkk7RUFDSSx5QmM5RFc7RWQrRFgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsNEdBQUE7VUFBQSxvR0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQmk2Vlo7QWdCMTZWUTtFQVRKO0lBVVEsNEdBQUE7WUFBQSxvR0FBQTtFaEI2NlZWO0FBQ0Y7QWtFemtWZ0I7RUFDSSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0Esb0RBQUE7QWxFMmtWcEI7QStCLzlWSTtFbUNpWlk7SUFNUSxhQUFBO0VsRTRrVnRCO0FBQ0Y7QWtFMWtWb0I7RUFDSSxpRUFBQTtBbEU0a1Z4QjtBa0V0a1ZRO0VBQ0ksbUNBQUE7QWxFd2tWWjtBa0V0a1ZZO0VBQ0ksbUJBQUE7QWxFd2tWaEI7QStCNytWSTtFbUNpYUk7SUFRUSxtQkFBQTtFbEV3a1ZkO0FBQ0Y7QStCbC9WSTtFbUM0YVE7SUFFUSxjcEMzY0Q7RTlCbWhXakI7QUFDRjtBK0J2L1ZJO0VtQzRhUTtJNUNoZEksOEJBQUE7SUFBQSxlQUFBO0lBQUEsZ0JBQUE7SUFBQSxnQkFBQTtJQUFBLGlDQUFBO0lBQUEsa0JBQUE7RXRCb2lXZDtBQUNGO0FrRTVrVmdCO0VBQ0ksZUFBQTtFQUNBLHdCQUFBO0FsRThrVnBCOztBK0JyZ1dJO0VvQzFEUTtJQUNJLHNCQUFBO0VuRW1rV2Q7RW1FL2pXTTtJQUNJLFdBQUE7SUFDQSxlQUFBO0lBQ0Esc0JBQUE7SUFDQSxvQkFBQTtJQUNBLHNCQUFBO0VuRWlrV1Y7RW1FL2pXVTtJQUNJLG1CQUFBO0VuRWlrV2Q7RW1FOWpXVTtJQUNJLGdCQUFBO0lBQ0EsbUNBQUE7SUFDQSxtQkFBQTtJQUNBLGlCQUFBO0VuRWdrV2Q7RW1FN2pXVTtJQUNJLGFBQUE7SUFDQSxlQUFBO0lBQ0EsU0FBQTtJQUNBLHlCQUFBO0VuRStqV2Q7RW1FM2pXTTtJQUNJLHVCQUFBO0VuRTZqV1Y7RW1FM2pXVTtJQUNJLGNBQUE7SUFDQSxVQUFBO0VuRTZqV2Q7RW1FM2pXYztJQUNJLGNBQUE7SUFDQSxxQkFBQTtJQUNBLHFCQUFBO0lBQ0EsZ0JBQUE7RW5FNmpXbEI7RW1FMWpXYztJQUNJLGlCQUFBO0lBQ0EsV0FBQTtJQUNBLFlBQUE7RW5FNGpXbEI7QUFDRjs7QW9FL21XSTtFQUNJLGFBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7QXBFa25XUjtBK0IzaldJO0VxQzVEQTtJQVFRLHdCQUFBO0lBQ0Esa0JBQUE7RXBFbW5XVjtBQUNGO0FvRWpuV1E7RUFDSSwwQkFBQTtFQUNBLGdCQUFBO0FwRW1uV1o7QStCcmtXSTtFcUNoREk7SUFLUSwwQkFBQTtFcEVvbldkO0FBQ0Y7QW9FbG5XWTtFQUNJLHVCQUFBO0FwRW9uV2hCO0ErQjdrV0k7RXFDeENRO0lBSVEsMEJBQUE7RXBFcW5XbEI7QUFDRjtBb0VsbldZO0VBQ0ksa0JBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7QXBFb25XaEI7QW9FbG5XZ0I7RUFFSSxhQUFBO0FwRW1uV3BCO0ErQjFsV0k7RXFDaENRO0lBV1EsaUJBQUE7SUFDQSxjdENSRDtFOUIybldqQjtBQUNGO0FvRS9tV1E7RUFDSSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7QXBFaW5XWjtBb0U3bVdJO0VBQ0ksWUFBQTtBcEUrbVdSO0ErQnptV0k7RXFDUEE7SUFJUSxhQUFBO0VwRWduV1Y7QUFDRjs7QW9FM21XSTtFQUNJLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGdCdEN6Q1c7RXNDMENYLHlCQUFBO0FwRThtV1I7QStCcm5XSTtFcUNHQTtJQU9RLHlCRmxFRDtJRW1FQyxZRm5FRDtFbEVrcldUO0FBQ0Y7QW9FN21XUTtFQUNJLHVCQUFBO0FwRSttV1o7QW9FNW1XUTtFQUNJLGFBQUE7RUFDQSx1QkFBQTtFQUNBLHFCQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLHlCQUFBO0FwRThtV1o7QW9FM21XUTtFQUNJLG9CQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsY3RDM0RPO0E5QndxV25CO0FvRTNtV1k7RUFDSSx1QkFBQTtBcEU2bVdoQjtBK0Ivb1dJO0VxQ2lDUTtJQUlRLHdCQUFBO0VwRThtV2xCO0FBQ0Y7QW9FM21XWTtFQUNJLGFBQUE7QXBFNm1XaEI7QW9Fem1XUTtFQUNJLGFBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGN0Qy9FTztFc0NnRlAsZUFBQTtBcEUybVdaO0FvRXptV1k7RUFFSSxhQUFBO0FwRTBtV2hCO0ErQmxxV0k7RXFDOENJO0lBY1EscUJBQUE7RXBFMG1XZDtBQUNGO0FvRXZtV1E7RUFDSSxxQkFBQTtFQUNBLGtCQUFBO0FwRXltV1o7QStCM3FXSTtFcUN3RVE7SUFDSSxxQkFBQTtJQUNBLDRDQUFBO0VwRXNtV2Q7QUFDRjs7QXFFOXVXQTtFQUNJLHlCdkMrQmU7QTlCa3RXbkI7QStCcnJXSTtFc0M3REo7SUFJUSx5QnZDOEJXO0U5Qm90V2pCO0FBQ0Y7QXFFaHZXSTtFQUNJLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0FyRWt2V1I7QXFFL3VXSTtFQU9JLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFd2Q0lXO0V1Q0hYLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdDQUFBO0VBQ0EseUJ2Q09XO0E5Qm91V25CO0FnQnZxV0k7RUFDSSxzQmN0RVc7RWR1RVgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsMEdBQUE7VUFBQSxrR0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQmdxV1o7QWdCenFXUTtFQVRKO0lBVVEsMEdBQUE7WUFBQSxrR0FBQTtFaEI0cVdWO0FBQ0Y7QStCenRXSTtFc0NoREE7SUFpQlEsYUFBQTtFckU0dldWO0FBQ0Y7QXFFMXZXUTtFQUNJLHdCQUFBO0VBQ0EseUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0FyRTR2V1o7QXFFeHZXSTtFQUNJLGFBQUE7QXJFMHZXUjtBK0J2dVdJO0VzQ3BCQTtJQUlRLGNBQUE7RXJFMnZXVjtBQUNGO0FnQjFzV0k7RUFDSSxzQmN0RVc7RWR1RVgsV0FBQTtFQUNBLHFCQUFBO0VBQ0Esc0dBQUE7VUFBQSw4RkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQm1zV1o7QWdCNXNXUTtFQVRKO0lBVVEsc0dBQUE7WUFBQSw4RkFBQTtFaEIrc1dWO0FBQ0Y7QXFFN3ZXWTtFQUNJLGNBQUE7RUFDQSx5REFBQTtFQUNBLGtCQUFBO0VBQ0EsNEJBQUE7QXJFK3ZXaEI7QXFFenZXUTtFQUNJLFVBQUE7QXJFMnZXWjtBcUV4dldRO0VBQ0kseUVBQUE7RUFDQSxnQ0FBQTtFQUNBLGNBQUE7QXJFMHZXWjtBcUV4dldZO0VBQ0ksd0VBQUE7QXJFMHZXaEI7QStCN3dXSTtFc0NhSTtJQVVRLHFCQUFBO0lBQ0EsbUJBQUE7RXJFMHZXZDtFcUV4dldjO0lBQ0ksV0FBQTtJQUNBLGtCQUFBO0lBQ0EsK0NBQUE7SUFDQSw2Q0FBQTtJQUNBLGdDQUFBO0lBQ0Esa0JBQUE7SUFDQSx1QkFBQTtJQUNBLHVFQUFBO0VyRTB2V2xCO0FBQ0Y7QXFFdnZXWTtFQUNJLHNCdkM1RUc7QTlCcTBXbkI7QXFFdHZXWTtFL0M5RUksOEJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0UrQ2dGQSxXdkMvRUc7RXVDZ0ZILGNBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7QXJFNHZXaEI7QStCNXlXSTtFc0MwQ1E7SUFTUSxtQkFBQTtJQUNBLGVBQUE7SUFDQSxpQkFBQTtFckU2dldsQjtBQUNGO0FxRTN2V2dCO0UvQzVGQSw2QkFBQTtFQUFBLGVBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUNBQUE7RStDOEZJLHNCdkMvRkQ7QTlCZzJXbkI7QXFFOXZXZ0I7RUFDSSxhQUFBO0FyRWd3V3BCO0FxRTN2V1E7RUFDSSxhQUFBO0FyRTZ2V1o7QStCajBXSTtFc0N5RUk7SUFDSSxhQUFBO0VyRTJ2V1Y7QUFDRjs7QXNFejNXQTtFaERlZ0IsOEJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0VnRGJaLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLDZCQUFBO0F0RWc0V0o7QXNFOTNXSTtFQUNJLFlBQUE7RUFDQSxVQUFBO0F0RWc0V1I7QXNFNzNXSTtFQUNJLFVBQUE7QXRFKzNXUjtBc0UzM1dRO0VBNUJKLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0F0RTA1V0o7QXNFeDVXSTtFQUNJLGNBQUE7QXRFMDVXUjtBc0UvM1dJO0VBQ0ksb0JBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QXRFaTRXUjtBK0J4MldJO0V1Q3ZCSTtJQXRDSixnQkFBQTtJQUNBLG1CQUFBO0lBQ0EsZ0JBQUE7SUFDQSx1QkFBQTtFdEV5NldGO0VzRXY2V0U7SUFDSSxjQUFBO0V0RXk2V047QUFDRjtBc0VwNFdRO0VBQ0ksY3hDYk87RXdDY1AsYUFBQTtFQUNBLG1CQUFBO0VBc0JBLHNDQUFBO0F0RWkzV1o7QXNFcjRXWTtFQUNJLGN4Q2hCRztBOUJ1NVduQjtBZ0IxMVdJO0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDRHQUFBO1VBQUEsb0dBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEJtMVdaO0FnQjUxV1E7RUFUSjtJQVVRLDRHQUFBO1lBQUEsb0dBQUE7RWhCKzFXVjtBQUNGO0FnQjEyV0k7RUFDSSx5QmM5RFc7RWQrRFgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsMEdBQUE7VUFBQSxrR0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQm0yV1o7QWdCNTJXUTtFQVRKO0lBVVEsMEdBQUE7WUFBQSxrR0FBQTtFaEIrMldWO0FBQ0Y7QXNFbjVXWTtFQUNJLGVBQUE7RUFDQSxrQkFBQTtBdEVxNVdoQjtBc0VqNVdRO0VBQ0ksY3hDM0NPO0E5Qjg3V25CO0FzRS80V1k7RUFDSSxjQUFBO0VBQ0EsY3hDbkRHO0V3Q29ESCxlQUFBO0F0RWk1V2hCO0FzRTk0V1k7RUFDSSxjeEN0REc7QTlCczhXbkI7QXNFNzRXWTtFQUNJLG9CQUFBO0F0RSs0V2hCO0FzRTc0V2dCO0VBQ0ksYUFBQTtBdEUrNFdwQjtBc0UzNFdZO0VBQ0ksYUFBQTtBdEU2NFdoQjs7QXVFbC9XQTtFQUNJLGtCQUFBO0F2RXEvV0o7QStCeDdXSTtFd0M5REo7SUFJUSxZQUFBO0V2RXMvV047QUFDRjtBdUVwL1dJO0VBQ0ksYUFBQTtBdkVzL1dSO0F1RW4vV0k7RUFDSSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0F2RXEvV1I7QXVFbC9XSTtFQUNJLFdBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esd0JBQUE7RUFDQSxjekNTVztFeUNSWCw2QnpDeURTO0V5Q3hEVCx5QkFBQTtBdkVvL1dSO0F1RWovV0k7RUFPSSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0Esc0JBQUE7QXZFNitXUjtBZ0JuN1dJO0VBQ0kseUJjaEVXO0VkaUVYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDhGQUFBO1VBQUEsc0ZBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEI0NldaO0FnQnI3V1E7RUFUSjtJQVVRLDhGQUFBO1lBQUEsc0ZBQUE7RWhCdzdXVjtBQUNGO0F1RTMvV1E7RUFDSSxzQkFBQTtFQUNBLHVCQUFBO0F2RTYvV1o7QXVFMS9XUTtFQUNJLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxzQkFBQTtBdkU0L1daO0F1RXgvV0k7RUFDSSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtFQUNBLHNCQUFBO0VBQ0EsZUFBQTtBdkUwL1dSO0FnQnI5V0k7RUFDSSx5QmNoRVc7RWRpRVgsV0FBQTtFQUNBLHFCQUFBO0VBQ0Esd0dBQUE7VUFBQSxnR0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQjg4V1o7QWdCdjlXUTtFQVRKO0lBVVEsd0dBQUE7WUFBQSxnR0FBQTtFaEIwOVdWO0FBQ0Y7QXVFOS9XSTtFQUNJLGFBQUE7QXZFZ2dYUjtBdUU5L1dRO0VBQ0kscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGdCekNsRE87RXlDbURQLHlCQUFBO0VBQ0EsY3pDNUNPO0V5QzZDUCx5QkFBQTtFQUNBLGlCQUFBO0VBQ0EsV0FBQTtBdkVnZ1haO0ErQnBoWEk7RXdDWUk7SUFXUSxhQUFBO0V2RWlnWGQ7QUFDRjtBdUU3L1dJO0VBQ0ksa0JBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUNBLGdCekNwRVc7RXlDcUVYLFVBQUE7QXZFKy9XUjtBdUU1L1dJO0VBQ0ksY0FBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtFQUNBLGN6Q3pFVztFeUMwRVgsNkJ6Q3RCYztBOUJvaFh0QjtBdUU1L1dRO0VBQ0ksbUJ6QzlFTztBOUI0a1huQjtBdUUzL1dRO0VBQ0ksbUNBQUE7QXZFNi9XWjs7QXdFOW1YSTtFQUNJLG1CMUM4Qlc7QTlCbWxYbkI7QXdFL21YUTtFQUNJLGVBQUE7RUFDQSxvQkFBQTtBeEVpblhaO0ErQnpqWEk7RXlDMURJO0l0RFVKLFdBQUE7SUFDQSxlQUFBO0lBQ0EsMENBQUE7RWxCNm1YRjtBQUNGO0F3RWpuWFE7RUFDSSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0Esb0JBQUE7QXhFbW5YWjtBd0VoblhRO0VBQ0ksb0JBQUE7RUFDQSxzQkFBQTtFQUNBLHdCQUFBO0F4RWtuWFo7QStCMWtYSTtFeUNwQ0E7SUFFUSxxQkFBQTtJQUNBLG9CQUFBO0V4RWduWFY7QUFDRjtBd0U5bVhRO0VBQ0ksZ0JBQUE7RUFDQSxvQkFBQTtBeEVnblhaO0ErQnBsWEk7RXlDOUJJO0lBS1EsNkIxQ29DVTtFOUI2a1h4QjtBQUNGO0ErQnpsWEk7RXlDOUJJO0lBU1EsVUFBQTtFeEVrblhkO0FBQ0Y7QXdFaG5YWTtFbERsQkksNkJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0VrRG9CQSx3QkFBQTtBeEVzblhoQjtBd0VublhZO0VBQ0ksNEJBQUE7QXhFcW5YaEI7QWdCdmtYSTtFQUNJLHlCYzlEVztFZCtEWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSw0R0FBQTtVQUFBLG9HQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCZ2tYWjtBZ0J6a1hRO0VBVEo7SUFVUSw0R0FBQTtZQUFBLG9HQUFBO0VoQjRrWFY7QUFDRjtBd0UxblhnQjtFQUNJLGFBQUE7QXhFNG5YcEI7QXdFdm5YUTtFbER6Q1EsNEJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0VrRDJDSixjMUNsQ087RTBDbUNQLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFFBQUE7QXhFNm5YWjtBd0UzblhZO0VBRUksYzFDdkVJO0UwQ3dFSiwwQkFBQTtBeEU0blhoQjtBK0Izb1hJO0V5Q2tCUTtJQUdRLFdoQ2xGSDtJZ0NtRkcsWWhDbkZIO0lnQ29GRyxvQkFBQTtFeEUwblhsQjtBQUNGO0F3RXZuWFk7RUFDSSxlQUFBO0F4RXluWGhCO0F3RXRuWFk7RUFDSSxhQUFBO0F4RXduWGhCO0F3RW5uWFk7RUFDSSxhQUFBO0F4RXFuWGhCO0F3RWpuWFE7RUFDSSxnQkFBQTtBeEVtblhaO0F3RWpuWFk7RUFDSSxVQUFBO0F4RW1uWGhCO0ErQmpxWEk7RXlDbURRO0lBQ0ksbUNBQUE7RXhFaW5YZDtFd0U5bVhVO0lBQ0ksYUFBQTtFeEVnblhkO0V3RTVtWGM7SUFDSSxjQUFBO0V4RThtWGxCO0VnQnpvWEU7SUFDSSx5QmM5RFc7SWQrRFgsV0FBQTtJQUNBLHFCQUFBO0lBQ0Esc0dBQUE7WUFBQSw4RkFBQTtJQUNBLDhCQUFBO1lBQUEsc0JBQUE7SUFDQSx3QkFBQTtZQUFBLGdCQUFBO0lBQ0Esb0JBQUE7SUFVSSx5QkFBQTtJQUNBLDBCQUFBO0VoQmtvWFY7QUFDRjtBZ0I1b1hRO0VBVEo7SUFVUSxzR0FBQTtZQUFBLDhGQUFBO0VoQitvWFY7QUFDRjtBK0I1clhJO0V5QzBFUTtJQU9JLGVBQUE7SUFDQSxrQkFBQTtJQUNBLHdCQUFBO0lBQ0Esb0JBQUE7SUFDQSxTQUFBO0V4RSttWGQ7RWdCbHFYRTtJQUNJLHlCYzlEVztJZCtEWCxXQUFBO0lBQ0EscUJBQUE7SUFDQSwwR0FBQTtZQUFBLGtHQUFBO0lBQ0EsOEJBQUE7WUFBQSxzQkFBQTtJQUNBLHdCQUFBO1lBQUEsZ0JBQUE7SUFDQSxvQkFBQTtJQVVJLHlCQUFBO0lBQ0EsMEJBQUE7RWhCMnBYVjtBQUNGO0FnQnJxWFE7RUFUSjtJQVVRLDBHQUFBO1lBQUEsa0dBQUE7RWhCd3FYVjtBQUNGO0ErQnJ0WEk7RXlDdUZZO0lBQ0ksa0JBQUE7SUFDQSx1QkFBQTtJQUNBLHNCQUFBO0lBQ0Esb0RBQUE7SUFDQSxzQkFBQTtFeEVpb1hsQjtBQUNGO0ErQjl0WEk7RXlDa0dBO0lBRVEsdUJBQUE7RXhFOG5YVjtBQUNGO0F3RTNuWEk7RUFDSSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7QXhFNm5YUjtBK0IxdVhJO0V5Q3dHQTtJQVFRLDhCQUFBO0lBQ0EsbUJBQUE7SUFDQSxtQkFBQTtFeEU4blhWO0FBQ0Y7QXdFNW5YUTtFbER6SlEsNEJBQUE7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0VrRDJKSixjMUNsSk87RTBDbUpQLHFCQUFBO0VBQ0EsUUFBQTtFQUNBLHdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtBeEVrb1haO0ErQjl2WEk7RXlDcUhJO0lBVVEsUUFBQTtJQUNBLFdBQUE7SUFDQSxtQkFBQTtJQUNBLFNBQUE7SUFDQSxVQUFBO0lBQ0Esa0JBQUE7RXhFbW9YZDtBQUNGO0F3RWpvWFk7RUFDSSxZQUFBO0VBQ0EsYzFDcEtHO0UwQ3FLSCxzQkFBQTtBeEVtb1hoQjtBd0UvblhRO0VBQ0ksUUFBQTtFQUNBLFdBQUE7QXhFaW9YWjtBK0JqeFhJO0V5QzhJSTtJQUtRLFFBQUE7SUFDQSxXQUFBO0V4RWtvWGQ7QUFDRjtBd0UvblhRO0VBQ0ksYUFBQTtBeEVpb1haO0F3RTluWFE7RWxEaE1RLDRCQUFBO0VBQUEsZUFBQTtFQUFBLGdCQUFBO0VBQUEsZ0JBQUE7RUFBQSxpQ0FBQTtFa0RrTUoscUJBQUE7RUFDQSxvQkFBQTtBeEVvb1haO0F3RWxvWFk7RUFDSSxZQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EsYzFDaE1HO0E5Qm8wWG5CO0F3RWhvWGdCO0VBQ0ksYUFBQTtBeEVrb1hwQjtBd0U5blhZO0VBQ0ksYzFDMU1HO0E5QjAwWG5CO0F3RTluWGdCO0VBRUksYzFDNU9BO0UwQzZPQSwwQkFBQTtBeEUrblhwQjtBd0U1blhnQjtFQUNJLFdBQUE7RUFDQSxzQkFBQTtFQUNBLGFBQUE7QXhFOG5YcEI7O0F5RXAzWEE7RUFDSSxxQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsbUNBQUE7RUFDQSxpQ0FBQTtFQUNBLHlCQUFBO0VBQ0Esc0JBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsOEVBQUE7RUFDQSxjM0NtQmU7QTlCbzJYbkI7QStCejBYSTtFMEM1REo7SUFpQlEsd0JBQUE7RXpFdzNYTjtBQUNGO0F5RXQzWEk7RUFDSSxhQUFBO0F6RXczWFI7QXlFcjNYSTtFQUNJLGlDQUFBO0VBQ0Esb0NBQUE7VUFBQSw0QkFBQTtBekV1M1hSO0F5RXAzWEk7RTNEbUVZOzs7O09BQUE7RUF3QlosbUJBQUE7RUF4Qlk7Ozs7T0FBQTtFQUFBOzs7O09BQUE7RUF3QlosMkJBQUE7RTJEeEZJLGFBQUE7RUFDQSw4QkFBQTtFQUNBLGdDQUFBO0F6RXE0WFI7QXlFbDRYSTtFM0QyRFk7Ozs7T0FBQTtFQXdCWixxQkFBQTtFQXhCWTs7OztPQUFBO0VBd0JaLHNCQUFBO0UyRGhGSSwyQ0FBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsOEJBQUE7QXpFODRYUjtBeUUzNFhJO0UzRGlEWTs7OztPQUFBO0VBQUE7Ozs7T0FBQTtFQXdCWixvQkFBQTtFQXhCWTs7OztPQUFBO0VBd0JaLFNBQUE7RTJEdEVJLGFBQUE7RUFDQSx5QkFBQTtFQUNBLDZCQUFBO0F6RTQ1WFI7QXlFejVYSTtFQUNJLDJGQUFBO0F6RTI1WFI7QXlFeDVYSTtFQUNJLHlDQUFBO0VBQ0EsV0FBQTtBekUwNVhSO0F5RXY1WEk7RXJEakRBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLDZCQUFBO0VBQ0Esc0JBQUE7RUFHSSxtQnNEdkJlO0V0RHdCZixvQnNEdkJnQjtFdER3QmhCLG1CVXBCWTtFVnFCWix5QkFBQTtFQUNBLFdVRFc7RVZFWCx5QkFBQTtFcUR1Q0EsZ0ZFdEVJO0VGdUVKLGFBQUE7QXpFbTZYUjtBb0J6OFhRO0VBRUksV1VOTztFVk9QLG1CVTlCUTtFVitCUix5QkFBQTtFQUNBLHFCQUFBO0FwQjA4WFo7QW9CeDhYWTtFQUNJLDZDQUFBO0FwQjA4WGhCO0FvQnQ4WFE7RUFDSSx1Q0FBQTtFQUNBLG1DQUFBO0FwQnc4WFo7QW9CcjhYUTtFQUNJLG1CVTFDUTtBOUJpL1hwQjtBb0JwOFhRO0VBR0ksMEJBQUE7RUFDQSxtQkFBQTtBcEJvOFhaO0FvQmo4WFE7RUFFSSxtQlVsRFE7RVZtRFIseUJBQUE7RUFDQSxtQkFBQTtBcEJrOFhaO0F5RTE3WFE7RXJEdERKLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLDZCQUFBO0VBQ0Esc0JBQUE7RUE2Q0ksbUJzRGpFZTtFdERrRWYsb0JzRGpFZ0I7RXREa0VoQixnQlV6Q1c7RVYwQ1gseUJBQUE7RUFDQSxjVW5DVztFVm9DWCx5QkFBQTtBcEJ1OFhSO0FvQnI4WFE7RUFFSSxtQlV2Q087RVZ3Q1AscUJBQUE7RUFDQSxjVTFDTztBOUJnL1huQjtBb0JwOFhZO0VBQ0ksNkNBQUE7QXBCczhYaEI7QW9CbDhYUTtFQUNJLG1CVXJETztBOUJ5L1huQjtBb0JqOFhRO0VBR0ksMEJBQUE7RUFDQSxtQkFBQTtBcEJpOFhaO0FvQjk3WFE7RUFDSSx1Q0FBQTtFQUNBLG1DQUFBO0FwQmc4WFo7QW9CNzdYUTtFQUVJLHlCQUFBO0VBQ0EsY1VyRU87QTlCbWdZbkI7QXlFejlYSTtFM0RzQlk7Ozs7T0FBQTtFQUFBOzs7O09BQUE7RUF3QlosdUJBQUE7RTJEM0NJLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7QXpFbytYUjtBZ0IzaVlJO0VBR1EseUJBQUE7RUFDQSxnQndCaUVLO0V4QmhFTCxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0Esb0JBQUE7RUFDQSx3QkFBQTtFQUVJLGNjYUc7RWRWSCxleURvRDhEO0V6RC9DOUQscUJBN0JvRztFQWdDcEcsY0FoQ2dJO0VBa0RwSSxzQ0FBQTtFQUNBLG1DQUFBO0VBQ0Esa0NBQUE7QWhCaWhZWjs7QUN0a1lBOzs7OztDQUFBO0FDRkE7OztDQUFBO0FDRUE7O0VBQUE7QUNGQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDV0E7Ozs7Ozs7Ozs7Q0FBQTtBQW1CQTs7O0NBQUE7QUFRQTs7O0NBQUE7QUN0Q0Esc0JBQUE7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0ZBLHNCQUFBO0FBRUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNGQTtzRUFBQTtBQUlBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNKQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQ0Esd0NBQUE7QUNEQTs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0VBLGtGQUFBO0FBYUEsd0ZBQUE7QUFXQSxvR0FBQTtBQVVBLHdEQUFBO0FDcENBOzs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7RUFBQTtBQ0FBOzs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7O0NBQUE7QWlET0E7RUFD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Qk87QTlCMGdibkI7QStCeCthSTtFaURqREE7SUFFUSxjQUFBO0lBQ0Esa0JBQUE7SUFDQSxpQkFBQTtFaEYyaGJWO0FBQ0Y7QWdGemhiUTtFQUNJLGNsRGNPO0E5QjZnYm5CO0FnRnhoYlE7RUFDSSxrQkFBQTtBaEYwaGJaO0FnRnZoYlE7RUFDSSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBaEZ5aGJaO0ErQjMvYUk7RWlEbENJO0lBT1EsZUFBQTtJQUNBLGdCQUFBO0VoRjBoYmQ7QUFDRjtBZ0Z0aGJJO0VBQ0ksYUFBQTtBaEZ3aGJSO0ErQnBnYkk7RWlEckJBO0lBSVEsV0FBQTtJQUNBLGNBQUE7SUFDQSxhQUFBO0lBQ0EsbUJBQUE7RWhGeWhiVjtBQUNGO0ErQjVnYkk7RWlEWEk7SUFFUSxlQUFBO0VoRnloYmQ7QUFDRjtBK0JqaGJJO0VpREpBO0lBRVEsV0FBQTtJQUNBLHFCQUFBO0VoRnVoYlY7QUFDRjtBK0J2aGJJO0VpREdBO0lBRVEsU0FBQTtJQUNBLGtCQUFBO0lBQ0EsY0FBQTtFaEZzaGJWO0FBQ0YiLCJmaWxlIjoiLi4vdGFyZ2V0L3ZhdWx0LXdvcmsvamNyX3Jvb3QvYXBwcy92b2x2by9jbGllbnRsaWJzL3ZvbHZvLXRydWNrcy92b2x2by1icmFuZC90cnVja3MucHVibGlzaC52b2x2by1icmFuZC5idW5kbGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcbkFsc28gcGxlYXNlIGZvbGxvdyB0aGlzXG5EbyB5b3VyIHByb2plY3QgaGF2ZSBkaWZlcmVudCBjaGFyc2V0IGxhbmd1YWdlcyB0byBhY2NvdW50IHdpdGg/XG4gICAgICAtIFllcyAtPiBmb2xsb3cgaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvQ1NTKy0rRm9udCtOb3JtYWxpemF0aW9uXG4gICAgICAtIE5vIC0+IFlvdSBjYW4gc3RpbGwgdXNlIGl0LCB0aGVyZSBhcmUgdG9ucyBvZiBhZHZhbnRhZ2VzLCBidXQgaXRzIGNyZWF0ZSBzb21lIGV4dHJhIGNzcyBhbmQgbGF5b3V0IHJlbmRlcmluZ1xuKi9cbi8qXG4gICogRGVzaWduIHNwZWM6XG4gICogaHR0cHM6Ly93d3cuZmlnbWEuY29tL2ZpbGUvU1I0cnZRbE5uQ21QTXJROVdZYUlxdi9icmFuY2gvVEpxa0Z5bXEwOXdmOEt3bVkxV05jai9Wb2x2by1BRU0tRGVzaWduLXN5c3RlbT90eXBlPWRlc2lnbiZub2RlLWlkPTctMjYmdD1wQW05MTZWUmlxQ09EMkkxLTBcbiovXG4vKipcbiAqIHotaW5kZXhlcyBmcm9tIGxvd2VyIHRvIC0+IGhpZ2hlclxuICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdFxubmFtZTogcHgtdG8tdW5pdFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBhIHByb3BlcnR5IGFuZCB2YWx1ZSAocGl4ZWwgYmFzZWQgd2l0aG91dCB1bml0KVxuXG5DYWxjdWxhdGVzIHJlbSAvIGVtIC8gJSBmcm9tIGdpdmVuIHBpeGVsIGFuZCBiYXNlIChkZWZhdWx0IGJhc2UgaXMgdGhlXG5iYXNlLWZvbnQtc2l6ZSwgMTZweClcbklmIHJ0bCBpcyB0cnVlLCB0aGlzIG1peGluIGhhbmRsZXMgYWxsIHRoZSBkaXJlY3Rpb24gc3R1ZmY6XG4tIFN3aXRjaGluZyB0aGUgdmFsdWVzLCB3aGVuIHdlIGhhdmUgZXhhY3RseSA0IHZhbHVlc1xuLSBTd2l0Y2hpbmcgbGVmdCBhbmQgcmlnaHQgaW4gcHJvcGVydGllcyAocGFkZGluZyBhbmQgbWFyZ2luKVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dSAoZm9yIGVtIG9yICUgdG8gcGl4ZWwgLSB3aXRoIGJhc2UgcGFyYW1ldGVyKVxuLXJlbSAoZm9yIHJlbSB0byBwaXhlbCAtIHdpdGhvdXQgYmFzZSBwYXJhbWV0ZXIpXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkcHJvcGVydHkgPSBwYWRkaW5nIHwgbWFyZ2luIHwgZm9udC1zaXplIHwgd2lkdGggfCBoZWlnaHRcbkBwYXJhbWV0ZXIgJHZhbHVlID0gUGl4ZWwgYmFzZWQgbnVtYmVyIC0gYWRkIHB4IHRvIGtlZXAgdGhlIHB4IGZvciBhIHZhbHVlXG5AcGFyYW1ldGVyICRiYXNlID0gcHggYmFzZWQgbnVtYmVyLCBEZWZhdWx0OiAxNnB4XG5AcGFyYW1ldGVyICR1bml0ID0gU2V0IHVuaXQ6IHB4IHwgZW0gfCByZW0gfCBwZXJjZW50XG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5hYnN0cmFjdC9mdW5jdGlvbnMvc3dhcC1sZWZ0LXJpZ2h0XG5hYnN0cmFjdC9mdW5jdGlvbnMvc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmcsIDAgMTBweCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMCAyMCAwKTsgPT4gcGFkZGluZzogMCAwLjYyNXJlbSAxLjI1cmVtIDA7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbiwgMCAxMCAyMCAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLWxlZnQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGZvbnQtc2l6ZSwgMjApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdCh3aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYW5uLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChoZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1pbi1oZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4taGVpZ2h0LCAxMDApO1xuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2xlc3MtbWl4aW4tZm9yLXJlbS1mb250LXNpemluZy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qXG4gICAgVGhpcyBtaXhpbiBjb252ZXJ0cyBhbnkgdW5pdGxlc3MgbnVtYmVyIChmb3IgZXhhbXBsZSA0MCkgdG8gdGhlIGNvcnJlY3QgdW5pdCwgYWNjb3JkaW5nIHRvIHRoZSBnaXZlbiBheGlzLlxuXG4gICAgUGFyYW1ldGVyczpcbiAgICAtICR2YWx1ZTogdW5pdGxlc3MgbnVtYmVyIHRvIGJlIGNvbnZlcnRlZC4gQSB1bml0IGluICR2YWx1ZSB3aWxsIGNvcnJlc3BvbmQgdG8gYSBweCBpbiB0aGUgYnJvd3NlcixcbiAgICAgICAgbm8gbWF0dGVyIGlmIGl0J3Mgb3V0cHV0IGFzIHB4IG9yIHJlbVxuXG4gICAgUmV0dXJuc1xuICAgIC0gSG9yaXpvbnRhbDogd2lsbCBjb252ZXJ0IHRoZSBudW1iZXIgdG8gcGl4ZWxzICg0MHB4KVxuICAgIC0gVmVydGljYWw6IHdpbGwgY29udmVydCB0aGUgbnVtYmVyIHRvIHJlbSAoaWYgcmVtID09PSAxNnB4LCB0aGVuIDQwIHdpbGwgYmUgY29udmVydGVkIHRvIDIuNSByZW0pXG4qL1xuLypcbiAgICBDb252ZXJ0cyBhIHVuaXRsZXNzIG51bWJlciB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0IG9uIHRoZSBob3Jpem9udGFsIGF4aXMuXG4gICAgQnkgZGVmYXVsdCB3aWxsIGNvbnZlcnQgdGhlIHZhbHVlIHRvIHB4LlxuKi9cbi8qXG4gICAgQ29udmVydHMgYSB1bml0bGVzcyBudW1iZXIgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdCBvbiB0aGUgdmVydGljYWwgYXhpcy5cbiAgICBCeSBkZWZhdWx0IHdpbGwgY29udmVydCB0aGUgdmFsdWUgdG8gcmVtLlxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCB2YWx1ZXNcbm5hbWU6IHN3YXAtbGVmdC1yaWdodC12YWx1ZXNcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5Td2FwIHRoZSB2YWx1ZXMgZm9yIHJpZ2h0IGFuZCBsZWZ0IHdoZW4gJHJ0bCBpcyBzZXQgdG8gdHJ1ZTpcblxuSW46ICAwIDVweCA4cHggMTJweFxuT3V0OiAwIDEycHggOHB4IDVweCAoaW4gcnRsKVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlcyA9IDQgbnVtYmVycyAod29ya3Mgd2l0aCBhbGwgdW5pdHMpXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbnN3YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxcHggOHB4IDEycHgpIC8vIDAgMTJweCA4cHggMXB4XG5zd2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMWVtIDhlbSAxMmVtKSAvLyAwIDEyZW0gOGVtIDFlbVxud2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMXJlbSA4cmVtIDEycmVtKSAvLyAwIDEycmVtIDhyZW0gMXJlbVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE0MTk5MzIzL3JpZ2h0LXRvLWxlZnQtcnRsLXN1cHBvcnQtaW4tc2Fzcy1wcm9qZWN0XG5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTd2FwIGxlZnQgcmlnaHQgbmFtZXNcbm5hbWU6IHN3YXAtbGVmdC1yaWdodC1uYW1lc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIG5hbWVzIHJpZ2h0IGFuZCBsZWZ0IHdoZW4gJHJ0bCBpcyBzZXQgdG8gdHJ1ZS5cbklmIHRoZSB2YWx1ZSBpcyBub3QgcmlnaHQgb3IgbGVmdCBpdCByZXR1cm5zIHRoZSBvcmlnaW5hbCB2YWx1ZS5cblxuSW46ICByaWdodFxuT3V0OiBsZWZ0IChpbiBydGwpLCByaWdodCAoaW4gbHRyKVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG9yaWdpbiA9IHJpZ2h0IHwgbGVmdFxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5zd2FwLWxlZnQtcmlnaHQtbmFtZShsZWZ0KVxuc3dhcC1sZWZ0LXJpZ2h0LW5hbWUocmlnaHQpXG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQxOTkzMjMvcmlnaHQtdG8tbGVmdC1ydGwtc3VwcG9ydC1pbi1zYXNzLXByb2plY3RcblxuKi9cbi8qICBMaXN0IG9mIENTUyBwcm9wZXJ0aWVzIHRoYXQgd2lsbCBhbHdheXMgYmUgb3V0cHV0IGF0IGxlYXN0IGFzIDIgZGlmZmVyZW50IHZhbHVlc1xuICAgIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gY29udmVydCBlYWNoIG9uZSB0byB0aGUgY29ycmVjdCBheGlzIHVuaXQgKi9cbi8qXG4gICAgTWl4aW4gZm9yIGF1dG9tYXRpY2FsbHkgaGFuZGxpbmcgc3BhY2luZ3MgYXJvdW5kL2JldHdlZW4gZWxlbWVudHMuXG5cbiAgICBUaGlzIG1peGluIHdpbGwgYXV0b21hdGljYWxseSBpbnZlcnQgdGhlIGxlZi9yaWdodCBkaXJlY3Rpb25zIGluIFJUTCBsYW5ndWFnZXMuXG4gICAgQWxzbywgdGhlIHVuaXRsZXNzIHZhbHVlcyB3aWxsIGJlIGNvbnZlcnRlZCB0byB0aGUgcHJvcGVyIHVuaXQgYWNjb3JkaW5nIHRvIHRoZSBheGlzXG5cbiAgICBQYXJhbWV0ZXJzOlxuICAgIC0gJHByb3BlcnR5LW5hbWU6IG5hbWUgb2YgdGhlIENTUyBwcm9wZXJ0eSB0aGF0IHNob3VsZCBiZSBvdXRwdXQuIFN1cHBvcnRlZCBwcm9wZXJ0aWVzIGFyZTpcbiAgICAgICAgbWFyZ2luLCBtYXJnaW4tdG9wLCBtYXJnaW4tcmlnaHQsIG1hcmdpbi1ib3R0b20sIG1hcmdpbi1sZWZ0XG4gICAgICAgIHBhZGRpbmcsIHBhZGRpbmctdG9wLCBwYWRkaW5nLXJpZ2h0LCBwYWRkaW5nLWJvdHRvbSwgcGFkZGluZy1sZWZ0XG4gICAgICAgIHdpZHRoLCBoZWlnaHQsIG1pbi13aWR0aCwgbWF4LXdpZHRoLCBtaW4taGVpZ2h0LCBtaW4taGVpZ2h0XG4gICAgLSAkdmFsdWU6IHZhbHVlIHRoYXQgd2lsbCBiZSBvdXRwdXQgYXMgcGFydCBvZiB0aGUgZ2l2ZW4gcHJvcGVydHkuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOlxuICAgICAgICBVbml0bGVzcyBudW1iZXIgKDQwKTogdGhpcyBzaG91bGQgYmUgdXNlZCBtb3N0IG9mIHRoZSB0aW1lcy4gSXQgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGNvbnZlcnRlZFxuICAgICAgICAgICAgdG8gdGhlIGNvcnJlY3QgdW5pdCBkZXBlbmRpbmcgb24gdGhlIGF4aXMgd2hlcmUgaXQncyB1c2VkIChob3Jpem9udGFsIGF4aXMgPT4gcHgsIHZlcnRpY2FsIGF4aXMgPT4gcmVtKS5cbiAgICAgICAgICAgIEVhY2ggdW5pdCBpbiAkdmFsdWUgd2lsbCBjb3JyZXNwb25kIHRvIGEgcHggaW4gdGhlIGJyb3dzZXIsIG5vIG1hdHRlciB0byB3aGljaCB1bml0IGl0IHdpbGwgYmUgY29udmVydGVkLlxuICAgICAgICBOdW1iZXIgd2l0aCB1bml0ICg0MHB4LCA0MCUuLi4pOiB0aGUgbnVtYmVyIGFuZCB0aGUgdW5pdCB3aWxsIGJlIHByZXNlcnZlZCBhbmQgb25seSB0aGUgbGVmdC9yaWdodCBpbnZlcnNpb25cbiAgICAgICAgICAgIHdpbGwgYmUgZG9uZSBmb3IgUlRMIGxhbmd1YWdlc1xuICAgICAgICBMaXN0IG9mIHZhbHVlcyAoNDAgMzAlIDIwIDEwKTogbWFyZ2luIGFuZCBwYWRkaW5nIHNob3J0aGFuZHMgd2hpdGggbXVsdGlwbGUgdmFsdWVzIGFyZSBzdXBwb3J0ZWQuXG4gICAgICAgICAgICBUaGUgbGVmdC9yaWdodCB2YWx1ZXMgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN3YXBwZWQgaW4gUlRMIGFuZCB0aGUgdW5pdGxlc3MgbnVtYmVycyB3aWxsIGJlIGNvbnZlcnRlZFxuICAgICAgICAgICAgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdC4gVW5pdGxlc3MgYW5kIG51bWJlcnMgd2l0aCB1bml0cyBjYW4gYmUgbWl4ZWQgaW4gdGhlIHNhbWUgY2FsbC5cbiAgICAgICAgVXNpbmcgY2FsYygpIGluIGFueSBvZiB0aGUgcHJldmlvdXMgZXhhbXBsZXMgaXMgc3VwcG9ydGVkLCBhbHRob3VnaCBubyB1bml0IGNvbnZlcnNpb24gd2lsbCBiZSBkb25lXG5cbiAjIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmcsIDAgMTBweCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDJyZW0gMDtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZywgMCAxMCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDJyZW0gMDtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcod2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1pbi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWF4LXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhoZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1pbi1oZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1heC1oZWlnaHQsIDEwMCk7XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IENsZWFyZml4XG5uYW1lOiBjbGVhcmZpeFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkNsZWFycyBhZnRlciBmbG9hdGluZyBlbGVtZW50XG5cblVzZSB0aGlzIG1peGluIG9ubHkgaW5zaWRlIG1lZGlhIHF1ZXJpZXMgd2hlcmUgeW91IGNhbid0IHVzZSB0aGVcbmFic3RyYWN0L2V4dGVuZHMvdXRpbHMvX2NsZWFyZml4IHZlcnNpb24sIHdoaWNoIGFkZHMgbGVzcyBjb2RlIHRvIGNzc1xuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBjbGVhcmZpeDtcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvY2xlYXItZml4L1xuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHN0cmluZy1uby1uZXdsaW5lICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpZHRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBjb2x1bW5zIHVwIHRvIHRoZSBnaXZlbiBhbW91bnQgb2YgY29sdW1uICovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1uIG9mZnNldCB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGFuZCBjb2x1bW5zIGZvciB0aGUgZ2l2ZW4gYnJlYWsgcG9pbnQgYW5kIHRvdGFsIG9mIGNvbHVtbnMgKi9cbi8qIEFQSSBmdW5jdGlvbiB0byBiZSBjYWxsZWQgdG8gZ2VuZXJhdGUgYSBncmlkIGNvbmZpZyAqL1xuLyogZG9jXG4tLS1cbnR5cGU6IGJ1dHRvbiB0eXBlXG5zdGF0ZTogc3RhdGUgYnV0dG9uXG4tLS1cblxuQnV0dG9uIHN0eWxlc1xuXG5Vc2UgdGhpcyBtaXhpbiBmb3IgYnV0dG9uIHN0eWxlczogY29sb3IgdGV4dCwgYmFja2dyb3VuZCwgYm9yZGVyXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGJ1dHRvbihwcmltYXJ5KTtcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG5saW5lTGltaXQ6IFRoaXMgdmFsdWUgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgbGluZXMgYWZ0ZXIgd2hpY2ggdGhlIGNvbnRlbnQgd2lsbCBiZSBjbGFtcGVkLiBJdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwLlxuLS0tXG5cblRydW5jYXRlcyB0ZXh0IGF0IGEgc3BlY2lmaWMgbnVtYmVyIG9mIGxpbmVzLlxuXG5Vc2UgdGhpcyBtaXhpbiB0byBoaWRlIGxvbmcgdGV4dC5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgbGluZS1jbGFtcCgkbGluZUxpbWl0OiA0KTtcbmBgYFxuKi9cbi8qIHR5cG9ncmFwaHlcbi0tLVxudGl0bGU6IHR5cG9ncmFwaHlcbm5hbWU6IFR5cG9ncmFwaHlcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGRzIGZvbnQgQ1NTIHByb3BlcnRpZXMgYnkgYSBtYXAgcHJvdmlkZWRcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJHQtc3R5bGVcbkBwYXJhbSAkaXMtaW1wb3J0YW50OiBmYWxzZVxuXG4qICR0LXN0eWxlIGlzIGV4cGVjdGVkIHRvIGJlIGEgbWFwIHdpdGggJ2RlZmF1bHQnIGFuZCAnYnJlYWtwb2ludFtzXScgc3VibWFwcyB3aXRoIGEgcHJvcGVydHlcbmZvciBldmVyeSBjc3MgcHJvcGVydHkgdG8gYmUgc2V0LlxuKiAkaXMtaW1wb3J0YW50IHBhcmFtZXRlciBhbGxvd3MgdG8gZm9yY2UgdHlwb2dyYXBoeSBwcm9wZXJ0aWVzIHRvIGJlIHNldCBhcyAhaW1wb3J0YW50XG5UcnkgdG8gYXZvaWQgaXRzIHVzZSwgYnV0IGl0IG1pZ2h0IGJlIG5lZWRlZCBmb3Igc2l0dWF0aW9ucyB3aGVyZSBzdHlsZXMgZm9yIGEgY29tcG9uZW50XG5hcmUgdmVyeSBzcGVjaWZpYyBhbmQgdG8gb3ZlcndyaXRlIHRoZSBnZW5lcmljIG9uZXMgaXMgdG9vIGNvbXBsZXggKGlmIHRoZXkgaGF2ZSBhIGxvdCBvZiBzcGVjaWZpY2l0eSlcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaGlkZGVuXG5uYW1lOiBoaWRkZW5cbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5IaWRlIGZyb20gYm90aCBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2VyczogaDVicC5jb20vdVxuIyMgUGFyYW1ldGVyc1xuLS0tXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IG92ZXJsYXlcbm5hbWU6IG92ZXJsYXlcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5DcmVhdGVzIGFuIG92ZXJsYXkgd2l0aCB0aGUgcHJvdmlkZWQgYmFja2dyb3VuZCBjb2xvclxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGJnQ29sb3JcblxuKi9cbi8qKlxuICogQG1peGluIHRvcC1ib3R0b20tYm9yZGVyXG4gKiBAZGVzYyBDcmVhdGVzIGEgZHluYW1pYyBhbmQgY3VzdG9taXphYmxlIGJvcmRlciBhdCB0aGUgc3BlY2lmaWVkIHBvc2l0aW9uIG9uIGFuIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9ICRwb3NpdGlvbiAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnYm90dG9tJy4gRGVmaW5lcyB0aGUgcG9zaXRpb24gb2YgdGhlIGJvcmRlci4gQWNjZXB0cyB2YWx1ZXMgJ3RvcCcgb3IgJ2JvdHRvbScuXG4gKiBAcGFyYW0ge2NvbG9yfSAkY29sb3IgLSBPcHRpb25hbCwgRGVmYXVsdDogJyRjLWJsYWNrJy4gU3BlY2lmaWVzIHRoZSBjb2xvciBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgY29sb3IgdmFsdWUuXG4gKiBAcGFyYW0ge2xlbmd0aH0gJHdpZHRoIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICcycHgnLiBTZXRzIHRoZSB3aWR0aCBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgbGVuZ3RoIHZhbHVlLlxuICogQHBhcmFtIHtsZW5ndGh9ICRtYXJnaW4gLSBPcHRpb25hbCwgRGVmYXVsdDogJzAnLiBBZGRzIG1hcmdpbiB0byB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgbGVuZ3RoIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiAgIC5leGFtcGxlLWVsZW1lbnQge1xuICogICAgICAgQGluY2x1ZGUgdG9wLWJvdHRvbS1ib3JkZXIoJHBvc2l0aW9uOiB0b3AsICRjb2xvcjogJGMtZ3JleS10d28sICR3aWR0aDogM3B4LCAkbWFyZ2luOiAxMHB4KTtcbiAqICAgfVxuICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zXG5uYW1lOiByZXNldC1mdWxsd2lkdGgtbWFyZ2luc1xuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblJlc2V0IG1hcmdpbnMgZm9yIGZ1bGwgd2lkdGggY29tcG9uZW50cyBpbnNpZGUgYSBDb250YWluZXIgb3IgYSBDb2x1bW4gQ29udHJvbFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogdmlzdWFsbHkgaGlkZGVuXG5uYW1lOiB2aXN1YWxseSBoaWRkZW5cbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5IaWRkZW4gZnJvbSBicm93c2VycyBidXQgYWNjZXNzaWJsZSB0byBzY3JlZW4gcmVhZGVyc1xuIyMgUGFyYW1ldGVyc1xuLS0tXG5cbiovXG5odG1sIHtcbiAgLS1mZi1yZWd1bGFyOiBWb2x2byBOb3Z1bSBSZWd1bGFyLCBBc3Npc3RhbnQsIE5vdG8gU2FucyBSZWd1bGFyLCBzYW5zLXNlcmlmO1xuICAtLWZmLW1lZGl1bTogVm9sdm8gTm92dW0gTWVkaXVtLCBOb3RvIFNhbnMgTWVkaXVtLCBzYW5zLXNlcmlmO1xuICAtLWZmLWxpZ2h0OiBWb2x2byBOb3Z1bSBMaWdodCwgTm90byBTYW5zIExpZ2h0LCBzYW5zLXNlcmlmO1xuICAtLWZmLWJyb2FkOiBWb2x2b0Jyb2FkUHJvRGlnaXRhbCwgVm9sdm8gTm92dW0gTWVkaXVtLCBOb3RvIFNhbnMgTWVkaXVtLCBzYW5zLXNlcmlmO1xuICAtLWZmLXN0YWdlLWhlYWRlcjogdmFyKC0tZmYtYnJvYWQpO1xuICAtLWxzLWhlYWRlcjogLTAuMXB4O1xuICAtLWxzLWRlZmF1bHQ6IC0wLjFweDtcbiAgLS1scy12b2x2bzogMC4wNmVtO1xufVxuaHRtbFtkaXI9cnRsXSB7XG4gIC0tZmYtcmVndWxhcjogQXNzaXN0YW50LCBWb2x2byBOb3Z1bSBSZWd1bGFyLCBOb3RvIFNhbnMgUmVndWxhciwgc2Fucy1zZXJpZjtcbiAgLS1mZi1saWdodDogQXNzaXN0YW50IExpZ2h0LCBWb2x2byBOb3Z1bSBMaWdodCwgTm90byBTYW5zIExpZ2h0LCBzYW5zLXNlcmlmO1xuICAtLWZmLW1lZGl1bTogQXNzaXN0YW50IEJvbGQsIFZvbHZvIE5vdnVtIE1lZGl1bSwgTm90byBTYW5zIE1lZGl1bSwgc2Fucy1zZXJpZjtcbiAgLS1mZi1icm9hZDogQXNzaXN0YW50IEJvbGQsIFZvbHZvIE5vdnVtIE1lZGl1bSwgTm90byBTYW5zIE1lZGl1bSwgc2Fucy1zZXJpZjtcbiAgLS1scy12b2x2bzogLTAuMXB4O1xufVxuXG5bZGF0YS1kZWFsZXItcHJpdmF0ZV0ge1xuICAtLWZmLWJyb2FkOiB2YXIoLS1mZi1tZWRpdW0pO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuaHIge1xuICBtYXJnaW4tYmxvY2s6IDFyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbn1cblxuaHI6bm90KFtzaXplXSkge1xuICBoZWlnaHQ6IDFweDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBjb2xvcjogIzE0MTQxNDtcbn1cblxuW2NsYXNzKj10ZXh0LS13aGl0ZV0ge1xuICBjb2xvcjogI2ZmZjtcbn1cbltjbGFzcyo9dGV4dC0td2hpdGVdIGgxLFxuW2NsYXNzKj10ZXh0LS13aGl0ZV0gaDIsXG5bY2xhc3MqPXRleHQtLXdoaXRlXSBoMyxcbltjbGFzcyo9dGV4dC0td2hpdGVdIGg0LFxuW2NsYXNzKj10ZXh0LS13aGl0ZV0gaDUsXG5bY2xhc3MqPXRleHQtLXdoaXRlXSBoNiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCB7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tYmxvY2s6IDA7XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYmxvY2s6IDAgMXJlbTtcbiAgbWFyZ2luLWlubGluZTogMDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgaW5zZXQtYmxvY2stZW5kOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICBpbnNldC1ibG9jay1zdGFydDogLTAuNWVtO1xufVxuXG5ib2R5IGEge1xuICBjb2xvcjogIzUzNTY1YTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGxpbmVhcjtcbn1cbmJvZHkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luLWJsb2NrOiAwIDFyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDA7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiAjNTM1NjVhO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPWRhdGVdLFxuaW5wdXRbdHlwZT10aW1lXSxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaW5wdXRbdHlwZT1tb250aF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9ZGF0ZV0sXG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9dGltZV0sXG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaHRtbFtkaXI9cnRsXSBpbnB1dFt0eXBlPW1vbnRoXSB7XG4gIHRleHQtYWxpZ246IGVuZDtcbn1cblxuaHRtbFtkaXI9cnRsXSBpbnB1dFt0eXBlPXRlbF0ge1xuICB0ZXh0LWFsaWduOiBlbmQ7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5yb290LnJlc3BvbnNpdmVncmlkID4gLmFlbS1HcmlkIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnJvb3QucmVzcG9uc2l2ZWdyaWQgLnJvb3QucmVzcG9uc2l2ZWdyaWQgPiAuYWVtLUdyaWQge1xuICAgIG1hcmdpbi1pbmxpbmU6IC0xNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5yb290LnJlc3BvbnNpdmVncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ibG9jazogMDtcbiAgbWFyZ2luLWlubGluZTogLTE1cHg7XG59XG4uYWVtLUdyaWRDb2x1bW4ge1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWlubGluZTogMTVweDtcbn1cbi5hZW0tR3JpZC1uZXdDb21wb25lbnQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYWVtLUdyaWQtLXJldmVyc2UtbW9iaWxlIC5hZW0tR3JpZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG4uYWVtLUdyaWQgLnRleHQgdGFibGU6bm90KHRhYmxlW3dpZHRoXSkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkLS0xMiA+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+IHBhZGRpbmc6IDAgMTBweCAycmVtIDA7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmctbGVmdCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbiwgMCAxMCAyMCAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1heC13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcoaGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4taGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtaGVpZ2h0LCAxMDApO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBDbGVhcmZpeFxubmFtZTogY2xlYXJmaXhcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5DbGVhcnMgYWZ0ZXIgZmxvYXRpbmcgZWxlbWVudFxuXG5Vc2UgdGhpcyBtaXhpbiBvbmx5IGluc2lkZSBtZWRpYSBxdWVyaWVzIHdoZXJlIHlvdSBjYW4ndCB1c2UgdGhlXG5hYnN0cmFjdC9leHRlbmRzL3V0aWxzL19jbGVhcmZpeCB2ZXJzaW9uLCB3aGljaCBhZGRzIGxlc3MgY29kZSB0byBjc3NcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgY2xlYXJmaXg7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2NsZWFyLWZpeC9cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzdHJpbmctbm8tbmV3bGluZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aWR0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1ucyB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbiBvZmZzZXQgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBhbmQgY29sdW1ucyBmb3IgdGhlIGdpdmVuIGJyZWFrIHBvaW50IGFuZCB0b3RhbCBvZiBjb2x1bW5zICovXG4vKiBBUEkgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHRvIGdlbmVyYXRlIGEgZ3JpZCBjb25maWcgKi9cbi8qIGRvY1xuLS0tXG50eXBlOiBidXR0b24gdHlwZVxuc3RhdGU6IHN0YXRlIGJ1dHRvblxuLS0tXG5cbkJ1dHRvbiBzdHlsZXNcblxuVXNlIHRoaXMgbWl4aW4gZm9yIGJ1dHRvbiBzdHlsZXM6IGNvbG9yIHRleHQsIGJhY2tncm91bmQsIGJvcmRlclxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBidXR0b24ocHJpbWFyeSk7XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxubGluZUxpbWl0OiBUaGlzIHZhbHVlIHNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGxpbmVzIGFmdGVyIHdoaWNoIHRoZSBjb250ZW50IHdpbGwgYmUgY2xhbXBlZC4gSXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMC5cbi0tLVxuXG5UcnVuY2F0ZXMgdGV4dCBhdCBhIHNwZWNpZmljIG51bWJlciBvZiBsaW5lcy5cblxuVXNlIHRoaXMgbWl4aW4gdG8gaGlkZSBsb25nIHRleHQuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGxpbmUtY2xhbXAoJGxpbmVMaW1pdDogNCk7XG5gYGBcbiovXG4vKiB0eXBvZ3JhcGh5XG4tLS1cbnRpdGxlOiB0eXBvZ3JhcGh5XG5uYW1lOiBUeXBvZ3JhcGh5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkcyBmb250IENTUyBwcm9wZXJ0aWVzIGJ5IGEgbWFwIHByb3ZpZGVkXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICR0LXN0eWxlXG5AcGFyYW0gJGlzLWltcG9ydGFudDogZmFsc2VcblxuKiAkdC1zdHlsZSBpcyBleHBlY3RlZCB0byBiZSBhIG1hcCB3aXRoICdkZWZhdWx0JyBhbmQgJ2JyZWFrcG9pbnRbc10nIHN1Ym1hcHMgd2l0aCBhIHByb3BlcnR5XG5mb3IgZXZlcnkgY3NzIHByb3BlcnR5IHRvIGJlIHNldC5cbiogJGlzLWltcG9ydGFudCBwYXJhbWV0ZXIgYWxsb3dzIHRvIGZvcmNlIHR5cG9ncmFwaHkgcHJvcGVydGllcyB0byBiZSBzZXQgYXMgIWltcG9ydGFudFxuVHJ5IHRvIGF2b2lkIGl0cyB1c2UsIGJ1dCBpdCBtaWdodCBiZSBuZWVkZWQgZm9yIHNpdHVhdGlvbnMgd2hlcmUgc3R5bGVzIGZvciBhIGNvbXBvbmVudFxuYXJlIHZlcnkgc3BlY2lmaWMgYW5kIHRvIG92ZXJ3cml0ZSB0aGUgZ2VuZXJpYyBvbmVzIGlzIHRvbyBjb21wbGV4IChpZiB0aGV5IGhhdmUgYSBsb3Qgb2Ygc3BlY2lmaWNpdHkpXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGhpZGRlblxubmFtZTogaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBvdmVybGF5XG5uYW1lOiBvdmVybGF5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ3JlYXRlcyBhbiBvdmVybGF5IHdpdGggdGhlIHByb3ZpZGVkIGJhY2tncm91bmQgY29sb3JcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRiZ0NvbG9yXG5cbiovXG4vKipcbiAqIEBtaXhpbiB0b3AtYm90dG9tLWJvcmRlclxuICogQGRlc2MgQ3JlYXRlcyBhIGR5bmFtaWMgYW5kIGN1c3RvbWl6YWJsZSBib3JkZXIgYXQgdGhlIHNwZWNpZmllZCBwb3NpdGlvbiBvbiBhbiBlbGVtZW50LlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcG9zaXRpb24gLSBPcHRpb25hbCwgRGVmYXVsdDogJ2JvdHRvbScuIERlZmluZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgdmFsdWVzICd0b3AnIG9yICdib3R0b20nLlxuICogQHBhcmFtIHtjb2xvcn0gJGNvbG9yIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICckYy1ibGFjaycuIFNwZWNpZmllcyB0aGUgY29sb3Igb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGNvbG9yIHZhbHVlLlxuICogQHBhcmFtIHtsZW5ndGh9ICR3aWR0aCAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMnB4Jy4gU2V0cyB0aGUgd2lkdGggb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkbWFyZ2luIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICcwJy4gQWRkcyBtYXJnaW4gdG8gdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogICAuZXhhbXBsZS1lbGVtZW50IHtcbiAqICAgICAgIEBpbmNsdWRlIHRvcC1ib3R0b20tYm9yZGVyKCRwb3NpdGlvbjogdG9wLCAkY29sb3I6ICRjLWdyZXktdHdvLCAkd2lkdGg6IDNweCwgJG1hcmdpbjogMTBweCk7XG4gKiAgIH1cbiAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZXNldC1mdWxsd2lkdGgtbWFyZ2luc1xubmFtZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5SZXNldCBtYXJnaW5zIGZvciBmdWxsIHdpZHRoIGNvbXBvbmVudHMgaW5zaWRlIGEgQ29udGFpbmVyIG9yIGEgQ29sdW1uIENvbnRyb2xcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHZpc3VhbGx5IGhpZGRlblxubmFtZTogdmlzdWFsbHkgaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZGVuIGZyb20gYnJvd3NlcnMgYnV0IGFjY2Vzc2libGUgdG8gc2NyZWVuIHJlYWRlcnNcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLmltZ19fY29udGFpbmVyLXpvb20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW1hZ2Uge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQ6IDMwcHg7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1lbmQ6IDMwcHg7XG59XG4uaW1hZ2UubWFyZ2luLXRvcC0tbm9uZSB7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1zdGFydDogMDtcbn1cbi5pbWFnZS5tYXJnaW4tdG9wLS1zaW5nbGUge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQ6IDMwcHg7XG59XG4uaW1hZ2UubWFyZ2luLXRvcC0tZG91YmxlIHtcbiAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLXN0YXJ0OiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZS5tYXJnaW4tdG9wLS1kb3VibGUge1xuICAgIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1zdGFydDogY2FsYygzMHB4ICogMik7XG4gIH1cbn1cbi5pbWFnZS5tYXJnaW4tYm90dG9tLS1ub25lIHtcbiAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLWVuZDogMDtcbn1cbi5pbWFnZS5tYXJnaW4tYm90dG9tLS1zaW5nbGUge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stZW5kOiAzMHB4O1xufVxuLmltYWdlLm1hcmdpbi1ib3R0b20tLWRvdWJsZSB7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1lbmQ6IDMwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlLm1hcmdpbi1ib3R0b20tLWRvdWJsZSB7XG4gICAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLWVuZDogY2FsYygzMHB4ICogMik7XG4gIH1cbn1cbi5pbWFnZSAuaW1nX19jb250YWluZXIge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQpIHZhcigtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stZW5kKSAhaW1wb3J0YW50O1xufVxuLmFlbS1HcmlkID4gLmltYWdlOmZpcnN0LWNoaWxkOm5vdCgubWFyZ2luLXRvcC0tc2luZ2xlKTpub3QoLm1hcmdpbi10b3AtLWRvdWJsZSkgLmltZ19fY29udGFpbmVyIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pbWFnZSAuczd6b29tdmlld2VyIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdOmhvdmVyIC5zN3pvb212aWV3ZXJfX292ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSAuczd6b29taW5idXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb21vdXRidXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb21yZXNldGJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb212aWV3ZXJfX292ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBmb250LXNpemU6IDMycHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgei1pbmRleDogMTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IC0xMDAlIDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSAuczdmdWxsc2NyZWVuYnV0dG9uOjpiZWZvcmUsIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN2Z1bGxzY3JlZW5idXR0b246OmJlZm9yZSB7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW07XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBoZWlnaHQ6IDMuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGluc2V0LWJsb2NrLWVuZDogMjBweDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMjBweDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YWZ0ZXIge1xuICBpbnNldC1pbmxpbmUtZW5kOiAzM3B4O1xuICBpbnNldC1ibG9jay1lbmQ6IDMzcHg7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN2Z1bGxzY3JlZW5idXR0b25bc3RhdGVdW3NlbGVjdGVkXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb212aWV3W2RhdGEtbmFtZXNwYWNlPXM3Y2xhc3NpY10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl06OmJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIC5zN2Z1bGxzY3JlZW5idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIGhlaWdodDogMy4xMjVyZW07XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW07XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiBjYWxjKC0xMDB2aCArIDIwcHgpO1xuICBpbnNldC1pbmxpbmUtZW5kOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL3NlcnZpY2UtY29udHJhY3QtaWNvbnMvY2xvc2Uuc3ZnI2Nsb3NlLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczdmdWxsc2NyZWVuYnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvc2VydmljZS1jb250cmFjdC1pY29ucy9jbG9zZS5zdmcjY2xvc2UtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczdmdWxsc2NyZWVuYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIC5zN2Z1bGxzY3JlZW5idXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczd6b29tdmlldyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjAsIDIwLCAyMCwgMC44KTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbixcbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21vdXRidXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBoZWlnaHQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW0gIWltcG9ydGFudDtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIGluc2V0LWJsb2NrLWVuZDogMjBweCAhaW1wb3J0YW50O1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDUwJSAhaW1wb3J0YW50O1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uLFxuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uLFxuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29taW5idXR0b25bc3RhdGVdLFxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbltzdGF0ZV0sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b25bc3RhdGVdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoNTAlIC0gNzBweCkgIWltcG9ydGFudDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvcGx1cy5zdmcjcGx1cy1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9wbHVzLnN2ZyNwbHVzLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29taW5idXR0b246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uOjpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGluc2V0OiAwO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbWludXMuc3ZnI21pbnVzLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9taW51cy5zdmcjbWludXMtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21vdXRidXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiBjYWxjKDUwJSArIDcwcHgpICFpbXBvcnRhbnQ7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9zZXJ2aWNlLWNvbnRyYWN0LWljb25zL0FjdGlvbnNfVXBkYXRlX0JsYWNrLnN2ZyNBY3Rpb25zX1VwZGF0ZV9CbGFjay1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbXJlc2V0YnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvc2VydmljZS1jb250cmFjdC1pY29ucy9BY3Rpb25zX1VwZGF0ZV9CbGFjay5zdmcjQWN0aW9uc19VcGRhdGVfQmxhY2staWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbXJlc2V0YnV0dG9uOjpiZWZvcmUsIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21yZXNldGJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdidXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYTdhOGE5O1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAyNXB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOmhvdmVyOjphZnRlciB7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcygwLjc1KTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2J1dHRvbltzdGF0ZT1kaXNhYmxlZF0ge1xuICBjdXJzb3I6IGF1dG87XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdidXR0b25bc3RhdGU9ZGlzYWJsZWRdOjphZnRlciB7XG4gIGZpbHRlcjogb3BhY2l0eSgwLjUpO1xufVxuLmltYWdlIC5pbWdfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1heC13aWR0aDogNDgwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlIC5pbWdfX3RpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZSAuaW1nX190aXRsZSB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIH1cbn1cbi5pbWFnZV9fZnVsbFdpZHRoLmltYWdlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IC0xNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiBjYWxjKCgxMDB2dyAtIDEyMDBweCkgLyAtMik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyMDQ4cHgpIHtcbiAgLmltYWdlX19mdWxsV2lkdGggLmltZ19fY29udGFpbmVyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygoMjA0OHB4IC0gMTIwMHB4KSAvIC0yKTtcbiAgfVxuICAuY29udGFpbmVyLS1mdWxsV2lkdGggLmltYWdlX19mdWxsV2lkdGggLmltZ19fY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmNvbHVtbmNvbnRyb2xfX2NvbHVtbjpmaXJzdC1jaGlsZCAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICB9XG4gIC5jb2x1bW5jb250cm9sX19jb2x1bW46bGFzdC1jaGlsZCAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gIH1cbn1cbi5pbWFnZV9fZnVsbFdpZHRoIC5pbWdfX2Fzc2V0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pbWFnZV9fY29udGVudFdpZHRoIC5pbWdfX2Fzc2V0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fYXNzZXQsXG4uaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGhlaWdodDogMjgwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlX19zbGltSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmltYWdlX19zbGltSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDQwMnB4O1xuICB9XG59XG4uaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuLmltYWdlX19zdGFuZGFyZEhlaWdodCAuaW1nX19jb250YWluZXIge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgaGVpZ2h0OiAyODBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5pbWFnZV9fc3RhbmRhcmRIZWlnaHQgLmltZ19fYXNzZXQsXG4gIC5pbWFnZV9fc3RhbmRhcmRIZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDYwNHB4O1xuICB9XG59XG4uaW1hZ2VfX2Zsb2F0TGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuaHRtbFtkaXI9cnRsXSAuaW1hZ2VfX2Zsb2F0TGVmdCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW1hZ2VfX2Zsb2F0TGVmdCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAzMHB4O1xuICB9XG4gIC5jbXAtY29udGFpbmVyIC5pbWFnZV9fZmxvYXRMZWZ0IGltZyB7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogMTBweDtcbiAgICBtaW4td2lkdGg6IDI4MHB4O1xuICB9XG4gIGh0bWxbZGlyPXJ0bF0gLmltYWdlX19mbG9hdExlZnQgaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5pbWFnZV9fZmxvYXRMZWZ0IC5pbWdfX3RpdGxlIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDMwcHg7XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5odG1sW2Rpcj1ydGxdIC5pbWFnZV9fZmxvYXRSaWdodCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAzMHB4O1xuICB9XG4gIC5jbXAtY29udGFpbmVyIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDEwcHg7XG4gICAgbWluLXdpZHRoOiAyODBweDtcbiAgfVxuICBodG1sW2Rpcj1ydGxdIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQgLmltZ19fdGl0bGUge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAzMHB4O1xufVxuLmltYWdlX19mbG9hdFJpZ2h0IC5pbWdfX3RpdGxlLCAuaW1hZ2VfX2Zsb2F0TGVmdCAuaW1nX190aXRsZSB7XG4gIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQgKyAudGV4dCAudGV4dF9fY29udGFpbmVyICosIC5pbWFnZV9fZmxvYXRMZWZ0ICsgLnRleHQgLnRleHRfX2NvbnRhaW5lciAqIHtcbiAgY2xlYXI6IG5vbmU7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG4uYWVtLUdyaWQgPiAuaW1hZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG59XG5cbi5saXN0LS1pY29ucyAubGlzdCB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjBweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC0taWNvbnMgLmxpc3Qge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogNXB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5saXN0LS1pY29ucyAuY21wLWxpc3Qge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDIwcHg7XG59XG4ubGlzdC0taWNvbnMgLmNtcC1saXN0X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC0taWNvbnMgLmNtcC1saXN0X190aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiAwIDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMjAlO1xuICB9XG59XG4ubGlzdC0taWNvbnMgLmNtcC1saXN0X19pdGVtIHtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwO1xufVxuLmxpc3QtLWljb25zIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLmxpc3QtLWljb25zIC5jbXAtbGlzdF9faXRlbS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5cbi5jbXAtbGlzdF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDI1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1saXN0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG4uY21wLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nLWJsb2NrLWVuZDogMjBweDtcbn1cbi5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5odG1sW2Rpcj1ydGxdIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cbi5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAycHg7XG4gIGluc2V0LWlubGluZS1zdGFydDogMDtcbn1cbi5jbXAtbGlzdF9faXRlbS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG4uY21wLWxpc3RfX2xpbmsge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY21wLWxpc3RfX2xpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY21wLWxpc3RfX2xpbmstLW5vaWNvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKdr1wiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDEwcHg7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19saW5rLS1ub2ljb246OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5jbXAtbGlzdF9faWNvbiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDFweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLWxpc3RfX2ljb24ge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxufVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDQ7XG59XG4uaGVhZGVyX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLmhlYWRlcl9fbWFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctYmxvY2s6IDA7XG4gIHBhZGRpbmctaW5saW5lOiAxNXB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fbWFpbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuNWZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuICB9XG59XG4uaGVhZGVyX19icmFuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtYmFzaXM6IDcwJTtcbiAgcGFkZGluZy1ibG9jazogMjBweDtcbiAgcGFkZGluZy1pbmxpbmU6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fYnJhbmQge1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMjtcbiAgICBwYWRkaW5nLWJsb2NrOiA1NHB4IDM2cHg7XG4gICAgbWF4LWhlaWdodDogMTI3cHg7XG4gIH1cbn1cbi5oZWFkZXJfX2JyYW5kIC5pbWdfX2NvbnRhaW5lciBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxOXB4O1xufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX2JyYW5kIC5pbWdfX2NvbnRhaW5lciBhIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG4uaGVhZGVyX19icmFuZCAuaW1nX19hc3NldCB7XG4gIHdpZHRoOiA5OHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fYnJhbmQgLmltZ19fYXNzZXQge1xuICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjE1ZW0pO1xufVxuLmhlYWRlcl9fYnJhbmQtbmFtZSB7XG4gIGNvbG9yOiAjODg4YjhkO1xufVxuLmhlYWRlcl9fYnJhbmRfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cbi5oZWFkZXJfX3NpbXBsZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctYmxvY2s6IDI4LjVweDtcbiAgcGFkZGluZy1pbmxpbmU6IDE3cHg7XG4gIGNvbHVtbi1nYXA6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fc2ltcGxlIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAyOC41cHg7XG4gIH1cbn1cbi5oZWFkZXJfX3NpbXBsZSAuaGVhZGVyX19icmFuZCB7XG4gIHBhZGRpbmc6IDA7XG59XG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fbGluayB7XG4gIGp1c3RpZnktc2VsZjogZmxleC1lbmQ7XG4gIGNvbG9yOiAjMDA0ZmJjO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oZWFkZXJfX3NpbXBsZSAuaGVhZGVyX19saW5rIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fbGluayAudi1pY29uIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogNXB4O1xufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX3RpdGxlIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgLyogaGVpZ2h0IHNldCB0byAwIGluIG9yZGVyIHRoZSBwYWRkaW5nIG9mIHRoZSBoZWFkZXIgaXMgc2V0IGJhc2VkIG9uIHRoZSBicmFuZCwgbm90IHRoZSB0aXRsZSAqL1xuICBoZWlnaHQ6IDA7XG59XG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fY29tcGFueSxcbi5oZWFkZXJfX3NpbXBsZSAuaGVhZGVyX19tYXJrZXQge1xuICAvKiBtYXJnaW4tbGVmdCByZXNldCBpbiBoZWFkZXJfX3NpbXBsZSBzaW5jZSB0aGUgY29sdW1uIGdhcCBnaXZlcyB0aGUgc3BhY2luZyAqL1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwO1xufVxuLmhlYWRlcl9fZGVhbGVycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmctYmxvY2s6IDE1cHg7XG59XG4uaGVhZGVyX19kZWFsZXJzIC5pbWdfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAyMnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX2RlYWxlcnMge1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMjtcbiAgICBwYWRkaW5nLWJsb2NrOiA0MHB4O1xuICB9XG59XG4uaGVhZGVyX19kZWFsZXJzIC5pbWdfX2Fzc2V0IHtcbiAgbWF4LXdpZHRoOiA0MHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfX2RlYWxlcnMgLmltZ19fYXNzZXQge1xuICAgIG1heC13aWR0aDogNzBweDtcbiAgfVxufVxuLmhlYWRlcl9fY29tcGFueSwgLmhlYWRlcl9fbWFya2V0IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlcl9fY29tcGFueSwgLmhlYWRlcl9fbWFya2V0IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19jb21wYW55LCAuaGVhZGVyX19tYXJrZXQge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgfVxufVxuLmhlYWRlcl9fY29tcGFueSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBwYWRkaW5nLWJsb2NrLWVuZDogMDtcbn1cbi5oZWFkZXJfX21hcmtldCB7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjODg4YjhkO1xufVxuLmhlYWRlcl9fbWV0YSB7XG4gIGZsZXgtYmFzaXM6IDMwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gIH1cbn1cbi5oZWFkZXJfX3NlYXJjaCB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1hcmdpbi1ibG9jazogMjFweCAyN3B4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaCB7XG4gICAgZ3JpZC1yb3c6IDI7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgfVxufVxuLmhlYWRlcl9fc2VhcmNoLS1tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5oZWFkZXJfX3NlYXJjaC0tbWVudTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4YjhkO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21lbnUtaGFtYnVyZ2VyLnN2ZyNtZW51LWhhbWJ1cmdlci1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaC0tbWVudTpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21lbnUtaGFtYnVyZ2VyLnN2ZyNtZW51LWhhbWJ1cmdlci1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fc2VhcmNoIC5jbXAtc2VhcmNoIHtcbiAgICB3aWR0aDogMjg5cHg7XG4gIH1cbn1cbi5oZWFkZXJfX3NlYXJjaCAuY21wLXNlYXJjaF9faWNvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhN2E4YTk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyX19zZWFyY2ggLmNtcC1zZWFyY2hfX2ljb246YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NlYXJjaC5zdmcjc2VhcmNoLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbi5oZWFkZXJfX3NlYXJjaCAuY21wLXNlYXJjaF9faWNvbjo6YWZ0ZXIge1xuICBjb2xvcjogIzg4OGI4ZDtcbn1cbi5oZWFkZXJfX3NlYXJjaCAuY21wLXNlYXJjaF9faW5wdXQge1xuICBjb2xvcjogIzg4OGI4ZDtcbn1cbi5oZWFkZXJfX3NlYXJjaEljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyX19zZWFyY2hJY29uLS1jaGVja2JveCB7XG4gIHdpZHRoOiAyMXB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fc2VhcmNoSWNvbi0tY2hlY2tib3g6Y2hlY2tlZCArIC5oZWFkZXJfX3NlYXJjaEljb24tLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXJfX3NlYXJjaEljb24tLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAtMnB4O1xuICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICBmb250LXNpemU6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5oZWFkZXJfX3NlYXJjaEljb24tLWljb246YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E3YThhOTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9zZWFyY2guc3ZnI3NlYXJjaC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaEljb24tLWljb246YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9zZWFyY2guc3ZnI3NlYXJjaC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG4uaGVhZGVyX19zZWFyY2hJY29uLS1pY29uOjpiZWZvcmUge1xuICBjb2xvcjogIzAwMDtcbn1cbi5oZWFkZXItLWFub255bW91cyAuaGVhZGVyX19zZWFyY2hJY29uLS1pY29uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhOGE5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaEljb24tLWljb24ge1xuICAgIGluc2V0LWJsb2NrOiBhdXRvIDA7XG4gIH1cbn1cbi5oZWFkZXJfX21haW5uYXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFkZmRkO1xufVxuLmhlYWRlcl9fbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyX19tZW51OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODhiOGQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbWVudS1oYW1idXJnZXIuc3ZnI21lbnUtaGFtYnVyZ2VyLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlcl9fbWVudTpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21lbnUtaGFtYnVyZ2VyLnN2ZyNtZW51LWhhbWJ1cmdlci1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlci0tYW5vbnltb3VzIC5oZWFkZXJfX21lbnU6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E3YThhOTtcbiAgfVxuICAuaGVhZGVyLS1hbm9ueW1vdXMgLmhlYWRlcl9fbWVudSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLmhlYWRlciB7XG4gIGNvbG9yOiAjNTM1NjVhO1xuICBmb250LWZhbWlseTogVm9sdm8gTm92dW0gUmVndWxhciwgQXNzaXN0YW50LCBOb3RvIFNhbnMgUmVndWxhciwgc2Fucy1zZXJpZjtcbn1cbi5oZWFkZXJfX21haW5uYXYubmF2aWdhdGlvbi0tb3BlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19icmFuZCB7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgZ3JpZC1yb3c6IDEvc3BhbiAyO1xuICAgIG1heC1oZWlnaHQ6IDE2MHB4O1xuICB9XG59XG4uaGVhZGVyX19icmFuZC1uYW1lIHtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG4uaGVhZGVyX19icmFuZCAuaW1nX19jb250YWluZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uaGVhZGVyX19icmFuZCAuaW1nX19hc3NldCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogNDBweDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19icmFuZCAuaW1nX19hc3NldCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDcwcHg7XG4gIH1cbn1cbi5oZWFkZXJfX2RlYWxlcnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX2RlYWxlcnMge1xuICAgIGdyaWQtcm93OiAyO1xuICAgIGdyaWQtY29sdW1uOiAyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfX2RlYWxlcnMgLmltZ19fYXNzZXQge1xuICAgIG1heC13aWR0aDogNTVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX21ldGEge1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBncmlkLWNvbHVtbjogMztcbiAgfVxufSIsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsXX0= */