/*!***************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!../styles/main.scss ***!
  \***************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ==========================================================================
   Settings
   ========================================================================== */
/* ==========================================================================
   Project Fonts
   ========================================================================== */
/**
 * @license
 * MyFonts Webfont Build ID 4351331, 2022-02-07T02:24:28-0500
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: TheSans-Light by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/light/
 *
 * Webfont: TheSans-Bold by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/bold/
 *
 *
 * Webfonts copyright: Copyright 1994-2021 Luc(as) de Groot, published by LucasFonts, www.lucasfonts.com  All rights reserved.
 *
 * © 2022 MyFonts Inc
*/
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2IALT4EYFOGEH.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2IQLT4EYFOGEH.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2LwLT4EYFOA.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2IALT4EYFOGEH.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2IQLT4EYFOGEH.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Au-p_0qiz-afTf2LwLT4EYFOA.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afT3GLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTzGLQjUwkQ1OQ.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Muli";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/muli/v34/7Auwp_0qiz-afTLGLQjUwkQ.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Variables, Naming may vary from project to project */
/* ==========================================================================
   Fonts (see '_fonts.scss' for more information on license)
   ========================================================================== */
/* @import must be at top of file, otherwise CSS will not work */
/* @import url('//hello.myfonts.net/count/426563'); */
/* ==========================================================================
   Fallbacks sass Variablen
   ========================================================================== */
/* text */
/* dark grey */
/* dark grey */
/* background */
/* dark grey */
/* light grey */
/* red */
/* line-colors */
/* spacing */
/* grid */
/* form */
/* ==========================================================================
   Custom Properties
   ========================================================================== */
:root {
  /* fonts */
  --font-stack-default: "Muli", "Arial", "Helvetica", sans-serif;
  --font-weight-normal: 400;
  --font-weight-bold: 700;
  --font-weight-medium: 500;
  --letter-spacing: 0.01em;
  /* text  */
  --text-color: #757575; /* grey */
  --text-color-medium: #757575;
  --text-color-light: #fff;
  --text-color-link: #000;
  --text-color-dark: #000;
  /* font-sizes */
  --font-size-root: 18px;
  --font-size-h1: 2.77rem; /* 50px */
  --font-size-h2: 1.77rem; /* 32px */
  --font-size-h3: 1.33rem;
  --font-size-h4: 1rem;
  --font-size-lead: 1.33rem;
  --font-size-body-l: 1.33rem;
  --font-size-quote: 1.77rem;
  --font-size-body: 1rem;
  --font-size-body-s: 0.88rem;
  --font-size-body-xs: 0.77rem;
  /* colors / background */
  --bg-content: #f2f2f2; /* light grey */
  --bg-dark: #000000; /* dark grey */
  --bg-light: #ffffff;
  --bg-button: #000000;
  --color-highlight: #e20040; /* red */
  --color-dark: #000000;
  --color-status-ok: #68c388;
  --color-status-comingsoon: #fd9a30;
  --color-status-notok: var(--color-highlight);
  /* lines */
  --border-basic: #c4c4c4;
  --border-light: #e1e1e1;
  --border-width: 1px;
  --border-radius-box: 20px;
  /* spacing between components based on rem */
  --spacing-l: 6rem;
  --spacing-m: 3rem;
  --spacing-s: 1.5rem;
  --spacing-xs: 0.75rem;
  --header-height: 110px;
  --padding-left-small: 24px;
  --padding-box-small: 1.5em 32px;
  --padding-box-small-separate: 32px;
  --padding-box-big: 2.5em 54px;
  /* accordion */
  --plus-length: 12px;
  --plus-stroke: 2px;
  --plus-stroke-position: 5px;
  --plus-icon-padding: 24px;
  --accordion-icon-padding: 28px;
  /* grid */
  --grid-container: 24px;
  --grid-row: -12px;
  --grid-col: 12px;
  /* form */
  --border-form: #c4c4c4;
  --border-form-focus: #000;
  --border-form-width: 1px;
  --form-disabled: #ccc;
  --form-error: #e20040;
  --form-ok: #68c388;
  --form-initial: #000;
  --bg-form-content: #fff;
}

/* ==========================================================================
   Exeptions for different backgrounds
   ========================================================================== */
.c-text-light {
  --text-color: #fff; /* grey */
  --text-color-medium: #888;
  --text-color-light: #fff;
  --text-color-link: #fff;
  --text-color-dark: #fff;
  --border-basic: #484848;
  --text-color-link: #fff;
}

.c-link-arrow,
.c-link-download,
.c-link-extern,
.c-link-back {
  --text-color-link: var(--color-highlight);
}

.c-breadcrumb a {
  --text-color-link: var(--text-color-medium);
  --color-highlight: var(--text-color-dark);
}

.c-text-light .c-btn-secondary {
  --color-highlight: #fff;
  --bg-button: #888;
}

.c-footer .c-form-standard {
  --bg-form-content: #171717;
  --border-form: #171717;
  --border-form-focus: #fff;
}

.c-compare-row-header-sticky .c-teaser-item {
  --border-radius-box: 0 0 20px 20px;
}

.c-compare {
  --padding-box-small: 0.75em 32px;
}

/* ==========================================================================
   Responsive Custom Properties
   ========================================================================== */
@media only screen and (min-width: 1200px) {
  :root {
    --grid-container: 48px;
    --grid-row: -24px;
    --grid-col: 24px;
  }
}
@media only screen and (max-width: 1200px) {
  :root {
    --padding-box-small: 1.5em 24px;
    --padding-box-small-separate: 24px;
    --padding-box-big: 2em 32px;
  }
}
@media only screen and (max-width: 980px) {
  :root {
    --spacing-l: 3rem;
    --spacing-m: 1.5rem;
    --header-height: 70px;
    --padding-box-big: 1.5em 24px;
  }
}
@media only screen and (max-width: 600px) {
  :root {
    --border-radius-box: 16px;
  }
  .c-compare {
    --padding-box-small: 0.75em 16px;
  }
}
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/*
 * 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/*
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/*
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* =============================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
 *    http://clagnut.com/blog/348/#c790
 * 2. Keeps page centred in all browsers regardless of content height
 * 3. Prevents iOS text size adjust after orientation change, without disabling user zoom
 *    www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
 * 4. Correct the line height in all browsers.
 */
html {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 4 */
  overflow-y: scroll; /* 2 */
  -webkit-text-size-adjust: 100%; /* 3 */
  -ms-text-size-adjust: 100%; /* 3 */
}

/**
 * Remove default margin.


 */
body {
  margin: 0;
  padding: 0; /* cubegrafik */
}

/* =============================================================================
/**
 * Remove the gray background color from active links in IE 10.

 */
a {
  background: transparent;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/* =============================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/*
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

/*
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/*
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/*
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/*
 * Improves readability of pre-formatted text in all browsers
 * Contain overflow in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: auto;
}

/**
 * Set consistent quote types.
 */
q {
  quotes: "“" "”" "‘" "’";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**

 * Prevent `sub` and `sup` affecting `line-height` in all browsers.

 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* =============================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
 * 2. Improves image quality when scaled in IE7
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0; /* 1 */
  -ms-interpolation-mode: bicubic; /* 2 */
}

/*
 * Corrects overflow displayed oddly in IE9
 */
svg:not(:root) {
  overflow: hidden;
}

/* =============================================================================
   Figures
   ========================================================================== */
/*
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}

/* =============================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7
 */
form {
  margin: 0;
}

/*
 * Define consistent border, margin, and padding
 */
fieldset {
  border: 0; /* cubegrafik */
  margin: 0; /* cubegrafik */
  padding: 0; /* cubegrafik */
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
  border: 0;
}

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.

 * 4. Improves appearance and consistency in all browsers
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
  vertical-align: baseline; /* 4 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**

 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 * and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 * `input` and others.
 * 4. Removes inner spacing in IE7 without affecting normal text inputs.
 * Known issue: inner spacing remains in IE6.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
  *overflow: visible; /* 4 */
}

/*
 * Re-set default cursor for disabled elements
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
input::-moz-focus-inner [type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**

 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).

 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**

 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* =============================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* ==========================================================================
   Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Elements cubegrafik
   ========================================================================== */
a:active {
  outline: none;
}

div, p {
  padding: 0;
  margin: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

th, td {
  vertical-align: top;
  text-align: left;
}

input,
textarea {
  /* Removed because of visibilitychange-addition to fancy-forms plugin.
   * 2015/01/22 - Florian Mäder
   * -webkit-appearance: none;*/
  -webkit-border-radius: 0;
}

html {
  -webkit-box-sizing: border-box; /* Safari 3.0 - 5.0, Chrome 1 - 9, Android 2.1 - 3.x */
  -moz-box-sizing: border-box; /* Firefox 1 - 28 */
  box-sizing: border-box; /* Safari 5.1+, Chrome 10+, Firefox 29+, Opera 7+, IE 8+, Android 4.0+, iOS any */
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}

label[for] {
  cursor: pointer;
  -ms-touch-action: manipulation; /* IE 10  */
  touch-action: manipulation; /* IE 11+ */
}

/* ==========================================================================
   Form Placeholder
   ========================================================================== */
/* ==========================================================================
   Fonts smoothing
   ========================================================================== */
/* ==========================================================================
  Hiding
   ========================================================================== */
.c-hide-visually {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.c-hide-completely {
  display: none;
  visibility: hidden;
}

/* image replacement */
.c-ir {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  background-color: transparent;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr;
}

/* ==========================================================================
   Sticky Footer
   ========================================================================== */
html {
  display: flex;
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.c-header,
.c-footer {
  flex-shrink: 0;
}

.c-content {
  flex-grow: 1;
}

/* ==========================================================================
   Components
   ========================================================================== */
/* styles for every project */
/* ==========================================================================
   Base Project
   ========================================================================== */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: #f2f2f2;
  background-color: var(--bg-content);
  color: #000;
  color: var(--text-color);
  font-family: "Muli", "Arial", "Helvetica", sans-serif;
  font-family: var(--font-stack-default);
  font-weight: normal;
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body);
  -webkit-tap-highlight-color: transparent;
}

/* links */
a,
a:visited,
a:focus,
a:hover {
  color: #000;
  color: var(--text-color-link);
  text-decoration: none;
}

a:focus,
a:hover {
  color: var(--color-highlight);
}

p:empty {
  display: none;
}

/* ==========================================================================
   Forms
   ========================================================================== */
input,
select,
textarea {
  color: #000;
  color: var(--text-color);
}

textarea {
  resize: none;
}

/* ==========================================================================
   Standard img / media declaration
   ========================================================================== */
embed,
object,
video,
iframe,
img {
  width: 100%;
}

img {
  height: auto;
}

.c-img-max-width,
.c-content .c-img-max-width {
  width: auto;
  max-width: 100%;
}

img {
  vertical-align: bottom;
}

/* ==========================================================================
   Standard Main Container Declaration
   ========================================================================== */
.c-header,
.c-content,
.c-footer,
.c-container,
.c-container-wide {
  position: relative;
  width: 100%;
  z-index: auto;
}

/* ==========================================================================
   Standard Padding between Components 
   ========================================================================== */
.c-container {
  padding-bottom: 6rem;
  padding-bottom: var(--spacing-l);
}

.c-breadcrumb {
  padding-top: 1.5rem;
  padding-top: var(--spacing-s);
}

.c-main-title {
  margin-top: 6em;
  margin-top: var(--spacing-l);
}

.c-breadcrumb + .c-main-title {
  margin-top: 0;
}

.c-showroom,
.c-quicknav,
.c-text-img-dark {
  margin-bottom: 6em;
  margin-bottom: var(--spacing-l);
}

.c-showroom-text-inner,
.c-quicknav,
.c-text-img-dark {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  padding-top: var(--spacing-m);
  padding-bottom: var(--spacing-m);
}

.c-container-no-padding,
.c-text-img-dark .c-container {
  padding-bottom: 0;
}

.c-section-title {
  padding-bottom: 1.5rem;
  padding-bottom: var(--spacing-s);
}

.c-teaser-3col .c-col-4 {
  padding-bottom: 24px;
  padding-bottom: var(--grid-container);
}

.c-teaser-3col {
  padding-bottom: calc(var(--spacing-l) - var(--grid-container));
}

.c-text-only + .c-text-only {
  margin-top: calc((var(--spacing-l) - 1.5em) * -1);
}

.c-showroom + .c-quicknav {
  margin-top: calc((var(--spacing-l)) * -1);
}

/* ==========================================================================
   Standard Grid Declaration
   ========================================================================== */
.c-container {
  padding-left: 20px;
  padding-right: 20px;
  padding-left: var(--grid-container);
  padding-right: var(--grid-container);
}

.c-row {
  margin-right: -10px;
  margin-left: -10px;
  margin-right: var(--grid-row);
  margin-left: var(--grid-row);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}

.c-row-reverse {
  flex-direction: row-reverse;
}

.c-row-justify-left {
  justify-content: flex-start;
}

.c-row-justify-center {
  justify-content: center;
}

.c-row-justify-right {
  justify-content: flex-end;
}

.c-row-justify-around {
  justify-content: space-around;
}

.c-row-justify-between {
  justify-content: space-between;
}

.c-row-align-top {
  align-items: flex-start;
}

.c-row-align-center {
  align-items: center;
}

.c-row-align-bottom {
  align-items: flex-end;
}

.c-col-1,
.c-col-2,
.c-col-3,
.c-col-4,
.c-col-5,
.c-col-6,
.c-col-7,
.c-col-8,
.c-col-9,
.c-col-10,
.c-col-11,
.c-col-12 {
  position: relative;
  min-height: 1px;
  padding-right: 10px;
  padding-left: 10px;
  padding-right: var(--grid-col);
  padding-left: var(--grid-col);
}

.c-col-12 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.c-col-11 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 91.66667%;
  -ms-flex: 0 0 91.66667%;
  flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

.c-col-10 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 83.33333%;
  -ms-flex: 0 0 83.33333%;
  flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.c-col-9 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 75%;
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%;
}

.c-col-8 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 66.66667%;
  -ms-flex: 0 0 66.66667%;
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.c-col-7 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 58.33333%;
  -ms-flex: 0 0 58.33333%;
  flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.c-col-6 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.c-col-5 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 41.66667%;
  -ms-flex: 0 0 41.66667%;
  flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

.c-col-4 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 33.33333%;
  -ms-flex: 0 0 33.33333%;
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.c-col-3 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.c-col-2 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 16.66667%;
  -ms-flex: 0 0 16.66667%;
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.c-col-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 8.33333%;
  -ms-flex: 0 0 8.33333%;
  flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

/* offset cols */
.c-col-offset-1 {
  margin-left: 8.333%;
}

.c-col-offset-2 {
  margin-left: 16.667%;
}

.c-col-offset-3 {
  margin-left: 25%;
}

.c-col-offset-4 {
  margin-left: 33.333%;
}

.c-col-offset-5 {
  margin-left: 41.667%;
}

.c-col-offset-6 {
  margin-left: 50%;
}

.c-col-offset-7 {
  margin-left: 58.333%;
}

.c-col-offset-8 {
  margin-left: 66.667%;
}

.c-col-offset-9 {
  margin-left: 75%;
}

.c-col-offset-10 {
  margin-left: 83.333%;
}

.c-col-offset-11 {
  margin-left: 91.667%;
}

/* ==========================================================================
   Grid Varianten
   ========================================================================== */
/* ==========================================================================
   Base
   ========================================================================== */
html {
  font-size: 18px;
  font-size: var(--font-size-root);
}

/* ==========================================================================
   Titles
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-weight: var(--font-weight-bold);
  text-wrap: balance;
  color: var(--text-color-dark);
}

h1,
.c-h1 {
  padding-bottom: 0.3em;
  line-height: 1.25;
  font-size: 2.77rem; /* 50px */
  font-size: var(--font-size-h1);
  font-weight: 400;
  font-weight: var(--font-weight-normal);
}

h1 sup {
  font-size: 70%;
  font-weight: var(--font-weight-medium);
}

h1 + .c-btn {
  margin-top: 0.5em;
}

/*
.c-showroom h1 {
    text-shadow: 0px 0px 1px rgba(0,0,0,0.2);
}*/
h2,
.c-h2 {
  padding-bottom: 0.5em;
  line-height: 1.25;
  font-size: 1.77rem; /* 32px */
  font-size: var(--font-size-h2);
}

h3,
.c-h3 {
  padding-bottom: 0.5em;
  line-height: 1.25;
  font-size: 1.33rem;
  font-size: var(--font-size-h3);
}

h4,
.c-h4 {
  padding-bottom: 0.5em;
  line-height: 1.5;
  font-size: 1rem;
  font-size: var(--font-size-h4);
}

.c-footer-title,
.c-category-title {
  display: block;
  padding-bottom: 1em;
  font-size: 0.88rem;
  font-size: var(--font-size-body-s);
  color: var(--text-color-medium);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing);
  font-weight: var(--font-weight-bold);
}

.c-category-title {
  position: relative;
  padding-left: 24px;
}

.c-category-title::before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  width: 12px;
  height: 12px;
  background-color: #e20040;
  background-color: var(--color-highlight);
}

/* ==========================================================================
   Basic Text Content
   ========================================================================== */
.c-content,
.c-footer {
  line-height: 1.5;
}

.c-text-block p,
.c-footer p {
  padding-bottom: 1.5em;
}

.c-teaser-item p,
.c-product-info-text p,
.c-cookie-notice p {
  padding-bottom: 0.5em;
}

.c-product-info-text .c-text-price-big + .c-text-sale {
  margin-top: -0.85em;
}

.c-text-block p:last-child,
.c-footer p:last-child {
  padding-bottom: 0;
}

.c-text-block p + h2,
.c-text-block p + h3,
.c-text-block p + h4,
.c-text-block ul + p,
.c-text-block ul + h2,
.c-text-block ul + h3,
.c-text-block ul + h4,
.c-text-block ul + ol,
.c-text-block ol + p,
.c-text-block ol + h2,
.c-text-block ol + h3,
.c-text-block ol + h4 {
  padding-top: 1.5em;
}

.c-lead {
  line-height: 1.33;
  font-size: 1.33rem;
  font-size: var(--font-size-lead);
  text-wrap: balance;
}

.c-text-big {
  line-height: 1.33;
  font-size: 1.33rem;
  font-size: var(--font-size-body-l);
}

.c-text-block blockquote cite,
.c-footer-disclaimer,
.c-text-medium {
  font-size: 0.88rem; /* 14px */
  font-size: var(--font-size-body-s);
}

.c-text-small,
.c-text-sale {
  font-size: 0.77rem; /* 14px */
  font-size: var(--font-size-body-xs);
}

.c-text-sale {
  display: block;
  color: var(--color-highlight);
}

.c-text-price-big {
  display: block;
  font-size: 1.33rem;
  font-size: var(--font-size-lead);
  color: var(--text-color-dark);
}

.c-text-price {
  display: block;
}

.c-legend {
  display: block;
  padding-top: 1em;
  padding-top: var(--spacing-xs);
  font-size: var(--font-size-body-xs);
}

/* ==========================================================================
   Basic Lists Content 
   ========================================================================== */
.c-text-block ul,
.c-text-block ol,
.c-link-list {
  margin: 0;
  padding: 0 0 1.5em 0;
  list-style: none;
}

.c-link-list:last-child {
  padding-bottom: 0;
}

.c-text-block ul li,
.c-text-block ol li {
  position: relative;
  padding-left: 28px;
}

.c-text-block ul li + li,
.c-text-block ol li + li,
.c-link-list li + li {
  margin-top: 0.5em;
}

.c-text-block ul li::before {
  content: "";
  position: absolute;
  top: 0.4em;
  left: 2px;
  width: 10px;
  height: 14px;
  background-image: url(sprite_6ad3.svg);
  background-repeat: no-repeat;
  background-position: 0 0;
  /*border-radius: 50%;
  background-color: $color-highlight;
  background-color: var(--color-highlight);*/
}

.c-text-block ol {
  counter-reset: custom-counter;
}

.c-text-block ol li {
  counter-increment: custom-counter;
}

.c-text-block ol li::before {
  content: counter(custom-counter) ". ";
  position: absolute;
  left: 0;
  top: 0;
  width: 26px;
  color: #000;
  color: var(--text-color);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  text-align: right;
}

.c-breadcrumb ul {
  display: flex;
  flex-flow: row wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing);
  color: var(--text-color-dark);
}

.c-breadcrumb li {
  position: relative;
  padding-right: 28px;
}

.c-breadcrumb li::before {
  content: "/";
  position: absolute;
  top: 0;
  left: calc(100% - 16px);
  color: var(--border-basic);
  font-size: var(--font-size-body-xs);
}

.c-breadcrumb li:last-child::before {
  content: "";
}

.c-technical-list,
.c-keyfacts-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0;
  padding: 0;
  border-top: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
}

.c-technical-list dt,
.c-technical-list dd {
  margin: 0;
  padding: 0.85em 10px 0.85em 0;
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
  color: var(--text-color-dark);
}

.c-technical-list dt {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
  font-weight: var(--font-weight-bold);
}

.c-technical-list dd {
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.c-keyfacts-list {
  padding-top: 0.85em;
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
}

.c-product-keyfacts + .c-product-accordion .c-accordion-container {
  border-top: none;
}

.c-keyfacts-list dt,
.c-keyfacts-list dd {
  margin: 0;
  padding: 0 10px 0.85em 0;
}

.c-keyfacts-list dt {
  flex: 0 0 40%;
  max-width: 40%;
  font-weight: var(--font-weight-bold);
  color: var(--text-color-dark);
}

.c-keyfacts-list dd {
  flex: 0 0 60%;
  max-width: 60%;
}

.c-product-links-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0 -8px;
  padding: 0;
  list-style: none;
}

.c-product-links-list li {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 0 8px 0.5em 8px;
}

/* ==========================================================================
   product
   ========================================================================== */
.c-product-delivery {
  display: inline-block;
  position: relative;
  padding-left: 16px;
}

.c-product-delivery::before {
  content: "";
  position: absolute;
  top: 0.38em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.c-product-delivery-status-ok::before {
  background-color: #e20040;
  background-color: var(--color-status-ok);
}

.c-product-delivery-status-comingsoon::before {
  background-color: #ffad0a;
  background-color: var(--color-status-comingsoon);
}

.c-product-delivery-status-notok::before {
  background-color: #68c388;
  background-color: var(--color-status-notok);
}

/* ==========================================================================
   Quote
   ========================================================================== */
.c-text-block blockquote {
  margin: 0;
  padding: 0 0 3rem 0;
}

.c-text-block blockquote p {
  position: relative;
  padding: 2.6rem 0 0 0;
  line-height: 1.25;
  font-size: 2.22rem; /* 40px */
  font-size: var(--font-size-quote);
  text-wrap: balance;
}

.c-text-block blockquote p::before {
  content: "“";
  display: block;
  position: absolute;
  left: -31px;
  top: -2.8rem;
  font-size: 14.44rem;
  color: #C4C4C4;
  color: var(--border-basic);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  z-index: -1;
}

.c-text-block blockquote cite {
  padding-top: 1.5em;
  font-style: normal;
}

/* ==========================================================================
   Text helpers
   ========================================================================== */
.c-text-right {
  text-align: right;
}

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

.c-text-light {
  color: #fff;
  color: var(--text-color-light);
}

/* ==========================================================================
   Text sizes responsive
   ========================================================================== */
@media only screen and (max-width: 1360px) {
  h1, .c-h1,
h2, .c-h2,
h3, .c-h3 {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }
}
@media only screen and (max-width: 1200px) {
  :root {
    --font-size-h1: 2.25rem;
    --font-size-h2: 1.45rem;
    --font-size-h3: 1.2rem;
    --font-size-lead: 1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --font-size-root: 16px;
    --font-size-h1: 2rem;
    --font-size-h2: 1.5rem;
    --font-size-h3: 1.125rem;
    --font-size-lead: 1.25rem;
    --font-size-body-l: 1.25rem;
    --font-size-quote: 1.5rem;
    --font-size-body: 1rem;
    --font-size-body-s: 1rem;
    --font-size-body-xs: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-text-block ul li::before {
    top: 0.3em;
  }
}
/* ==========================================================================
   Header
   ========================================================================== */
.c-header {
  background-color: #fff;
  background-color: var(--bg-light);
  z-index: 10;
}

.c-header-main {
  background-color: #fff;
  background-color: var(--bg-light);
  z-index: 11;
}

.c-header-inner {
  height: 110px;
  height: var(--header-height);
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
}

.c-header-logo {
  position: relative;
  width: 120px;
  height: 66px;
}

.c-header-logo a {
  display: block;
}

.c-header-sticky {
  position: fixed;
}

/* ==========================================================================
   meta
   ========================================================================== */
.c-header-main,
.c-header-meta {
  border-bottom: solid 1px #C4C4C4;
  border-color: var(--border-light);
}

.c-header-meta .c-container {
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
}

.c-header-lang-list,
.c-header-meta-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
  letter-spacing: var(--letter-spacing);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
}

.c-header-meta-list {
  padding-right: 2.5em;
}

.c-header-lang-list li,
.c-header-meta-list li {
  display: inline-block;
}

.c-header-lang-list li + li,
.c-header-meta-list li + li {
  padding-left: 1em;
}

.c-header-lang-list a,
.c-header-meta-list a {
  display: inline-block;
  position: relative;
  padding: 0.85em 0;
  color: var(--text-color-medium);
}

/* ==========================================================================
   main nav 
   ========================================================================== */
.c-main-nav {
  font-size: 0.88rem;
  font-size: var(--font-size-body-s);
  letter-spacing: var(--letter-spacing);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
}

.c-main-nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-main-nav-list li {
  display: inline-block;
}

.c-main-nav-list li + li {
  padding-left: 1em;
}

.c-main-nav-list a {
  display: inline-block;
  position: relative;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.c-main-nav-list a::before,
.c-header-lang-list a::before,
.c-header-meta-list a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  background-color: #e20040;
  background-color: var(--color-highlight);
  transition: all 0.2s linear;
}

.c-main-nav-list a:focus::before,
.c-main-nav-list a:hover::before,
.c-main-nav-list .current-menu-item a::before,
.c-header-lang-list a:focus::before,
.c-header-lang-list a:hover::before,
.c-header-lang-list .wpml-ls-current-language a::before,
.c-header-meta-list a:focus::before,
.c-header-meta-list a:hover::before,
.c-header-meta-list .current-menu-item a::before {
  height: 4px;
}

.c-main-nav-list a:focus,
.c-main-nav-list a:hover,
.c-main-nav-list .current-menu-item a,
.c-header-lang-list a:focus,
.c-header-lang-list a:hover,
.c-header-lang-list .wpml-ls-current-language a,
.c-header-meta-list a:focus,
.c-header-meta-list a:hover,
.c-header-meta-list .current-menu-item a {
  color: var(--color-highlight);
}

/* ==========================================================================
   helper nav 
   ========================================================================== */
.c-header-helper-list {
  display: flex;
  flex-flow: row;
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-header-helper-list li + li {
  padding-left: 0.5em;
}

/* ==========================================================================
   header search
   ========================================================================== */
.c-header-search-content {
  display: none;
  position: absolute;
  top: 50%;
  margin-top: -26px;
  right: 20px;
  right: var(--grid-container);
  /*width: calc(100% - 280px);*/
  width: calc(100% - (var(--grid-container) * 2 + 160px));
  height: 52px;
  z-index: 1;
  font-size: var(--font-size-body-s);
}

.c-header-search-content.c-form-standard .c-form-search {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 38px;
  height: 52px;
  line-height: 52px;
  border-radius: 24px;
}

.c-header-search-trigger {
  z-index: 2;
}

#c-header-search[type=checkbox] {
  display: none;
}
#c-header-search[type=checkbox]:checked ~ .c-header-inner .c-header-search-content {
  display: block;
}

/* ==========================================================================
   Footer
   ========================================================================== */
.c-footer {
  padding-top: 3rem;
  padding-bottom: 1.5rem;
  padding-top: var(--spacing-m);
  padding-bottom: var(--spacing-s);
  background-color: #000;
  background-color: var(--bg-dark);
  color: var(--text-color-medium);
}

.c-footer-disclaimer {
  padding-top: 1.5em;
  padding-top: var(--spacing-m);
}

.c-footer-disclaimer-list,
.c-footer-quality-list,
.c-footer-social-list,
.c-footer-payment-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-footer-disclaimer-list li {
  display: inline-block;
}

.c-footer-disclaimer-list > li + li {
  padding-left: 1.5em;
}

.c-footer a,
.c-footer a:visited {
  color: #000;
  color: var(--text-color);
}

.c-footer-disclaimer a,
.c-footer-disclaimer a:visited {
  color: var(--text-color-medium);
}

.c-footer a:hover,
.c-footer a:focus {
  color: #e20040;
  color: var(--color-highlight);
}

/* ==========================================================================
   footer main
   ========================================================================== */
.c-footer-main .c-col-3 {
  display: flex;
  flex-flow: column;
}

.c-footer-main-item {
  position: relative;
  padding-left: 24px;
  padding-left: var(--padding-left-small);
  border-left: solid 1px #C4C4C4;
  border-color: var(--border-basic);
  border-width: var(--border-width);
  flex-grow: 1;
}

.c-footer-main .c-col-3:first-child .c-footer-main-item {
  border-left: none;
  padding-left: 0;
}

.c-footer-main .c-link-list + .c-footer-title {
  padding-top: 1.5em;
}

/* ==========================================================================
   quality / social
   ========================================================================== */
.c-footer-quality-list,
.c-footer-social-list,
.c-footer-payment-list {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.c-footer-quality-list img,
.c-footer-payment-list img {
  max-width: 100%;
  height: auto;
}

.c-footer-quality-list li {
  padding: 0.5em 1em 1em 0;
}

.c-footer-social-list li {
  padding: 0.5em 8px 0.5em 0;
}

.c-footer-payment-list li {
  padding: 5px 10px 5px 0;
}

/* optional styles */
/* ==========================================================================
   Offcanvas trigger
   ========================================================================== */
.c-offcanvas-trigger,
.c-sidebar-compare-trigger-close {
  position: absolute;
  display: none;
  top: 15px;
  right: 20px;
  right: var(--grid-container);
  width: 40px;
  height: 40px;
  margin: 0;
  color: transparent;
  transform: perspective(1px) translateZ(0);
  transition: all 0.2s ease-in-out;
  overflow: hidden;
}

.c-offcanvas-trigger-open {
  display: none;
}

#open-navigation:not(:target) .c-offcanvas-trigger-close {
  display: none;
}

.c-offcanvas-trigger::before,
.c-offcanvas-trigger::after,
.c-sidebar-compare-trigger-close::before,
.c-sidebar-compare-trigger-close::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
}

.c-offcanvas-trigger-open::before,
.c-offcanvas-trigger-open::after {
  width: 26px;
  transition: width 0.2s ease-in-out;
}

.c-offcanvas-trigger-open::before {
  height: 20px;
  margin-top: -10px;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
  border-color: var(--text-color-dark);
}

.c-offcanvas-trigger-open::after {
  height: 2px;
  background-color: #e20040;
  background-color: var(--text-color-dark);
  margin-top: -1px;
}

.c-offcanvas-trigger-open:focus::after,
.c-offcanvas-trigger-open:hover::after {
  width: 15px;
}

.c-offcanvas-trigger-close::before,
.c-offcanvas-trigger-close::after,
.c-sidebar-compare-trigger-close::before,
.c-sidebar-compare-trigger-close::after {
  background-color: #e20040;
  background-color: var(--text-color-dark);
  margin-top: -2px;
  height: 2px;
  width: 26px;
  transition: all 0.5s;
}

.c-offcanvas-trigger-close::before,
.c-sidebar-compare-trigger-close::before {
  transform: rotate(-45deg);
}

.c-offcanvas-trigger-close::after,
.c-sidebar-compare-trigger-close::after {
  transform: rotate(45deg);
}

/* ==========================================================================
   Offcanvas nav main container
   ========================================================================== */
.c-offcanvas-nav {
  /*display: none;*/
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  background-color: var(--bg-dark);
  color: var(--text-color-light);
  z-index: 10;
  width: 0;
  height: 0;
  overflow-y: auto;
  transition: height 0.2s ease-out 0s;
}

#open-navigation.navigation .c-offcanvas-nav #open-navigation:not(:target) .c-offcanvas-nav {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.c-offcanvas-inner {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow-y: auto;
}

/* ==========================================================================
   Offcanvas Content
   ========================================================================== */
.c-offcanvas-content {
  padding-top: 3em;
  padding-top: calc(var(--header-height) + 2em);
}

.c-offcanvas-lang .c-header-lang-list,
.c-offcanvas-meta-list {
  font-size: var(--font-size-body);
}

.c-offcanvas-nav-list,
.c-offcanvas-nav-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-offcanvas-nav-list ul li:last-child {
  padding-bottom: 0.95em;
}

.c-offcanvas-nav-list {
  margin-top: var(--spacing-s);
  border-top: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing);
}

.c-offcanvas-nav-list li {
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
}

.c-offcanvas-nav-list ul li {
  border-bottom: none;
}

.c-offcanvas-nav-list a {
  display: inline-block;
  position: relative;
  /*padding: 0.85em 8px 0.85em 24px;*/
  padding: 0.8em 8px 0.9em 24px;
  line-height: 1;
}

.c-offcanvas-nav-list ul a {
  /*padding: 0.85em 8px 0.5em 24px;*/
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body);
}

.c-offcanvas-nav-list a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 2px;
  margin-top: -6px;
  background-image: url(sprite_6ad3.svg);
  background-repeat: no-repeat;
  width: 8px;
  height: 14px;
  background-position: 100px 0px;
}

.c-offcanvas-nav-list .current-menu-item > a::before {
  background-position: 0 0px;
}

.c-offcanvas-nav-list .current-menu-item > a {
  padding-left: 24px;
}

.c-offcanvas-nav-list ul .current-menu-item > a {
  padding-left: 24px;
}

.c-offcanvas-nav-list a:focus,
.c-offcanvas-nav-list a:hover,
.c-offcanvas-nav-list .current-menu-item > a {
  color: #e20040;
  color: var(--color-highlight);
}

/* ==========================================================================
   Offcanvas accordion
   ========================================================================== */
.c-offcanvas-menu-check {
  position: absolute;
  left: -9999px;
}

.c-offcanvas-menu-title {
  display: block;
  position: relative;
  cursor: pointer;
  /*padding: 0.85em 0;*/
  padding: 0.8em 0 0.9em 0;
  margin: 0;
  padding-left: var(--plus-icon-padding);
  transition: all 0.2s ease-in-out;
  text-align: left;
}

.c-offcanvas-menu-check:checked + label::after,
.c-offcanvas-menu-check:not(:checked) + label::after,
.c-offcanvas-menu-check:checked + label::before,
.c-offcanvas-menu-check:not(:checked) + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border: none;
  transform: rotate(0deg);
  transform: translateY(-50%);
}

.c-offcanvas-menu-check:checked + label::after,
.c-offcanvas-menu-check:not(:checked) + label::after {
  left: 0;
  /*margin-top: var(--plus-stroke-position);*/
  width: var(--plus-length);
  height: var(--plus-stroke);
  background-color: var(--color-highlight);
}

.c-offcanvas-menu-check:checked + label::before,
.c-offcanvas-menu-check:not(:checked) + label::before {
  left: var(--plus-stroke-position);
  width: var(--plus-stroke);
  height: var(--plus-length);
  background-color: transparent;
}

.c-offcanvas-menu-check:not(:checked) + label::before {
  background-color: var(--color-highlight);
}

.c-offcanvas-menu-content {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
}

.c-offcanvas-menu-check:checked ~ .c-offcanvas-menu-content {
  max-height: 9999px;
  transition: max-height 0.3s cubic-bezier(1, 0, 1, 0);
}

/* ==========================================================================
   Offcanvas nav open
   ========================================================================== */
#open-navigation.open,
#open-navigation:target {
  position: relative;
  top: auto;
  height: auto;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

#open-navigation.open,
#open-navigation:target {
  /* header main */
}
#open-navigation.open .c-offcanvas-nav,
#open-navigation:target .c-offcanvas-nav {
  width: 100%;
  height: 100vh;
  overflow-y: auto;
}
#open-navigation.open .c-offcanvas-trigger-open,
#open-navigation:target .c-offcanvas-trigger-open {
  display: none;
}
#open-navigation.open .c-offcanvas-trigger-close,
#open-navigation:target .c-offcanvas-trigger-close {
  display: block;
}

/* ==========================================================================
   Table
   ========================================================================== */
/* box around table, so it can scroll on small screens */
.c-table {
  overflow: auto;
}

.c-table-layout {
  width: 100%;
}

.c-table-layout th {
  padding: 0 15px 0.5em 0;
  border-bottom: solid 2px #C4C4C4;
  border-color: var(--border-basic);
}

.c-table-layout td {
  padding: 0.5em 15px 0.5em 0;
  border-bottom: solid 1px #C4C4C4;
  border-color: var(--border-basic);
}

/* ==========================================================================
   Colors
   ========================================================================== */
.c-bg-light {
  background-color: #fff;
  background-color: var(--bg-light);
}

/* ==========================================================================
  Showroom
   ========================================================================== */
.c-showroom {
  overflow: hidden;
}

.c-showroom,
.c-showroom-text .c-row {
  min-height: calc(80vh - var(--header-height));
}

/* min-height fix for ie11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-showroom-text .c-row:after {
    content: "";
    /*display: block;*/
    display: inline-block;
    min-height: inherit;
    font-size: 0;
  }
}
.c-showroom-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-showroom-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ==========================================================================
  Quicknav / text img dark
   ========================================================================== */
.c-quicknav,
.c-text-img-dark {
  background-color: #000;
  background-color: var(--bg-dark);
}

.c-quicknav-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-quicknav-list li {
  padding: 8px 16px 8px 0;
}

.c-quicknav-list li:last-child {
  padding-right: 0;
}

/* ==========================================================================
  teaser big
   ========================================================================== */
.c-teaser-big-container {
  overflow: hidden;
}

.c-teaser-big-container .c-asym-left-edgeless .c-teaser-big-img {
  margin-left: calc(var(--grid-container) * -1);
  margin-right: calc(var(--grid-container) * 2 * -1);
}

.c-teaser-big .c-box {
  margin-top: var(--grid-container);
}

.c-teaser-big-container .c-asym-right-edgeless .c-teaser-big-img {
  margin-right: calc(var(--grid-container) * -1);
  margin-left: calc(var(--grid-container) * 2 * -1);
}

.c-teaser-big-container .c-asym-right-edgeless .c-row {
  flex-direction: row-reverse;
}

/* ==========================================================================
  teaser
   ========================================================================== */
.c-box {
  border-radius: 20px;
  border-radius: var(--border-radius-box);
  background-color: #fff;
  background-color: var(--bg-light);
}

.c-box-small {
  padding: 1.5em 24px;
  padding: var(--padding-box-small);
}

.c-box-big {
  padding: 1.5em 24px;
  padding: var(--padding-box-big);
}

.c-teaser-item {
  position: relative;
  flex-grow: 1;
}

.c-teaser-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-teaser-item::before {
  transition: all 0.2 ease-out;
}

.c-teaser-item:hover::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*border: solid 1px $border-basic;
  border-color: var(--border-basic);*/
  border-radius: 20px;
  border-radius: var(--border-radius-box);
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 4px;
}

.c-teaser-item:focus-within::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*border: solid 1px $border-basic;
  border-color: var(--border-basic);*/
  border-radius: 20px;
  border-radius: var(--border-radius-box);
  box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 0px 4px;
}

.c-stoerer-product {
  display: block;
  position: absolute;
  top: 22px;
  left: 0;
  padding: 0.25em 12px;
  color: var(--text-color-light);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-body-s);
  background-color: var(--bg-button);
  text-transform: uppercase;
}

.c-product-info-text .c-stoerer-product {
  position: relative;
  display: inline-block;
  top: auto;
  margin-bottom: 1.5em;
}

.c-teaser-3col .c-col-4 {
  display: flex;
  flex-flow: column;
}

.c-teaser-category-img {
  border-radius: var(--border-radius-box) var(--border-radius-box) 0 0;
}

.c-teaser-category-img img {
  /*transition: all 0.2 ease-out;*/
  transition: all 0.2s ease-in-out;
}

.c-teaser-item:hover .c-teaser-category-img img {
  transform: scale(1.03);
}

.c-teaser-item:focus-within .c-teaser-category-img img {
  transform: scale(1.03);
}

/* ==========================================================================
  teaser contact
   ========================================================================== */
.c-teaser-contact .c-box {
  display: flex;
  flex-flow: row wrap;
}

.c-teaser-contact-icon img {
  max-width: 190px;
}

/* ==========================================================================
  product
   ========================================================================== */
.c-product-info {
  position: sticky;
  top: 1.5rem;
  top: var(--spacing-s);
  /*z-index: 1;
  height: auto;*/
}

.c-product-container .c-asym-left-edgeless .c-product-images {
  margin-left: calc(var(--grid-container) * -1);
}

.c-product-info-text,
.c-product-accordion {
  padding-bottom: 1.5rem;
}

.c-product-gallery-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 8px;
  margin: 0 0 8px 0;
  padding: 0;
  list-style: none;
}

.c-product-gallery-list .c-product-gallery-main {
  grid-column: span 2;
}

.c-product-gallery-list li {
  background-color: var(--bg-light);
}

.c-product-gallery-item {
  position: relative;
  height: 0;
  display: block;
  overflow: hidden;
  padding-bottom: 100%;
}

.c-product-gallery-item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-product-gallery-main .c-product-gallery-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-height: 650px;
  height: 40vw;
  padding: 0;
}

.c-product-gallery-main .c-product-gallery-item img {
  object-fit: contain;
}

/* ==========================================================================
  Cookie notice
   ========================================================================== */
.c-cookie-notice {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  right: var(--grid-container);
  bottom: var(--grid-container);
  width: 360px;
  padding: 1.5rem 30px;
  padding: var(--padding-box-small);
  background-color: #fff;
  background-color: var(--bg-light);
  color: var(--text-color);
  line-height: 1.5;
  text-align: left;
  border: none;
  border-radius: var(--border-radius-box);
}

.c-cookie-notice::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  border-radius: var(--border-radius-box);
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 4px;
}

.c-text-block .c-cookie-notice-list {
  padding-bottom: 0;
}

.c-text-block .c-cookie-notice-list li::before {
  background: transparent;
}

.c-text-block .c-cookie-notice-list li {
  display: inline-block;
  padding: 0.5em 0.5em 0 0;
}

@media only screen and (max-width: 767px) {
  .c-cookie-notice {
    width: calc(100% - var(--grid-container) * 2);
  }
}
/* ==========================================================================
   Link colors and styles
   ========================================================================== */
a[href^="tel:"] {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

.c-text-block a,
.c-form-standard a {
  background-image: linear-gradient(to bottom, #e20040 0%, #e20040 100%);
  background-image: linear-gradient(to bottom, var(--color-highlight) 0%, var(--color-highlight) 100%);
  background-position: 0 100%;
  background-repeat: repeat-x;
  background-size: 2px 2px;
  transition: background 0.1s;
}

.c-text-block a:focus,
.c-text-block a:hover,
.c-form-standard a:focus,
.c-form-standard a:hover {
  background-size: 4px 4px;
}

.c-text-block .c-btn,
.c-text-block .c-form-standard input[type=submit],
.c-text-block .c-link-arrow,
.c-text-block .c-link-download,
.c-text-block .c-link-extern,
.c-text-block .c-link-back,
.c-form-standard .c-btn,
.c-form-standard input[type=submit],
.c-form-standard .c-link-arrow,
.c-form-standard .c-link-download,
.c-form-standard .c-link-extern,
.c-form-standard .c-link-back,
.c-text-block .c-btn-delete {
  background-image: none;
}

/* ==========================================================================
   skip link
   ========================================================================== */
.c-skip-link {
  display: inline-block;
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  height: 1px;
  width: 1px;
  overflow: hidden;
  white-space: nowrap;
  color: var(--color-highlight);
  font-weight: var(--font-weight-bold);
  border: solid 1px var(--color-highlight);
  border-top: none;
  border-radius: 0;
  padding: 0.5em 20px;
}

.c-skip-link:focus {
  position: absolute;
  clip: auto;
  clip-path: none;
  height: auto;
  width: auto;
  overflow: auto;
  color: var(--color-highlight);
}

/* ==========================================================================
   Button 
   ========================================================================== */
.c-btn,
.c-btn-secondary,
.c-form-standard input[type=submit] {
  display: inline-block;
  margin: 0;
  padding: 0.85em 36px;
  border: solid 2px #000;
  border-color: var(--bg-button);
  border-radius: 30px;
  background-color: #000;
  background-color: var(--bg-button);
  line-height: 1;
  text-align: center;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-body);
  transition: all 0.2s ease-out;
  text-decoration: none;
}

.c-product-info-form .c-form-add-cart input[type=submit],
.c-product-links-list .c-btn-secondary,
.c-btn-wide {
  display: block;
  width: 100%;
}

.c-btn,
.c-btn:visited,
.c-form-standard input[type=submit] {
  color: #fff;
  color: var(--text-color-light);
}

.c-btn:hover,
.c-btn:focus,
.c-form-standard input[type=submit]:hover,
.c-form-standard input[type=submit]:focus {
  color: #fff;
  background-color: #e20040;
  color: var(--text-color-light);
  background-color: var(--color-highlight);
  border-color: var(--color-highlight);
  text-decoration: none;
}

.c-showroom .c-text-light .c-btn {
  border-color: var(--text-color-light);
}

.c-btn-secondary {
  background-color: transparent;
  color: var(--color-highlight);
  border-color: var(--color-highlight);
}

.c-btn-secondary,
.c-btn-secondary:visited {
  color: var(--color-highlight);
}

.c-btn-secondary:hover,
.c-btn-secondary:focus {
  background-color: transparent;
  color: var(--bg-button);
  border-color: var(--bg-button);
}

.c-btn-small {
  padding: 0.55em 20px 0.6em 20px;
}

.c-text-small .c-btn-small {
  font-size: var(--font-size-body-xs);
}

/* ==========================================================================
  links with icons
   ========================================================================== */
.c-icon {
  position: relative;
}

.c-icon::before,
.c-icon::after {
  content: "";
  position: absolute;
  background-image: url(sprite_6ad3.svg);
  background-repeat: no-repeat;
}

.c-link-arrow,
.c-link-download,
.c-link-extern,
.c-link-back {
  display: inline-block;
  padding-left: 28px;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
  letter-spacing: var(--letter-spacing);
  color: var(--color-highlight);
}

.c-link-btn-download,
.c-link-btn-compare {
  display: inline-block;
  padding-left: 32px;
}

.c-link-arrow::before,
.c-link-back::before {
  top: 0.25em;
  left: 2px;
  width: 10px;
  height: 14px;
  background-position: 0 0;
  transition: 0.1s ease-in-out;
}

.c-link-arrow:hover::before,
.c-link-arrow:focus::before,
.c-teaser-item:hover .c-link-arrow::before {
  left: 6px;
}

.c-teaser-item .c-link-arrow {
  pointer-events: none;
}

.c-link-back::before {
  background-position: 0 -120px;
}

.c-link-back:hover::before,
.c-link-back:focus::before {
  left: -2px;
}

.c-link-download::before,
.c-link-btn-download::before {
  top: 0.25em;
  left: 0;
  width: 20px;
  height: 25px;
  background-position: 0 -40px;
}

.c-link-btn-download::before {
  left: 2px;
  top: 0.1em;
}

.c-link-download:hover::before,
.c-link-download:focus::before {
  background-position: -50px -40px;
}

.c-link-btn-download:hover::before,
.c-link-btn-download:focus::before,
.c-btn-secondary:hover .c-link-btn-download::before,
.c-btn-secondary:focus .c-link-btn-download::before {
  background-position: -100px -40px;
}

.c-link-extern::before {
  top: -0.18em;
  left: 0;
  width: 26px;
  height: 26px;
  background-position: 0 -80px;
}

.c-link-extern:hover::before,
.c-link-extern:focus::before {
  background-position: -50px -80px;
}

.c-header-link-outer {
  position: relative;
  display: inline-block;
}

.c-header-link-basket,
.c-header-link-compare,
.c-header-link-search {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
}

.c-header-link-basket::before,
.c-header-link-compare::before,
.c-header-link-search::before {
  top: 50%;
  left: 50%;
  width: 25px;
  height: 25px;
  margin-top: -12px;
  margin-left: -12px;
}

.c-header-link-basket::before {
  background-position: 0 -180px;
}

.c-header-link-basket:focus::before,
.c-header-link-basket:hover::before {
  background-position: -50px -180px;
}

.c-header-link-compare::before {
  background-position: -100px -140px;
}

.c-header-link-compare:focus::before,
.c-header-link-compare:hover::before {
  background-position: 0 -140px;
}

.c-header-link-search::before {
  background-position: 0 -220px;
}

.c-header-link-search:focus::before,
.c-header-link-search:hover::before {
  background-position: -50px -220px;
}

.c-header-link-items {
  display: block;
  position: absolute;
  top: 0;
  right: -5px;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  border-radius: 50%;
  overflow: hidden;
  color: #fff;
  color: var(--text-color-light);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
  background-color: #e20040;
  background-color: var(--color-highlight);
}

.c-link-social-fb,
.c-link-social-linkedin,
.c-link-social-instagram,
.c-link-social-youtube {
  display: block;
  width: 40px;
  height: 40px;
  overflow: hidden;
}

.c-link-social-fb::before,
.c-link-social-linkedin::before,
.c-link-social-instagram::before,
.c-link-social-youtube::before {
  top: 50%;
  left: 50%;
  width: 30px;
  height: 26px;
  margin-top: -13px;
  margin-left: -13px;
}

.c-link-social-fb::before {
  background-position: 0 -260px;
}

.c-link-social-fb:hover::before,
.c-link-social-fb:focus::before {
  background-position: -50px -260px;
}

.c-link-social-linkedin::before {
  background-position: 0 -300px;
}

.c-link-social-linkedin:hover::before,
.c-link-social-linkedin:focus::before {
  background-position: -50px -300px;
}

.c-link-social-instagram::before {
  background-position: 0 -340px;
}

.c-link-social-instagram:hover::before,
.c-link-social-instagram:focus::before {
  background-position: -50px -340px;
}

.c-link-social-youtube::before {
  margin-top: -10px;
  margin-left: -15px;
  background-position: 0 -380px;
}

.c-link-social-youtube:hover::before,
.c-link-social-youtube:focus::before {
  background-position: -50px -380px;
}

.c-btn-compare,
.c-btn-back,
.c-btn-next,
.c-btn-delete {
  display: block;
  position: absolute;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: solid 2px #000;
  border-color: var(--color-highlight);
  transition: all 0.2s ease-out;
  overflow: hidden;
  background-color: var(--bg-light);
}

.c-product-gallery-slider-controls .c-btn-next,
.c-product-gallery-slider-controls .c-btn-back {
  /*background-color: transparent;
  border-color: transparent;*/
}

.c-btn-compare,
.c-btn-delete {
  top: 16px;
  right: 16px;
}

.c-compare-item .c-btn-delete {
  top: 0.85em;
  right: 0;
}

.c-btn-back,
.c-btn-next {
  top: 50%;
  margin-top: -22px;
  right: 54px;
}

.c-btn-next {
  right: 0;
}

.c-btn-compare:hover,
.c-btn-compare:focus,
.c-btn-back:hover,
.c-btn-back:focus,
.c-btn-next:hover,
.c-btn-next:focus,
.c-btn-delete:hover,
.c-btn-delete:focus {
  border-color: var(--bg-button);
}

.c-btn-compare-active,
.c-btn-compare-active:hover,
.c-btn-compare-active:focus {
  background-color: var(--color-highlight);
  border-color: var(--color-highlight);
}

.c-btn-slider-disabled,
.c-btn-slider-disabled:hover,
.c-btn-slider-disabled:focus {
  border-color: var(--border-basic);
}

.c-btn-compare::before,
.c-link-btn-compare::before {
  top: 50%;
  width: 25px;
  height: 25px;
  margin-top: -11px;
  background-position: 0 -140px;
}

.c-btn-compare::before {
  left: 50%;
  margin-left: -11px;
}

.c-link-btn-compare::before {
  left: 0;
}

.c-btn-compare:focus::before,
.c-btn-compare:hover::before,
.c-link-btn-compare:focus::before,
.c-link-btn-compare:hover::before,
.c-btn-secondary:focus .c-link-btn-compare::before,
.c-btn-secondary:hover .c-link-btn-compare::before {
  background-position: -100px -140px;
}

.c-btn-compare-active::before,
.c-btn-compare-active:hover::before,
.c-btn-compare-active:focus::before {
  background-position: -50px -140px;
}

.c-btn-delete::before {
  top: 50%;
  left: 50%;
  width: 22px;
  height: 22px;
  margin-top: -11px;
  margin-left: -10px;
  background-position: 0 -500px;
}

.c-btn-delete:focus::before,
.c-btn-delete:hover::before {
  background-position: -100px -500px;
}

.c-btn-back::before,
.c-btn-next::before {
  top: 50%;
  left: 50%;
  width: 13px;
  height: 23px;
  margin-left: -6px;
  margin-top: -11px;
  background-position: 0 -460px;
}

.c-btn-next::before {
  background-position: 0 -420px;
}

.c-btn-back:hover::before,
.c-btn-back:focus::before {
  background-position: -50px -460px;
}

.c-btn-next:hover::before,
.c-btn-next:focus::before {
  background-position: -50px -420px;
}

.c-btn-back.c-btn-slider-disabled::before,
.c-btn-back.c-btn-slider-disabled:hover::before,
.c-btn-back.c-btn-slider-disabled:focus::before {
  background-position: -100px -460px;
}

.c-btn-next.c-btn-slider-disabled::before,
.c-btn-next.c-btn-slider-disabled:hover::before,
.c-btn-next.c-btn-slider-disabled:focus::before {
  background-position: -100px -420px;
}

/* ==========================================================================
  responsive
   ========================================================================== */
/*
@media only screen and (max-width:767px) {   
	.c-link-arrow::before,
	.c-link-back::before {
		top: 0.15em;
	}

	.c-link-download::before {
		top: -.35em;
	}

	.c-link-extern::before {
		top: -.38em;
	}
}*/
/* ==========================================================================
   Ratio Box
   ========================================================================== */
.c-ratiobox {
  position: relative;
  height: 0;
  display: block;
  overflow: hidden;
}

.c-ratiobox > img,
.c-ratiobox > iframe,
.c-ratiobox > object {
  position: absolute !important;
  top: 0;
  left: 0;
}

.c-ratiobox > img {
  width: 100%;
  height: auto;
}

.c-ratiobox > iframe,
.c-ratiobox > object {
  width: 100% !important;
  height: 100% !important;
  background-color: #000;
}

.c-ratiobox-16by9 {
  padding-bottom: 56.25%;
}

.c-ratiobox-3by2,
.c-teaser-category-img {
  padding-bottom: 66.66666667%;
}

.c-ratiobox-4by3 {
  padding-bottom: 75%;
}

.c-ratiobox-1by1,
.c-teaser-product-img {
  padding-bottom: 100%;
}

.c-ratiobox-showroom {
  padding-bottom: 38.6904761905%;
}

.c-ratiobox-showroom img,
.c-teaser-category-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-teaser-product-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ==========================================================================
   Form
   ========================================================================== */
/* safari form fix */
input,
input[type=text],
input[type=email],
textarea {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  -webkit-box-shadow: none;
}

/* remove chrome autofill yellow color */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-transition-delay: 2000s;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.c-form-item {
  position: relative;
  width: 100%;
  padding-bottom: 1.5rem;
  padding-bottom: var(--spacing-s);
}

.c-product-info-form .c-form-item {
  display: flex;
  flex-flow: row;
}

.c-product-info-form .c-form-add-quantity {
  width: 80px;
  padding-right: 10px;
}

.c-product-info-form .c-form-add-cart {
  width: calc(100% - 80px);
}

.c-form-separator {
  margin: 0;
  padding: 0 0 1.5em 0;
  padding-bottom: var(--spacing-m);
  height: 0;
  border: none;
  background: none;
}

/* ==========================================================================
   formfields
   ========================================================================== */
.c-form-standard input[type=text],
.c-form-standard input[type=email],
.c-form-standard input[type=password],
.c-form-standard input[type=url],
.c-form-standard input[type=date],
.c-form-standard input[type=tel],
.c-form-standard input[type=number],
.c-form-standard textarea {
  width: 100%;
  border: solid 2px #A8A8A8;
  border-color: var(--border-form);
  border-width: var(--border-form-width);
  color: #000;
  color: var(--text-color);
  padding: 0.85em 12px;
  background-color: #f2f2f2;
  background-color: var(--bg-form-content);
}

.c-form-standard textarea {
  min-height: 12em;
}

.c-form-standard input[type=text]:focus,
.c-form-standard input[type=email]:focus,
.c-form-standard input[type=password],
.c-form-standard input[type=url]:focus,
.c-form-standard input[type=date]:focus,
.c-form-standard input[type=tel]:focus,
.c-form-standard textarea:focus {
  border-color: #000;
  border-color: var(--border-form-focus);
  outline: none;
}

.c-form-standard input[type=text]:disabled,
.c-form-standard input[type=email]:disabled,
.c-form-standard input[type=password],
.c-form-standard input[type=url]:disabled,
.c-form-standard input[type=date]:disabled,
.c-form-standard input[type=tel]:disabled,
.c-form-standard textarea:disabled {
  border-color: #ccc;
  color: #ccc;
  border-color: var(--form-disabled);
  color: var(--form-disabled);
}

.c-form-standard .c-form-label-text {
  display: block;
  padding-bottom: 0.35em;
  text-transform: uppercase;
  font-size: var(--font-size-body-xs);
  color: var(--text-color-dark);
  letter-spacing: var(--letter-spacing);
}

/* ==========================================================================
   file button
   ========================================================================== */
.c-form-standard input[type=file] {
  width: 100%;
  padding: 0.75em 10px;
  padding: var(--padding-box-small);
  border-radius: var(--border-radius-box);
  background-color: #fff;
  background-color: var(--bg-light);
  font-size: var(--font-size-body-s);
}

.c-form-standard input[type=file]::file-selector-button {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 0.85em 36px;
  border: solid 2px #000;
  border-color: var(--color-highlight);
  border-radius: 30px;
  background-color: transparent;
  color: var(--color-highlight);
  line-height: 1;
  text-align: center;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-body);
  transition: all 0.2s ease-out;
  text-decoration: none;
}

.c-form-standard input[type=file]::file-selector-button:hover {
  background-color: transparent;
  color: var(--bg-button);
  border-color: var(--bg-button);
}

/* ==========================================================================
   checkbox / radios
   ========================================================================== */
.c-form-standard .wpcf7-list-item {
  display: block;
  position: relative;
  margin: 0;
}

.c-form-standard .c-form-multiline .wpcf7-list-item {
  display: inline-block;
  padding-right: 1.6em;
}

.c-form-standard input[type=checkbox],
.c-form-standard input[type=radio] {
  margin: 4px 0 0;
  margin-top: 0;
  line-height: normal;
}

.c-form-standard input[type=checkbox]:checked,
.c-form-standard input[type=checkbox]:not(:checked),
.c-form-standard input[type=radio]:checked,
.c-form-standard input[type=radio]:not(:checked) {
  position: absolute;
  left: -9999px;
}

.c-form-standard input[type=checkbox] + span,
.c-form-standard input[type=radio] + span,
.c-form-standard input[type=checkbox] + span,
.c-form-standard input[type=radio] + span {
  margin-left: 0;
  font-weight: normal;
  overflow: hidden;
}

.c-form-standard input[type=checkbox]:checked + span,
.c-form-standard input[type=checkbox]:not(:checked) + span,
.c-form-standard input[type=radio]:checked + span,
.c-form-standard input[type=radio]:not(:checked) + span {
  position: relative;
  display: inline-block;
  padding-left: 50px;
  padding-top: 0.55em;
  line-height: 1.5;
  cursor: pointer;
  user-select: none;
  min-height: 44px;
}

.c-form-standard input[type=checkbox]:checked + span::before,
.c-form-standard input[type=checkbox]:not(:checked) + span::before,
.c-form-standard input[type=radio]:checked + span::before,
.c-form-standard input[type=radio]:not(:checked) + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 38px;
  height: 38px;
  border: 2px solid #A8A8A8;
  border-color: var(--border-form);
  border-width: var(--border-form-width);
  background-color: #f2f2f2;
  background-color: var(--bg-form-content);
  transition: all 0.2s ease-in-out;
}

.c-form-standard input[type=radio]:checked + span::before,
.c-form-standard input[type=radio]:not(:checked) + span::before {
  border-radius: 50%;
}

.c-form-standard input[type=checkbox]:focus + span::before,
.c-form-standard input[type=radio]:focus + span::before {
  border-color: #000;
  border-color: var(--border-form-focus);
  background-color: #f2f2f2;
  background-color: var(--bg-form-content);
}

.c-form-standard input[type=checkbox]:checked + span::before,
.c-form-standard input[type=radio]:checked + span::before {
  background-color: #f2f2f2;
  background-color: var(--bg-form-content);
}

.c-form-standard input[type=checkbox]:checked + span::after,
.c-form-standard input[type=checkbox]:not(:checked) + span::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(0.15em + 5px);
  left: 11px;
  transition: all 0.2s ease-in-out;
  width: 16px;
  height: 22px;
  border: solid #e20040;
  border-color: var(--color-highlight);
  border-width: 0 4px 4px 0;
  transform: rotate(45deg);
}

.c-form-standard input[type=radio]:checked + span::after,
.c-form-standard input[type=radio]:not(:checked) + span::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(0.15em + 9px);
  left: 9px;
  transition: all 0.2s ease-in-out;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background-color: #e20040;
  background-color: var(--color-highlight);
}

.c-form-standard input[type=checkbox]:not(:checked) + span::after {
  opacity: 0;
}

.c-form-standard input[type=radio]:not(:checked) + span::after {
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}

.gform_fields input[type=checkbox]:checked + span::after,
.c-form-standard input[type=checkbox]:checked + span::after {
  opacity: 1;
}

.c-form-standard input[type=radio]:checked + span::after {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.c-form-standard input[type=checkbox]:disabled + span::before,
.c-form-standard input[type=checkbox]:disabled + span::after,
.c-form-standard input[type=radio]:disabled + span::before,
.c-form-standard input[type=radio]:disabled + span::after {
  color: #ccc;
  color: var(--form-disabled);
  border-color: #ccc;
  border-color: var(--form-disabled);
}

/* ==========================================================================
   dropdown
   ========================================================================== */
.c-form-standard select {
  display: block;
  padding: 0.85em 30px 0.85em 12px !important;
  width: 100%;
  height: auto !important;
  border: 2px solid #A8A8A8;
  border-color: var(--border-form);
  border-width: var(--border-form-width);
  border-radius: 0;
  background: url(icon-form-arrow_dd99.svg) right center no-repeat;
  background-color: #f2f2f2;
  background-color: var(--bg-form-content);
  color: #000;
  color: var(--text-color);
  font-size: 100%;
  line-height: 1.5rem !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.c-form-standard select:focus {
  border-color: #000;
  border-color: var(--border-form-focus);
  outline: none;
}

.c-form-standard select option {
  padding: 0;
  outline: none;
}

.c-form-standard select::-ms-expand {
  display: none;
}

.c-form-standard select:disabled::-ms-expand {
  color: #ccc;
  color: var(--form-disabled);
}

.c-form-standard select:disabled,
.c-form-standard select[disabled] {
  color: #ccc;
  color: var(--form-disabled);
  border-color: #ccc;
  border-color: var(--form-disabled);
}

/* ==========================================================================
   c-form-newsletter
   ========================================================================== */
.c-form-newsletter input + .c-btn-secondary {
  margin-top: 1em;
}

.c-form-newsletter input::placeholder {
  color: var(--text-color-light);
  opacity: 1;
}

@media only screen and (min-width: 650px) {
  .c-form-newsletter input[type=email] {
    width: 100%;
    max-width: 360px;
  }
  .c-form-newsletter input + .c-btn-secondary {
    margin-top: 0;
    margin-left: 8px;
  }
}
/* ==========================================================================
   wp7 error / ok message
   ========================================================================== */
.c-form-standard .wpcf7-response-output,
.c-form-standard .wpcf7 form .wpcf7-response-output {
  /*display: block;*/
  background-color: #1D1D1B;
  background-color: var(--form-initial);
  padding: 1.5em 30px;
  padding: var(--padding-box-small);
  border-radius: var(--border-radius-box);
  color: #fff;
  color: var(--text-color-light);
  margin: 0 0 3em 0;
  margin-bottom: var(--spacing-m);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  border: none;
}

.c-form-standard .wpcf7-not-valid-tip,
.c-form-standard .screen-reader-response,
.c-form-standard .wpcf7-response-output {
  font-size: var(--font-size-body-s);
}

/* error */
.c-form-standard .wpcf7-not-valid-tip,
.c-form-standard .screen-reader-response {
  color: #dd0000;
  color: var(--form-error);
}

.c-form-standard .wpcf7-not-valid-tip {
  display: block;
  padding-top: 0.35em;
}

.c-form-standard input.wpcf7-not-valid {
  border-color: #dd0000;
  border-color: var(--form-error);
}

.c-form-standard .wpcf7 form.invalid .wpcf7-response-output,
.c-form-standard .wpcf7 form.failed .wpcf7-response-output,
.c-form-standard .wpcf7 form.aborted .wpcf7-response-output {
  background-color: #dd0000;
  background-color: var(--form-error);
}

/* ok */
.c-form-standard .wpcf7 form.sent .wpcf7-response-output {
  background-color: #68c388;
  background-color: var(--form-ok);
}

/* ==========================================================================
   wp7 spinner
   ========================================================================== */
form.submitting .wpcf7-spinner {
  visibility: visible;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.c-form-standard .wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  margin: -4px 24px;
  background: none;
  width: 24px;
  height: 24px;
  border: 2px solid rgba(29, 29, 27, 0.3);
  border-radius: 50%;
  border-top-color: #e20040;
  border-top-color: var(--color-highlight);
  animation: spin 1s linear infinite;
  -webkit-animation: spin 1s linear infinite;
  opacity: 1;
}

.c-form-standard .wpcf7-spinner::before {
  background: none;
  width: 0;
  height: 0;
}

.c-live-search {
  position: relative;
  width: 100%;
}
.c-live-search__results {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  /*
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  */
  z-index: 100;
  max-height: 450px;
  border: 1px solid rgba(0, 0, 0, 0.05);
}
.c-live-search__results.is-active {
  display: block;
}
.c-live-search__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-live-search__item {
  border-bottom: 1px solid #f0f0f0;
}
.c-live-search__item:last-child {
  border-bottom: none;
}
.c-live-search__link {
  display: flex;
  align-items: center;
  padding: 12px 20px;
  text-decoration: none;
  color: var(--text-color) !important;
  transition: all 0.2s ease-in-out;
  background: transparent !important;
  background-image: none !important;
}
.c-live-search__link:hover {
  background-color: #f8f9fa !important;
  color: var(--color-highlight) !important;
  background-image: none !important;
}
.c-live-search__img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  margin-right: 15px;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  flex-shrink: 0;
}
.c-live-search__title {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
}
.c-live-search__no-result {
  padding: 20px;
  font-size: 14px;
  color: #999;
  text-align: center;
}

/* ==========================================================================
   Accordion
   ========================================================================== */
.c-accordion-container {
  position: relative;
  width: 100%;
  border-top: 1px solid #C4C4C4;
  border-bottom: 1px solid #C4C4C4;
  border-color: var(--border-basic);
}

.c-accordion-container + .c-accordion-container {
  border-top: none;
}

.c-accordion-title {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 0.85rem 0 0.85rem var(--accordion-icon-padding);
  transition: color 0.2s ease-in-out;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
  letter-spacing: var(--letter-spacing);
  color: #e20040;
  color: var(--color-highlight);
  background-color: transparent;
  transition: all 0.2s ease-out;
}

.c-accordion-title:hover {
  /*color: $color-highlight;
     color: var(--color-highlight);*/
  background-color: var(--bg-light);
}

.c-accordion-check {
  position: absolute;
  left: -9999px;
}

/* ==========================================================================
   Accordion Icon Check plus/minus
   ========================================================================== */
.c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after,
.c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 1.3em;
}

.c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after {
  left: 2px;
  margin-top: var(--plus-stroke-position);
  width: var(--plus-length);
  height: var(--plus-stroke);
  background-color: var(--color-highlight);
}

.c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before {
  left: calc(var(--plus-stroke-position) + 2px);
  width: var(--plus-stroke);
  height: var(--plus-length);
  background-color: transparent;
  transition: all 0.2s ease-in-out;
}

.c-accordion-check:not(:checked) + label::before {
  background-color: var(--color-highlight);
}

@media only screen and (max-width: 767px) {
  .c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after,
.c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before {
    top: 1.15em;
  }
}
/* ==========================================================================
   Content
   ========================================================================== */
.c-accordion-content {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
}

.c-accordion-inner {
  padding: 0.5em 0 var(--spacing-s) var(--accordion-icon-padding);
}

.c-accordion-check:checked ~ .c-accordion-content {
  max-height: 9999px;
  transition: max-height 0.3s cubic-bezier(1, 0, 1, 0);
}

/* ==========================================================================
   Slider 
   ========================================================================== */
.c-slider-container {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-bottom: var(--spacing-l);
}

.c-slider {
  overflow: visible;
  padding-top: 8px;
  padding-bottom: 8px;
}

/* ==========================================================================
   Slider Items
   ========================================================================== */
.c-slider-items {
  position: relative;
  overflow: visible;
}

/* Product page sliders: keep container width for measurements/controls. Visual overflow
   is handled by JS via `.c-slider-items { overflow: visible }` on this variant. */
.c-slider-product-bleed .c-slider-items {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.c-slider-items-list {
  display: flex;
  flex-flow: row;
  margin: 0;
  padding: 0;
  list-style: none;
  margin-right: -10px;
  margin-left: -10px;
  margin-right: var(--grid-row);
  margin-left: var(--grid-row);
  transform: translateX(0px);
}

.c-slider-items-list li {
  display: flex;
  flex-flow: column;
  position: relative;
  min-height: 1px;
  padding-right: 10px;
  padding-left: 10px;
  padding-right: var(--grid-col);
  padding-left: var(--grid-col);
}

.c-slider-items-list .c-teaser-item {
  width: 270px;
}

/*
@media only screen and (max-width:1200px) {  
    .c-slider-items-list .c-teaser-item {
        width: 335px;
    }
}

@media only screen and (max-width:768px) {  
    .c-slider-items-list .c-teaser-item {
        width: 300px;
    }
}*/
/* ==========================================================================
   Slider Control
   ========================================================================== */
.c-slider-controls {
  position: relative;
  margin-top: calc(var(--grid-container) + 22px);
}

/* If everything fits in the viewport, hide disabled slider controls entirely. */
.c-slider[data-slider-has-overflow="0"] .c-slider-controls {
  display: none;
}

.c-slider-scrollbar {
  position: relative;
  margin-right: 112px;
  height: 6px;
  border-radius: 3px;
  background-color: var(--bg-light);
}

.c-slider-scrollbar-handle {
  position: absolute;
  top: 0;
  left: 0;
  height: 6px;
  width: 15vw;
  border-radius: 3px;
  background-color: var(--border-basic);
}

/* ==========================================================================
   Slider paging product gallery
   ========================================================================== */
.c-product-gallery-slider-controls {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
  bottom: calc(var(--spacing-s) + 20px);
}

.c-product-gallery-paging-list {
  display: flex;
  flex-flow: row;
  margin: 0;
  padding: 0;
  list-style: none;
  justify-content: center;
}

.c-product-gallery-paging-list li {
  padding: 0 4px;
}

.c-product-gallery-paging-dot {
  display: block;
  position: relative;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--bg-content);
  overflow: hidden;
  text-indent: 100%;
}

.c-active .c-product-gallery-paging-dot {
  background-color: var(--color-highlight);
}

/* ==========================================================================
   Product Gallery Swipe (Mobile Only)
   ========================================================================== */
@media screen and (max-width: 768px) {
  .c-product-gallery-slider-controls {
    display: block !important;
  }
  .c-product-gallery-list {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; /* Firefox */
    /* Safari/Chrome */
  }
  .c-product-gallery-list::-webkit-scrollbar {
    display: none;
  }
  .c-product-gallery-list li {
    flex: 0 0 100% !important;
    scroll-snap-align: center !important;
  }
}
/* ==========================================================================
   compare sidebar body no scroll
   ========================================================================== */
.c-sidebar-compare-open {
  position: relative;
  top: auto;
  height: auto;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  transition: opacity 0.4s ease-in;
}

.c-sidebar-compare-open::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--bg-dark);
  opacity: 0.8;
  z-index: 11;
}

/* ==========================================================================
   compare sidebar container
   ========================================================================== */
.c-sidebar-compare {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #fff;
  background-color: var(--bg-light);
  color: var(--text-color);
  z-index: 12;
  width: 0;
  height: 100vh;
  overflow-y: auto;
  /*transform: translate3d(540px, 0px, 0px);*/
  transform: translateZ(0);
  transition: all 0.6s ease-out;
}

#sidebar-compare[type=checkbox]:not(:checked) .c-sidebar-compare {
  border: 0;
  clip: rect(0 0 0 0);
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 0;
  /*    transform: translate3d(540px, 0px, 0px); */
  transform: translateZ(0);
  white-space: nowrap;
}

#sidebar-compare[type=checkbox] {
  display: none;
}
#sidebar-compare[type=checkbox]:checked ~ .c-sidebar-compare {
  width: 540px;
  height: 100vh;
  overflow-y: auto;
  /*transform: translate3d(0px, 0px, 0px);*/
  transform: translateZ(0);
}

/* ==========================================================================
  compare sidebar inner
   ========================================================================== */
.c-sidebar-compare-inner {
  position: relative;
  width: 100%;
  min-height: 100vh;
  width: 540px;
  overflow-y: auto;
  padding: 70px var(--grid-container);
  border-left: solid 1px #C4C4C4;
  border-color: var(--border-basic);
}

.c-sidebar-compare-trigger-close {
  display: block;
}

.c-compare-item {
  display: flex;
  flex-flow: row;
  position: relative;
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-color);
}

.c-compare-item:first-of-type {
  border-top: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-color);
}

.c-compare-item + p {
  margin-top: 1.5em;
}

.c-compare-item-img {
  width: 100px;
}

.c-compare-item-text {
  padding: 0.85em 50px 0.85em 20px;
}

/* ==========================================================================
  compare content
   ========================================================================== */
.c-compare-row {
  position: relative;
  padding-top: 0.85em;
  padding-bottom: 0.85em;
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
  font-size: var(--font-size-body-s);
}

.c-compare-section-title {
  padding-top: var(--spacing-l);
  border-bottom: solid 1px #C4C4C4;
  border-width: var(--border-width);
  border-color: var(--border-basic);
}

.c-compare-img {
  max-width: 250px;
  margin: 0 auto;
}

.c-compare-row-header .c-col-4 {
  display: flex;
  flex-flow: column;
}

.c-compare-row-header-sticky {
  position: fixed;
  top: 0;
  left: var(--grid-container);
  z-index: 10;
  width: calc(100% - var(--grid-container) * 2);
}

/* sticky header */
.c-compare-row-header-sticky .c-box {
  opacity: 0.9;
}

.c-compare-row-header-sticky .c-compare-img,
.c-compare-row-header-sticky .c-btn-delete {
  display: none;
}

.c-compare-row-header-sticky .c-h3 {
  font-size: var(--font-size-body-s);
}

/* styles for every project */
/* ==========================================================================
   Viewport
   ========================================================================== */
@-ms-viewport {
  width: device-width;
}
/* ==========================================================================
   Mediaqueries
   ========================================================================== */
@media only screen and (min-width: 1330px) {
  /* container max width */
  .c-container {
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-teaser-big-container,
.c-product-container {
    max-width: 1700px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-teaser-big-container .c-asym-right-edgeless,
.c-teaser-big-container .c-asym-left-edgeless,
.c-product-container .c-asym-left-edgeless {
    max-width: none;
    width: calc(660px + 50%);
  }
  .c-asym-right-edgeless {
    margin-right: 0;
  }
  .c-asym-left-edgeless,
.c-asym-left-edgeless {
    margin-left: 0;
  }
  .c-teaser-big .c-asym-col-grid,
.c-product .c-asym-col-grid {
    flex: 0 0 calc(264px + var(--grid-col) * 11);
    max-width: calc(264px + var(--grid-col) * 11);
  }
  .c-teaser-big .c-asym-col-edgeless,
.c-product .c-asym-col-edgeless {
    flex: 0 0 calc(100% - (264px + var(--grid-col) * 11));
    max-width: calc(100% - (264px + var(--grid-col) * 11));
  }
  .c-compare-row-header-sticky {
    left: 50%;
    margin-left: calc((660px - var(--grid-container)) * -1);
    max-width: calc(1320px - var(--grid-container) * 2);
  }
}
@media only screen and (max-width: 1100px) {
  .c-text-img .c-col-8,
.c-text-img .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-contact-form .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
}
@media only screen and (max-width: 980px) {
  .c-footer-main .c-col-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-footer-nl .c-col-9,
.c-footer-nl .c-col-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-footer-nl .c-col-9 {
    padding-bottom: var(--spacing-s);
  }
  .c-footer-main-item {
    padding-left: 0;
    padding-top: var(--padding-left-small);
    border-left: none;
    border-top: 1px solid #C4C4C4;
    border-color: var(--border-basic);
    border-width: var(--border-width);
    padding-bottom: var(--spacing-s);
  }
  .c-teaser-3col .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-teaser-big .c-col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .c-teaser-big .c-col-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .c-teaser-big .c-box {
    margin-top: calc(var(--grid-container) * -2);
  }
  .c-teaser-big-container .c-asym-left-edgeless .c-col-5 {
    margin-left: auto;
  }
  .c-teaser-big-container .c-asym-right-edgeless .c-col-5 {
    margin-right: auto;
  }
  .c-teaser-big-container .c-asym-left-edgeless .c-teaser-big-img {
    margin-right: 0;
  }
  .c-teaser-big-container .c-asym-right-edgeless .c-teaser-big-img {
    margin-left: 0;
  }
  .c-product .c-col-7,
.c-product .c-col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
}
/* header show offcanvas */
@media only screen and (max-width: 980px) {
  .c-offcanvas-trigger-open {
    display: block;
  }
  .c-main-nav,
.c-header-meta {
    display: none;
  }
  .c-header-helper-list {
    margin-right: 40px;
  }
  .c-header-logo {
    width: 80px;
    height: 46px;
  }
  .c-header-search-content {
    right: calc(var(--grid-container) + 40px);
    width: calc(100% - (var(--grid-container) * 2 + 40px));
  }
}
@media only screen and (max-width: 900px) {
  .c-technical-info .c-col-3,
.c-technical-info .c-col-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-technical-info .c-col-3 {
    padding-bottom: 0.5em;
  }
}
@media only screen and (max-width: 850px) {
  .c-text-only .c-col-8,
.c-main-title .c-col-8,
.c-section-title .c-col-8,
.c-contact-form .c-col-6 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .c-showroom-text .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
}
@media only screen and (min-width: 768px) {
  .c-text-block .c-cookie-notice-list li {
    display: block;
    padding-right: 0;
  }
  .c-cookie-notice .c-btn {
    display: block;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .c-text-only .c-col-8,
.c-main-title .c-col-8,
.c-section-title .c-col-8,
.c-text-img .c-col-8,
.c-text-img .c-col-4,
.c-contact-form .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-text-img .c-col-8 {
    padding-bottom: var(--spacing-s);
  }
  .c-footer-disclaimer .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    text-align: left;
  }
  .c-footer-disclaimer-list {
    padding-bottom: 1em;
  }
  .c-footer-disclaimer-list li,
.c-footer-disclaimer-list > li + li {
    padding-left: 0;
    padding-right: 1.5em;
    padding-bottom: 0.5em;
  }
  .c-showroom-text .c-row {
    align-items: flex-end;
  }
  .c-showroom-text .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-compare-row-header .c-col-4,
.c-compare-row .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-compare-row-header .c-col-4:nth-child(3),
.c-compare-row .c-col-4:nth-child(3) {
    display: none;
  }
  .c-compare-row-header .c-h3 {
    font-size: var(--font-size-body-xs);
  }
  .c-compare-row {
    font-size: var(--font-size-body-xs);
  }
}
@media only screen and (min-width: 651px) and (max-width: 820px) {
  .c-keyfacts-list dt,
.c-keyfacts-list dd {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-keyfacts-list dt {
    padding-bottom: 0;
  }
  .c-product-links-list li {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-product-links-list li + li {
    padding-top: 0.5em;
  }
}
@media only screen and (min-width: 651px) {
  .c-product-info h1 {
    margin-top: -0.25em;
  }
  .c-teaser-contact-icon {
    flex: 0 0 25%;
    max-width: 25%;
    padding-right: var(--grid-col);
  }
  .c-teaser-contact-text {
    flex: 0 0 75%;
    max-width: 75%;
    padding-left: var(--grid-col);
  }
}
@media only screen and (max-width: 650px) {
  .c-teaser-big .c-col-7,
.c-teaser-big .c-col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .c-img-2col .c-col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-img-2col .c-col-6 + .c-col-6 {
    padding-top: var(--spacing-l);
  }
  .c-product .c-col-7,
.c-product .c-col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-product-container .c-asym-left-edgeless .c-product-images {
    margin-right: calc(var(--grid-container) * -1);
    overflow: hidden;
    margin-bottom: var(--spacing-s);
  }
  .c-product-gallery-list {
    display: flex;
    flex-flow: row;
    transform: translateX(0px);
    grid-gap: 0;
  }
  .c-product-gallery-list li {
    display: flex;
    flex-flow: column;
    position: relative;
    flex: 0 0 100vw;
    max-width: 100vw;
  }
  .c-product-gallery-main .c-product-gallery-item {
    height: 100vw;
  }
  .c-product-gallery-slider-controls {
    display: block;
  }
  .c-teaser-contact-icon {
    max-width: 120px;
    padding-bottom: 1.5em;
    padding-bottom: var(--spacing-s);
  }
  .c-sidebar-compare-inner {
    width: 100vw;
    border-left: 0;
  }
  #sidebar-compare[type=checkbox]:checked ~ .c-sidebar-compare {
    width: 100vw;
  }
}
@media only screen and (max-width: 580px) {
  .c-teaser-3col .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 539px) {
  .c-footer-main .c-col-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-teaser-big .c-col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-teaser-big .c-box {
    margin-top: calc(var(--grid-container) * -1);
  }
  .c-technical-list dt,
.c-technical-list dd {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-technical-list dt {
    border-bottom: none;
    padding-bottom: 0;
  }
  .c-technical-list dd {
    padding-top: 0;
  }
  .c-keyfacts-list dt,
.c-keyfacts-list dd {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-keyfacts-list dt {
    padding-bottom: 0;
  }
  .c-text-block .c-cookie-notice-list li {
    display: block;
    padding-right: 0;
  }
  .c-cookie-notice .c-btn {
    display: block;
    width: 100%;
  }
}
@media only screen and (max-width: 470px) {
  .c-product-links-list li {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-product-links-list li + li {
    padding-top: 0.5em;
  }
}
/* ==========================================================================
   Print CSS
   ========================================================================== */
@media print {
  /* base styles */
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
a:visited {
    text-decoration: underline;
  }
  .c-ir a:after,
a[href^="javascript:"]:after,
a[href]:after {
    content: none !important;
  }
  pre,
blockquote {
    border: none;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
h3 {
    break-after: avoid;
    page-break-after: avoid;
  }
  /* font-sizes */
  html,
body {
    width: 100%;
    height: auto;
    /*overflow: auto;*/
  }
  body {
    font-size: 12px;
  }
  h1, .c-h1 {
    font-size: 24px;
  }
  .c-lead,
.c-text-block .c-lead,
h2, .c-h2,
h3, .c-h3,
.c-text-block blockquote p {
    font-size: 16px;
  }
  /* project styles */
  .c-container {
    padding-bottom: 2em;
  }
  .c-footer {
    display: none;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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O0VBSUMsV0pMaUI7RUlNZDtFQUNIO0FOeS9CRDs7QU10L0JBOztFQUVDO0FOeS9CRDs7QU10L0JBO0VBQ0k7QU55L0JKOztBTXIvQkE7OytFQUFBO0FBS0E7OztFQUdDLFdKOUJZO0VJK0JUO0FOcy9CSjs7QU1uL0JBO0VBQ0M7QU5zL0JEOztBTWwvQkE7OytFQUFBO0FBSUE7Ozs7O0VBS0k7QU5vL0JKOztBTWovQkE7RUFDSTtBTm8vQko7O0FNai9CQTs7RUFFQztFQUNBO0FOby9CRDs7QU1qL0JBO0VBQ0M7QU5vL0JEOztBT2xrQ0E7OytFQUFBO0FBSUE7Ozs7O0VBS0k7RUFDQTtFQUNBO0FQb2tDSjs7QU9qa0NBOzsrRUFBQTtBQUlBO0VBQ0Msb0JMY1c7RUtiUjtBUG1rQ0o7O0FPaGtDQTtFQUNJLG1CTFdRO0VLVlI7QVBta0NKOztBT2hrQ0E7RUFDQztFQUNHO0FQbWtDSjs7QU9oa0NBO0VBQ0k7QVBta0NKOztBT2hrQ0E7OztFQUdJO0VBQ0E7QVBta0NKOztBT2hrQ0E7OztFQUdJO0VBQ0E7RUFDQTtFQUNBO0FQbWtDSjs7QU9oa0NBOztFQUVDO0FQbWtDRDs7QU9oa0NBO0VBQ0Msc0JMeEJXO0VLeUJSO0FQbWtDSjs7QU9oa0NBO0VBQ0k7RUFDQTtBUG1rQ0o7O0FPaGtDQTtFQUNJO0FQbWtDSjs7QU9oa0NBO0VBQ0k7QVBta0NKOztBT2hrQ0E7RUFDSTtBUG1rQ0o7O0FPaGtDQTs7K0VBQUE7QUFJQTtFQUNJLGtCTDlDYTtFSytDYixtQkwvQ2E7RUtnRGI7RUFDQTtBUGtrQ0o7O0FPL2pDQTtFQUNJLG1CTHBETztFS3FEUCxrQkxyRE87RUtzRFA7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0k7RUFDSTtBUGtrQ1o7O0FPL2pDQTtFQUNJO0FQa2tDSjs7QU8vakNBO0VBQ0k7QVBra0NKOztBTy9qQ0E7RUFDSTtBUGtrQ0o7O0FPL2pDQTtFQUNJO0FQa2tDSjs7QU8vakNBO0VBQ0k7QVBra0NKOztBTy9qQ0E7RUFDSTtBUGtrQ0o7O0FPL2pDQTtFQUNJO0FQ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RUFDQTtFQUNIO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDQTs7NENBQUE7QVJrM0NKOztBUTcyQ0E7RUFDQztBUmczQ0Q7O0FRNzJDQTtFQUNDO0FSZzNDRDs7QVE3MkNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdONU9ZO0VNNk9UO0VBQ0g7RUFDRztFQUNIO0FSZzNDRDs7QVE3MkNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmczQ0o7O0FRNzJDQTtFQUNJO0VBQ0E7QVJnM0NKOztBUTcyQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJnM0NKOztBUTcyQ0E7RUFDSTtBUmczQ0o7O0FRNzJDQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmczQ0o7O0FRNzJDQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJnM0NKOztBUTcyQ0E7RUFDSTtFQUNBO0VBQ0E7QVJnM0NKOztBUTcyQ0E7RUFDSTtFQUNBO0FSZzNDSjs7QVE3MkNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVJnM0NKOztBUTcyQ0E7RUFDSTtBUmczQ0o7O0FRNzJDQTs7RUFFSTtFQUNBO0FSZzNDSjs7QVE1MkNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVIrMkNKOztBUTUyQ0E7RUFDSTtFQUNBO0FSKzJDSjs7QVE1MkNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUisyQ0o7O0FRNTJDQTtFQUNJO0VBQ0E7RUFDQTtBUisyQ0o7O0FRNTJDQTs7K0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtBUjgyQ0o7O0FRMzJDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSODJDSjs7QVEzMkNBO0VBQ0kseUJOeFdjO0VNeVdkO0FSODJDSjs7QVEzMkNBO0VBQ0kseUJONVdzQjtFTTZXdEI7QVI4MkNKOztBUTMyQ0E7RUFDSSx5Qk5oWGlCO0VNaVhqQjtBUjgyQ0o7O0FRMzJDQTs7K0VBQUE7QUFJQTtFQUNDO0VBQ0E7QVI2MkNE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cUI1eklBO0VBQ0M7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQjh6SUE7RXFCM3pJRTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RXJCNnpJQTtFcUIxeklFO0lBQ0k7RXJCNHpJTjtFcUJ6eklFOztJQUVJO0lBQ047RXJCMnpJQTtFcUJ4eklFO0lBQ0k7SUFDQTtFckIweklOO0VxQnZ6SUU7SUFDSTtFckJ5eklOO0VxQnR6SUU7O0lBRUk7SUFDTjtFckJ3eklBO0VxQnJ6SUU7SUFDSTtFckJ1eklOO0VxQnB6SUU7SUFDSTtJQUNBO0VyQnN6SU47RXFCbnpJRTtJQUNJO0lBQ0E7RXJCcXpJTjtBQUNGO0FxQmx6SUE7RUFDSTtJQUNJO0lBQ047RXJCb3pJQTtFcUJqeklFO0lBQ0k7RXJCbXpJTjtBQUNGO0FzQnJ6SkE7OytFQUFBO0FBR0E7RUFDSTtFQUNBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXRCdXpKTjtFc0JwekpEOztJQUVPO0V0QnN6Sk47RXNCbnpKRTs7O0lBR0Y7RXRCcXpKQTtFc0JsekpFOztJQUVJO0lBQ0E7RXRCb3pKTjtFc0JqekpFO0lBQ0k7RXRCbXpKTjtFc0JoekpFOztJQUVJO0V0Qmt6Sk47RXNCL3lKRTtJQUNJO0V0Qml6Sk47RXNCOXlKRTtJQUNJO0V0Qmd6Sk47RXNCN3lKRTs7O0lBR0k7SUFDQTtFdEIreUpOO0VzQjV5SkU7O0lBRUk7SUFDQTtFdEI4eUpOO0VzQjN5SkU7RUFFSDs7SUFFQztJQUNBO0lBQ0E7RXRCNHlKQTtFc0J6eUpFO0lBQ0k7RXRCMnlKTjtFc0J4eUpEO0lBQ0M7RXRCMHlKQTtFc0J2eUpEOzs7OztJQUtDO0V0Qnl5SkE7RXNCdHlKRDtFQUNBO0lBQ0M7RXRCd3lKQTtFc0JyeUpEO0lBQ0M7RXRCdXlKQTtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvbWFpbi5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21tb24vX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9faGVscGVycy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX29mZmNhbnZhcy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fY29udGVudGVsZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2J1dHRvbi1saW5rcy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19yYXRpb2JveC5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2xpdmUtc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fY29tcGFyZS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19yZXNwb25zaXZlLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3ByaW50LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU2V0dGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgXCIuLi9mb250cy9pbmxpbmVGb250cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tbW9uL19mb250c1wiO1xuQGltcG9ydCBcImNvbW1vbi9fdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiY29tbW9uL19ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJjb21tb24vX21peGluc1wiO1xuQGltcG9ydCBcImNvbW1vbi9faGVscGVyc1wiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogc3R5bGVzIGZvciBldmVyeSBwcm9qZWN0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYmFzZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2dyaWRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL190eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faGVhZGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9vdGVyXCI7XG5cbi8qIG9wdGlvbmFsIHN0eWxlcyAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvX29mZmNhbnZhc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RhYmxlc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2NvbnRlbnRlbGVtZW50c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2J1dHRvbi1saW5rc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3JhdGlvYm94XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGl2ZS1zZWFyY2hcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hY2NvcmRpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zbGlkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jb21wYXJlXCI7XG5cblxuLyogc3R5bGVzIGZvciBldmVyeSBwcm9qZWN0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcmVzcG9uc2l2ZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3ByaW50XCI7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByb2plY3QgRm9udHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuICAgLyoqXG4gICAgKiBAbGljZW5zZVxuICAgICogTXlGb250cyBXZWJmb250IEJ1aWxkIElEIDQzNTEzMzEsIDIwMjItMDItMDdUMDI6MjQ6MjgtMDUwMFxuICAgICpcbiAgICAqIFRoZSBmb250cyBsaXN0ZWQgaW4gdGhpcyBub3RpY2UgYXJlIHN1YmplY3QgdG8gdGhlIEVuZCBVc2VyIExpY2Vuc2VcbiAgICAqIEFncmVlbWVudChzKSBlbnRlcmVkIGludG8gYnkgdGhlIHdlYnNpdGUgb3duZXIuIEFsbCBvdGhlciBwYXJ0aWVzIGFyZVxuICAgICogZXhwbGljaXRseSByZXN0cmljdGVkIGZyb20gdXNpbmcgdGhlIExpY2Vuc2VkIFdlYmZvbnRzKHMpLlxuICAgICpcbiAgICAqIFlvdSBtYXkgb2J0YWluIGEgdmFsaWQgbGljZW5zZSBhdCB0aGUgVVJMcyBiZWxvdy5cbiAgICAqXG4gICAgKiBXZWJmb250OiBUaGVTYW5zLUxpZ2h0IGJ5IEx1Y2FzRm9udHNcbiAgICAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvbHVjYXNmb250cy90aGVzYW5zL2xpZ2h0L1xuICAgICpcbiAgICAqIFdlYmZvbnQ6IFRoZVNhbnMtQm9sZCBieSBMdWNhc0ZvbnRzXG4gICAgKiBVUkw6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL2ZvbnRzL2x1Y2FzZm9udHMvdGhlc2Fucy9ib2xkL1xuICAgICpcbiAgICAqXG4gICAgKiBXZWJmb250cyBjb3B5cmlnaHQ6IENvcHlyaWdodCAxOTk0LTIwMjEgTHVjKGFzKSBkZSBHcm9vdCwgcHVibGlzaGVkIGJ5IEx1Y2FzRm9udHMsIHd3dy5sdWNhc2ZvbnRzLmNvbSAgQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICAqXG4gICAgKiDCqSAyMDIyIE15Rm9udHMgSW5jXG4gICAqL1xuXG4gICAvL0Bmb250LWZhY2Uge1xuXHQvL1x0Zm9udC1mYW1pbHk6ICdUaGVTYW5zJztcblx0Ly9cdGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG5cdC8vXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdC8vXHRmb250LXdlaWdodDogMzAwO1xuXHQvL1x0Zm9udC1zdHJldGNoOiBub3JtYWw7XG5cdC8vXHRzcmM6IFx0dXJsKCR3ZWJmb250LWxhbnotYXJjaGl0ZWt0ZW5fbGlnaHRfd29mZjIpIGZvcm1hdCgnd29mZjInKSxcblx0Ly9cdFx0XHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9saWdodF93b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbiAgIC8vfVxuICAgLy9cbiAgIC8vQGZvbnQtZmFjZSB7XG5cdC8vXHRmb250LWZhbWlseTogJ1RoZVNhbnMnO1xuXHQvL1x0Zm9udC1kaXNwbGF5OiBmYWxsYmFjaztcblx0Ly9cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Ly9cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdC8vXHRmb250LXN0cmV0Y2g6IG5vcm1hbDtcblx0Ly9cdHNyYzogXHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9ib2xkX3dvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG5cdC8vXHRcdFx0dXJsKCR3ZWJmb250LWxhbnotYXJjaGl0ZWt0ZW5fYm9sZF93b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbiAgIC8vfVxuXG5cbi8qIHZpZXRuYW1lc2UgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdS1wXzBxaXotYWZUZjJJQUxUNEVZRk9HRUgud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdS1wXzBxaXotYWZUZjJJUUxUNEVZRk9HRUgud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG59XG4vKiBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1LXBfMHFpei1hZlRmMkx3TFQ0RVlGT0Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG4vKiB2aWV0bmFtZXNlICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNdWxpJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tdWxpL3YzNC83QXUtcF8wcWl6LWFmVGYySUFMVDRFWUZPR0VILndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xufVxuLyogbGF0aW4tZXh0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNdWxpJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tdWxpL3YzNC83QXUtcF8wcWl6LWFmVGYySVFMVDRFWUZPR0VILndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdS1wXzBxaXotYWZUZjJMd0xUNEVZRk9BLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuLyogdmlldG5hbWVzZSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTXVsaSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbXVsaS92MzQvN0F1d3BfMHFpei1hZlQzR0xRalV3a1ExT1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUekdMUWpVd2tRMU9RLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ011bGknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL211bGkvdjM0LzdBdXdwXzBxaXotYWZUTEdMUWpVd2tRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xufVxuIiwiLyogVmFyaWFibGVzLCBOYW1pbmcgbWF5IHZhcnkgZnJvbSBwcm9qZWN0IHRvIHByb2plY3QgKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvbnRzIChzZWUgJ19mb250cy5zY3NzJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBsaWNlbnNlKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogQGltcG9ydCBtdXN0IGJlIGF0IHRvcCBvZiBmaWxlLCBvdGhlcndpc2UgQ1NTIHdpbGwgbm90IHdvcmsgKi9cbi8qIEBpbXBvcnQgdXJsKCcvL2hlbGxvLm15Zm9udHMubmV0L2NvdW50LzQyNjU2MycpOyAqL1xuXG4kZm9udC1zdGFjay1kZWZhdWx0OiAnTXVsaScsICdBcmlhbCcsICdIZWx2ZXRpY2EnLCBzYW5zLXNlcmlmO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmFsbGJhY2tzIHNhc3MgVmFyaWFibGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiB0ZXh0ICovXG4kdGV4dC1jb2xvcjogIzAwMDsgLyogZGFyayBncmV5ICovXG4kdGV4dC1jb2xvci1saWdodDogI2ZmZjtcbiR0ZXh0LWNvbG9yLWxpbms6ICMwMDA7IC8qIGRhcmsgZ3JleSAqL1xuXG4vKiBiYWNrZ3JvdW5kICovXG4kYmctY29udGVudDogI2YyZjJmMjtcbiRiZy1kYXJrOiAjMDAwOyAvKiBkYXJrIGdyZXkgKi9cbiRiZy1saWdodDogI2ZmZjsgLyogbGlnaHQgZ3JleSAqL1xuJGNvbG9yLWhpZ2hsaWdodDogI2UyMDA0MDsgLyogcmVkICovXG4kY29sb3Itc3RhdHVzLW9rOiAjZTIwMDQwO1xuJGNvbG9yLXN0YXR1cy1jb21pbmdzb29uOiAjZmZhZDBhO1xuJGNvbG9yLXN0YXR1cy1ub3RvazogIzY4YzM4ODtcblxuLyogbGluZS1jb2xvcnMgKi9cbiRib3JkZXItYmFzaWM6ICNDNEM0QzQ7XG5cbi8qIHNwYWNpbmcgKi9cbiRzcGFjaW5nLWw6IDZyZW07XG4kc3BhY2luZy1tOiAzcmVtO1xuJHNwYWNpbmctczogMS41cmVtO1xuJHNwYWNpbmcteHM6IDAuNzVyZW07XG5cbi8qIGdyaWQgKi9cbiRncmlkLWNvbnRhaW5lcjogMjBweDtcbiRncmlkLXJvdzogLTEwcHg7XG4kZ3JpZC1jb2w6IDEwcHg7XG5cblxuLyogZm9ybSAqL1xuJGJvcmRlci1mb3JtOiAjQThBOEE4O1xuJGJvcmRlci1mb3JtLWZvY3VzOiAjMDAwO1xuJGZvcm0tZGlzYWJsZWQ6ICNjY2M7XG4kZm9ybS1lcnJvcjogI2RkMDAwMDtcbiRmb3JtLW9rOiAjNjhjMzg4O1xuJGZvcm0taW5pdGlhbDogIzFEMUQxQjtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ3VzdG9tIFByb3BlcnRpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuOnJvb3Qge1xuICAgIC8qIGZvbnRzICovXG4gICAgLS1mb250LXN0YWNrLWRlZmF1bHQ6ICdNdWxpJywgJ0FyaWFsJywgJ0hlbHZldGljYScsIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAgIC0tbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbiAgICBcbiAgICAvKiB0ZXh0ICAqL1xuICAgIC0tdGV4dC1jb2xvcjogIzc1NzU3NTsgLyogZ3JleSAqL1xuICAgIC0tdGV4dC1jb2xvci1tZWRpdW06ICM3NTc1NzU7XG4gICAgLS10ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjMDAwO1xuICAgIC0tdGV4dC1jb2xvci1kYXJrOiAjMDAwO1xuICAgIFxuICAgIC8qIGZvbnQtc2l6ZXMgKi9cbiAgICAtLWZvbnQtc2l6ZS1yb290OiAxOHB4O1xuICAgIC0tZm9udC1zaXplLWgxOiAyLjc3cmVtOyAvKiA1MHB4ICovXG4gICAgLS1mb250LXNpemUtaDI6IDEuNzdyZW07IC8qIDMycHggKi9cbiAgICAtLWZvbnQtc2l6ZS1oMzogMS4zM3JlbTtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1sZWFkOiAxLjMzcmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHktbDogMS4zM3JlbTtcbiAgICAtLWZvbnQtc2l6ZS1xdW90ZTogMS43N3JlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5OiAxcmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHktczogMC44OHJlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5LXhzOiAwLjc3cmVtO1xuICAgIFxuICAgIC8qIGNvbG9ycyAvIGJhY2tncm91bmQgKi9cbiAgICAtLWJnLWNvbnRlbnQ6ICNmMmYyZjI7IC8qIGxpZ2h0IGdyZXkgKi9cbiAgICAtLWJnLWRhcms6ICMwMDAwMDA7IC8qIGRhcmsgZ3JleSAqL1xuICAgIC0tYmctbGlnaHQ6ICNmZmZmZmY7IFxuICAgIC0tYmctYnV0dG9uOiAjMDAwMDAwO1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjZTIwMDQwOyAvKiByZWQgKi9cbiAgICAtLWNvbG9yLWRhcms6ICMwMDAwMDA7XG4gICAgLS1jb2xvci1zdGF0dXMtb2s6ICM2OGMzODg7XG4gICAgLS1jb2xvci1zdGF0dXMtY29taW5nc29vbjogI2ZkOWEzMDtcbiAgICAtLWNvbG9yLXN0YXR1cy1ub3RvazogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBcbiAgICAvKiBsaW5lcyAqL1xuICAgIC0tYm9yZGVyLWJhc2ljOiAjYzRjNGM0O1xuICAgIC0tYm9yZGVyLWxpZ2h0OiAjZTFlMWUxO1xuICAgIC0tYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLS1ib3JkZXItcmFkaXVzLWJveDogMjBweDtcbiAgICBcbiAgICAvKiBzcGFjaW5nIGJldHdlZW4gY29tcG9uZW50cyBiYXNlZCBvbiByZW0gKi9cbiAgICAtLXNwYWNpbmctbDogNnJlbTtcbiAgICAtLXNwYWNpbmctbTogM3JlbTsgXG4gICAgLS1zcGFjaW5nLXM6IDEuNXJlbTtcbiAgICAtLXNwYWNpbmcteHM6IDAuNzVyZW07ICAgIFxuICAgIFxuICAgIC0taGVhZGVyLWhlaWdodDogMTEwcHg7XG4gICAgXG4gICAgLS1wYWRkaW5nLWxlZnQtc21hbGw6IDI0cHg7XG4gICAgLS1wYWRkaW5nLWJveC1zbWFsbDogMS41ZW0gMzJweDtcbiAgICAtLXBhZGRpbmctYm94LXNtYWxsLXNlcGFyYXRlOiAzMnB4O1xuICAgIC0tcGFkZGluZy1ib3gtYmlnOiAyLjVlbSA1NHB4O1xuICAgICAgICBcbiAgICAvKiBhY2NvcmRpb24gKi9cbiAgICAtLXBsdXMtbGVuZ3RoOiAxMnB4O1xuICAgIC0tcGx1cy1zdHJva2U6IDJweDtcbiAgICAtLXBsdXMtc3Ryb2tlLXBvc2l0aW9uOiA1cHg7XG4gICAgLS1wbHVzLWljb24tcGFkZGluZzogMjRweDtcbiAgICAtLWFjY29yZGlvbi1pY29uLXBhZGRpbmc6IDI4cHg7XG4gICAgIFxuICAgIC8qIGdyaWQgKi9cbiAgICAtLWdyaWQtY29udGFpbmVyOiAyNHB4O1xuICAgIC0tZ3JpZC1yb3c6IC0xMnB4O1xuICAgIC0tZ3JpZC1jb2w6IDEycHg7XG4gICAgXG4gICAgLyogZm9ybSAqL1xuICAgIC0tYm9yZGVyLWZvcm06ICNjNGM0YzQ7IFxuICAgIC0tYm9yZGVyLWZvcm0tZm9jdXM6ICMwMDA7XG4gICAgLS1ib3JkZXItZm9ybS13aWR0aDogMXB4O1xuICAgIC0tZm9ybS1kaXNhYmxlZDogI2NjYztcbiAgICAtLWZvcm0tZXJyb3I6ICNlMjAwNDA7XG4gICAgLS1mb3JtLW9rOiAjNjhjMzg4O1xuICAgIC0tZm9ybS1pbml0aWFsOiAjMDAwO1xuICAgIC0tYmctZm9ybS1jb250ZW50OiAjZmZmO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRXhlcHRpb25zIGZvciBkaWZmZXJlbnQgYmFja2dyb3VuZHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtbGlnaHQge1xuICAgIC0tdGV4dC1jb2xvcjogI2ZmZjsgLyogZ3JleSAqL1xuICAgIC0tdGV4dC1jb2xvci1tZWRpdW06ICM4ODg7XG4gICAgLS10ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci1kYXJrOiAjZmZmO1xuICAgIC0tYm9yZGVyLWJhc2ljOiAjNDg0ODQ4O1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjZmZmO1xufVxuXG4uYy1saW5rLWFycm93LFxuLmMtbGluay1kb3dubG9hZCxcbi5jLWxpbmstZXh0ZXJuLFxuLmMtbGluay1iYWNrIHtcbiAgICAtLXRleHQtY29sb3ItbGluazogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYnJlYWRjcnVtYiBhIHtcbiAgICAtLXRleHQtY29sb3ItbGluazogdmFyKC0tdGV4dC1jb2xvci1tZWRpdW0pO1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiB2YXIoLS10ZXh0LWNvbG9yLWRhcmspO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bi1zZWNvbmRhcnkge1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjZmZmO1xuICAgIC0tYmctYnV0dG9uOiAjODg4O1xufVxuXG4uYy1mb290ZXIge1xuICAgIC5jLWZvcm0tc3RhbmRhcmQge1xuICAgICAgICAtLWJnLWZvcm0tY29udGVudDogIzE3MTcxNztcbiAgICAgICAgLS1ib3JkZXItZm9ybTogIzE3MTcxNztcbiAgICAgICAgLS1ib3JkZXItZm9ybS1mb2N1czogI2ZmZjtcbiAgICB9XG59XG5cblxuLmMtY29tcGFyZS1yb3ctaGVhZGVyLXN0aWNreSAuYy10ZWFzZXItaXRlbSB7XG4gICAgLS1ib3JkZXItcmFkaXVzLWJveDogMCAwIDIwcHggMjBweDtcbn1cblxuLmMtY29tcGFyZSB7XG4gICAgLS1wYWRkaW5nLWJveC1zbWFsbDogMC43NWVtIDMycHg7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJlc3BvbnNpdmUgQ3VzdG9tIFByb3BlcnRpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIC0tZ3JpZC1jb250YWluZXI6IDQ4cHg7XG4gICAgICAgIC0tZ3JpZC1yb3c6IC0yNHB4O1xuICAgICAgICAtLWdyaWQtY29sOiAyNHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEyMDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1wYWRkaW5nLWJveC1zbWFsbDogMS41ZW0gMjRweDtcbiAgICAgICAgLS1wYWRkaW5nLWJveC1zbWFsbC1zZXBhcmF0ZTogMjRweDtcbiAgICAgICAgLS1wYWRkaW5nLWJveC1iaWc6IDJlbSAzMnB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLXNwYWNpbmctbDogM3JlbTtcbiAgICAgICAgLS1zcGFjaW5nLW06IDEuNXJlbTsgXG4gICAgICAgIFxuICAgICAgICAtLWhlYWRlci1oZWlnaHQ6IDcwcHg7XG4gICAgICAgIFxuICAgICAgICAtLXBhZGRpbmctYm94LWJpZzogMS41ZW0gMjRweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo2MDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1ib3JkZXItcmFkaXVzLWJveDogMTZweDtcbiAgICB9XG4gICAgXG4gICAgXG4gICAgLmMtY29tcGFyZSB7XG4gICAgICAgIC0tcGFkZGluZy1ib3gtc21hbGw6IDAuNzVlbSAxNnB4O1xuICAgIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbn1cblxuLypcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFNi83IHdoZW4gYm9keSBmb250LXNpemUgaXMgc2V0IHVzaW5nIGVtIHVuaXRzXG4gKiAgICBodHRwOi8vY2xhZ251dC5jb20vYmxvZy8zNDgvI2M3OTBcbiAqIDIuIEtlZXBzIHBhZ2UgY2VudHJlZCBpbiBhbGwgYnJvd3NlcnMgcmVnYXJkbGVzcyBvZiBjb250ZW50IGhlaWdodFxuICogMy4gUHJldmVudHMgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb21cbiAqICAgIHd3dy40NTZiZXJlYXN0cmVldC5jb20vYXJjaGl2ZS8yMDEwMTIvY29udHJvbGxpbmdfdGV4dF9zaXplX2luX3NhZmFyaV9mb3JfaW9zX3dpdGhvdXRfZGlzYWJsaW5nX3VzZXJfem9vbS9cbiAqIDQuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5odG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogNCAqL1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgLyogMiAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG5cblxuICovXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgLyogY3ViZWdyYWZpayAqL1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAqL1xuXG5hIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdXRsaW5lYCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gQ2hyb21lIGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5hOmZvY3VzIHtcbiAgICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVHlwb2dyYXBoeVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qXG4qIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBzZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLypcbiAqIEltcHJvdmVzIHJlYWRhYmlsaXR5IG9mIHByZS1mb3JtYXR0ZWQgdGV4dCBpbiBhbGwgYnJvd3NlcnNcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIFNldCBjb25zaXN0ZW50IHF1b3RlIHR5cGVzLlxuICovXG5cbnEge1xuICAgIHF1b3RlczogXCJcXDIwMUNcIiBcIlxcMjAxRFwiIFwiXFwyMDE4XCIgXCJcXDIwMTlcIjtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG5cbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cblxuICovXG5cbnN1YixcbnN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZW1vdmVzIGJvcmRlciB3aGVuIGluc2lkZSAnYScgZWxlbWVudCBpbiBJRTYvNy84LzksIEZGM1xuICogMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRTdcbiAqICAgIGNvZGUuZmxpY2tyLmNvbS9ibG9nLzIwMDgvMTEvMTIvb24tdWktcXVhbGl0eS10aGUtbGl0dGxlLXRoaW5ncy1jbGllbnQtc2lkZS1pbWFnZS1yZXNpemluZy9cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cbn1cblxuLypcbiAqIENvcnJlY3RzIG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRTlcbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmlndXJlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpIDUuXG4gKi9cblxuZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ29ycmVjdHMgbWFyZ2luIGRpc3BsYXllZCBvZGRseSBpbiBJRTYvN1xuICovXG5cbmZvcm0ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLypcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZ1xuICovXG5cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6MDsgLyogY3ViZWdyYWZpayAqL1xuICAgIG1hcmdpbjowOyAvKiBjdWJlZ3JhZmlrICovXG4gICAgcGFkZGluZzowOyAvKiBjdWJlZ3JhZmlrICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICBib3JkZXI6IDA7XG59XG5cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuXG4gKiA0LiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnNcbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDQgKi9cbn1cblxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdHMgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmVzIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4gKiBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFNi5cbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xuICAgICpvdmVyZmxvdzogdmlzaWJsZTsgLyogNCAqL1xufVxuXG4vKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50c1xuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcblxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8qKlxuXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvKiAyICovXG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHNcbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFbGVtZW50cyBjdWJlZ3JhZmlrXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5hOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuXG5kaXYsIHAge1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46MDtcbn1cblxuaHIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICBtYXJnaW46IDFlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbnRoLCB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG59XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICAgIC8qIFJlbW92ZWQgYmVjYXVzZSBvZiB2aXNpYmlsaXR5Y2hhbmdlLWFkZGl0aW9uIHRvIGZhbmN5LWZvcm1zIHBsdWdpbi5cbiAgICAgKiAyMDE1LzAxLzIyIC0gRmxvcmlhbiBNw6RkZXJcbiAgICAgKiAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7Ki9cbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmh0bWwge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogU2FmYXJpIDMuMCAtIDUuMCwgQ2hyb21lIDEgLSA5LCBBbmRyb2lkIDIuMSAtIDMueCAqL1xuICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogRmlyZWZveCAxIC0gMjggKi9cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaSA1LjErLCBDaHJvbWUgMTArLCBGaXJlZm94IDI5KywgT3BlcmEgNyssIElFIDgrLCBBbmRyb2lkIDQuMCssIGlPUyBhbnkgKi9cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgICAgLW1vei1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxubGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiBJRSAxMCAgKi9cbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC8qIElFIDExKyAqL1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3JtIFBsYWNlaG9sZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgICAge0Bjb250ZW50fVxuICAgICY6LW1vei1wbGFjZWhvbGRlciAgICAgIHtAY29udGVudH1cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyICAgICB7QGNvbnRlbnR9XG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgICAgIHtAY29udGVudH0gIFxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9udHMgc21vb3RoaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcoJHZhbHVlOiBvbikge1xuICAgIEBpZiAkdmFsdWUgPT0gb24ge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEhpZGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaGlkZS12aXN1YWxseSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5jLWhpZGUtY29tcGxldGVseSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogaW1hZ2UgcmVwbGFjZW1lbnQgKi9cbi5jLWlyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJvcmRlcjogMDtcblx0dGV4dC1pbmRlbnQ6IC05OTllbTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGRpcmVjdGlvbjogbHRyO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdGlja3kgRm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5odG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jLWhlYWRlcixcbi5jLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5jLWNvbnRlbnQge1xuICAgIGZsZXgtZ3JvdzogMTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZSBQcm9qZWN0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ib2R5IHtcblx0QGluY2x1ZGUgZm9udC1zbW9vdGhpbmcob24pO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0Zm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3RhY2stZGVmYXVsdCk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIGxpbmtzICovXG5hLFxuYTp2aXNpdGVkLFxuYTpmb2N1cyxcbmE6aG92ZXIge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGluaztcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOmZvY3VzLFxuYTpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5wOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIGltZyAvIG1lZGlhIGRlY2xhcmF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5lbWJlZCxcbm9iamVjdCxcbnZpZGVvLFxuaWZyYW1lLFxuaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWltZy1tYXgtd2lkdGgsXG4uYy1jb250ZW50IC5jLWltZy1tYXgtd2lkdGgge1xuXHR3aWR0aDogYXV0bztcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcgeyBcblx0dmVydGljYWwtYWxpZ246IGJvdHRvbTsgXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RhbmRhcmQgTWFpbiBDb250YWluZXIgRGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWhlYWRlcixcbi5jLWNvbnRlbnQsXG4uYy1mb290ZXIsXG4uYy1jb250YWluZXIsXG4uYy1jb250YWluZXItd2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IGF1dG87XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdGFuZGFyZCBQYWRkaW5nIGJldHdlZW4gQ29tcG9uZW50cyBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRhaW5lciB7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1sO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1icmVhZGNydW1iIHtcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctcztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zKTtcbn1cblxuLmMtbWFpbi10aXRsZSB7XG5cdG1hcmdpbi10b3A6IDZlbTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1icmVhZGNydW1iICsgLmMtbWFpbi10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmMtc2hvd3Jvb20sXG4uYy1xdWlja25hdixcbi5jLXRleHQtaW1nLWRhcmsge1xuICAgIG1hcmdpbi1ib3R0b206IDZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1zaG93cm9vbS10ZXh0LWlubmVyLFxuLmMtcXVpY2tuYXYsXG4uYy10ZXh0LWltZy1kYXJrIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLW0pO1xufVxuXG4uYy1jb250YWluZXItbm8tcGFkZGluZyxcbi5jLXRleHQtaW1nLWRhcmsgLmMtY29udGFpbmVyIHtcblx0cGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5jLXNlY3Rpb24tdGl0bGUge1xuXHRwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctcztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbn1cblxuLmMtdGVhc2VyLTNjb2wgLmMtY29sLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG59XG5cbi5jLXRlYXNlci0zY29sIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLWwpIC0gdmFyKC0tZ3JpZC1jb250YWluZXIpKTtcbn1cblxuLmMtdGV4dC1vbmx5ICsgLmMtdGV4dC1vbmx5IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCh2YXIoLS1zcGFjaW5nLWwpIC0gMS41ZW0pICogLTEpO1xufVxuXG4uYy1zaG93cm9vbSArIC5jLXF1aWNrbmF2IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCh2YXIoLS1zcGFjaW5nLWwpKSAqIC0xKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIEdyaWQgRGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtY29udGFpbmVyO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbn1cblxuLmMtcm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtcm93O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uYy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uYy1yb3ctanVzdGlmeS1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYy1yb3ctanVzdGlmeS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4uYy1yb3ctanVzdGlmeS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5jLXJvdy1hbGlnbi10b3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYy1yb3ctYWxpZ24tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYy1yb3ctYWxpZ24tYm90dG9tIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5jLWNvbC0xLFxuLmMtY29sLTIsXG4uYy1jb2wtMyxcbi5jLWNvbC00LFxuLmMtY29sLTUsXG4uYy1jb2wtNixcbi5jLWNvbC03LFxuLmMtY29sLTgsXG4uYy1jb2wtOSxcbi5jLWNvbC0xMCxcbi5jLWNvbC0xMSxcbi5jLWNvbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1jb2wpO1xufVxuXG4uYy1jb2wtMTIge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAgICBcbn1cblxuLmMtY29sLTExIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclO1xufVxuXG4uYy1jb2wtMTAge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7XG59XG5cbi5jLWNvbC05IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDc1JTtcbiAgICAtbXMtZmxleDogMCAwIDc1JTtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xufVxuXG4uYy1jb2wtOCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTtcbn1cblxuLmMtY29sLTcge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7XG59XG5cbi5jLWNvbC02IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTtcbiAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xufVxuXG4uYy1jb2wtNSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTtcbn1cblxuLmMtY29sLTQge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7XG59XG5cbi5jLWNvbC0zIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDI1JTtcbiAgICAtbXMtZmxleDogMCAwIDI1JTtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xufVxuXG4uYy1jb2wtMiB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTtcbn1cblxuLmMtY29sLTEge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgLW1zLWZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTtcbn1cblxuLyogb2Zmc2V0IGNvbHMgKi9cbi5jLWNvbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjclO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzJTtcbn1cblxuLmMtY29sLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY3JTtcbn1cblxuLmMtY29sLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmMtY29sLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NyU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBHcmlkIFZhcmlhbnRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmh0bWwge1xuXHRmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcm9vdCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUaXRsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgdGV4dC13cmFwOmJhbGFuY2U7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItZGFyayk7XG59XG5cbmgxLFxuLmMtaDEge1xuXHRwYWRkaW5nLWJvdHRvbTogLjNlbTtcblx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdGZvbnQtc2l6ZTogMi43N3JlbTsgLyogNTBweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgxKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xufVxuXG5oMSBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xufVxuXG5oMSArIC5jLWJ0biB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbi8qXG4uYy1zaG93cm9vbSBoMSB7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMXB4IHJnYmEoMCwwLDAsMC4yKTtcbn0qL1xuXG5oMixcbi5jLWgyIHtcblx0cGFkZGluZy1ib3R0b206IC41ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRmb250LXNpemU6IDEuNzdyZW07IC8qIDMycHggKi9cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG59XG5cbmgzLFxuLmMtaDMge1xuXHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRmb250LXNpemU6IDEuMzNyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xufVxuXG5oNCxcbi5jLWg0IHtcblx0cGFkZGluZy1ib3R0b206IDAuNWVtO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xufVxuXG4uYy1mb290ZXItdGl0bGUsXG4uYy1jYXRlZ29yeS10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBmb250LXNpemU6IDAuODhyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tZWRpdW0pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5jLWNhdGVnb3J5LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xufVxuXG4uYy1jYXRlZ29yeS10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OicnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMjVlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNpYyBUZXh0IENvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRlbnQsXG4uYy1mb290ZXIge1xuXHRsaW5lLWhlaWdodDogMS41O1xufVxuXG4uYy10ZXh0LWJsb2NrIHAsXG4uYy1mb290ZXIgcCB7XG5cdHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbn1cblxuLmMtdGVhc2VyLWl0ZW0gcCxcbi5jLXByb2R1Y3QtaW5mby10ZXh0IHAsXG4uYy1jb29raWUtbm90aWNlIHAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbn1cblxuLmMtcHJvZHVjdC1pbmZvLXRleHQgLmMtdGV4dC1wcmljZS1iaWcgKyAuYy10ZXh0LXNhbGUge1xuICAgIG1hcmdpbi10b3A6IC0wLjg1ZW07XG59XG5cbi5jLXRleHQtYmxvY2sgcDpsYXN0LWNoaWxkLFxuLmMtZm9vdGVyIHA6bGFzdC1jaGlsZCB7XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHAgKyBoMixcbi5jLXRleHQtYmxvY2sgcCArIGgzLFxuLmMtdGV4dC1ibG9jayBwICsgaDQsXG4uYy10ZXh0LWJsb2NrIHVsICsgcCxcbi5jLXRleHQtYmxvY2sgdWwgKyBoMixcbi5jLXRleHQtYmxvY2sgdWwgKyBoMyxcbi5jLXRleHQtYmxvY2sgdWwgKyBoNCxcbi5jLXRleHQtYmxvY2sgdWwgKyBvbCxcbi5jLXRleHQtYmxvY2sgb2wgKyBwLFxuLmMtdGV4dC1ibG9jayBvbCArIGgyLFxuLmMtdGV4dC1ibG9jayBvbCArIGgzLFxuLmMtdGV4dC1ibG9jayBvbCArIGg0IHtcblx0cGFkZGluZy10b3A6IDEuNWVtO1xufVxuXG4uYy1sZWFkIHtcbiAgICBsaW5lLWhlaWdodDogMS4zMztcblx0Zm9udC1zaXplOiAxLjMzcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxlYWQpO1xuICAgIHRleHQtd3JhcDpiYWxhbmNlO1xufVxuXG4uYy10ZXh0LWJpZyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gICAgZm9udC1zaXplOiAxLjMzcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktbCk7XG59XG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSBjaXRlLFxuLmMtZm9vdGVyLWRpc2NsYWltZXIsXG4uYy10ZXh0LW1lZGl1bSB7XG5cdGZvbnQtc2l6ZTogMC44OHJlbTsgLyogMTRweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG59XG5cbi5jLXRleHQtc21hbGwsXG4uYy10ZXh0LXNhbGV7XG5cdGZvbnQtc2l6ZTogMC43N3JlbTsgLyogMTRweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xufVxuXG4uYy10ZXh0LXNhbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy10ZXh0LXByaWNlLWJpZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjMzcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxlYWQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWRhcmspO1xufVxuXG4uYy10ZXh0LXByaWNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtbGVnZW5kIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctdG9wOiAxZW07XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmcteHMpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNpYyBMaXN0cyBDb250ZW50IFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGV4dC1ibG9jayB1bCxcbi5jLXRleHQtYmxvY2sgb2wsXG4uYy1saW5rLWxpc3Qge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDAgMCAxLjVlbSAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1saW5rLWxpc3Q6bGFzdC1jaGlsZCB7XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpLFxuLmMtdGV4dC1ibG9jayBvbCBsaSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiAyOHB4O1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpICsgbGksXG4uYy10ZXh0LWJsb2NrIG9sIGxpICsgbGksXG4uYy1saW5rLWxpc3QgbGkgKyBsaSB7XG5cdG1hcmdpbi10b3A6IDAuNWVtO1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpOjpiZWZvcmUge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBsZWZ0OiAycHg7XG5cdHdpZHRoOiAxMHB4O1xuXHRoZWlnaHQ6IDE0cHg7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgLypib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpOyovXG59XG5cbi5jLXRleHQtYmxvY2sgb2wge1xuXHRjb3VudGVyLXJlc2V0OiBjdXN0b20tY291bnRlcjtcbn1cblxuLmMtdGV4dC1ibG9jayBvbCBsaSB7XG5cdGNvdW50ZXItaW5jcmVtZW50OiBjdXN0b20tY291bnRlcjtcbn1cblxuLmMtdGV4dC1ibG9jayBvbCBsaTo6YmVmb3JlIHtcblx0Y29udGVudDogY291bnRlcihjdXN0b20tY291bnRlcikgXCIuIFwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0d2lkdGg6IDI2cHg7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jLWJyZWFkY3J1bWIgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZyk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItZGFyayk7XG59XG5cbi5jLWJyZWFkY3J1bWIgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xufVxuXG4uYy1icmVhZGNydW1iIGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDAwMmYnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS14cyk7XG59XG5cbi5jLWJyZWFkY3J1bWIgbGk6bGFzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbn1cblxuLmMtdGVjaG5pY2FsLWxpc3QsXG4uYy1rZXlmYWN0cy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtdGVjaG5pY2FsLWxpc3QgZHQsXG4uYy10ZWNobmljYWwtbGlzdCBkZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuODVlbSAxMHB4IDAuODVlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItZGFyayk7XG59XG5cbi5jLXRlY2huaWNhbC1saXN0IGR0IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmMtdGVjaG5pY2FsLWxpc3QgZGQge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XG59XG5cbi5jLWtleWZhY3RzLWxpc3Qge1xuICAgIHBhZGRpbmctdG9wOiAwLjg1ZW07XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtcHJvZHVjdC1rZXlmYWN0cyArIC5jLXByb2R1Y3QtYWNjb3JkaW9uIC5jLWFjY29yZGlvbi1jb250YWluZXIge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5jLWtleWZhY3RzLWxpc3QgZHQsXG4uYy1rZXlmYWN0cy1saXN0IGRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxMHB4IDAuODVlbSAwO1xuICAgIFxufVxuXG4uYy1rZXlmYWN0cy1saXN0IGR0IHtcbiAgICBmbGV4OiAwIDAgNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1kYXJrKTtcbn1cblxuLmMta2V5ZmFjdHMtbGlzdCBkZCB7XG4gICAgZmxleDogMCAwIDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbn1cblxuLmMtcHJvZHVjdC1saW5rcy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luOiAwIC04cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1wcm9kdWN0LWxpbmtzLWxpc3QgbGkge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCA4cHggMC41ZW0gOHB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgcHJvZHVjdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICBcbi5jLXByb2R1Y3QtZGVsaXZlcnkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xufVxuXG4uYy1wcm9kdWN0LWRlbGl2ZXJ5OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4zOGVtO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5jLXByb2R1Y3QtZGVsaXZlcnktc3RhdHVzLW9rOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdGF0dXMtb2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3RhdHVzLW9rKTtcbn0gXG5cbi5jLXByb2R1Y3QtZGVsaXZlcnktc3RhdHVzLWNvbWluZ3Nvb246OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXR1cy1jb21pbmdzb29uO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN0YXR1cy1jb21pbmdzb29uKTtcbn1cblxuLmMtcHJvZHVjdC1kZWxpdmVyeS1zdGF0dXMtbm90b2s6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN0YXR1cy1ub3RvaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdGF0dXMtbm90b2spO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUXVvdGVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMCAwIDNyZW0gMDtcbn1cblxuLmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIHAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDIuNnJlbSAwIDAgMDtcblx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdGZvbnQtc2l6ZTogMi4yMnJlbTsgLyogNDBweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXF1b3RlKTtcbiAgICB0ZXh0LXdyYXA6YmFsYW5jZTtcbn1cblxuLmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIHA6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICdcXDIwMUMnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAtMzFweDtcblx0dG9wOiAtMi44cmVtO1xuXHRmb250LXNpemU6IDE0LjQ0cmVtO1xuXHRjb2xvcjogJGJvcmRlci1iYXNpYztcbiAgICBjb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXHR6LWluZGV4OiAtMTtcbn1cblxuLmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIGNpdGUge1xuXHRwYWRkaW5nLXRvcDogMS41ZW07XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRleHQgaGVscGVyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYy10ZXh0LWNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtdGV4dC1saWdodCB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZXh0IHNpemVzIHJlc3BvbnNpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMzYwcHgpIHtcblx0aDEsIC5jLWgxLFxuXHRoMiwgLmMtaDIsXG5cdGgzLCAuYy1oM3tcblx0XHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuXHRcdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0XHQtbXMtd29yZC1icmVhazogYnJlYWstYWxsO1xuXHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRcdC1tcy1oeXBoZW5zOiBhdXRvO1xuXHRcdC1tb3otaHlwaGVuczogYXV0bztcblx0XHQtd2Via2l0LWh5cGhlbnM6IGF1dG87XG5cdFx0aHlwaGVuczogYXV0bztcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTIwMHB4KSB7XHQgICAgXG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMi4yNXJlbTsgXG4gICAgICAgIC0tZm9udC1zaXplLWgyOiAxLjQ1cmVtOyBcbiAgICAgICAgLS1mb250LXNpemUtaDM6IDEuMnJlbTtcbiAgICAgICAgLS1mb250LXNpemUtbGVhZDogMS4ycmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KSB7XHQgICAgXG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1yb290OiAxNnB4O1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMnJlbTsgXG4gICAgICAgIC0tZm9udC1zaXplLWgyOiAxLjVyZW07XG4gICAgICAgIC0tZm9udC1zaXplLWgzOiAxLjEyNXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtbGVhZDogMS4yNXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtYm9keS1sOiAxLjI1cmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1xdW90ZTogMS41cmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1ib2R5OiAxcmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1ib2R5LXM6IDFyZW07XG4gICAgICAgIC0tZm9udC1zaXplLWJvZHkteHM6IDAuODc1cmVtO1xuICAgICAgICBcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgIFxuXHQuYy10ZXh0LWJsb2NrIHVsIGxpOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuM2VtO1xuICAgIH1cbn1cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhlYWRlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLWhlYWRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG5cdHotaW5kZXg6IDEwO1xufVxuXG4uYy1oZWFkZXItbWFpbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbiAgICB6LWluZGV4OiAxMTtcbn1cblxuLmMtaGVhZGVyLWlubmVyIHtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIGhlaWdodDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZmxvdzogcm93O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuXG4uYy1oZWFkZXItbG9nbyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEyMHB4O1xuXHRoZWlnaHQ6IDY2cHg7XG59XG5cbi5jLWhlYWRlci1sb2dvIGEge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtaGVhZGVyLXN0aWNreXtcblx0cG9zaXRpb246IGZpeGVkO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgbWV0YVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaGVhZGVyLW1haW4sXG4uYy1oZWFkZXItbWV0YSB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItbGlnaHQpO1xufVxuXG4uYy1oZWFkZXItbWV0YSAuYy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmMtaGVhZGVyLWxhbmctbGlzdCxcbi5jLWhlYWRlci1tZXRhLWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjc3cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyAgICBcbn1cblxuLmMtaGVhZGVyLW1ldGEtbGlzdCB7XG4gICAgcGFkZGluZy1yaWdodDogMi41ZW07XG59XG5cbi5jLWhlYWRlci1sYW5nLWxpc3QgbGksXG4uYy1oZWFkZXItbWV0YS1saXN0IGxpIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYy1oZWFkZXItbGFuZy1saXN0IGxpICsgbGksXG4uYy1oZWFkZXItbWV0YS1saXN0IGxpICsgbGkge1xuXHRwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLmMtaGVhZGVyLWxhbmctbGlzdCBhLFxuLmMtaGVhZGVyLW1ldGEtbGlzdCBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDAuODVlbSAwO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1lZGl1bSk7XG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgbWFpbiBuYXYgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1tYWluLW5hdiB7XG5cdGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBsaSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAxZW07XG59XG5cblxuLmMtbWFpbi1uYXYtbGlzdCBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgYTo6YmVmb3JlLFxuLmMtaGVhZGVyLWxhbmctbGlzdCBhOjpiZWZvcmUsXG4uYy1oZWFkZXItbWV0YS1saXN0IGE6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBhOmZvY3VzOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IGE6aG92ZXI6OmJlZm9yZSxcbi5jLW1haW4tbmF2LWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtIGE6OmJlZm9yZSxcbi5jLWhlYWRlci1sYW5nLWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuLmMtaGVhZGVyLWxhbmctbGlzdCBhOmhvdmVyOjpiZWZvcmUsXG4uYy1oZWFkZXItbGFuZy1saXN0IC53cG1sLWxzLWN1cnJlbnQtbGFuZ3VhZ2UgYTo6YmVmb3JlLFxuLmMtaGVhZGVyLW1ldGEtbGlzdCBhOmZvY3VzOjpiZWZvcmUsXG4uYy1oZWFkZXItbWV0YS1saXN0IGE6aG92ZXI6OmJlZm9yZSxcbi5jLWhlYWRlci1tZXRhLWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtIGE6OmJlZm9yZXtcblx0aGVpZ2h0OiA0cHg7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgYTpmb2N1cyxcbi5jLW1haW4tbmF2LWxpc3QgYTpob3Zlcixcbi5jLW1haW4tbmF2LWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtIGEsXG4uYy1oZWFkZXItbGFuZy1saXN0IGE6Zm9jdXMsXG4uYy1oZWFkZXItbGFuZy1saXN0IGE6aG92ZXIsXG4uYy1oZWFkZXItbGFuZy1saXN0IC53cG1sLWxzLWN1cnJlbnQtbGFuZ3VhZ2UgYSxcbi5jLWhlYWRlci1tZXRhLWxpc3QgYTpmb2N1cyxcbi5jLWhlYWRlci1tZXRhLWxpc3QgYTpob3Zlcixcbi5jLWhlYWRlci1tZXRhLWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtIGEge1xuXHRjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGhlbHBlciBuYXYgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oZWFkZXItaGVscGVyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3c7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtaGVhZGVyLWhlbHBlci1saXN0IGxpICsgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBoZWFkZXIgc2VhcmNoXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oZWFkZXItc2VhcmNoLWNvbnRlbnQge1xuXHRkaXNwbGF5OiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHR0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMjZweDtcblx0cmlnaHQ6IDIwcHg7XG4gICAgcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcblx0Lyp3aWR0aDogY2FsYygxMDAlIC0gMjgwcHgpOyovXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICgodmFyKC0tZ3JpZC1jb250YWluZXIpICogMikgKyAxNjBweCkpO1xuXHRoZWlnaHQ6IDUycHg7XG5cdHotaW5kZXg6IDE7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLmMtaGVhZGVyLXNlYXJjaC1jb250ZW50LmMtZm9ybS1zdGFuZGFyZCAuYy1mb3JtLXNlYXJjaCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy1yaWdodDogMzhweDtcbiAgICBoZWlnaHQ6IDUycHg7XG4gICAgbGluZS1oZWlnaHQ6IDUycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcbn1cblxuLmMtaGVhZGVyLXNlYXJjaC10cmlnZ2VyIHtcbiAgICB6LWluZGV4OiAyO1xufVxuXG5cbiNjLWhlYWRlci1zZWFyY2hbdHlwZT1jaGVja2JveF17XHRcblx0ZGlzcGxheTogbm9uZTtcblxuXHRcblx0JjpjaGVja2VkIH4gLmMtaGVhZGVyLWlubmVyIC5jLWhlYWRlci1zZWFyY2gtY29udGVudCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG4gICAgICAgIFxuXHR9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb290ZXIge1xuXHRwYWRkaW5nLXRvcDogJHNwYWNpbmctbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctcztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1tKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tZWRpdW0pO1xufVxuXG4uYy1mb290ZXItZGlzY2xhaW1lciB7XG5cdHBhZGRpbmctdG9wOiAxLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1tKTtcbn1cblxuLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCxcbi5jLWZvb3Rlci1xdWFsaXR5LWxpc3QsXG4uYy1mb290ZXItc29jaWFsLWxpc3QsXG4uYy1mb290ZXItcGF5bWVudC1saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1mb290ZXItZGlzY2xhaW1lci1saXN0IGxpIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYy1mb290ZXItZGlzY2xhaW1lci1saXN0ID4gbGkgKyBsaSB7XG5cdHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi5jLWZvb3RlciBhLFxuLmMtZm9vdGVyIGE6dmlzaXRlZCB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyIGEsXG4uYy1mb290ZXItZGlzY2xhaW1lciBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLW1lZGl1bSk7XG59XG5cbi5jLWZvb3RlciBhOmhvdmVyLFxuLmMtZm9vdGVyIGE6Zm9jdXMge1xuXHRjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBmb290ZXIgbWFpblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9vdGVyLW1haW4gLmMtY29sLTMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG59XG5cbi5jLWZvb3Rlci1tYWluLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWxlZnQtc21hbGwpO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgpOyBcbiAgICBmbGV4LWdyb3c6IDE7XG59XG5cbi5jLWZvb3Rlci1tYWluIC5jLWNvbC0zOmZpcnN0LWNoaWxkIC5jLWZvb3Rlci1tYWluLWl0ZW0ge1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmMtZm9vdGVyLW1haW4gLmMtbGluay1saXN0ICsgLmMtZm9vdGVyLXRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBxdWFsaXR5IC8gc29jaWFsXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtZm9vdGVyLXF1YWxpdHktbGlzdCxcbi5jLWZvb3Rlci1zb2NpYWwtbGlzdCxcbi5jLWZvb3Rlci1wYXltZW50LWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYy1mb290ZXItcXVhbGl0eS1saXN0IGltZyxcbi5jLWZvb3Rlci1wYXltZW50LWxpc3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uYy1mb290ZXItcXVhbGl0eS1saXN0IGxpIHtcbiAgICBwYWRkaW5nOiAwLjVlbSAxZW0gMWVtIDA7XG59XG5cbi5jLWZvb3Rlci1zb2NpYWwtbGlzdCBsaSB7XG4gICAgcGFkZGluZzogMC41ZW0gOHB4IDAuNWVtIDA7XG59XG5cbi5jLWZvb3Rlci1wYXltZW50LWxpc3QgbGkge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAwO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgdHJpZ2dlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXIsXG4uYy1zaWRlYmFyLWNvbXBhcmUtdHJpZ2dlci1jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ZGlzcGxheTogbm9uZTtcblx0dG9wOiAxNXB4O1xuXHRyaWdodDogJGdyaWQtY29udGFpbmVyO1xuICAgIHJpZ2h0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdG1hcmdpbjogMDtcblx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4jb3Blbi1uYXZpZ2F0aW9uOm5vdCg6dGFyZ2V0KSAuYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlcjo6YWZ0ZXIsXG4uYy1zaWRlYmFyLWNvbXBhcmUtdHJpZ2dlci1jbG9zZTo6YmVmb3JlLFxuLmMtc2lkZWJhci1jb21wYXJlLXRyaWdnZXItY2xvc2U6OmFmdGVyIHtcblx0Y29udGVudDonJztcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogNTAlO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjphZnRlciB7XG5cdHdpZHRoOiAyNnB4O1xuXHR0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmJlZm9yZSB7XG5cdGhlaWdodDogMjBweDtcblx0bWFyZ2luLXRvcDogLTEwcHg7XG5cdGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmctZGFyaztcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRiZy1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1kYXJrKTtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjo6YWZ0ZXIge1xuXHRoZWlnaHQ6IDJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWRhcmspO1xuXHRtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOmZvY3VzOjphZnRlcixcbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46aG92ZXI6OmFmdGVyIHtcblx0d2lkdGg6IDE1cHg7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZTo6YWZ0ZXIsXG4uYy1zaWRlYmFyLWNvbXBhcmUtdHJpZ2dlci1jbG9zZTo6YmVmb3JlLFxuLmMtc2lkZWJhci1jb21wYXJlLXRyaWdnZXItY2xvc2U6OmFmdGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWRhcmspO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC41cztcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmJlZm9yZSxcbi5jLXNpZGViYXItY29tcGFyZS10cmlnZ2VyLWNsb3NlOjpiZWZvcmV7XG5cdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOjphZnRlcixcbi5jLXNpZGViYXItY29tcGFyZS10cmlnZ2VyLWNsb3NlOjphZnRlciB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9mZmNhbnZhcyBuYXYgbWFpbiBjb250YWluZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLW9mZmNhbnZhcy1uYXYge1xuXHQvKmRpc3BsYXk6IG5vbmU7Ki9cblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG5cdHotaW5kZXg6IDEwO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAwO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgLjJzIGVhc2Utb3V0IDBzO1xufVxuI29wZW4tbmF2aWdhdGlvbi5uYXZpZ2F0aW9uIC5jLW9mZmNhbnZhcy1uYXZcbiNvcGVuLW5hdmlnYXRpb246bm90KDp0YXJnZXQpIC5jLW9mZmNhbnZhcy1uYXYge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmMtb2ZmY2FudmFzLWlubmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgQ29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLW9mZmNhbnZhcy1jb250ZW50IHsgICAgXG5cdHBhZGRpbmctdG9wOiAzZW07XG4gICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyAyZW0pO1xufVxuXG4uYy1vZmZjYW52YXMtbGFuZyAuYy1oZWFkZXItbGFuZy1saXN0LFxuLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCAge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45NWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctcyk7XG5cdGJvcmRlci10b3A6IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nKTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGxpIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwgbGkge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGEge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LypwYWRkaW5nOiAwLjg1ZW0gOHB4IDAuODVlbSAyNHB4OyovXG4gICAgcGFkZGluZzogMC44ZW0gOHB4IDAuOWVtIDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCB1bCBhIHtcblx0LypwYWRkaW5nOiAwLjg1ZW0gOHB4IDAuNWVtIDI0cHg7Ki9cbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5KTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGE6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAycHg7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vLi4vaW1hZ2VzL3Nwcml0ZS5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMHB4IDBweDtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4O1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtID4gYXtcblx0cGFkZGluZy1sZWZ0OiAyNHB4O1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwgLmN1cnJlbnQtbWVudS1pdGVtID4gYXtcblx0cGFkZGluZy1sZWZ0OiAyNHB4O1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgYTpmb2N1cyxcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBhOmhvdmVyLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jdXJyZW50LW1lbnUtaXRlbSA+IGF7XG5cdGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9mZmNhbnZhcyBhY2NvcmRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjayB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTk5OTlweDtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtdGl0bGUge1xuXHRkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcbiAgICAvKnBhZGRpbmc6IDAuODVlbSAwOyovXG4gICAgcGFkZGluZzogMC44ZW0gMCAwLjllbSAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBsdXMtaWNvbi1wYWRkaW5nKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyBcbn1cblxuXG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuLmMtb2ZmY2FudmFzLW1lbnUtY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlciB7XG4gICAgbGVmdDogMDtcblx0LyptYXJnaW4tdG9wOiB2YXIoLS1wbHVzLXN0cm9rZS1wb3NpdGlvbik7Ki9cblx0d2lkdGg6IHZhcigtLXBsdXMtbGVuZ3RoKTtcblx0aGVpZ2h0OiB2YXIoLS1wbHVzLXN0cm9rZSk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSB7XG4gICAgbGVmdDogdmFyKC0tcGx1cy1zdHJva2UtcG9zaXRpb24pO1xuXHR3aWR0aDogdmFyKC0tcGx1cy1zdHJva2UpO1xuXHRoZWlnaHQ6IHZhcigtLXBsdXMtbGVuZ3RoKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSB7XG4gICBcdGJhY2tncm91bmQtY29sb3I6ICB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigwLDEsMCwxKTtcbn0gICAgXG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQgfiAuYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiA5OTk5cHg7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigxLDAsMSwwKTtcbn1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgbmF2IG9wZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jb3Blbi1uYXZpZ2F0aW9uLm9wZW4sXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4jb3Blbi1uYXZpZ2F0aW9uLm9wZW4sXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG5cdC5jLW9mZmNhbnZhcy1uYXYge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0fVxuXHRcblx0LyogaGVhZGVyIG1haW4gKi9cblx0LmMtb2ZmY2FudmFzLXRyaWdnZXItb3BlbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0LmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2Uge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdFxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUYWJsZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogYm94IGFyb3VuZCB0YWJsZSwgc28gaXQgY2FuIHNjcm9sbCBvbiBzbWFsbCBzY3JlZW5zICovXG4uYy10YWJsZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5jLXRhYmxlLWxheW91dCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jLXRhYmxlLWxheW91dCB0aCB7XG5cdHBhZGRpbmc6IDAgMTVweCAwLjVlbSAwO1xuXHRib3JkZXItYm90dG9tOiBzb2xpZCAycHggJGJvcmRlci1iYXNpYztcdFxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtdGFibGUtbGF5b3V0IHRkIHtcblx0cGFkZGluZzogMC41ZW0gMTVweCAwLjVlbSAwO1xuXHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcdFxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn0iLCJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb2xvcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWJnLWxpZ2h0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBTaG93cm9vbVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtc2hvd3Jvb20ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1zaG93cm9vbSxcbi5jLXNob3dyb29tLXRleHQgLmMtcm93IHtcblx0bWluLWhlaWdodDogY2FsYyg4MHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpOyBcbn1cblxuXG4vKiBtaW4taGVpZ2h0IGZpeCBmb3IgaWUxMSAqL1xuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgIFx0LmMtc2hvd3Jvb20tdGV4dCAuYy1yb3c6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdC8qZGlzcGxheTogYmxvY2s7Ki9cblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWluLWhlaWdodDogaW5oZXJpdDtcblx0XHRmb250LXNpemU6IDA7XG5cdH1cbn1cblxuXG4uYy1zaG93cm9vbS1pbWcge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuXG4uYy1zaG93cm9vbS1pbWcgaW1nIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFF1aWNrbmF2IC8gdGV4dCBpbWcgZGFya1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLXF1aWNrbmF2LFxuLmMtdGV4dC1pbWctZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLXF1aWNrbmF2LWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1xdWlja25hdi1saXN0IGxpIHtcbiAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMDtcbn1cblxuLmMtcXVpY2tuYXYtbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICB0ZWFzZXIgYmlnXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtdGVhc2VyLWJpZy1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLXRlYXNlci1iaWctY29udGFpbmVyIC5jLWFzeW0tbGVmdC1lZGdlbGVzcyAuYy10ZWFzZXItYmlnLWltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tZ3JpZC1jb250YWluZXIpICogLTEpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygodmFyKC0tZ3JpZC1jb250YWluZXIpICogMikgKiAtMSk7XG59XG5cbi5jLXRlYXNlci1iaWcgLmMtYm94IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG59XG5cbi5jLXRlYXNlci1iaWctY29udGFpbmVyIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3MgLmMtdGVhc2VyLWJpZy1pbWcge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoKHZhcigtLWdyaWQtY29udGFpbmVyKSAqIDIpICogLTEpO1xufVxuXG4uYy10ZWFzZXItYmlnLWNvbnRhaW5lciAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzIC5jLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICB0ZWFzZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWJveCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJveCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtYm94LXNtYWxsIHtcbiAgICBwYWRkaW5nOiAxLjVlbSAyNHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94LXNtYWxsKTtcbn1cblxuLmMtYm94LWJpZyB7XG4gICAgcGFkZGluZzogMS41ZW0gMjRweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWJveC1iaWcpO1xufVxuXG4uYy10ZWFzZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZ3JvdzogMTtcbn1cblxuLmMtdGVhc2VyLWxpbms6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLmMtdGVhc2VyLWl0ZW06OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMiBlYXNlLW91dDtcbn1cblxuLmMtdGVhc2VyLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvKmJvcmRlcjogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpOyovXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJveCk7XG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjA1KSAwcHggMHB4IDBweCA0cHg7XG59XG5cbi5jLXRlYXNlci1pdGVtOmZvY3VzLXdpdGhpbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8qYm9yZGVyOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7Ki9cbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYm94KTtcbiAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjA4KSAwcHggMHB4IDBweCA0cHg7XG59XG5cbi5jLXN0b2VyZXItcHJvZHVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDAuMjVlbSAxMnB4O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1idXR0b24pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLXByb2R1Y3QtaW5mby10ZXh0IC5jLXN0b2VyZXItcHJvZHVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0b3A6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5jLXRlYXNlci0zY29sIC5jLWNvbC00IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xufVxuXG4uYy10ZWFzZXItY2F0ZWdvcnktaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJveCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1ib3gpIDAgMDtcbn1cblxuLmMtdGVhc2VyLWNhdGVnb3J5LWltZyBpbWcge1xuICAgIC8qdHJhbnNpdGlvbjogYWxsIDAuMiBlYXNlLW91dDsqL1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy10ZWFzZXItaXRlbTpob3ZlciAuYy10ZWFzZXItY2F0ZWdvcnktaW1nIGltZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbn1cblxuLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIC5jLXRlYXNlci1jYXRlZ29yeS1pbWcgaW1nIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICB0ZWFzZXIgY29udGFjdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGVhc2VyLWNvbnRhY3QgLmMtYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7ICAgIFxufVxuXG4uYy10ZWFzZXItY29udGFjdC1pY29uIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxOTBweDsgXG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBwcm9kdWN0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1wcm9kdWN0LWluZm8ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxLjVyZW07XG4gICAgdG9wOiB2YXIoLS1zcGFjaW5nLXMpO1xuICAgIC8qei1pbmRleDogMTtcbiAgICBoZWlnaHQ6IGF1dG87Ki9cbn1cblxuLmMtcHJvZHVjdC1jb250YWluZXIgLmMtYXN5bS1sZWZ0LWVkZ2VsZXNzIC5jLXByb2R1Y3QtaW1hZ2VzIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG59XG5cbi5jLXByb2R1Y3QtaW5mby10ZXh0LFxuLmMtcHJvZHVjdC1hY2NvcmRpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gICAgXG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBncmlkLWdhcDogOHB4O1xuICAgIG1hcmdpbjogMCAwIDhweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtcHJvZHVjdC1nYWxsZXJ5LWxpc3QgLmMtcHJvZHVjdC1nYWxsZXJ5LW1haW4ge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1saXN0IGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGhlaWdodDogMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1pdGVtIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtcHJvZHVjdC1nYWxsZXJ5LW1haW4gLmMtcHJvZHVjdC1nYWxsZXJ5LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiA2NTBweDtcbiAgICBoZWlnaHQ6IDQwdnc7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmMtcHJvZHVjdC1nYWxsZXJ5LW1haW4gLmMtcHJvZHVjdC1nYWxsZXJ5LWl0ZW0gaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQ29va2llIG5vdGljZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtY29va2llLW5vdGljZXtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcblx0cmlnaHQ6IDIwcHg7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHJpZ2h0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgYm90dG9tOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgd2lkdGg6IDM2MHB4O1xuICAgIHBhZGRpbmc6IDEuNXJlbSAzMHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94LXNtYWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWJveCk7XG59XG5cbi5jLWNvb2tpZS1ub3RpY2U6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYm94KTtcbiAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMDUpIDBweCAwcHggMHB4IDRweDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3QgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjVlbSAwLjVlbSAwIDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgICBcblx0LmMtY29va2llLW5vdGljZSB7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtICh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAyKSk7XG5cdFx0XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTGluayBjb2xvcnMgYW5kIHN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYVtocmVmXj1cInRlbDpcIl0ge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jLXRleHQtYmxvY2sgYSxcbi5jLWZvcm0tc3RhbmRhcmQgYSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sJGNvbG9yLWhpZ2hsaWdodCAwJSwkY29sb3ItaGlnaGxpZ2h0IDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sdmFyKC0tY29sb3ItaGlnaGxpZ2h0KSAwJSx2YXIoLS1jb2xvci1oaWdobGlnaHQpIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAycHggMnB4O1xuICBcdHRyYW5zaXRpb246IGJhY2tncm91bmQgLjFzO1xufVxuXG4uYy10ZXh0LWJsb2NrIGE6Zm9jdXMsXG4uYy10ZXh0LWJsb2NrIGE6aG92ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGE6Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtc2l6ZTogNHB4IDRweDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1idG4sXG4uYy10ZXh0LWJsb2NrIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1hcnJvdyxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1kb3dubG9hZCxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1leHRlcm4sXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstYmFjayxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtYnRuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLmMtZm9ybS1zdGFuZGFyZCAuYy1saW5rLWFycm93LFxuLmMtZm9ybS1zdGFuZGFyZCAuYy1saW5rLWRvd25sb2FkLFxuLmMtZm9ybS1zdGFuZGFyZCAuYy1saW5rLWV4dGVybixcbi5jLWZvcm0tc3RhbmRhcmQgLmMtbGluay1iYWNrLFxuLmMtdGV4dC1ibG9jayAuYy1idG4tZGVsZXRlIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIHNraXAgbGlua1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtc2tpcC1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyAgICBcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAwIDAsIDAgMCwgMCAwKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAwIDAsIDAgMCwgMCAwKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMXB4OyAgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgICAgXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDAuNWVtIDIwcHg7XG59XG5cbi5jLXNraXAtbGluazpmb2N1cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogYXV0bzsgICAgXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCdXR0b24gXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1idG4sXG4uYy1idG4tc2Vjb25kYXJ5LFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJde1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDAuODVlbSAzNnB4O1xuXHRib3JkZXI6IHNvbGlkIDJweCAkYmctZGFyaztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWJ1dHRvbik7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctYnV0dG9uKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICBcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYy1wcm9kdWN0LWluZm8tZm9ybSAuYy1mb3JtLWFkZC1jYXJ0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYy1wcm9kdWN0LWxpbmtzLWxpc3QgLmMtYnRuLXNlY29uZGFyeSxcbi5jLWJ0bi13aWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmMtYnRuLFxuLmMtYnRuOnZpc2l0ZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLWJ0bjpob3ZlciwgXG4uYy1idG46Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jLXNob3dyb29tIC5jLXRleHQtbGlnaHQgLmMtYnRuIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4uYy1idG4tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWJ0bi1zZWNvbmRhcnksXG4uYy1idG4tc2Vjb25kYXJ5OnZpc2l0ZWR7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWJ0bi1zZWNvbmRhcnk6aG92ZXIsXG4uYy1idG4tc2Vjb25kYXJ5OmZvY3Vze1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB2YXIoLS1iZy1idXR0b24pO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctYnV0dG9uKTtcbn1cblxuLmMtYnRuLXNtYWxsIHtcbiAgIHBhZGRpbmc6IDAuNTVlbSAyMHB4IDAuNmVtIDIwcHg7XG59XG5cbi5jLXRleHQtc21hbGwgLmMtYnRuLXNtYWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgbGlua3Mgd2l0aCBpY29uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaWNvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtaWNvbjo6YmVmb3JlLFxuLmMtaWNvbjo6YWZ0ZXIge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmMtbGluay1hcnJvdyxcbi5jLWxpbmstZG93bmxvYWQsXG4uYy1saW5rLWV4dGVybixcbi5jLWxpbmstYmFja3tcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLWxlZnQ6IDI4cHg7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43N3JlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1saW5rLWJ0bi1kb3dubG9hZCxcbi5jLWxpbmstYnRuLWNvbXBhcmUge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmctbGVmdDogMzJweDtcbn1cblxuLmMtbGluay1hcnJvdzo6YmVmb3JlLFxuLmMtbGluay1iYWNrOjpiZWZvcmUge1xuXHR0b3A6IDAuMjVlbTtcblx0bGVmdDogMnB4O1xuXHR3aWR0aDogMTBweDtcblx0aGVpZ2h0OiAxNHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG5cdHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWxpbmstYXJyb3c6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstYXJyb3c6Zm9jdXM6OmJlZm9yZSxcbi5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWxpbmstYXJyb3c6OmJlZm9yZSB7XG5cdGxlZnQ6IDZweDtcbn1cblxuLmMtdGVhc2VyLWl0ZW0gLmMtbGluay1hcnJvdyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTIwcHg7XG59XG5cbi5jLWxpbmstYmFjazpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1iYWNrOmZvY3VzOjpiZWZvcmUge1xuXHRsZWZ0OiAtMnB4O1xufVxuXG4uYy1saW5rLWRvd25sb2FkOjpiZWZvcmUsXG4uYy1saW5rLWJ0bi1kb3dubG9hZDo6YmVmb3JlIHtcblx0dG9wOiAwLjI1ZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyMHB4O1xuXHRoZWlnaHQ6IDI1cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG59XG5cbi5jLWxpbmstYnRuLWRvd25sb2FkOjpiZWZvcmUge1xuICAgIGxlZnQ6IDJweDtcblx0dG9wOiAwLjFlbTtcbn1cblxuLmMtbGluay1kb3dubG9hZDpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1kb3dubG9hZDpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTQwcHg7XG59XG5cbi5jLWxpbmstYnRuLWRvd25sb2FkOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWJ0bi1kb3dubG9hZDpmb2N1czo6YmVmb3JlLFxuLmMtYnRuLXNlY29uZGFyeTpob3ZlciAuYy1saW5rLWJ0bi1kb3dubG9hZDo6YmVmb3JlLFxuLmMtYnRuLXNlY29uZGFyeTpmb2N1cyAuYy1saW5rLWJ0bi1kb3dubG9hZDo6YmVmb3Jle1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTQwcHg7XG59XG5cbi5jLWxpbmstZXh0ZXJuOjpiZWZvcmUge1xuXHR0b3A6IC0wLjE4ZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyNnB4O1xuXHRoZWlnaHQ6IDI2cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG59XG5cbi5jLWxpbmstZXh0ZXJuOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWV4dGVybjpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTgwcHg7XG59XG5cblxuLmMtaGVhZGVyLWxpbmstb3V0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLWhlYWRlci1saW5rLWJhc2tldCxcbi5jLWhlYWRlci1saW5rLWNvbXBhcmUsXG4uYy1oZWFkZXItbGluay1zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5jLWhlYWRlci1saW5rLWJhc2tldDo6YmVmb3JlLFxuLmMtaGVhZGVyLWxpbmstY29tcGFyZTo6YmVmb3JlLFxuLmMtaGVhZGVyLWxpbmstc2VhcmNoOjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xufVxuXG4uYy1oZWFkZXItbGluay1iYXNrZXQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTgwcHg7XG59XG5cbi5jLWhlYWRlci1saW5rLWJhc2tldDpmb2N1czo6YmVmb3JlLFxuLmMtaGVhZGVyLWxpbmstYmFza2V0OmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC0xODBweDtcbn1cblxuLmMtaGVhZGVyLWxpbmstY29tcGFyZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTE0MHB4O1xufVxuXG4uYy1oZWFkZXItbGluay1jb21wYXJlOmZvY3VzOjpiZWZvcmUsXG4uYy1oZWFkZXItbGluay1jb21wYXJlOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4O1xufVxuXG4uYy1oZWFkZXItbGluay1zZWFyY2g6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjIwcHg7XG59XG5cbi5jLWhlYWRlci1saW5rLXNlYXJjaDpmb2N1czo6YmVmb3JlLFxuLmMtaGVhZGVyLWxpbmstc2VhcmNoOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC0yMjBweDtcbn1cblxuLmMtaGVhZGVyLWxpbmstaXRlbXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC01cHg7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGZvbnQtc2l6ZTogMC43N3JlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWxpbmstc29jaWFsLWZiLFxuLmMtbGluay1zb2NpYWwtbGlua2VkaW4sXG4uYy1saW5rLXNvY2lhbC1pbnN0YWdyYW0sXG4uYy1saW5rLXNvY2lhbC15b3V0dWJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtbGluay1zb2NpYWwtZmI6OmJlZm9yZSxcbi5jLWxpbmstc29jaWFsLWxpbmtlZGluOjpiZWZvcmUsXG4uYy1saW5rLXNvY2lhbC1pbnN0YWdyYW06OmJlZm9yZSxcbi5jLWxpbmstc29jaWFsLXlvdXR1YmU6OmJlZm9yZSB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtYXJnaW4tdG9wOiAtMTNweDtcbiAgICBtYXJnaW4tbGVmdDogLTEzcHg7XG59XG5cbi5jLWxpbmstc29jaWFsLWZiOjpiZWZvcmUgeyAgICBcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNjBweDtcbn1cblxuLmMtbGluay1zb2NpYWwtZmI6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstc29jaWFsLWZiOmZvY3VzOjpiZWZvcmUgeyAgICBcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtMjYwcHg7XG59XG5cbi5jLWxpbmstc29jaWFsLWxpbmtlZGluOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMwMHB4O1xufVxuXG4uYy1saW5rLXNvY2lhbC1saW5rZWRpbjpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1zb2NpYWwtbGlua2VkaW46Zm9jdXM6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTMwMHB4O1xufVxuXG4uYy1saW5rLXNvY2lhbC1pbnN0YWdyYW06OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzQwcHg7XG59XG5cbi5jLWxpbmstc29jaWFsLWluc3RhZ3JhbTpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1zb2NpYWwtaW5zdGFncmFtOmZvY3VzOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC0zNDBweDtcbn1cblxuLmMtbGluay1zb2NpYWwteW91dHViZTo6YmVmb3JlIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzgwcHg7XG59XG5cbi5jLWxpbmstc29jaWFsLXlvdXR1YmU6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstc29jaWFsLXlvdXR1YmU6Zm9jdXM6OmJlZm9yZXtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtMzgwcHg7XG59XG5cbi5jLWJ0bi1jb21wYXJlLFxuLmMtYnRuLWJhY2ssXG4uYy1idG4tbmV4dCxcbi5jLWJ0bi1kZWxldGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogc29saWQgMnB4ICRiZy1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1zbGlkZXItY29udHJvbHMgLmMtYnRuLW5leHQsXG4uYy1wcm9kdWN0LWdhbGxlcnktc2xpZGVyLWNvbnRyb2xzIC5jLWJ0bi1iYWNrIHtcbiAgICAvKmJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7Ki9cbn1cblxuLmMtYnRuLWNvbXBhcmUsXG4uYy1idG4tZGVsZXRlIHtcbiAgICB0b3A6IDE2cHg7XG4gICAgcmlnaHQ6IDE2cHg7ICAgIFxufVxuXG4uYy1jb21wYXJlLWl0ZW0gLmMtYnRuLWRlbGV0ZSB7XG4gICAgdG9wOiAwLjg1ZW07XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5jLWJ0bi1iYWNrLFxuLmMtYnRuLW5leHQge1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0yMnB4O1xuICAgIHJpZ2h0OiA1NHB4O1xufVxuXG4uYy1idG4tbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5jLWJ0bi1jb21wYXJlOmhvdmVyLFxuLmMtYnRuLWNvbXBhcmU6Zm9jdXMsXG4uYy1idG4tYmFjazpob3Zlcixcbi5jLWJ0bi1iYWNrOmZvY3VzLFxuLmMtYnRuLW5leHQ6aG92ZXIsXG4uYy1idG4tbmV4dDpmb2N1cyxcbi5jLWJ0bi1kZWxldGU6aG92ZXIsXG4uYy1idG4tZGVsZXRlOmZvY3Vze1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctYnV0dG9uKTtcbn1cblxuLmMtYnRuLWNvbXBhcmUtYWN0aXZlLFxuLmMtYnRuLWNvbXBhcmUtYWN0aXZlOmhvdmVyLFxuLmMtYnRuLWNvbXBhcmUtYWN0aXZlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYnRuLXNsaWRlci1kaXNhYmxlZCxcbi5jLWJ0bi1zbGlkZXItZGlzYWJsZWQ6aG92ZXIsXG4uYy1idG4tc2xpZGVyLWRpc2FibGVkOmZvY3VzLHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG59XG5cbi5jLWJ0bi1jb21wYXJlOjpiZWZvcmUsXG4uYy1saW5rLWJ0bi1jb21wYXJlOjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tdG9wOiAtMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDBweDtcbn1cblxuLmMtYnRuLWNvbXBhcmU6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlOyAgICBcbiAgICBtYXJnaW4tbGVmdDogLTExcHg7XG59XG5cbi5jLWxpbmstYnRuLWNvbXBhcmU6OmJlZm9yZSB7XG4gICBsZWZ0OiAwO1xufVxuXG4uYy1idG4tY29tcGFyZTpmb2N1czo6YmVmb3JlLFxuLmMtYnRuLWNvbXBhcmU6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstYnRuLWNvbXBhcmU6Zm9jdXM6OmJlZm9yZSxcbi5jLWxpbmstYnRuLWNvbXBhcmU6aG92ZXI6OmJlZm9yZSxcbi5jLWJ0bi1zZWNvbmRhcnk6Zm9jdXMgLmMtbGluay1idG4tY29tcGFyZTo6YmVmb3JlLFxuLmMtYnRuLXNlY29uZGFyeTpob3ZlciAuYy1saW5rLWJ0bi1jb21wYXJlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTQwcHg7XG59XG5cbi5jLWJ0bi1jb21wYXJlLWFjdGl2ZTo6YmVmb3JlLFxuLmMtYnRuLWNvbXBhcmUtYWN0aXZlOmhvdmVyOjpiZWZvcmUsXG4uYy1idG4tY29tcGFyZS1hY3RpdmU6Zm9jdXM6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTE0MHB4O1xufVxuXG4uYy1idG4tZGVsZXRlOjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTUwMHB4O1xufVxuXG4uYy1idG4tZGVsZXRlOmZvY3VzOjpiZWZvcmUsXG4uYy1idG4tZGVsZXRlOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtNTAwcHg7XG59XG5cbi5jLWJ0bi1iYWNrOjpiZWZvcmUsXG4uYy1idG4tbmV4dDo6YmVmb3Jle1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMTNweDtcbiAgICBoZWlnaHQ6IDIzcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDYwcHg7XG59XG5cbi5jLWJ0bi1uZXh0OjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDIwcHg7XG59XG5cbi5jLWJ0bi1iYWNrOmhvdmVyOjpiZWZvcmUsXG4uYy1idG4tYmFjazpmb2N1czo6YmVmb3Jle1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC00NjBweDtcbn1cblxuLmMtYnRuLW5leHQ6aG92ZXI6OmJlZm9yZSxcbi5jLWJ0bi1uZXh0OmZvY3VzOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTQyMHB4O1xufVxuXG4uYy1idG4tYmFjay5jLWJ0bi1zbGlkZXItZGlzYWJsZWQ6OmJlZm9yZSxcbi5jLWJ0bi1iYWNrLmMtYnRuLXNsaWRlci1kaXNhYmxlZDpob3Zlcjo6YmVmb3JlLFxuLmMtYnRuLWJhY2suYy1idG4tc2xpZGVyLWRpc2FibGVkOmZvY3VzOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtNDYwcHg7XG59XG5cbi5jLWJ0bi1uZXh0LmMtYnRuLXNsaWRlci1kaXNhYmxlZDo6YmVmb3JlLFxuLmMtYnRuLW5leHQuYy1idG4tc2xpZGVyLWRpc2FibGVkOmhvdmVyOjpiZWZvcmUsXG4uYy1idG4tbmV4dC5jLWJ0bi1zbGlkZXItZGlzYWJsZWQ6Zm9jdXM6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC00MjBweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgcmVzcG9uc2l2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgIFxuXHQuYy1saW5rLWFycm93OjpiZWZvcmUsXG5cdC5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0XHR0b3A6IDAuMTVlbTtcblx0fVxuXHRcblx0LmMtbGluay1kb3dubG9hZDo6YmVmb3JlIHtcblx0XHR0b3A6IC0uMzVlbTtcblx0fVxuXHRcblx0LmMtbGluay1leHRlcm46OmJlZm9yZSB7XG5cdFx0dG9wOiAtLjM4ZW07XG5cdH1cbn0qLyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSYXRpbyBCb3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXJhdGlvYm94IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1yYXRpb2JveCA+IGltZyxcbi5jLXJhdGlvYm94ID4gaWZyYW1lLFxuLmMtcmF0aW9ib3ggPiBvYmplY3Qge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG4uYy1yYXRpb2JveCA+IGltZyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XHRcbn1cblxuLmMtcmF0aW9ib3ggPiBpZnJhbWUsXG4uYy1yYXRpb2JveCA+IG9iamVjdCB7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4uYy1yYXRpb2JveC0xNmJ5OSB7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5jLXJhdGlvYm94LTNieTIsXG4uYy10ZWFzZXItY2F0ZWdvcnktaW1nIHtcblx0cGFkZGluZy1ib3R0b206IDY2LjY2NjY2NjY3JTtcbn1cblxuLmMtcmF0aW9ib3gtNGJ5MyB7XG5cdHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi5jLXJhdGlvYm94LTFieTEsXG4uYy10ZWFzZXItcHJvZHVjdC1pbWcge1xuXHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcbn1cblxuLmMtcmF0aW9ib3gtc2hvd3Jvb20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzOC42OTA0NzYxOTA0NzYxOSU7XG59XG5cbi5jLXJhdGlvYm94LXNob3dyb29tIGltZyxcbi5jLXRlYXNlci1jYXRlZ29yeS1pbWcgaW1nIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jLXRlYXNlci1wcm9kdWN0LWltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG9iamVjdC1maXQ6IGNvbnRhaW47XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBzYWZhcmkgZm9ybSBmaXggKi9cbmlucHV0LFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG50ZXh0YXJlYSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiByZW1vdmUgY2hyb21lIGF1dG9maWxsIHllbGxvdyBjb2xvciAqL1xuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUge1xuXHQtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDIwMDBzO1xufVxuXG4vKiBDaHJvbWUsIFNhZmFyaSwgRWRnZSwgT3BlcmEgKi9cbmlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogRmlyZWZveCAqL1xuaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbi5jLWZvcm0taXRlbSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1zO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xufVxuXG4uYy1wcm9kdWN0LWluZm8tZm9ybSAuYy1mb3JtLWl0ZW17XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdztcbn1cblxuLmMtcHJvZHVjdC1pbmZvLWZvcm0gLmMtZm9ybS1hZGQtcXVhbnRpdHl7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLmMtcHJvZHVjdC1pbmZvLWZvcm0gLmMtZm9ybS1hZGQtY2FydCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xufVxuXG4uYy1mb3JtLXNlcGFyYXRvciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAxLjVlbSAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGZvcm1maWVsZHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWEge1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyOiBzb2xpZCAycHggJGJvcmRlci1mb3JtO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLWZvcm0td2lkdGgpO1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRwYWRkaW5nOiAwLjg1ZW0gMTJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZm9ybS1jb250ZW50KTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYSB7XG5cdG1pbi1oZWlnaHQ6IDEyZW07XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWE6Zm9jdXMge1xuXHRib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ1cmxcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJkYXRlXCJdOmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGVsXCJdOmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYTpkaXNhYmxlZCB7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xuXHRjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS1sYWJlbC10ZXh0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiAwLjM1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1kYXJrKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgZmlsZSBidXR0b25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1maWxlXSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwLjc1ZW0gMTBweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWJveC1zbWFsbCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1ib3gpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG59XG5cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZmlsZVwiXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDhweCAwIDA7XG5cdHBhZGRpbmc6IDAuODVlbSAzNnB4O1xuXHRib3JkZXI6IHNvbGlkIDJweCAkYmctZGFyaztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAgXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuXG5cblxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJmaWxlXCJdOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB2YXIoLS1iZy1idXR0b24pO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctYnV0dG9uKTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgY2hlY2tib3ggLyByYWRpb3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LWxpc3QtaXRlbSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWZvcm0tbXVsdGlsaW5lIC53cGNmNy1saXN0LWl0ZW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJde1xuICAgIG1hcmdpbjogNHB4IDAgMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCl7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdK3NwYW4sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXStzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0rc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdK3NwYW4ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKStzcGFue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMC41NWVtO1xuXHRsaW5lLWhlaWdodDogMS41O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblx0bWluLWhlaWdodDogNDRweDtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKStzcGFuOjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwLjE1ZW07XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXItZm9ybTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtKTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci1mb3JtLXdpZHRoKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1mb3JtLWNvbnRlbnQpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YmVmb3Jle1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMrc3Bhbjo6YmVmb3Jle1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1mb3JtLWZvY3VzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0tZm9jdXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZvcm0tY29udGVudCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZvcm0tY29udGVudCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YWZ0ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDAuMTVlbSArIDVweCk7XG4gICAgbGVmdDogMTFweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDIycHg7XG5cdGJvcmRlcjogc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG5cdGJvcmRlci13aWR0aDogMCA0cHggNHB4IDA7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjphZnRlcixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMC4xNWVtICsgOXB4KTtcbiAgICBsZWZ0OiA5cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVye1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YWZ0ZXJ7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG4uZ2Zvcm1fZmllbGRzIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK3NwYW46OmFmdGVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjphZnRlcntcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK3NwYW46OmFmdGVye1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQrc3Bhbjo6YWZ0ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCtzcGFuOjphZnRlciB7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGRyb3Bkb3duXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDAuODVlbSAzMHB4IDAuODVlbSAxMnB4ICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0Ym9yZGVyOiAycHggc29saWQgJGJvcmRlci1mb3JtO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLWZvcm0td2lkdGgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9pY29uLWZvcm0tYXJyb3cuc3ZnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWZvcm0tY29udGVudCk7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0bGluZS1oZWlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcdFxufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWZvcm0tZm9jdXM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybS1mb2N1cyk7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0IG9wdGlvbiB7XG5cdHBhZGRpbmc6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OjotbXMtZXhwYW5kIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Q6ZGlzYWJsZWQ6Oi1tcy1leHBhbmQge1xuXHRjb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdDpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0W2Rpc2FibGVkXSB7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGMtZm9ybS1uZXdzbGV0dGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLW5ld3NsZXR0ZXIgaW5wdXQgKyAuYy1idG4tc2Vjb25kYXJ5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgIH1cblxuLmMtZm9ybS1uZXdzbGV0dGVyIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NTBweCkgeyAgXG4gICAgLmMtZm9ybS1uZXdzbGV0dGVyIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLW5ld3NsZXR0ZXIgaW5wdXQgKyAuYy1idG4tc2Vjb25kYXJ5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICB3cDcgZXJyb3IgLyBvayBtZXNzYWdlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNyBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuXHQvKmRpc3BsYXk6IGJsb2NrOyovXG5cdGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWluaXRpYWw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS1pbml0aWFsKTtcblx0cGFkZGluZzogMS41ZW0gMzBweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWJveC1zbWFsbCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1ib3gpO1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xuXHRtYXJnaW46IDAgMCAzZW0gMDtcbiAgICBtYXJnaW4tYm90dG9tOnZhcigtLXNwYWNpbmctbSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcblx0Ym9yZGVyOiBub25lO1xuICAgIFxufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1ub3QtdmFsaWQtdGlwLFxuLmMtZm9ybS1zdGFuZGFyZCAuc2NyZWVuLXJlYWRlci1yZXNwb25zZSxcbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG59XG5cbi8qIGVycm9yICovXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1ub3QtdmFsaWQtdGlwLFxuLmMtZm9ybS1zdGFuZGFyZCAuc2NyZWVuLXJlYWRlci1yZXNwb25zZSB7XG5cdGNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1lcnJvcik7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LW5vdC12YWxpZC10aXAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy10b3A6IDAuMzVlbTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dC53cGNmNy1ub3QtdmFsaWQge1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWVycm9yO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1lcnJvcik7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3IGZvcm0uaW52YWxpZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjcgZm9ybS5mYWlsZWQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3IGZvcm0uYWJvcnRlZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0e1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mb3JtLWVycm9yKTtcbn1cblxuLyogb2sgKi9cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3IGZvcm0uc2VudCAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGZvcm0tb2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS1vayk7XG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgd3A3IHNwaW5uZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmZvcm0uc3VibWl0dGluZyAud3BjZjctc3Bpbm5lciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctc3Bpbm5lciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IC00cHggMjRweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI5LDI5LDI3LC4zKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LXNwaW5uZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG59XG4iLCIuYy1saXZlLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJl9fcmVzdWx0cyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIENhY2jDqSBwYXIgZMOpZmF1dFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4OyBcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgXG4gICAgICAgIC8qXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAzNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgKi9cbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgLy8gQWZmaWNow6kgdW5pcXVlbWVudCBzaSBhY3RpZlxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIC8vIElNUE9SVEFOVCA6IE5ldXRyYWxpc2UgbGUgc291bGlnbmVtZW50IHJvdWdlIGdsb2JhbCAoLmMtZm9ybS1zdGFuZGFyZCBhKVxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltZyB7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB9XG5cbiAgICAmX19uby1yZXN1bHQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufSIsIlxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBY2NvcmRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbi1jb250YWluZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1iYXNpYztcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1hY2NvcmRpb24tY29udGFpbmVyICsgLmMtYWNjb3JkaW9uLWNvbnRhaW5lciB7XG5cdGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5jLWFjY29yZGlvbi10aXRsZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogMC44NXJlbSAwIDAuODVyZW0gdmFyKC0tYWNjb3JkaW9uLWljb24tcGFkZGluZyk7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjc3cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZyk7XG4gICAgY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5cbi5jLWFjY29yZGlvbi10aXRsZTpob3ZlciB7XG5cdC8qY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7Ki9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjayB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTk5OTlweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFjY29yZGlvbiBJY29uIENoZWNrIHBsdXMvbWludXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMS4zZW07XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlciB7XG4gICBcdGxlZnQ6IDJweDtcblx0bWFyZ2luLXRvcDogdmFyKC0tcGx1cy1zdHJva2UtcG9zaXRpb24pO1xuXHR3aWR0aDogdmFyKC0tcGx1cy1sZW5ndGgpO1xuXHRoZWlnaHQ6IHZhcigtLXBsdXMtc3Ryb2tlKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgbGVmdDogY2FsYyh2YXIoLS1wbHVzLXN0cm9rZS1wb3NpdGlvbikgKyAycHgpO1xuXHR3aWR0aDogdmFyKC0tcGx1cy1zdHJva2UpO1xuXHRoZWlnaHQ6IHZhcigtLXBsdXMtbGVuZ3RoKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkge1x0ICAgIFxuICAgIC5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbiAgICAuYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIsXG4gICAgLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbiAgICAuYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAxLjE1ZW07XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1hY2NvcmRpb24tY29udGVudCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1heC1oZWlnaHQ6IDA7XG4gXHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgY3ViaWMtYmV6aWVyKDAsMSwwLDEpO1xufVxuXG4uYy1hY2NvcmRpb24taW5uZXIge1xuXHRwYWRkaW5nOiAwLjVlbSAwIHZhcigtLXNwYWNpbmctcykgdmFyKC0tYWNjb3JkaW9uLWljb24tcGFkZGluZyk7XG5cbn1cblxuLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQgfiAuYy1hY2NvcmRpb24tY29udGVudCB7XG5cdG1heC1oZWlnaHQ6IDk5OTlweDtcbiBcdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBjdWJpYy1iZXppZXIoMSwwLDEsMCk7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU2xpZGVyIFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtc2xpZGVyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLXNsaWRlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZy10b3A6OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTbGlkZXIgSXRlbXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXNsaWRlci1pdGVtcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKiBQcm9kdWN0IHBhZ2Ugc2xpZGVyczoga2VlcCBjb250YWluZXIgd2lkdGggZm9yIG1lYXN1cmVtZW50cy9jb250cm9scy4gVmlzdWFsIG92ZXJmbG93XG4gICBpcyBoYW5kbGVkIGJ5IEpTIHZpYSBgLmMtc2xpZGVyLWl0ZW1zIHsgb3ZlcmZsb3c6IHZpc2libGUgfWAgb24gdGhpcyB2YXJpYW50LiAqL1xuLmMtc2xpZGVyLXByb2R1Y3QtYmxlZWQgLmMtc2xpZGVyLWl0ZW1zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5jLXNsaWRlci1pdGVtcy1saXN0IHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1mbG93OiByb3c7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtcm93O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG59XG5cbi5jLXNsaWRlci1pdGVtcy1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtY29sO1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtY29sO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29sKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdyaWQtY29sKTtcbn1cblxuLmMtc2xpZGVyLWl0ZW1zLWxpc3QgLmMtdGVhc2VyLWl0ZW0ge1xuICAgIHdpZHRoOiAyNzBweDtcbn1cblxuLypcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMjAwcHgpIHsgIFxuICAgIC5jLXNsaWRlci1pdGVtcy1saXN0IC5jLXRlYXNlci1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDMzNXB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2OHB4KSB7ICBcbiAgICAuYy1zbGlkZXItaXRlbXMtbGlzdCAuYy10ZWFzZXItaXRlbSB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG59Ki9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFNsaWRlciBDb250cm9sXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1zbGlkZXItY29udHJvbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdyaWQtY29udGFpbmVyKSArIDIycHgpO1xufVxuXG4vKiBJZiBldmVyeXRoaW5nIGZpdHMgaW4gdGhlIHZpZXdwb3J0LCBoaWRlIGRpc2FibGVkIHNsaWRlciBjb250cm9scyBlbnRpcmVseS4gKi9cbi5jLXNsaWRlcltkYXRhLXNsaWRlci1oYXMtb3ZlcmZsb3c9XCIwXCJdIC5jLXNsaWRlci1jb250cm9scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmMtc2xpZGVyLXNjcm9sbGJhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1yaWdodDogMTEycHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtc2xpZGVyLXNjcm9sbGJhci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTV2dztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFNsaWRlciBwYWdpbmcgcHJvZHVjdCBnYWxsZXJ5XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1wcm9kdWN0LWdhbGxlcnktc2xpZGVyLWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLXMpICsgMjBweCk7XG59XG5cbi5jLXByb2R1Y3QtZ2FsbGVyeS1wYWdpbmctbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1wcm9kdWN0LWdhbGxlcnktcGFnaW5nLWxpc3QgbGkge1xuICAgIHBhZGRpbmc6IDAgNHB4O1xufVxuXG4uYy1wcm9kdWN0LWdhbGxlcnktcGFnaW5nLWRvdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XG59XG5cbi5jLWFjdGl2ZSAuYy1wcm9kdWN0LWdhbGxlcnktcGFnaW5nLWRvdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByb2R1Y3QgR2FsbGVyeSBTd2lwZSAoTW9iaWxlIE9ubHkpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5jLXByb2R1Y3QtZ2FsbGVyeS1zbGlkZXItY29udHJvbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jLXByb2R1Y3QtZ2FsbGVyeS1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5ICFpbXBvcnRhbnQ7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgZGlzcGxheTogbm9uZTsgfSAvKiBTYWZhcmkvQ2hyb21lICovXG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxleDogMCAwIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBjb21wYXJlIHNpZGViYXIgYm9keSBubyBzY3JvbGxcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1zaWRlYmFyLWNvbXBhcmUtb3BlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdnc7XG5cdGhlaWdodDogMTAwdmg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW47XG4gICAgXG59XG5cbi5jLXNpZGViYXItY29tcGFyZS1vcGVuOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgei1pbmRleDogMTE7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBjb21wYXJlIHNpZGViYXIgY29udGFpbmVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1zaWRlYmFyLWNvbXBhcmUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0ei1pbmRleDogMTI7XG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IDEwMHZoO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuICAgIC8qdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1NDBweCwgMHB4LCAwcHgpOyovXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC42cyBlYXNlLW91dDsgICAgXG59XG5cblxuI3NpZGViYXItY29tcGFyZVt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSAuYy1zaWRlYmFyLWNvbXBhcmUge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIC8vIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIC8qICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNTQwcHgsIDBweCwgMHB4KTsgKi9cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxufVxuXG5cbiNzaWRlYmFyLWNvbXBhcmVbdHlwZT1jaGVja2JveF17XHRcblx0ZGlzcGxheTogbm9uZTtcblxuXHRcblx0JjpjaGVja2VkIH4gLmMtc2lkZWJhci1jb21wYXJlIHtcbiAgICAgICAgd2lkdGg6IDU0MHB4O1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgLyp0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpOyovXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBjb21wYXJlIHNpZGViYXIgaW5uZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXNpZGViYXItY29tcGFyZS1pbm5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiA1NDBweDtcblx0b3ZlcmZsb3cteTogYXV0bztcbiAgICBwYWRkaW5nOiA3MHB4IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1zaWRlYmFyLWNvbXBhcmUtdHJpZ2dlci1jbG9zZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jLWNvbXBhcmUtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTsgICAgXG59XG5cblxuLmMtY29tcGFyZS1pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7ICAgXG59XG5cbi5jLWNvbXBhcmUtaXRlbSArIHAge1xuICAgIG1hcmdpbi10b3A6IDEuNWVtO1xufVxuXG4uYy1jb21wYXJlLWl0ZW0taW1nIHtcbiAgICB3aWR0aDogMTAwcHg7XG59XG5cbi5jLWNvbXBhcmUtaXRlbS10ZXh0e1xuICAgcGFkZGluZzogMC44NWVtIDUwcHggMC44NWVtIDIwcHg7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBjb21wYXJlIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbXBhcmUtcm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDAuODVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC44NWVtO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLmMtY29tcGFyZS1zZWN0aW9uLXRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1jb21wYXJlLWltZyB7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmMtY29tcGFyZS1yb3ctaGVhZGVyIC5jLWNvbC00IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xufVxuXG4uYy1jb21wYXJlLXJvdy1oZWFkZXItc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLWdyaWQtY29udGFpbmVyKSAqIDIpKTtcbn1cblxuLyogc3RpY2t5IGhlYWRlciAqL1xuLmMtY29tcGFyZS1yb3ctaGVhZGVyLXN0aWNreSAuYy1ib3gge1xuICAgIG9wYWNpdHk6IDAuOTtcbn1cblxuLmMtY29tcGFyZS1yb3ctaGVhZGVyLXN0aWNreSAuYy1jb21wYXJlLWltZyxcbi5jLWNvbXBhcmUtcm93LWhlYWRlci1zdGlja3kgLmMtYnRuLWRlbGV0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmMtY29tcGFyZS1yb3ctaGVhZGVyLXN0aWNreSAuYy1oMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVmlld3BvcnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkAtbXMtdmlld3BvcnQge1xuXHR3aWR0aDogZGV2aWNlLXdpZHRoO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTWVkaWFxdWVyaWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMzMwcHgpIHtcblx0LyogY29udGFpbmVyIG1heCB3aWR0aCAqL1xuXHQuYy1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEzMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYmlnLWNvbnRhaW5lcixcbiAgICAuYy1wcm9kdWN0LWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTcwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmMtdGVhc2VyLWJpZy1jb250YWluZXIgLmMtYXN5bS1yaWdodC1lZGdlbGVzcyxcbiAgICAuYy10ZWFzZXItYmlnLWNvbnRhaW5lciAuYy1hc3ltLWxlZnQtZWRnZWxlc3MsXG4gICAgLmMtcHJvZHVjdC1jb250YWluZXIgLmMtYXN5bS1sZWZ0LWVkZ2VsZXNzIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB3aWR0aDogY2FsYygoMTMyMHB4IC8gMikgKyA1MCUpO1xuICAgIH1cbiAgICBcbiAgICAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1hc3ltLWxlZnQtZWRnZWxlc3MsXG4gICAgLmMtYXN5bS1sZWZ0LWVkZ2VsZXNzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWcgLmMtYXN5bS1jb2wtZ3JpZCxcbiAgICAuYy1wcm9kdWN0IC5jLWFzeW0tY29sLWdyaWQge1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygoMTMyMHB4IC8gNSkgKyAodmFyKC0tZ3JpZC1jb2wpICogMTEpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCgxMzIwcHggLyA1KSArICh2YXIoLS1ncmlkLWNvbCkgKiAxMSkpO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYmlnIC5jLWFzeW0tY29sLWVkZ2VsZXNzLFxuICAgIC5jLXByb2R1Y3QgLmMtYXN5bS1jb2wtZWRnZWxlc3Mge1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygxMDAlIC0gKCgxMzIwcHggLyA1KSArICh2YXIoLS1ncmlkLWNvbCkgKiAxMSkpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoKDEzMjBweCAvIDUpICsgKHZhcigtLWdyaWQtY29sKSAqIDExKSkpO1xuICAgIH1cbiAgICBcbiAgICAuYy1jb21wYXJlLXJvdy1oZWFkZXItc3RpY2t5IHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygoKDEzMjBweCAvIDIpIC0gdmFyKC0tZ3JpZC1jb250YWluZXIpKSAqIC0xKTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEzMjBweCAtICh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAyKSk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTEwMHB4KSB7ICBcblx0LmMtdGV4dC1pbWcgLmMtY29sLTgsXG4gICAgLmMtdGV4dC1pbWcgLmMtY29sLTQge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgNTAlO1xuXHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0bWF4LXdpZHRoOiA1MCU7IFx0XG5cdH1cbiAgICBcbiAgICAuYy1jb250YWN0LWZvcm0gLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCkgeyAgXG5cdC5jLWZvb3Rlci1tYWluIC5jLWNvbC0zIHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlOyBcblx0fVxuICAgIFxuICAgIC5jLWZvb3Rlci1ubCAuYy1jb2wtOSxcbiAgICAuYy1mb290ZXItbmwgLmMtY29sLTMge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLW5sIC5jLWNvbC05IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvb3Rlci1tYWluLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWxlZnQtc21hbGwpO1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItYmFzaWM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLTNjb2wgLmMtY29sLTQge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYmlnIC5jLWNvbC01IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICAtbXMtZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICAgICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICAgICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWcgLmMtY29sLTcge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLWJpZyAuYy1ib3gge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMik7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWctY29udGFpbmVyIC5jLWFzeW0tbGVmdC1lZGdlbGVzcyAuYy1jb2wtNSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYmlnLWNvbnRhaW5lciAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzIC5jLWNvbC01IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYmlnLWNvbnRhaW5lciAuYy1hc3ltLWxlZnQtZWRnZWxlc3MgLmMtdGVhc2VyLWJpZy1pbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWctY29udGFpbmVyIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3MgLmMtdGVhc2VyLWJpZy1pbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdCAuYy1jb2wtNyxcbiAgICAuYy1wcm9kdWN0IC5jLWNvbC01IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgfVxufVxuXG4vKiBoZWFkZXIgc2hvdyBvZmZjYW52YXMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCkgeyAgXG5cdC5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdFxuXHQuYy1tYWluLW5hdixcbiAgICAuYy1oZWFkZXItbWV0YSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuICAgIFxuICAgIC5jLWhlYWRlci1oZWxwZXItbGlzdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICB9XG4gICAgXG4gICAgLmMtaGVhZGVyLWxvZ28ge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1oZWFkZXItc2VhcmNoLWNvbnRlbnQge1xuICAgICAgICByaWdodDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKyA0MHB4KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICgodmFyKC0tZ3JpZC1jb250YWluZXIpICogMikgKyA0MHB4KSk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTAwcHgpIHsgIFxuICAgIC5jLXRlY2huaWNhbC1pbmZvIC5jLWNvbC0zLFxuICAgIC5jLXRlY2huaWNhbC1pbmZvIC5jLWNvbC05IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlY2huaWNhbC1pbmZvIC5jLWNvbC0zIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjg1MHB4KSB7ICBcblxuICAgIC5jLXRleHQtb25seSAuYy1jb2wtOCxcblx0LmMtbWFpbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtc2VjdGlvbi10aXRsZSAuYy1jb2wtOCxcbiAgICAuYy1jb250YWN0LWZvcm0gLmMtY29sLTYge1xuXHRcdHdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7ICAgXHRcblx0fVxuICAgIFxuICAgIC5jLXNob3dyb29tLXRleHQgLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgICAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo3NjhweCkgeyBcbiAgICAuYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1jb29raWUtbm90aWNlIC5jLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgXG5cdC5jLXRleHQtb25seSAuYy1jb2wtOCxcblx0LmMtbWFpbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtc2VjdGlvbi10aXRsZSAuYy1jb2wtOCxcbiAgICAuYy10ZXh0LWltZyAuYy1jb2wtOCxcbiAgICAuYy10ZXh0LWltZyAuYy1jb2wtNCxcbiAgICAuYy1jb250YWN0LWZvcm0gLmMtY29sLTYge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgICBcdFxuXHR9XG4gICAgXG4gICAgLmMtdGV4dC1pbWcgLmMtY29sLTgge1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpOyAgIFx0XG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItZGlzY2xhaW1lciAuYy1jb2wtNiB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItZGlzY2xhaW1lci1saXN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCBsaSxcbiAgICAuYy1mb290ZXItZGlzY2xhaW1lci1saXN0ID4gbGkgKyBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtc2hvd3Jvb20tdGV4dCAuYy1yb3cge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICAgIFxuICAgIC5jLXNob3dyb29tLXRleHQgLmMtY29sLTYge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgICBcdFxuXHR9XG4gICAgXG4gICAgLmMtY29tcGFyZS1yb3ctaGVhZGVyIC5jLWNvbC00LFxuICAgIC5jLWNvbXBhcmUtcm93IC5jLWNvbC00IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG5cdFx0LW1zLWZsZXg6IDAgMCA1MCU7XG5cdFx0ZmxleDogMCAwIDUwJTtcblx0XHRtYXgtd2lkdGg6IDUwJTsgICBcbiAgICB9XG4gICAgXG4gICAgLmMtY29tcGFyZS1yb3ctaGVhZGVyIC5jLWNvbC00Om50aC1jaGlsZCgzKSxcbiAgICAuYy1jb21wYXJlLXJvdyAuYy1jb2wtNDpudGgtY2hpbGQoMykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuYy1jb21wYXJlLXJvdy1oZWFkZXIgLmMtaDMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbiAgICB9XG4gICAgXG4gICAgLmMtY29tcGFyZS1yb3cge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NTFweCkgYW5kIChtYXgtd2lkdGg6ODIwcHgpIHsgIFxuICAgIC5jLWtleWZhY3RzLWxpc3QgZHQsXG4gICAgLmMta2V5ZmFjdHMtbGlzdCBkZCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgXG4gICAgfVxuICAgIFxuICAgIC5jLWtleWZhY3RzLWxpc3QgZHQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdC1saW5rcy1saXN0IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdC1saW5rcy1saXN0IGxpICsgbGkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC41ZW07XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjUxcHgpIHsgIFxuICAgIC5jLXByb2R1Y3QtaW5mbyBoMSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0wLjI1ZW07XG4gICAgfVxuXG4gICAgLmMtdGVhc2VyLWNvbnRhY3QtaWNvbiB7XG4gICAgICAgIFxuICAgICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIH1cblxuICAgIC5jLXRlYXNlci1jb250YWN0LXRleHQge1xuICAgICAgICBmbGV4OiAwIDAgNzUlO1xuICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjUwcHgpIHsgIFxuICAgIC5jLXRlYXNlci1iaWcgLmMtY29sLTcsXG4gICAgLmMtdGVhc2VyLWJpZyAuYy1jb2wtNSB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgICAgIG1heC13aWR0aDogOTEuNjY2NjclO1xuICAgIH1cbiAgICBcbiAgICAuYy1pbWctMmNvbCAuYy1jb2wtNiB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMtaW1nLTJjb2wgLmMtY29sLTYgKyAuYy1jb2wtNiAge1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdCAuYy1jb2wtNyxcbiAgICAuYy1wcm9kdWN0IC5jLWNvbC01IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuYy1wcm9kdWN0LWNvbnRhaW5lciAuYy1hc3ltLWxlZnQtZWRnZWxlc3MgLmMtcHJvZHVjdC1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tZ3JpZC1jb250YWluZXIpICogLTEpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xuICAgIH1cbiAgICBcbiAgICAuYy1wcm9kdWN0LWdhbGxlcnktbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgZ3JpZC1nYXA6IDA7XG4gICAgfVxuICAgIFxuICAgIC5jLXByb2R1Y3QtZ2FsbGVyeS1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgICAgICAgIFxuICAgICAgICBmbGV4OiAwIDAgMTAwdnc7XG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC5jLXByb2R1Y3QtZ2FsbGVyeS1tYWluIC5jLXByb2R1Y3QtZ2FsbGVyeS1pdGVtIHtcbiAgICAgICAgaGVpZ2h0OiAxMDB2dztcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdC1nYWxsZXJ5LXNsaWRlci1jb250cm9scyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItY29udGFjdC1pY29uIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG4gICAgXG4gICAgLmMtc2lkZWJhci1jb21wYXJlLWlubmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICB9XG5cblxuICAgICNzaWRlYmFyLWNvbXBhcmVbdHlwZT1jaGVja2JveF17XHRcbiAgICAgICAgJjpjaGVja2VkIH4gLmMtc2lkZWJhci1jb21wYXJlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1ODBweCkgeyAgXG5cdC5jLXRlYXNlci0zY29sIC5jLWNvbC00IHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICAgXHRcblx0fVxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1MzlweCkgeyAgXG5cdC5jLWZvb3Rlci1tYWluIC5jLWNvbC0zIHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICAgXHRcblx0fVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWcgLmMtY29sLTUge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgXG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1iaWcgLmMtYm94IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlY2huaWNhbC1saXN0IGR0LFxuICAgIC5jLXRlY2huaWNhbC1saXN0IGRkIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMtdGVjaG5pY2FsLWxpc3QgZHQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVjaG5pY2FsLWxpc3QgZGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLmMta2V5ZmFjdHMtbGlzdCBkdCxcbiAgICAuYy1rZXlmYWN0cy1saXN0IGRkIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMta2V5ZmFjdHMtbGlzdCBkdCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1jb29raWUtbm90aWNlIC5jLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo0NzBweCkgeyAgXG4gICAgLmMtcHJvZHVjdC1saW5rcy1saXN0IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMtcHJvZHVjdC1saW5rcy1saXN0IGxpICsgbGkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC41ZW07XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByaW50IENTU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSBwcmludCB7XG4gICAgLyogYmFzZSBzdHlsZXMgKi9cbiAgICAqIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cdFxuXHRhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICBcbiAgICAuYy1pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgICBhW2hyZWZdOmFmdGVyIHtcblx0XHRjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG5cdCAgfVxuICAgIFxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICAgIFxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyBcbiAgICB9XG4gICAgXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cbiAgICBcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgICAgIFxuICAgIEBwYWdlIHtcbiAgICAgICAgbWFyZ2luOiAwLjVjbTtcbiAgICB9XG4gICAgXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgIHdpZG93czogMztcbiAgICB9XG4gICAgXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBicmVhay1hZnRlcjphdm9pZDtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuICAgIFxuICAgIC8qIGZvbnQtc2l6ZXMgKi9cblx0XG5cdGh0bWwsXG5cdGJvZHkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHQvKm92ZXJmbG93OiBhdXRvOyovXG5cdH1cbiAgICBcbiAgICBib2R5IHtcbiAgICAgICAgZm9udC1zaXplOjEycHg7ICAgIFxuICAgIH1cblx0XG5cdGgxLCAuYy1oMSB7XG5cdFx0Zm9udC1zaXplOiAyNHB4O1xuXHR9XG5cdFxuXHQuYy1sZWFkLFxuXHQuYy10ZXh0LWJsb2NrIC5jLWxlYWQsXG5cdGgyLCAuYy1oMixcblx0aDMsIC5jLWgzLFxuXHQuYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgcCB7XG5cdFx0Zm9udC1zaXplOiAxNnB4O1xuXHR9XG5cdFxuXHQvKiBwcm9qZWN0IHN0eWxlcyAqL1xuXHQuYy1jb250YWluZXIge1xuXHRcdHBhZGRpbmctYm90dG9tOiAyZW07XG5cdH1cblx0XG5cdC5jLWZvb3RlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cblxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/