@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
 */
: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;
  /* stylelint-disable */
  /* stylelint-enable */
}

@media not all and (min-resolution: 0.001dpcm) {
  .v-icon--24 {
    -webkit-transform: translateY(-16px);
            transform: translateY(-16px);
  }
}

@supports (-webkit-touch-callout: none) {
  .v-icon--24 {
    -webkit-transform: translateY(-16px);
            transform: translateY(-16px);
  }
}

@media (min-width: 960px) {
  .v-icon--24 {
    display: none;
  }
}

/*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
```
*/
/*doc
---
title: Swap left right values
name: nn-rtl
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
nn-rtl(left): 10px;
nn-rtl(padding-right): 30px;
nn-rtl(0 1px 8px 12px) // 0 12px 8px 1px
```


*/
/*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/
*/
.icon {
  display: inline-block;
  width: 32px;
  height: 32px;
}

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

$t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set

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

*/
.teaser--hero-desktop-mobile .cmp-teaser {
  position: relative;
}

@media (min-width: 768px) {
  .cmp-teaser {
    position: relative;
  }
}

@media (min-width: 960px) {
  .cmp-teaser {
    margin: 0;
  }
}

.cmp-teaser__content {
  padding: 1em 0;
  pointer-events: none;
  z-index: 2;
}

@media (min-width: 768px) {
  .cmp-teaser__content {
    padding: 1em;
  }
}

.cmp-teaser__content.is-hidden {
  display: none;
}

@media (max-width: 767px) {
  .cmp-carousel__item .cmp-teaser__content {
    padding: 0 56px;
  }
}

@media (min-width: 960px) {
  .cmp-teaser__content {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .teaser.aem-GridColumn--default--12 .cmp-teaser__content {
    width: 40%;
  }
  .insightarticlepage .teaser.aem-GridColumn--default--12 .cmp-teaser__content {
    width: 100%;
  }
  .carousel .teaser .cmp-teaser__content {
    width: 50%;
  }
}

.cmp-teaser__title {
  font-family: var(--ff-broad);
  font-size: 48px;
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: var(--ls-volvo);
  margin-bottom: 25px;
  color: #53565a;
}

[data-dealer-private] .cmp-teaser__title {
  letter-spacing: -0.1px;
}

.cmp-teaser__description {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  color: #53565a;
  margin-top: 1em;
}

.cmp-teaser__description a {
  color: #004fbc;
}

.cmp-teaser__description a:hover, .cmp-teaser__description a:focus {
  color: #0056d6;
}

.cmp-teaser__description ul,
.cmp-teaser__description ol {
  padding-left: 32px;
}

.cmp-teaser__description ul {
  list-style: disc;
}

.cmp-teaser__description ol {
  list-style: decimal;
}

.cmp-teaser__action-container {
  margin-top: 1em;
  -webkit-padding-end: 24px;
          padding-inline-end: 24px;
}

.teaser__cta--link .cmp-teaser__action-container {
  display: flex;
  flex-direction: column;
}

.cmp-teaser .cmp-image,
.cmp-teaser .img__container {
  height: 280px;
  background-position: center;
}

@media (min-width: 768px) {
  .cmp-teaser .cmp-image,
  .cmp-teaser .img__container {
    height: 250px;
  }
}

@media (min-width: 960px) {
  .cmp-teaser .cmp-image,
  .cmp-teaser .img__container {
    height: 302px;
  }
}

.cmp-teaser .cmp-image__link,
.cmp-teaser .img__container__link {
  width: 100%;
}

.cmp-teaser .cmp-image__image,
.cmp-teaser .cmp-image .img__asset,
.cmp-teaser .img__container__image,
.cmp-teaser .img__container .img__asset {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.cmp-teaser .cmp-image__image video,
.cmp-teaser .cmp-image .img__asset video,
.cmp-teaser .img__container__image video,
.cmp-teaser .img__container .img__asset video {
  height: 100%;
}

.cmp-teaser .cmp-image__image .s7dm-dynamic-media video,
.cmp-teaser .cmp-image .img__asset .s7dm-dynamic-media video,
.cmp-teaser .img__container__image .s7dm-dynamic-media video,
.cmp-teaser .img__container .img__asset .s7dm-dynamic-media video {
  top: 0 !important;
  left: 0 !important;
  min-width: 100% !important;
  min-height: 100% !important;
}

.cmp-teaser__action-link {
  display: inline-block;
  align-items: center;
  text-decoration: none;
  font-family: var(--ff-medium);
  box-sizing: border-box;
  padding: 12px 32px;
  background: #004fbc;
  border: 1px solid #004fbc;
  color: #fff;
  transition: background 1s;
  pointer-events: all;
  margin: 0 10px 10px 0;
}

.cmp-teaser__action-link:hover, .cmp-teaser__action-link:focus {
  color: #fff;
  background: #0056d6;
  border: 1px solid #0056d6;
  text-decoration: none;
}

.cmp-teaser__action-link:hover::after, .cmp-teaser__action-link:focus::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}

.cmp-teaser__action-link::after {
  transition: -webkit-transform .3s ease-out;
  transition: transform .3s ease-out;
  transition: transform .3s ease-out, -webkit-transform .3s ease-out;
}

.cmp-teaser__action-link:active {
  background: #0041a3;
}

.cmp-teaser__action-link:disabled, .cmp-teaser__action-link.disabled {
  background: #8dc9bf;
  border: 1px solid #8dc9bf;
  cursor: not-allowed;
}

.cmp-teaser__action-link:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  width: 24px;
  height: 24px;
  -webkit-filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 1         0 0 0 0 1         0 0 0 0 1         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .cmp-teaser__action-link:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}

.cmp-teaser__action-link[target=_blank]:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
  width: 24px;
  height: 24px;
  -webkit-filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 1         0 0 0 0 1         0 0 0 0 1         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .cmp-teaser__action-link[target=_blank]:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}

.teaser:not(.stage):not(.teaser__cta--secondary):not(.teaser__cta--link) .cmp-teaser__action-link[target=_blank]::after {
  -webkit-filter: invert(1) brightness(1);
          filter: invert(1) brightness(1);
}

.teaser__cta--secondary .cmp-teaser__action-link:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  width: 24px;
  height: 24px;
  -webkit-filter: saturate(0%) brightness(0%) invert(33.92157%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(33.92157%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 0.32549         0 0 0 0 0.33725         0 0 0 0 0.35294         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .teaser__cta--secondary .cmp-teaser__action-link:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}

.teaser__cta--secondary .cmp-teaser__action-link[target=_blank]:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
  width: 24px;
  height: 24px;
  -webkit-filter: saturate(0%) brightness(0%) invert(33.92157%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(33.92157%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 0.32549         0 0 0 0 0.33725         0 0 0 0 0.35294         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .teaser__cta--secondary .cmp-teaser__action-link[target=_blank]:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}

.cmp-teaser__action-link::after {
  margin-left: 10px;
  display: inline-block;
  position: relative;
  top: -2px;
  width: 24px !important;
  height: 24px !important;
  vertical-align: middle;
  pointer-events: all !important;
}

.teaser__cta--link .cmp-teaser__action-link::after {
  -webkit-margin-end: calc(34px * -1);
          margin-inline-end: calc(34px * -1);
}

.teaser:not(.stage):not(.teaser__cta--secondary):not(.teaser__cta--link) .cmp-teaser__action-link::after {
  -webkit-filter: invert(1) brightness(1);
          filter: invert(1) brightness(1);
}

.cmp-teaser .cmp-teaser__image img {
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.cmp-teaser__embed iframe {
  max-width: 100%;
}

.cmp-teaser__embed + .cmp-teaser__content {
  pointer-events: none;
}

.cmp-teaser__embed .cmp-embed > * {
  margin: 0;
}

.teaser {
  margin: 30px 0;
}

.teaser__cta--secondary .cmp-teaser__action-link {
  display: inline-block;
  align-items: center;
  text-decoration: none;
  font-family: var(--ff-medium);
  box-sizing: border-box;
  padding: 12px 32px;
  background: #fff;
  border: 1px solid #53565a;
  color: #53565a;
  transition: background 1s;
  -webkit-padding-end: 55px;
          padding-inline-end: 55px;
}

.teaser__cta--secondary .cmp-teaser__action-link:hover, .teaser__cta--secondary .cmp-teaser__action-link:focus {
  background: #e1dfdd;
  text-decoration: none;
  color: #53565a;
}

.teaser__cta--secondary .cmp-teaser__action-link:hover::after, .teaser__cta--secondary .cmp-teaser__action-link:focus::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}

.teaser__cta--secondary .cmp-teaser__action-link::after {
  transition: -webkit-transform .3s ease-out;
  transition: transform .3s ease-out;
  transition: transform .3s ease-out, -webkit-transform .3s ease-out;
}

.teaser__cta--secondary .cmp-teaser__action-link:disabled, .teaser__cta--secondary .cmp-teaser__action-link.disabled {
  border: 1px solid #888b8d;
  color: #888b8d;
}

.teaser__cta--secondary .cmp-teaser__action-link::after {
  -webkit-margin-end: calc(34px * -1);
          margin-inline-end: calc(34px * -1);
}

@media (max-width: 959px) {
  .teaser__cta--video .cmp-teaser {
    position: relative;
  }
  .teaser__cta--video:not(.teaser--hero-desktop-mobile) .cmp-teaser__action-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 250px;
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.teaser__cta--video .cmp-teaser__action-container {
  text-align: center;
}

.teaser__cta--video .cmp-teaser__action-link {
  display: inline-block;
  align-items: center;
  text-decoration: none;
  font-family: var(--ff-medium);
  box-sizing: border-box;
  width: 75px;
  height: 75px;
  font-size: 0;
  text-align: center;
  color: #53565a;
  background-color: #e1dfdd;
  border-radius: 50%;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3);
  transition: background-color 0.3s;
  padding: 0;
  border: 0;
}

.teaser__cta--video .cmp-teaser__action-link:before {
  font-family: "VolvoIcons";
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  vertical-align: baseline;
  display: inline-block;
  line-height: 0;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (min-width: 960px) {
  .teaser__cta--video .cmp-teaser__action-link {
    width: 50px;
    height: 50px;
  }
}

.teaser__cta--video .cmp-teaser__action-link:hover, .teaser__cta--video .cmp-teaser__action-link:focus {
  color: #53565a;
  background-color: #e1dfdd;
  border: 0;
}

.teaser__cta--video .cmp-teaser__action-link:hover::before, .teaser__cta--video .cmp-teaser__action-link:focus::before {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.teaser__cta--video .cmp-teaser__action-link::before {
  margin-left: 7px;
  font-size: 34px;
  line-height: 2.2;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

@media (min-width: 960px) {
  .teaser__cta--video .cmp-teaser__action-link::before {
    font-size: 23px;
  }
}

.teaser__cta--video .cmp-teaser__action-link::after {
  content: none;
  opacity: 0;
}

@media (max-width: 959px) {
  .teaser__cta--video.teaser--hero-desktop-mobile .cmp-teaser__action-link {
    width: 50px;
    height: 50px;
    color: #fff;
  }
  .teaser__cta--video.teaser--hero-desktop-mobile .cmp-teaser__action-link::before {
    font-size: 23px;
    margin-left: 4px;
  }
}

.teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  padding: 0;
  color: #004fbc;
  background: transparent;
  border: 0;
}

.teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  width: var(--v-icon-size);
  height: var(--v-icon-size);
  -webkit-filter: saturate(0%) brightness(0%) invert(36.86275%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(36.86275%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 0         0 0 0 0 0.3098         0 0 0 0 0.73725         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}

.teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link::after {
  font-size: 16px;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  display: inline-block;
  content: '';
}

.teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link:hover::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}

.teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link[target=_blank]:after {
  content: '';
  display: inline-block;
  background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
  width: var(--v-icon-size);
  height: var(--v-icon-size);
  -webkit-filter: saturate(0%) brightness(0%) invert(36.86275%) opacity(1);
          filter: saturate(0%) brightness(0%) invert(36.86275%) opacity(1);
  filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 0         0 0 0 0 0.3098         0 0 0 0 0.73725         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
  pointer-events: none;
}

@media (min-width: 1200px) {
  .teaser__cta--link:not(.teaser__cta--secondary) .cmp-teaser__action-link[target=_blank]:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}

.teaser__text--right .cmp-teaser__content {
  left: 60%;
  width: auto;
}

.teaser__text--center .cmp-teaser__content {
  width: 100% !important;
  text-align: center;
}

@media (min-width: 768px) {
  .teaser__text--center .cmp-teaser__content .cmp-teaser__description {
    max-width: 500px;
    margin: 0 auto;
  }
}

@media (min-width: 960px) {
  .teaser__text--center .cmp-teaser__content .cmp-teaser__description {
    max-width: 850px;
    margin: 0 auto;
  }
}

.teaser__text--center.teaser:not(.teaser__cta--link) .cmp-teaser__action-link {
  -webkit-transform: translateX(17px);
          transform: translateX(17px);
}

.teaser--layout-top .cmp-teaser__content {
  position: static;
  -webkit-transform: none;
          transform: none;
  pointer-events: all;
  padding: 1em 0;
}

.teaser--layout-top .cmp-teaser__title {
  font-family: var(--ff-medium);
  font-size: 21px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: var(--ls-default);
}

@media (min-width: 768px) {
  .teaser--layout-top .cmp-teaser__title {
    font-size: 24px;
  }
}

.teaser--layout-top .cmp-image {
  position: relative;
  height: 0;
  padding-top: 56.48%;
}

.teaser--layout-top .cmp-image__image {
  position: absolute;
  top: 0;
}

.teaser--layout-top.teaser__cta--video .cmp-teaser__action-container {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 0;
  height: 0;
  padding-top: 57%;
}

.teaser--layout-top.teaser__cta--video .cmp-teaser__action-container .cmp-teaser__action-link {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 75px;
  height: 75px;
  margin: -25px 0 0 -40px;
}

.teaser--layout-top.teaser__cta--video .cmp-teaser__action-container .cmp-teaser__action-link::before {
  font-size: 34px;
}

.teaser__img--full .cmp-teaser__image {
  margin: 0 -15px;
}

@media (min-width: 960px) {
  .teaser__img--full .cmp-teaser__image {
    margin: 0 -15px;
  }
}

@media (min-width: 1200px) {
  .teaser__img--full .cmp-teaser__image {
    width: auto;
    margin: 0 calc((100vw - 1200px) / -2);
  }
}

.teaser.teaser__text--white .cmp-teaser__description, .teaser.teaser__text--white .cmp-teaser__title {
  color: #fff;
}

@media (min-width: 960px) {
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser a {
    color: #fff;
  }
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser a:after {
    content: '';
    display: inline-block;
    background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
    width: var(--v-icon-size);
    height: var(--v-icon-size);
    -webkit-filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
            filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
    filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 1         0 0 0 0 1         0 0 0 0 1         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
    pointer-events: none;
  }
}

@media (min-width: 960px) and (min-width: 1200px) {
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser a:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}

@media (min-width: 960px) {
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser a[target=_blank]:after {
    content: '';
    display: inline-block;
    background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
    width: var(--v-icon-size);
    height: var(--v-icon-size);
    -webkit-filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
            filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
    filter: url('data:image/svg+xml;utf8,    <svg xmlns="http://www.w3.org/2000/svg">    <filter id="recolor" color-interpolation-filters="sRGB">        <feColorMatrix type="matrix" values="         0 0 0 0 1         0 0 0 0 1         0 0 0 0 1         0 0 0 1 0         "/>    </filter>    </svg>    #recolor');
    pointer-events: none;
  }
}

@media (min-width: 960px) and (min-width: 1200px) {
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser a[target=_blank]:after {
    background: url("../../../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}

@media (min-width: 960px) {
  .teaser.teaser__text--white:not(.teaser__cta--secondary):not(.teaser--layout-top) .cmp-teaser .video__link {
    position: absolute;
  }
}

@media (max-width: 959px) {
  .teaser.teaser__text--white:not(.teaser--layout-top):not(.teaser--hero-desktop-mobile) .cmp-teaser__description, .teaser.teaser__text--white:not(.teaser--layout-top):not(.teaser--hero-desktop-mobile) .cmp-teaser__title, .teaser.teaser__text--white.teaser--hero .cmp-teaser__description, .teaser.teaser__text--white.teaser--hero .cmp-teaser__title {
    color: #53565a;
  }
  .teaser.teaser__text--white.teaser--hero-desktop-mobile:not(.stage):not(.teaser__cta--secondary):not(.teaser__cta--video) .cmp-teaser__action-link {
    color: #fff;
  }
  .teaser.teaser__text--white.teaser--hero-desktop-mobile:not(.stage):not(.teaser__cta--secondary):not(.teaser__cta--video) .cmp-teaser__action-link::after {
    -webkit-filter: invert(1) brightness(1);
            filter: invert(1) brightness(1);
  }
}

.teaser.teaser__text--white.teaser--layout-top .cmp-teaser__description, .teaser.teaser__text--white.teaser--layout-top .cmp-teaser__title {
  color: #53565a;
}

.teaser--hero .cmp-teaser .img__container {
  height: auto;
}

.teaser--hero .cmp-teaser .img__container .img__asset,
.teaser--hero .cmp-teaser .cmp-teaser__image img {
  height: 280px;
}

@media (min-width: 768px) {
  .teaser--hero .cmp-teaser .img__container .img__asset,
  .teaser--hero .cmp-teaser .cmp-teaser__image img {
    height: 400px;
  }
}

@media (min-width: 960px) {
  .teaser--hero .cmp-teaser .img__container .img__asset,
  .teaser--hero .cmp-teaser .cmp-teaser__image img {
    height: 604px;
  }
}

@media (max-width: 959px) {
  .teaser--hero-desktop-mobile .cmp-teaser__content {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: inherit;
    left: inherit;
    padding: 1em;
  }
}

.teaser__overlay--dark.teaser--hero-desktop-mobile .cmp-teaser__image {
  position: relative;
}

.teaser__overlay--dark.teaser--hero-desktop-mobile .cmp-image__overlay {
  bottom: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.teaser__overlay--dark.teaser--hero-desktop-mobile .cmp-image__overlay.is-hidden {
  display: none;
}

@media (min-width: 960px) {
  .teaser__overlay--dark .cmp-teaser__image {
    position: relative;
  }
  .teaser__overlay--dark .cmp-image__overlay {
    bottom: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
  }
  .teaser__overlay--dark .cmp-image__overlay.is-hidden {
    display: none;
  }
}

.teaser__overlay--lighter-dark.teaser--hero-desktop-mobile .cmp-teaser__image {
  position: relative;
}

.teaser__overlay--lighter-dark.teaser--hero-desktop-mobile .cmp-image__overlay {
  bottom: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.teaser__overlay--lighter-dark.teaser--hero-desktop-mobile .cmp-image__overlay.is-hidden {
  display: none;
}

@media (min-width: 960px) {
  .teaser__overlay--lighter-dark .cmp-teaser__image {
    position: relative;
  }
  .teaser__overlay--lighter-dark .cmp-image__overlay {
    bottom: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0, 0, 0, 0.2);
    z-index: 1;
  }
  .teaser__overlay--lighter-dark .cmp-image__overlay.is-hidden {
    display: none;
  }
}

.teaser.margin-top--none {
  margin-top: 0;
}

.teaser.margin-top--double {
  margin-top: calc(30px * 2);
}

.teaser.margin-bottom--none {
  margin-bottom: 0;
}

.teaser.margin-bottom--double {
  margin-bottom: calc(30px * 2);
}

.aem-Grid > .teaser:first-child:not(.margin-top--double) {
  margin-top: 0;
}

.teaser__title--volvonovum .cmp-teaser__title {
  font-family: var(--ff-medium);
  font-size: 27px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: var(--ls-default);
  margin-bottom: 25px;
}

@media (min-width: 768px) {
  .teaser__title--volvonovum .cmp-teaser__title {
    font-size: 32px;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3RhcmdldC92YXVsdC13b3JrL2pjcl9yb290L2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvY29tcG9uZW50cy9jb250ZW50L3RlYXNlci90ZWFzZXIuYnVuZGxlLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakI7Ozs7O0VBS0U7QUFDRjs7O0VBR0U7QUFDRjs7R0FFRztBQUNIO0VBQ0Usb0JBQW9CO0NBQ3JCOztBQUVEO0VBQ0U7SUFDRSxvQkFBb0I7R0FDckI7Q0FDRjs7QUFFRDtFQUNFLDBCQUEwQjtFQUMxQiwyQkFBMkI7Q0FDNUI7O0FBRUQ7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBRUQ7RUFDRSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxhQUFhO0VBQ2IsaUJBQWlCO0NBQ2xCOztBQUVEO0VBQ0UsY0FBYztDQUNmOztBQUVEO0VBQ0U7SUFDRSxnQkFBZ0I7R0FDakI7Q0FDRjs7QUFFRDtFQUNFLGdCQUFnQjtFQUNoQixLQUFLO0VBQ0wsdUJBQXVCO0VBQ3ZCLHNCQUFzQjtDQUN2Qjs7QUFFRDtFQUNFO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtHQUM5QjtDQUNGOztBQUVEO0VBQ0U7SUFDRSxxQ0FBNkI7WUFBN0IsNkJBQTZCO0dBQzlCO0NBQ0Y7O0FBRUQ7RUFDRTtJQUNFLGNBQWM7R0FDZjtDQUNGOztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBa0NFO0FBQ0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlDRTtBQUNGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBNkRFO0FBQ0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUF3Q0U7QUFDRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBd0JFO0FBQ0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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QW1CO0dBQ3BCO0VBQ0Q7SUFDRSxVQUFVO0lBQ1YsWUFBWTtJQUNaLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsK0JBQStCO0lBQy9CLFdBQVc7R0FDWjtFQUNEO0lBQ0UsY0FBYztHQUNmO0NBQ0Y7O0FBRUQ7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBRUQ7RUFDRSxVQUFVO0VBQ1YsWUFBWTtFQUNaLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsK0JBQStCO0VBQy9CLFdBQVc7Q0FDWjs7QUFFRDtFQUNFLGNBQWM7Q0FDZjs7QUFFRDtFQUNFO0lBQ0UsbUJBQW1CO0dBQ3BCO0VBQ0Q7SUFDRSxVQUFVO0lBQ1YsWUFBWTtJQUNaLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsK0JBQStCO0lBQy9CLFdBQVc7R0FDWjtFQUNEO0lBQ0UsY0FBYztHQUNmO0NBQ0Y7O0FBRUQ7RUFDRSxjQUFjO0NBQ2Y7O0FBRUQ7RUFDRSwyQkFBMkI7Q0FDNUI7O0FBRUQ7RUFDRSxpQkFBaUI7Q0FDbEI7O0FBRUQ7RUFDRSw4QkFBOEI7Q0FDL0I7O0FBRUQ7RUFDRSxjQUFjO0NBQ2Y7O0FBRUQ7RUFDRSw4QkFBOEI7RUFDOUIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsa0NBQWtDO0VBQ2xDLG9CQUFvQjtDQUNyQjs7QUFFRDtFQUNFO0lBQ0UsZ0JBQWdCO0dBQ2pCO0NBQ0YiLCJmaWxlIjoiLi4vdGFyZ2V0L3ZhdWx0LXdvcmsvamNyX3Jvb3QvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9jb21wb25lbnRzL2NvbnRlbnQvdGVhc2VyL3RlYXNlci5idW5kbGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcbkFsc28gcGxlYXNlIGZvbGxvdyB0aGlzXG5EbyB5b3VyIHByb2plY3QgaGF2ZSBkaWZlcmVudCBjaGFyc2V0IGxhbmd1YWdlcyB0byBhY2NvdW50IHdpdGg/XG4gICAgICAtIFllcyAtPiBmb2xsb3cgaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvQ1NTKy0rRm9udCtOb3JtYWxpemF0aW9uXG4gICAgICAtIE5vIC0+IFlvdSBjYW4gc3RpbGwgdXNlIGl0LCB0aGVyZSBhcmUgdG9ucyBvZiBhZHZhbnRhZ2VzLCBidXQgaXRzIGNyZWF0ZSBzb21lIGV4dHJhIGNzcyBhbmQgbGF5b3V0IHJlbmRlcmluZ1xuKi9cbi8qXG4gICogRGVzaWduIHNwZWM6XG4gICogaHR0cHM6Ly93d3cuZmlnbWEuY29tL2ZpbGUvU1I0cnZRbE5uQ21QTXJROVdZYUlxdi9icmFuY2gvVEpxa0Z5bXEwOXdmOEt3bVkxV05jai9Wb2x2by1BRU0tRGVzaWduLXN5c3RlbT90eXBlPWRlc2lnbiZub2RlLWlkPTctMjYmdD1wQW05MTZWUmlxQ09EMkkxLTBcbiovXG4vKipcbiAqIHotaW5kZXhlcyBmcm9tIGxvd2VyIHRvIC0+IGhpZ2hlclxuICovXG46cm9vdCB7XG4gIC0tdi1pY29uLXNpemU6IDI0cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICA6cm9vdCB7XG4gICAgLS12LWljb24tc2l6ZTogMTZweDtcbiAgfVxufVxuXG4udi1pY29uIHtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5cbi52LWljb24gc3ZnIHBhdGgge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi52LWljb24tc3ByaXRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWF4LWhlaWdodDogMDtcbiAgbWF4LXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udi1pY29uLS0xNiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAudi1pY29uLS0xNiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi52LWljb24tLTI0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB5OiAwO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG59XG5cbkBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IDAuMDAxZHBjbSkge1xuICAudi1pY29uLS0yNCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgfVxufVxuXG5Ac3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAudi1pY29uLS0yNCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnYtaWNvbi0tMjQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdFxubmFtZTogcHgtdG8tdW5pdFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBhIHByb3BlcnR5IGFuZCB2YWx1ZSAocGl4ZWwgYmFzZWQgd2l0aG91dCB1bml0KVxuXG5DYWxjdWxhdGVzIHJlbSAvIGVtIC8gJSBmcm9tIGdpdmVuIHBpeGVsIGFuZCBiYXNlIChkZWZhdWx0IGJhc2UgaXMgdGhlXG5iYXNlLWZvbnQtc2l6ZSwgMTZweClcbklmIHJ0bCBpcyB0cnVlLCB0aGlzIG1peGluIGhhbmRsZXMgYWxsIHRoZSBkaXJlY3Rpb24gc3R1ZmY6XG4tIFN3aXRjaGluZyB0aGUgdmFsdWVzLCB3aGVuIHdlIGhhdmUgZXhhY3RseSA0IHZhbHVlc1xuLSBTd2l0Y2hpbmcgbGVmdCBhbmQgcmlnaHQgaW4gcHJvcGVydGllcyAocGFkZGluZyBhbmQgbWFyZ2luKVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1IChmb3IgZW0gb3IgJSB0byBwaXhlbCAtIHdpdGggYmFzZSBwYXJhbWV0ZXIpXG4tcmVtIChmb3IgcmVtIHRvIHBpeGVsIC0gd2l0aG91dCBiYXNlIHBhcmFtZXRlcilcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHByb3BlcnR5ID0gcGFkZGluZyB8IG1hcmdpbiB8IGZvbnQtc2l6ZSB8IHdpZHRoIHwgaGVpZ2h0XG5AcGFyYW1ldGVyICR2YWx1ZSA9IFBpeGVsIGJhc2VkIG51bWJlciAtIGFkZCBweCB0byBrZWVwIHRoZSBweCBmb3IgYSB2YWx1ZVxuQHBhcmFtZXRlciAkYmFzZSA9IHB4IGJhc2VkIG51bWJlciwgRGVmYXVsdDogMTZweFxuQHBhcmFtZXRlciAkdW5pdCA9IFNldCB1bml0OiBweCB8IGVtIHwgcmVtIHwgcGVyY2VudFxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5hYnN0cmFjdC9mdW5jdGlvbnMvc3dhcC1sZWZ0LXJpZ2h0XG5hYnN0cmFjdC9mdW5jdGlvbnMvc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDAuNjI1cmVtIDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoZm9udC1zaXplLCAyMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi1oZWlnaHQsIDEwMCk7XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9sZXNzLW1peGluLWZvci1yZW0tZm9udC1zaXppbmcvXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG4gXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuICBcblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG4gXG4gXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcbiBcbiBcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG4gXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuICBcbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuIFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCB2YWx1ZXNcbm5hbWU6IG5uLXJ0bFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIG5hbWVzIHJpZ2h0IGFuZCBsZWZ0IHdoZW4gJHJ0bCBpcyBzZXQgdG8gdHJ1ZS5cbklmIHRoZSB2YWx1ZSBpcyBub3QgcmlnaHQgb3IgbGVmdCBpdCByZXR1cm5zIHRoZSBvcmlnaW5hbCB2YWx1ZS5cblxuSW46ICByaWdodFxuT3V0OiBsZWZ0IChpbiBydGwpLCByaWdodCAoaW4gbHRyKVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG9yaWdpbiA9IHJpZ2h0IHwgbGVmdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXJ0bChsZWZ0KTogMTBweDtcbm5uLXJ0bChwYWRkaW5nLXJpZ2h0KTogMzBweDtcbm5uLXJ0bCgwIDFweCA4cHggMTJweCkgLy8gMCAxMnB4IDhweCAxcHhcbmBgYFxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogQ2xlYXJmaXhcbm5hbWU6IGNsZWFyZml4XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ2xlYXJzIGFmdGVyIGZsb2F0aW5nIGVsZW1lbnRcblxuVXNlIHRoaXMgbWl4aW4gb25seSBpbnNpZGUgbWVkaWEgcXVlcmllcyB3aGVyZSB5b3UgY2FuJ3QgdXNlIHRoZVxuYWJzdHJhY3QvZXh0ZW5kcy91dGlscy9fY2xlYXJmaXggdmVyc2lvbiwgd2hpY2ggYWRkcyBsZXNzIGNvZGUgdG8gY3NzXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGNsZWFyZml4O1xuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2NsZWFyLWZpeC9cbiovXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbn1cblxuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aWR0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1ucyB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbiBvZmZzZXQgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBhbmQgY29sdW1ucyBmb3IgdGhlIGdpdmVuIGJyZWFrIHBvaW50IGFuZCB0b3RhbCBvZiBjb2x1bW5zICovXG4vKiBBUEkgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHRvIGdlbmVyYXRlIGEgZ3JpZCBjb25maWcgKi9cbi8qZG9jXG4tLS1cbnR5cGU6IGJ1dHRvbiB0eXBlXG5zdGF0ZTogc3RhdGUgYnV0dG9uXG4tLS1cblxuQnV0dG9uIHN0eWxlc1xuXG5Vc2UgdGhpcyBtaXhpbiBmb3IgYnV0dG9uIHN0eWxlczogY29sb3IgdGV4dCwgYmFja2dyb3VuZCwgYm9yZGVyXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgYnV0dG9uKHByaW1hcnkpO1xuYGBgXG4qL1xuLypkb2Ncbi0tLVxubGluZUxpbWl0OiBUaGlzIHZhbHVlIHNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGxpbmVzIGFmdGVyIHdoaWNoIHRoZSBjb250ZW50IHdpbGwgYmUgY2xhbXBlZC4gSXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMC5cbi0tLVxuXG5UcnVuY2F0ZXMgdGV4dCBhdCBhIHNwZWNpZmljIG51bWJlciBvZiBsaW5lcy5cblxuVXNlIHRoaXMgbWl4aW4gdG8gaGlkZSBsb25nIHRleHQuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGxpbmUtY2xhbXAoJGxpbmVMaW1pdDogNCk7XG5gYGBcbiovXG4vKiB0eXBvZ3JhcGh5XG4tLS1cbnRpdGxlOiB0eXBvZ3JhcGh5XG5uYW1lOiBUeXBvZ3JhcGh5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkcyBmb250IENTUyBwcm9wZXJ0aWVzIGJ5IGEgbWFwIHByb3ZpZGVkXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICR0LXN0eWxlXG5cbiR0LXN0eWxlIGlzIGV4cGVjdGVkIHRvIGJlIGEgbWFwIHdpdGggJ2RlZmF1bHQnIGFuZCAnYnJlYWtwb2ludFtzXScgc3VibWFwcyB3aXRoIGEgcHJvcGVydHlcbmZvciBldmVyeSBjc3MgcHJvcGVydHkgdG8gYmUgc2V0XG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGhpZGRlblxubmFtZTogaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBvdmVybGF5XG5uYW1lOiBvdmVybGF5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ3JlYXRlcyBhbiBvdmVybGF5IHdpdGggdGhlIHByb3ZpZGVkIGJhY2tncm91bmQgY29sb3JcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRiZ0NvbG9yXG5cbiovXG4udGVhc2VyLS1oZXJvLWRlc2t0b3AtbW9iaWxlIC5jbXAtdGVhc2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNtcC10ZWFzZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC10ZWFzZXIge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uY21wLXRlYXNlcl9fY29udGVudCB7XG4gIHBhZGRpbmc6IDFlbSAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jbXAtdGVhc2VyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxZW07XG4gIH1cbn1cblxuLmNtcC10ZWFzZXJfX2NvbnRlbnQuaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jbXAtY2Fyb3VzZWxfX2l0ZW0gLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAgNTZweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgLnRlYXNlci5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA0MCU7XG4gIH1cbiAgLmluc2lnaHRhcnRpY2xlcGFnZSAudGVhc2VyLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiAuY21wLXRlYXNlcl9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNhcm91c2VsIC50ZWFzZXIgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmNtcC10ZWFzZXJfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWJyb2FkKTtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMC45NTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLXZvbHZvKTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG5cbltkYXRhLWRlYWxlci1wcml2YXRlXSAuY21wLXRlYXNlcl9fdGl0bGUge1xuICBsZXR0ZXItc3BhY2luZzogLTAuMXB4O1xufVxuXG4uY21wLXRlYXNlcl9fZGVzY3JpcHRpb24ge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4uY21wLXRlYXNlcl9fZGVzY3JpcHRpb24gYSB7XG4gIGNvbG9yOiAjMDA0ZmJjO1xufVxuXG4uY21wLXRlYXNlcl9fZGVzY3JpcHRpb24gYTpob3ZlciwgLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uIGE6Zm9jdXMge1xuICBjb2xvcjogIzAwNTZkNjtcbn1cblxuLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uIHVsLFxuLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uIG9sIHtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xufVxuXG4uY21wLXRlYXNlcl9fZGVzY3JpcHRpb24gdWwge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xufVxuXG4uY21wLXRlYXNlcl9fZGVzY3JpcHRpb24gb2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG4uY21wLXRlYXNlcl9fYWN0aW9uLWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgcGFkZGluZy1pbmxpbmUtZW5kOiAyNHB4O1xufVxuXG4udGVhc2VyX19jdGEtLWxpbmsgLmNtcC10ZWFzZXJfX2FjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY21wLXRlYXNlciAuY21wLWltYWdlLFxuLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAyODBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNtcC10ZWFzZXIgLmNtcC1pbWFnZSxcbiAgLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLXRlYXNlciAuY21wLWltYWdlLFxuICAuY21wLXRlYXNlciAuaW1nX19jb250YWluZXIge1xuICAgIGhlaWdodDogMzAycHg7XG4gIH1cbn1cblxuLmNtcC10ZWFzZXIgLmNtcC1pbWFnZV9fbGluayxcbi5jbXAtdGVhc2VyIC5pbWdfX2NvbnRhaW5lcl9fbGluayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY21wLXRlYXNlciAuY21wLWltYWdlX19pbWFnZSxcbi5jbXAtdGVhc2VyIC5jbXAtaW1hZ2UgLmltZ19fYXNzZXQsXG4uY21wLXRlYXNlciAuaW1nX19jb250YWluZXJfX2ltYWdlLFxuLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY21wLXRlYXNlciAuY21wLWltYWdlX19pbWFnZSB2aWRlbyxcbi5jbXAtdGVhc2VyIC5jbXAtaW1hZ2UgLmltZ19fYXNzZXQgdmlkZW8sXG4uY21wLXRlYXNlciAuaW1nX19jb250YWluZXJfX2ltYWdlIHZpZGVvLFxuLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0IHZpZGVvIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY21wLXRlYXNlciAuY21wLWltYWdlX19pbWFnZSAuczdkbS1keW5hbWljLW1lZGlhIHZpZGVvLFxuLmNtcC10ZWFzZXIgLmNtcC1pbWFnZSAuaW1nX19hc3NldCAuczdkbS1keW5hbWljLW1lZGlhIHZpZGVvLFxuLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyX19pbWFnZSAuczdkbS1keW5hbWljLW1lZGlhIHZpZGVvLFxuLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0IC5zN2RtLWR5bmFtaWMtbWVkaWEgdmlkZW8ge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLW1lZGl1bSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDEycHggMzJweDtcbiAgYmFja2dyb3VuZDogIzAwNGZiYztcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNGZiYztcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMXM7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbn1cblxuLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmhvdmVyLCAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzAwNTZkNjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNTZkNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6aG92ZXI6OmFmdGVyLCAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6Zm9jdXM6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG59XG5cbi5jbXAtdGVhc2VyX19hY3Rpb24tbGluazo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xufVxuXG4uY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwNDFhMztcbn1cblxuLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmRpc2FibGVkLCAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsuZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiAjOGRjOWJmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGRjOWJmO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzI0LXZpZXdcIik7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGZpbHRlcjogc2F0dXJhdGUoMCUpIGJyaWdodG5lc3MoMCUpIGludmVydCgxMDAlKSBvcGFjaXR5KDEpO1xuICBmaWx0ZXI6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPiAgICA8ZmlsdGVyIGlkPVwicmVjb2xvclwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj4gICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIiB2YWx1ZXM9XCIgICAgICAgICAwIDAgMCAwIDEgICAgICAgICAwIDAgMCAwIDEgICAgICAgICAwIDAgMCAwIDEgICAgICAgICAwIDAgMCAxIDAgICAgICAgICBcIi8+ICAgIDwvZmlsdGVyPiAgICA8L3N2Zz4gICAgI3JlY29sb3InKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmaWx0ZXI6IHNhdHVyYXRlKDAlKSBicmlnaHRuZXNzKDAlKSBpbnZlcnQoMTAwJSkgb3BhY2l0eSgxKTtcbiAgZmlsdGVyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gICAgPGZpbHRlciBpZD1cInJlY29sb3JcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+ICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCIgdmFsdWVzPVwiICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMSAwICAgICAgICAgXCIvPiAgICA8L2ZpbHRlcj4gICAgPC9zdmc+ICAgICNyZWNvbG9yJyk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtdGVhc2VyX19hY3Rpb24tbGlua1t0YXJnZXQ9X2JsYW5rXTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi50ZWFzZXI6bm90KC5zdGFnZSk6bm90KC50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5KTpub3QoLnRlYXNlcl9fY3RhLS1saW5rKSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgYnJpZ2h0bmVzcygxKTtcbn1cblxuLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmaWx0ZXI6IHNhdHVyYXRlKDAlKSBicmlnaHRuZXNzKDAlKSBpbnZlcnQoMzMuOTIxNTclKSBvcGFjaXR5KDEpO1xuICBmaWx0ZXI6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPiAgICA8ZmlsdGVyIGlkPVwicmVjb2xvclwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj4gICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIiB2YWx1ZXM9XCIgICAgICAgICAwIDAgMCAwIDAuMzI1NDkgICAgICAgICAwIDAgMCAwIDAuMzM3MjUgICAgICAgICAwIDAgMCAwIDAuMzUyOTQgICAgICAgICAwIDAgMCAxIDAgICAgICAgICBcIi8+ICAgIDwvZmlsdGVyPiAgICA8L3N2Zz4gICAgI3JlY29sb3InKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmaWx0ZXI6IHNhdHVyYXRlKDAlKSBicmlnaHRuZXNzKDAlKSBpbnZlcnQoMzMuOTIxNTclKSBvcGFjaXR5KDEpO1xuICBmaWx0ZXI6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPiAgICA8ZmlsdGVyIGlkPVwicmVjb2xvclwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj4gICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIiB2YWx1ZXM9XCIgICAgICAgICAwIDAgMCAwIDAuMzI1NDkgICAgICAgICAwIDAgMCAwIDAuMzM3MjUgICAgICAgICAwIDAgMCAwIDAuMzUyOTQgICAgICAgICAwIDAgMCAxIDAgICAgICAgICBcIi8+ICAgIDwvZmlsdGVyPiAgICA8L3N2Zz4gICAgI3JlY29sb3InKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9saW5rLWV4dGVybmFsLnN2ZyNsaW5rLWV4dGVybmFsLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMnB4O1xuICB3aWR0aDogMjRweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbCAhaW1wb3J0YW50O1xufVxuXG4udGVhc2VyX19jdGEtLWxpbmsgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOjphZnRlciB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiBjYWxjKDM0cHggKiAtMSk7XG59XG5cbi50ZWFzZXI6bm90KC5zdGFnZSk6bm90KC50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5KTpub3QoLnRlYXNlcl9fY3RhLS1saW5rKSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6OmFmdGVyIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgYnJpZ2h0bmVzcygxKTtcbn1cblxuLmNtcC10ZWFzZXIgLmNtcC10ZWFzZXJfX2ltYWdlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jbXAtdGVhc2VyX19lbWJlZCBpZnJhbWUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jbXAtdGVhc2VyX19lbWJlZCArIC5jbXAtdGVhc2VyX19jb250ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jbXAtdGVhc2VyX19lbWJlZCAuY21wLWVtYmVkID4gKiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnRlYXNlciB7XG4gIG1hcmdpbjogMzBweCAwO1xufVxuXG4udGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLW1lZGl1bSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDEycHggMzJweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzUzNTY1YTtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMXM7XG4gIHBhZGRpbmctaW5saW5lLWVuZDogNTVweDtcbn1cblxuLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmhvdmVyLCAudGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZTFkZmRkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuXG4udGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6aG92ZXI6OmFmdGVyLCAudGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6Zm9jdXM6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG59XG5cbi50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5IC5jbXAtdGVhc2VyX19hY3Rpb24tbGluazo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xufVxuXG4udGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6ZGlzYWJsZWQsIC50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5IC5jbXAtdGVhc2VyX19hY3Rpb24tbGluay5kaXNhYmxlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ODhiOGQ7XG4gIGNvbG9yOiAjODg4YjhkO1xufVxuXG4udGVhc2VyX19jdGEtLXNlY29uZGFyeSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6OmFmdGVyIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IGNhbGMoMzRweCAqIC0xKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC50ZWFzZXJfX2N0YS0tdmlkZW8gLmNtcC10ZWFzZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAudGVhc2VyX19jdGEtLXZpZGVvOm5vdCgudGVhc2VyLS1oZXJvLWRlc2t0b3AtbW9iaWxlKSAuY21wLXRlYXNlcl9fYWN0aW9uLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjUwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLW1lZGl1bSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIGZvbnQtc2l6ZTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZGZkZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi50ZWFzZXJfX2N0YS0tdmlkZW8gLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlZvbHZvSWNvbnNcIjtcbiAgY29udGVudDogXCLupJFcIjtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC50ZWFzZXJfX2N0YS0tdmlkZW8gLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6aG92ZXIsIC50ZWFzZXJfX2N0YS0tdmlkZW8gLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmZvY3VzIHtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWRmZGQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6aG92ZXI6OmJlZm9yZSwgLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6OmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiA3cHg7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgbGluZS1oZWlnaHQ6IDIuMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAudGVhc2VyX19jdGEtLXZpZGVvIC5jbXAtdGVhc2VyX19hY3Rpb24tbGluazo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gIH1cbn1cblxuLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbiAgb3BhY2l0eTogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC50ZWFzZXJfX2N0YS0tdmlkZW8udGVhc2VyLS1oZXJvLWRlc2t0b3AtbW9iaWxlIC5jbXAtdGVhc2VyX19hY3Rpb24tbGluayB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC50ZWFzZXJfX2N0YS0tdmlkZW8udGVhc2VyLS1oZXJvLWRlc2t0b3AtbW9iaWxlIC5jbXAtdGVhc2VyX19hY3Rpb24tbGluazo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgfVxufVxuXG4udGVhc2VyX19jdGEtLWxpbms6bm90KC50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5KSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzAwNGZiYztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRlYXNlcl9fY3RhLS1saW5rOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygwJSkgaW52ZXJ0KDM2Ljg2Mjc1JSkgb3BhY2l0eSgxKTtcbiAgZmlsdGVyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gICAgPGZpbHRlciBpZD1cInJlY29sb3JcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+ICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCIgdmFsdWVzPVwiICAgICAgICAgMCAwIDAgMCAwICAgICAgICAgMCAwIDAgMCAwLjMwOTggICAgICAgICAwIDAgMCAwIDAuNzM3MjUgICAgICAgICAwIDAgMCAxIDAgICAgICAgICBcIi8+ICAgIDwvZmlsdGVyPiAgICA8L3N2Zz4gICAgI3JlY29sb3InKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRlYXNlcl9fY3RhLS1saW5rOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLnRlYXNlcl9fY3RhLS1saW5rOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJyc7XG59XG5cbi50ZWFzZXJfX2N0YS0tbGluazpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpIC5jbXAtdGVhc2VyX19hY3Rpb24tbGluazpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbn1cblxuLnRlYXNlcl9fY3RhLS1saW5rOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygwJSkgaW52ZXJ0KDM2Ljg2Mjc1JSkgb3BhY2l0eSgxKTtcbiAgZmlsdGVyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gICAgPGZpbHRlciBpZD1cInJlY29sb3JcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+ICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCIgdmFsdWVzPVwiICAgICAgICAgMCAwIDAgMCAwICAgICAgICAgMCAwIDAgMCAwLjMwOTggICAgICAgICAwIDAgMCAwIDAuNzM3MjUgICAgICAgICAwIDAgMCAxIDAgICAgICAgICBcIi8+ICAgIDwvZmlsdGVyPiAgICA8L3N2Zz4gICAgI3JlY29sb3InKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRlYXNlcl9fY3RhLS1saW5rOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSkgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9saW5rLWV4dGVybmFsLnN2ZyNsaW5rLWV4dGVybmFsLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLnRlYXNlcl9fdGV4dC0tcmlnaHQgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICBsZWZ0OiA2MCU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGVhc2VyX190ZXh0LS1jZW50ZXIgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGVhc2VyX190ZXh0LS1jZW50ZXIgLmNtcC10ZWFzZXJfX2NvbnRlbnQgLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAudGVhc2VyX190ZXh0LS1jZW50ZXIgLmNtcC10ZWFzZXJfX2NvbnRlbnQgLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDg1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi50ZWFzZXJfX3RleHQtLWNlbnRlci50ZWFzZXI6bm90KC50ZWFzZXJfX2N0YS0tbGluaykgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE3cHgpO1xufVxuXG4udGVhc2VyLS1sYXlvdXQtdG9wIC5jbXAtdGVhc2VyX19jb250ZW50IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgdHJhbnNmb3JtOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBwYWRkaW5nOiAxZW0gMDtcbn1cblxuLnRlYXNlci0tbGF5b3V0LXRvcCAuY21wLXRlYXNlcl9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGVhc2VyLS1sYXlvdXQtdG9wIC5jbXAtdGVhc2VyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG5cbi50ZWFzZXItLWxheW91dC10b3AgLmNtcC1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogNTYuNDglO1xufVxuXG4udGVhc2VyLS1sYXlvdXQtdG9wIC5jbXAtaW1hZ2VfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi50ZWFzZXItLWxheW91dC10b3AudGVhc2VyX19jdGEtLXZpZGVvIC5jbXAtdGVhc2VyX19hY3Rpb24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogNTclO1xufVxuXG4udGVhc2VyLS1sYXlvdXQtdG9wLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWNvbnRhaW5lciAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIG1hcmdpbjogLTI1cHggMCAwIC00MHB4O1xufVxuXG4udGVhc2VyLS1sYXlvdXQtdG9wLnRlYXNlcl9fY3RhLS12aWRlbyAuY21wLXRlYXNlcl9fYWN0aW9uLWNvbnRhaW5lciAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbms6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMzRweDtcbn1cblxuLnRlYXNlcl9faW1nLS1mdWxsIC5jbXAtdGVhc2VyX19pbWFnZSB7XG4gIG1hcmdpbjogMCAtMTVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC50ZWFzZXJfX2ltZy0tZnVsbCAuY21wLXRlYXNlcl9faW1hZ2Uge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50ZWFzZXJfX2ltZy0tZnVsbCAuY21wLXRlYXNlcl9faW1hZ2Uge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMCBjYWxjKCgxMDB2dyAtIDEyMDBweCkgLyAtMik7XG4gIH1cbn1cblxuLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlIC5jbXAtdGVhc2VyX19kZXNjcmlwdGlvbiwgLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlIC5jbXAtdGVhc2VyX190aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlOm5vdCgudGVhc2VyX19jdGEtLXNlY29uZGFyeSk6bm90KC50ZWFzZXItLWxheW91dC10b3ApIC5jbXAtdGVhc2VyIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKSAuY21wLXRlYXNlciBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICAgIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG4gICAgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygwJSkgaW52ZXJ0KDEwMCUpIG9wYWNpdHkoMSk7XG4gICAgZmlsdGVyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gICAgPGZpbHRlciBpZD1cInJlY29sb3JcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+ICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCIgdmFsdWVzPVwiICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMSAwICAgICAgICAgXCIvPiAgICA8L2ZpbHRlcj4gICAgPC9zdmc+ICAgICNyZWNvbG9yJyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKSAuY21wLXRlYXNlciBhOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKSAuY21wLXRlYXNlciBhW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICAgIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG4gICAgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygwJSkgaW52ZXJ0KDEwMCUpIG9wYWNpdHkoMSk7XG4gICAgZmlsdGVyOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gICAgPGZpbHRlciBpZD1cInJlY29sb3JcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+ICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCIgdmFsdWVzPVwiICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMCAxICAgICAgICAgMCAwIDAgMSAwICAgICAgICAgXCIvPiAgICA8L2ZpbHRlcj4gICAgPC9zdmc+ICAgICNyZWNvbG9yJyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKSAuY21wLXRlYXNlciBhW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9saW5rLWV4dGVybmFsLnN2ZyNsaW5rLWV4dGVybmFsLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKSAuY21wLXRlYXNlciAudmlkZW9fX2xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlOm5vdCgudGVhc2VyLS1sYXlvdXQtdG9wKTpub3QoLnRlYXNlci0taGVyby1kZXNrdG9wLW1vYmlsZSkgLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uLCAudGVhc2VyLnRlYXNlcl9fdGV4dC0td2hpdGU6bm90KC50ZWFzZXItLWxheW91dC10b3ApOm5vdCgudGVhc2VyLS1oZXJvLWRlc2t0b3AtbW9iaWxlKSAuY21wLXRlYXNlcl9fdGl0bGUsIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZS50ZWFzZXItLWhlcm8gLmNtcC10ZWFzZXJfX2Rlc2NyaXB0aW9uLCAudGVhc2VyLnRlYXNlcl9fdGV4dC0td2hpdGUudGVhc2VyLS1oZXJvIC5jbXAtdGVhc2VyX190aXRsZSB7XG4gICAgY29sb3I6ICM1MzU2NWE7XG4gIH1cbiAgLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlLnRlYXNlci0taGVyby1kZXNrdG9wLW1vYmlsZTpub3QoLnN0YWdlKTpub3QoLnRlYXNlcl9fY3RhLS1zZWNvbmRhcnkpOm5vdCgudGVhc2VyX19jdGEtLXZpZGVvKSAuY21wLXRlYXNlcl9fYWN0aW9uLWxpbmsge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC50ZWFzZXIudGVhc2VyX190ZXh0LS13aGl0ZS50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGU6bm90KC5zdGFnZSk6bm90KC50ZWFzZXJfX2N0YS0tc2Vjb25kYXJ5KTpub3QoLnRlYXNlcl9fY3RhLS12aWRlbykgLmNtcC10ZWFzZXJfX2FjdGlvbi1saW5rOjphZnRlciB7XG4gICAgZmlsdGVyOiBpbnZlcnQoMSkgYnJpZ2h0bmVzcygxKTtcbiAgfVxufVxuXG4udGVhc2VyLnRlYXNlcl9fdGV4dC0td2hpdGUudGVhc2VyLS1sYXlvdXQtdG9wIC5jbXAtdGVhc2VyX19kZXNjcmlwdGlvbiwgLnRlYXNlci50ZWFzZXJfX3RleHQtLXdoaXRlLnRlYXNlci0tbGF5b3V0LXRvcCAuY21wLXRlYXNlcl9fdGl0bGUge1xuICBjb2xvcjogIzUzNTY1YTtcbn1cblxuLnRlYXNlci0taGVybyAuY21wLXRlYXNlciAuaW1nX19jb250YWluZXIge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi50ZWFzZXItLWhlcm8gLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0LFxuLnRlYXNlci0taGVybyAuY21wLXRlYXNlciAuY21wLXRlYXNlcl9faW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiAyODBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItLWhlcm8gLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0LFxuICAudGVhc2VyLS1oZXJvIC5jbXAtdGVhc2VyIC5jbXAtdGVhc2VyX19pbWFnZSBpbWcge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC50ZWFzZXItLWhlcm8gLmNtcC10ZWFzZXIgLmltZ19fY29udGFpbmVyIC5pbWdfX2Fzc2V0LFxuICAudGVhc2VyLS1oZXJvIC5jbXAtdGVhc2VyIC5jbXAtdGVhc2VyX19pbWFnZSBpbWcge1xuICAgIGhlaWdodDogNjA0cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGUgLmNtcC10ZWFzZXJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgbGVmdDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAxZW07XG4gIH1cbn1cblxuLnRlYXNlcl9fb3ZlcmxheS0tZGFyay50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGUgLmNtcC10ZWFzZXJfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udGVhc2VyX19vdmVybGF5LS1kYXJrLnRlYXNlci0taGVyby1kZXNrdG9wLW1vYmlsZSAuY21wLWltYWdlX19vdmVybGF5IHtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogMTtcbn1cblxuLnRlYXNlcl9fb3ZlcmxheS0tZGFyay50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGUgLmNtcC1pbWFnZV9fb3ZlcmxheS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnRlYXNlcl9fb3ZlcmxheS0tZGFyayAuY21wLXRlYXNlcl9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAudGVhc2VyX19vdmVybGF5LS1kYXJrIC5jbXAtaW1hZ2VfX292ZXJsYXkge1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC50ZWFzZXJfX292ZXJsYXktLWRhcmsgLmNtcC1pbWFnZV9fb3ZlcmxheS5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRlYXNlcl9fb3ZlcmxheS0tbGlnaHRlci1kYXJrLnRlYXNlci0taGVyby1kZXNrdG9wLW1vYmlsZSAuY21wLXRlYXNlcl9faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50ZWFzZXJfX292ZXJsYXktLWxpZ2h0ZXItZGFyay50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGUgLmNtcC1pbWFnZV9fb3ZlcmxheSB7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHotaW5kZXg6IDE7XG59XG5cbi50ZWFzZXJfX292ZXJsYXktLWxpZ2h0ZXItZGFyay50ZWFzZXItLWhlcm8tZGVza3RvcC1tb2JpbGUgLmNtcC1pbWFnZV9fb3ZlcmxheS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnRlYXNlcl9fb3ZlcmxheS0tbGlnaHRlci1kYXJrIC5jbXAtdGVhc2VyX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC50ZWFzZXJfX292ZXJsYXktLWxpZ2h0ZXItZGFyayAuY21wLWltYWdlX19vdmVybGF5IHtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAudGVhc2VyX19vdmVybGF5LS1saWdodGVyLWRhcmsgLmNtcC1pbWFnZV9fb3ZlcmxheS5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRlYXNlci5tYXJnaW4tdG9wLS1ub25lIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnRlYXNlci5tYXJnaW4tdG9wLS1kb3VibGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKDMwcHggKiAyKTtcbn1cblxuLnRlYXNlci5tYXJnaW4tYm90dG9tLS1ub25lIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRlYXNlci5tYXJnaW4tYm90dG9tLS1kb3VibGUge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDMwcHggKiAyKTtcbn1cblxuLmFlbS1HcmlkID4gLnRlYXNlcjpmaXJzdC1jaGlsZDpub3QoLm1hcmdpbi10b3AtLWRvdWJsZSkge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4udGVhc2VyX190aXRsZS0tdm9sdm9ub3Z1bSAuY21wLXRlYXNlcl9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAyN3B4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGVhc2VyX190aXRsZS0tdm9sdm9ub3Z1bSAuY21wLXRlYXNlcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgfVxufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD10ZWFzZXIuYnVuZGxlLmNzcy5tYXAgKi8iXX0= */