/*!***************************************************************************************************************************************************************************************************************!*\
  !*** 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
   ========================================================================== */
/*@import "../fonts/inlineFonts.scss";*/
/* Variables, Naming may vary from project to project */
/* ==========================================================================
   Fonts (see '_fonts.scss' for more information on license)
   ========================================================================== */
/* ==========================================================================
   Colors
   ========================================================================== */
/* text */
/* dark grey */
/* dark blue */
/* dark blue */
/* blue */
/* red */
/* background */
/* dark blue */
/* light grey */
/* line-colors */
/* form */
/* spacing */
/* grid */
/* ==========================================================================
   Custom Properties
   ========================================================================== */
:root {
  /* fonts */
  --font-stack-default: "Figtree", "Arial", "Helvetica", sans-serif;
  --font-weight-normal: 400;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --font-weight-medium: 400;
  /* text  */
  --text-color: #000; /* black */
  --text-color-light: #fff;
  --text-color-title: #000; /* dark blue */
  --text-color-medium: #666;
  --color-highlight: #285fc3; /* blue */
  --color-alert: #285FC3; /* blue */
  --color-secondary: #285fc3; /* blue */
  --color-nav-hover: #285fc3;
  /* background */
  --bg-content: #fff;
  --bg-dark: #00001D; /* blue dark */
  --bg-dark-2: #001540; /* blue medium */
  --bg-light: #F4F4F5;
  --bg-organigramm-l2: #285fc3;
  --bg-organigramm-l3: #d4dff3;
  --bg-gradient: linear-gradient(90deg, rgba(40,95,195,1) 10%, rgba(0,21,64,1) 50%, rgba(0,0,29,1) 100%);
  /* lines */
  --border-basic: #d1d4d5;
  --border-light: #E4E4E5;
  --border-width-thin: 2px;
  --border-width-thick: 4px;
  --border-width-fat: 4px;
  /*--border-light-blue: #616171;*/
  --border-light-blue: rgba(255,255,255, 0.3);
  /* spacing */
  --spacing-l: 6.5rem;
  --spacing-m: 4rem;
  --spacing-s: 1.5rem;
  --spacing-xs: 0.75rem;
  --spacing-organigramm-s: 20px;
  --padding-box: 1.5em 32px;
  --padding-news-item: 1.5em 0 0 32px;
  --header-inner-height: 96px;
  --header-inner-margin-top: 54px;
  --header-meta-height: 50px;
  --offcanvas-meta-position: calc(96px + 54px + 50px);
  /* form */
  --border-form: #00001D;
  --border-form-focus: #285fc3;
  --border-form-width: 2px;
  --form-disabled: #ccc;
  --color-form-error: #E0000C;
  --color-form-ok: #65a569;
  --color-form-initial: #1D1D1B;
  --color-form-placeholder: #999999;
  /* grid */
  --grid-container: 30px;
  --grid-row: -15px;
  --grid-col: 15px;
  --grid-row-form-half: -8px;
  --grid-col-form-half: 8px;
  /* font-sizes */
  --font-size-root: 18px;
  --font-size-h1: 3.33rem; /* 60px */
  --font-size-h2: 2.11rem; /* 38px */
  --font-size-h3: 1.33rem;
  --font-size-lead: 1.33rem;
  --font-size-body: 1rem;
  --font-size-body-s: 0.88rem;
  --font-size-body-xs: 0.77rem;
  --font-size-body-xxs: 0.66rem;
  --font-size-body-l: 1.77rem; /* 32px */
}

/* ==========================================================================
   Exeptions for different backgrounds
   ========================================================================== */
.c-text-light {
  --text-color-title: #fff; /* white */
}

/*.c-link-icon,
.c-link-bold {
    --text-color: #004087;
}*/
.c-text-light,
.c-text-light .c-link-icon,
.c-text-light .c-link-bold,
.c-search-result-list .c-active .c-box .c-link-icon,
.c-search-result-list .c-active .c-box .c-link-bold,
.c-search-result-list .c-active .c-box a,
.c-search-result-list .c-active .c-box {
  --text-color: #fff;
  --color-highlight: #fff;
  --text-color-title: #fff;
}

.c-text-light .c-btn {
  --text-color-light: #285fc3;
}

.c-text-light .c-btn:hover,
.c-text-light .c-btn:focus {
  --text-color-light: #fff;
}

.c-text-light .c-btn-secondary:hover,
.c-text-light .c-btn-secondary:focus,
.c-text-light .c-offcanvas-meta-list .c-btn-secondary:hover,
.c-text-light .c-offcanvas-meta-list .c-btn-secondary:focus {
  --text-color-light: #00001D;
}

.c-footer,
.c-offcanvas-nav {
  --color-highlight: #407cff; /* brighter blue */
  --color-nav-hover: #407cff;
}

/*.c-message-alert .c-text-light .c-btn {
   --color-highlight: #285FC3;
}*/
.c-bg-light .c-btn,
.c-cookie-notice .c-btn {
  --bg-light: #fff;
}

.c-search-result-list .c-active .c-accordion-title:focus,
.c-search-result-list .c-active .c-accordion-title:hover {
  --bg-light: transparent;
}

.c-search-result-list .c-active .c-accordion-container {
  --border-basic: var(--border-light-blue);
}

.c-header-sticky {
  --header-inner-height: 96px;
  --header-inner-margin-top: 0;
}

.c-header-sticky .c-offcanvas-inner {
  --header-inner-margin-top: 54px;
}

.c-organigramm {
  --bg-dark: #001540;
}

/* ==========================================================================
   Responsive Custom Properties
   ========================================================================== */
@media only screen and (min-width: 1200px) {
  :root {
    --grid-container: 40px;
    --grid-row: -20px;
    --grid-col: 20px;
    --padding-box: 1.8em 40px;
  }
}
@media only screen and (max-width: 980px) {
  :root {
    --spacing-l: 4.5rem;
    --spacing-m: 2rem;
    --spacing-organigramm-s: 10px;
    --header-inner-height: 90px;
    --header-inner-margin-top: 0;
  }
  .c-header-sticky {
    --header-inner-height: 82px;
  }
}
/*@import "common/_fonts";*/
/*! 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: #fff;
  background-color: var(--bg-content);
  color: #000;
  color: var(--text-color);
  font-family: "Figtree", "Arial", "Helvetica", sans-serif;
  font-family: var(--font-stack-default);
  font-weight: 300;
  font-weight: var(--font-weight-normal);
  -webkit-tap-highlight-color: transparent;
}

/* links */
a,
a:visited,
a:focus,
a:hover {
  color: #000;
  color: var(--text-color);
  text-decoration: 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,
.c-container-medium {
  position: relative;
  width: 100%;
  z-index: auto;
}

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

.c-main-title,
.c-showroom {
  margin-top: 6.5rem;
  margin-top: var(--spacing-l);
}

.c-container-no-padding {
  padding-bottom: 0;
}

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

.c-section-title h2.c-subtitle {
  padding-bottom: 0.75rem;
  padding-bottom: var(--spacing-xs);
}

.c-line-top {
  padding-top: 2.5rem;
}

.c-line-bottom {
  padding-bottom: 2.5rem;
  margin-bottom: 6.5rem;
  margin-bottom: var(--spacing-l);
}

/* contact snippet inside accordion */
.c-accordion-inner .c-line-bottom {
  margin-bottom: var(--spacing-s);
}

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

.c-teaser {
  padding-bottom: calc(6.5rem - 30px);
  padding-bottom: calc(var(--spacing-l) - var(--grid-container));
}

.c-news-teaser .c-col-4,
.c-overview-teaser .c-col-6 {
  padding-bottom: 6.5rem;
  padding-bottom: var(--spacing-l);
}

.c-news-teaser,
.c-map,
.c-overview-teaser {
  padding-bottom: 0;
}

.c-filter {
  padding-bottom: 2.5rem;
  padding-bottom: calc(var(--spacing-m) - var(--spacing-s));
}

.c-newsletter-registration,
.c-search-container,
.c-text-img-2col-wide {
  padding-top: 4rem;
  padding-top: var(--spacing-m);
  padding-bottom: 4rem;
  padding-bottom: var(--spacing-m);
  margin-bottom: 6.5rem;
  margin-bottom: var(--spacing-l);
}

.c-quicklinks-content-inner {
  padding-top: 4rem;
  padding-top: var(--spacing-m);
  padding-bottom: 4rem;
  padding-bottom: var(--spacing-m);
}

.c-search-container,
.c-map {
  margin-bottom: 4rem;
  margin-bottom: var(--spacing-m);
}

.c-message-alert {
  z-index: 2;
  padding-top: 1.5rem;
  padding-top: var(--spacing-s);
  padding-bottom: 1.5rem;
  padding-bottom: var(--spacing-s);
}

.c-search-result-title {
  padding-bottom: 4rem;
  padding-bottom: var(--spacing-m);
}

.c-text-only + .c-text-only,
.c-text-only + .c-accordion,
.c-text-only + .c-team-teaser {
  margin-top: -6.5rem;
  margin-top: calc(var(--spacing-l) * -1);
}

.c-text-only + .c-accordion {
  padding-top: -0.75rem;
  padding-top: calc(var(--spacing-xs) * -1);
}

.c-text-only + .c-team-teaser {
  padding-top: 0.75rem;
  padding-top: var(--spacing-xs);
}

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

.c-row {
  margin-right: -15px;
  margin-left: -15px;
  margin-left: var(--grid-row);
  margin-right: 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: 15px;
  padding-left: 15px;
  padding-left: var(--grid-col);
  padding-right: 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
   ========================================================================== */
.c-form-standard .c-col-4 .c-row,
.c-form-standard .c-col-6 .c-row {
  margin-right: -8px;
  margin-left: -8px;
  margin-left: var(--grid-row-form-half);
  margin-right: var(--grid-row-form-half);
}

.c-form-standard .c-col-4 .c-col-3,
.c-form-standard .c-col-4 .c-col-9,
.c-form-standard .c-col-6 .c-col-3,
.c-form-standard .c-col-6 .c-col-9 {
  padding-right: 8px;
  padding-left: 8px;
  padding-left: var(--grid-col-form-half);
  padding-right: var(--grid-col-form-half);
}

.c-asym-right-edgeless,
.c-asym-right-edgeless-medium {
  overflow: hidden;
}

.c-asym-right-edgeless-img,
.c-asym-right-edgeless-col {
  margin-right: -30px;
  margin-right: calc(var(--grid-container) * -1);
}

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

/* ==========================================================================
   Titles
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  text-wrap: balance;
}

h1,
.c-h1 {
  padding-bottom: 0.4em;
  line-height: 1.1;
  font-size: 3.33rem; /* 60px */
  font-size: var(--font-size-h1);
  color: #004087;
  color: var(--text-color-title);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

h2,
.c-h2 {
  padding-bottom: 0.5em;
  line-height: 1.25;
  font-size: 2.11rem; /* 38px */
  font-size: var(--font-size-h2);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

h2 span {
  font-weight: 400;
  font-weight: var(--font-weight-normal);
}

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

.c-news-teaser-big h3 {
  font-size: var(--font-size-h2);
}

h4, .c-h4 {
  font-size: 1rem;
  font-size: var(--font-size-body);
}

.c-subtitle {
  display: block;
  line-height: 1.2;
  font-size: 0.66rem;
  font-size: var(--font-size-body-xxs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  padding-bottom: 0.75em;
}

.c-main-title .c-subtitle {
  color: #004087;
  color: var(--text-color-title);
}

.c-message-alert .c-subtitle,
.c-message-alert h2 {
  padding-right: 40px;
}

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

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

.c-text-block 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,
.c-accordion-inner .c-contact + p,
.c-accordion-inner .c-contact + ul,
.c-accordion-inner .c-contact + h3,
.c-accordion-inner .c-contact + h4 {
  padding-top: 1.5em;
}

.c-accordion-inner p + .c-contact,
.c-accordion-inner ul + .c-contact {
  margin-top: 1.5em;
}

.c-text-only + .c-text-only h2:first-child,
.c-text-only + .c-text-only h3:first-child {
  padding-top: 1.5em;
}

.c-lead,
.c-showroom-box p {
  font-size: 1.33rem;
  font-size: var(--font-size-lead);
  font-weight: var(--font-weight-normal);
}

.c-filter-quicklinks {
  font-size: 1.33rem;
  font-size: var(--font-size-lead);
}

.c-lead + h1 {
  padding-top: 4rem;
  padidng-top: var(--spacing-m);
  padding-bottom: 0;
}

.c-text-small,
.c-text-block blockquote cite,
figcaption,
.c-offcanvas-meta,
.c-header-meta {
  font-size: 0.77rem; /* 14px */
  font-size: var(--font-size-body-xs);
}

figcaption {
  display: block;
  padding-top: 0.75rem;
  padding-top: var(--spacing-xs);
}

.c-footer-disclaimer,
.c-footer-nav-list ul,
.c-offcanvas-menu-content {
  font-size: 0.88rem; /* 16px */
  font-size: var(--font-size-body-s);
}

.c-text-big {
  /*font-size: 1.77rem; 
  font-size: var(--font-size-body-l);*/
  font-size: 1rem;
  font-size: var(--font-size-body);
}

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

.c-form-bullet-list {
  padding-top: 1em;
  padding-bottom: 0;
}

.c-text-block ul li,
.c-form-bullet-list li {
  position: relative;
  padding-left: 20px;
}

.c-text-block .c-link-list li,
.c-link-list li,
.c-text-block .c-category-list li {
  padding-left: 0;
}

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

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

.c-text-block .c-category-list li + li {
  margin-top: 0;
}

.c-text-block ul li::before,
.c-form-bullet-list li::before {
  content: "";
  position: absolute;
  top: 0.58em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #004087;
  background-color: var(--color-highlight);
}

.c-text-block .c-link-list li::before,
.c-text-block .c-showroom-box-list li::before {
  background-color: transparent;
}

.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;
  text-align: right;
}

.c-jobs-list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: solid 1px #d1d4d5;
  border-width: var(--border-width-thin);
  border-color: var(--border-basic);
}

.c-jobs-list li {
  padding: 1em 0;
  border-bottom: solid 1px #d1d4d5;
  border-width: var(--border-width-thin);
  border-color: var(--border-basic);
}

.c-specification-list {
  margin: 0;
  padding: 0 0 1.5em 0;
  border-top: solid 2px #d1d4d5;
  border-color: var(--border-basic);
}

.c-specification-list {
  overflow: hidden;
  display: flex;
  flex-flow: row wrap;
}

.c-specification-list dt,
.c-specification-list dd {
  margin: 0;
  padding: 0.75rem 0;
  padding: var(--spacing-xs) 0;
  border-bottom: solid 2px #d1d4d5;
  border-color: var(--border-basic);
}

.c-specification-list dt {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 60%;
  -ms-flex: 0 0 60%;
  flex: 0 0 60%;
  max-width: 60%;
  padding-right: 20px;
}

.c-specification-list dd {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 40%;
  -ms-flex: 0 0 40%;
  flex: 0 0 40%;
  max-width: 40%;
}

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

.c-text-block blockquote p {
  position: relative;
  padding: 0;
}

.c-text-block blockquote cite {
  display: block;
  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
   ========================================================================== */
.c-teaser 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 (min-width: 1440px) {
  .c-main-teaser h3,
.c-cross-teaser h3 {
    padding-bottom: 0.5em;
    line-height: 1.25;
    font-size: var(--font-size-h3);
  }
}
@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.66rem;
    --font-size-lead: 1.125rem;
  }
  .c-footer {
    font-size: 0.88rem;
    font-size: var(--font-size-body-s);
  }
}
@media only screen and (max-width: 1100px) {
  .c-main-nav {
    font-size: 0.88rem;
    font-size: var(--font-size-body-s);
  }
}
@media only screen and (max-width: 980px) {
  .c-offcanvas-menu-content {
    font-size: 1rem;
    font-size: var(--font-size-body);
  }
}
@media only screen and (max-width: 850px) {
  .c-news-teaser-big h3 {
    font-size: var(--font-size-h3);
  }
}
@media only screen and (min-width: 768px) {
  .c-offcanvas-nav-list > li span {
    font-size: 1.33rem;
  }
}
@media only screen and (min-width: 651px) and (max-width: 980px) {
  .c-filter-quicklinks {
    font-size: 0.88rem;
    font-size: var(--font-size-body-s);
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --font-size-h1: 1.85rem;
    --font-size-h2: 1.5rem;
    --font-size-h3: 1.125rem;
    --font-size-lead: 1.125rem;
    --font-size-body-l: 1.5rem;
  }
  .c-filter-list {
    font-size: 0.88rem; /* 16px */
    font-size: var(--font-size-body-s);
  }
  .c-organigramm,
.c-offcanvas-meta-list {
    font-size: 0.88rem;
    font-size: var(--font-size-body-s);
  }
}
@media only screen and (max-width: 650px) {
  .c-filter-quicklinks {
    font-size: 0.55rem;
    text-transform: uppercase;
  }
}
/* ==========================================================================
   Header
   ========================================================================== */
.c-header {
  background-color: #fff;
  background-color: var(--bg-content);
  z-index: 10;
}

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

.c-header-logo {
  position: relative;
  width: 350px;
  height: 88px;
}

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

/* ==========================================================================
   Header sticky 
   ========================================================================== */
.c-header-sticky {
  position: fixed;
  border-bottom: solid 1px #d2d4d5;
}

.c-header-sticky .c-header-inner {
  padding-top: 15px;
  padding-bottom: 15px;
}

.c-header-sticky .c-header-logo {
  position: relative;
  width: 270px;
  height: 67px;
}

.c-header-sticky .c-header-meta {
  display: none;
}

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

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

/* ==========================================================================
   main nav 
   ========================================================================== */
.c-main-nav {
  justify-content: flex-end;
  padding-right: 70px;
}

.c-main-nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

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

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

.c-main-nav-list a,
.c-main-anv-list a:visited {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.c-main-nav-list a:hover,
.c-main-nav-list a:focus {
  color: #545455;
  color: var(--color-nav-hover);
}

.c-main-nav-list a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  background-color: #004087;
  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 .c-active a::before {
  height: 4px;
  height: var(--border-width-fat);
}

/* ==========================================================================
   meta 
   ========================================================================== */
.c-header-meta {
  padding-top: 24px;
  height: 50px;
  height: var(--header-meta-height);
}

.c-header-meta-list,
.c-offcanvas-meta-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

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

.c-header-meta-list a,
.c-header-meta-list a:visited {
  color: #666666;
  color: var(--text-color-medium);
}

.c-header-meta-list a:focus,
.c-header-meta-list a:hover {
  color: #004087;
  color: var(--color-highlight);
}

/* ==========================================================================
   Footer
   ========================================================================== */
.c-footer {
  padding-top: 6.5rem;
  padding-bottom: 4rem;
  padding-top: var(--spacing-l);
  padding-bottom: var(--spacing-m);
  background-color: #004087;
  background-color: var(--bg-dark);
}

.c-footer-main {
  padding-bottom: 4rem;
  padding-bottom: var(--spacing-m);
  line-height: 1.7;
}

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

.c-footer-teaser {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  margin-bottom: 4rem;
  margin-bottom: var(--spacing-m);
  line-height: 1.2;
}

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

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

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

.c-footer-logo {
  position: relative;
  width: 350px;
  height: 88px;
  margin-bottom: 4rem;
  margin-bottom: var(--spacing-m);
}

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

.c-footer-social-list li {
  display: inline-block;
  padding: 0.5em 1em 0.5em 0;
}

/* ==========================================================================
   Footer teaser
   ========================================================================== */
.c-footer-teaser-list {
  display: flex;
  flex-flow: row wrap;
  margin-right: -15px;
  margin-left: -15px;
  margin-left: var(--grid-row);
  margin-right: var(--grid-row);
}

.c-footer-teaser-list li {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
  padding-right: 15px;
  padding-left: 15px;
  padding-left: var(--grid-col);
  padding-right: var(--grid-col);
  padding-top: 1em;
  padding-bottom: 1em;
}

.c-footer-teaser::before,
.c-footer-teaser::after {
  content: "";
  position: absolute;
  top: 0;
  left: 30px;
  left: var(--grid-container);
  width: calc(100% - 60px);
  width: calc(100% - var(--grid-container) * 2);
  height: 1px;
  height: var(--border-width-thin);
  background-color: #d1d4d5;
  background-color: var(--border-light-blue);
}

.c-footer-teaser::after {
  top: auto;
  bottom: 0;
}

/* ==========================================================================
   Disclaimer
   ========================================================================== */
.c-footer-disclaimer-list li {
  display: inline-block;
}

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

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

.c-offcanvas-trigger::before,
.c-offcanvas-trigger::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: 4px solid #004087;
  border-bottom: 4px solid #004087;
  border-color: var(--color-highlight);
}

.c-offcanvas-trigger-open::after {
  height: 4px;
  background-color: #004087;
  background-color: var(--color-highlight);
  margin-top: -2px;
}

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

.c-offcanvas-trigger-close::before,
.c-offcanvas-trigger-close::after {
  background-color: #004087;
  background-color: var(--color-highlight);
  margin-top: -2px;
  height: 4px;
  width: 26px;
  transition: all 0.5s;
}

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

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

.c-offcanvas-trigger-close:hover::before,
.c-offcanvas-trigger-close:hover::after {
  transform: rotate(0deg);
}

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

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

.c-offcanvas-inner .c-header-inner {
  margin-top: calc(var(--header-inner-margin-top) + var(--header-meta-height));
}

/* ==========================================================================
   Offcanvas Content
   ========================================================================== */
.c-offcanvas-content {
  padding-top: 0;
}

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

.c-offcanvas-meta-list {
  padding-bottom: 4rem;
}

.c-offcanvas-nav-list {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  margin-right: -15px;
  margin-left: -15px;
  margin-left: var(--grid-row);
  margin-right: var(--grid-row);
}

.c-offcanvas-nav-list > li {
  position: relative;
  flex: 0 0 25%;
  max-width: 25%;
  padding-top: 1em;
  padding-right: 15px;
  padding-left: 15px;
  padding-left: var(--grid-col);
  padding-right: var(--grid-col);
}

.c-offcanvas-menu-content {
  font-weight: var(--font-weight-extrabold);
}

.c-offcanvas-menu-content ul {
  padding-left: 0;
  margin-top: 1em;
  padding-bottom: 4rem;
  font-weight: 400;
  font-weight: var(--font-weight-normal);
}

.c-offcanvas-menu-content ul ul {
  /*margin-top: 0.75em;*/
  padding-left: 24px;
  padding-bottom: 3rem;
}

.c-offcanvas-menu-content li:first-child {
  margin-top: 1.1em;
}

.c-offcanvas-menu-content ul li:first-child {
  margin-top: 0;
}

.c-offcanvas-menu-content ul li + li {
  padding-top: 1em;
}

.c-offcanvas-menu-content ul ul li + li {
  padding-top: 0.65em;
}

.c-offcanvas-meta-list a,
.c-offcanvas-meta-list a:visited,
.c-offcanvas-nav-list a,
.c-offcanvas-nav-list a:visited {
  color: #004087;
  color: var(--color-highlight);
}

.c-offcanvas-meta-list a:hover,
.c-offcanvas-meta-list a:focus,
.c-offcanvas-nav-list a:hover,
.c-offcanvas-nav-list a:focus {
  color: #545455;
  color: var(--color-nav-hover);
}

.c-text-light .c-offcanvas-meta-list .c-btn-secondary:hover,
.c-text-light .c-offcanvas-meta-list .c-btn-secondary:focus {
  color: var(--text-color-light);
}

.c-offcanvas-nav-list span a {
  display: inline-block;
  position: relative;
  padding-bottom: 0.5em;
  transition: all 0.2s ease-in-out;
}

.c-offcanvas-nav-list span a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  background-color: #545455;
  background-color: var(--color-nav-hover);
  transition: all 0.2s linear;
}

.c-offcanvas-nav-list span a:focus::before,
.c-offcanvas-nav-list span a:hover::before,
.c-offcanvas-nav-list .c-active span a::before {
  height: 4px;
  height: var(--border-width-fat);
}

.c-offcanvas-menu-content a {
  display: inline-block;
  position: relative;
  padding: 0.25em;
  transition: all 0.2s ease-in-out;
}

.c-offcanvas-menu-content a::before {
  content: "";
  display: block;
  left: -4px;
  position: absolute;
  top: 50%;
  margin-top: -7px;
  height: 0;
  width: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 10px 10px 0;
  transform: rotate(-90deg);
  transition: all 0.2s ease-in-out;
}

.c-offcanvas-menu-content .c-active > a {
  padding-left: 24px;
}

.c-offcanvas-menu-content .c-active > a::before {
  border-color: var(--color-nav-hover) transparent transparent transparent;
}

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

.c-offcanvas-menu-title {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 1em 0 1em 54px;
  transition: all 0.2s ease-in-out;
  text-align: left;
  color: #004087;
  color: var(--text-color-title);
}

.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: calc(50% - 11px);
  border-radius: 0;
  transition: all 0.2s ease-out;
}

.c-offcanvas-menu-check:checked + label::after,
.c-offcanvas-menu-check:not(:checked) + label::after {
  left: 14px;
  margin-top: 9px;
  width: 22px;
  height: 4px;
  background-color: #004087;
  background-color: var(--color-highlight);
}

.c-offcanvas-menu-check:checked + label::before,
.c-offcanvas-menu-check:not(:checked) + label::before {
  left: 23px;
  width: 4px;
  height: 22px;
  background-color: transparent;
  transition: all 0.2s ease-in-out;
}

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

/* ==========================================================================
   Offcanvas Responsive
   ========================================================================== */
@media only screen and (min-width: 981px) {
  .c-offcanvas-menu-check,
.c-offcanvas-menu-title,
.c-offcanvas-menu-link-mobile {
    display: none;
  }
  .c-offcanvas-nav-list ul {
    margin-top: 1.1em;
  }
  .c-offcanvas-nav-list .c-offcanvas-menu-content {
    margin-top: 2.1em;
  }
}
@media only screen and (max-width: 980px) {
  .c-offcanvas-nav-list::before,
.c-offcanvas-nav-list > li::before {
    content: "";
    position: absolute;
    top: 0;
    left: 15px;
    left: var(--grid-col);
    width: calc(100% - 30px);
    width: calc(100% - var(--grid-container));
    height: 1px;
    height: var(--border-width-thin);
    background-color: #d1d4d5;
    background-color: var(--border-light-blue);
  }
  .c-offcanvas-nav-list::before {
    top: auto;
    bottom: 0;
  }
  .c-offcanvas-nav-list > li {
    flex: 0 0 100%;
    max-width: 100%;
    padding-top: 0;
  }
  .c-offcanvas-menu-title + span {
    display: none;
  }
  .c-offcanvas-menu-content {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
  }
  .c-offcanvas-menu-content > li {
    padding-left: 54px;
  }
  .c-offcanvas-menu-check:checked ~ .c-offcanvas-menu-content {
    max-height: 9999px;
    transition: max-height 0.3s cubic-bezier(1, 0, 1, 0);
    padding-bottom: 2em;
  }
  .c-offcanvas-menu-content ul {
    padding-bottom: 3rem;
  }
  .c-offcanvas-menu-content ul ul {
    padding-bottom: 2rem;
  }
  .c-offcanvas-menu-link-mobile {
    margin-bottom: 1.1em;
  }
}
@media only screen and (max-width: 767px) {
  .c-offcanvas-meta-list {
    display: block;
  }
  .c-offcanvas-meta-list li + li {
    padding-left: 0;
    padding-top: 1rem;
  }
}
@media only screen and (max-width: 600px) {
  .c-offcanvas-menu-title {
    padding: 1em 0 1em 32px;
  }
  .c-offcanvas-menu-content > li {
    padding-left: 32px;
  }
  .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 {
    top: calc(50% - 8px);
  }
  .c-offcanvas-menu-check:checked + label::after,
.c-offcanvas-menu-check:not(:checked) + label::after {
    left: 0;
    margin-top: 7px;
    width: 18px;
  }
  .c-offcanvas-menu-check:checked + label::before,
.c-offcanvas-menu-check:not(:checked) + label::before {
    left: 7px;
    height: 18px;
  }
}
@media only screen and (max-width: 440px) {
  .c-offcanvas-meta-list .c-btn-secondary {
    display: block;
    width: 100%;
  }
}
/* ==========================================================================
   Offcanvas nav open
   ========================================================================== */
#open-navigation:target {
  position: relative;
  top: auto;
  height: auto;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

#open-navigation:target .c-offcanvas-nav {
  width: 100%;
  height: 100vh;
  overflow-y: auto;
}
#open-navigation:target .c-offcanvas-trigger-open {
  display: none;
}
#open-navigation:target .c-quicknav-sticky,
#open-navigation:target .c-cookie-notice {
  z-index: 1;
}

/*@import "components/_tables";*/
/* ==========================================================================
   Colors
   ========================================================================== */
.c-bg-light {
  background-color: #F4F4F5;
  background-color: var(--bg-light);
}

.c-bg-dark {
  background-color: #004087;
  background-color: var(--bg-dark);
}

.c-message-alert {
  background-color: #285FC3;
  background-color: var(--color-alert);
}

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

.c-showroom .c-asym-right-edgeless-img {
  margin-left: -41.667%;
}

.c-showroom-box-list,
.c-text-block .c-showroom-box-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-text-block .c-showroom-box-list li {
  padding-left: 0;
}

/* ==========================================================================
  Breadcrumb / category list
   ========================================================================== */
.c-breadcrumb {
  line-height: 1;
  padding-top: 4rem;
  padding-top: var(--spacing-m);
  font-weight: var(--font-weight-medium);
  color: #004087;
  color: var(--color-highlight);
}

.c-breadcrumb a {
  color: #000;
  color: var(--text-color);
}

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

.c-breadcrumb ul,
.c-category-list,
.c-news-item-text .c-category-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-breadcrumb li,
.c-category-list li {
  position: relative;
  padding-right: 28px;
  margin-bottom: 0.75rem;
  margin-bottom: var(--spacing-xs);
}

.c-breadcrumb li:last-child,
.c-category-list li:last-child {
  position: relative;
  padding-right: 0;
}

.c-breadcrumb li::before,
.c-category-list li::before,
.c-text-block .c-category-list li::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(100% - 14px);
  width: 2px;
  width: var(--border-width-thin);
  height: 100%;
  background-color: #d1d4d5;
  border-color: var(--border-basic);
}

.c-breadcrumb li:last-child::before,
.c-category-list li:last-child::before {
  background: none;
}

.c-category-list {
  text-transform: uppercase;
}

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

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

.c-accordion-title {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 1em 0 1em 54px;
  transition: all 0.2s ease-in-out;
  text-align: left;
  color: #004087;
  color: var(--text-color-title);
}

.c-accordion-small .c-accordion-title {
  padding: 1em 0 1em 32px;
}

.c-accordion-title:focus,
.c-accordion-title:hover {
  background-color: #F4F4F5;
  background-color: var(--bg-light);
}

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

.c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before,
.c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 11px);
  border-radius: 0;
  transition: all 0.2s ease-out;
}

.c-accordion-small .c-accordion-check:checked + label::before,
.c-accordion-small .c-accordion-check:not(:checked) + label::before,
.c-accordion-small .c-accordion-check:checked + label::after,
.c-accordion-small .c-accordion-check:not(:checked) + label::after {
  top: calc(50% - 8px);
}

.c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after {
  left: 14px;
  margin-top: 9px;
  width: 22px;
  height: 4px;
  background-color: #004087;
  background-color: var(--color-highlight);
}

.c-accordion-small .c-accordion-check:checked + label::after,
.c-accordion-small .c-accordion-check:not(:checked) + label::after {
  left: 0;
  margin-top: 7px;
  width: 18px;
}

.c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before {
  left: 23px;
  width: 4px;
  height: 22px;
  background-color: transparent;
  transition: all 0.2s ease-in-out;
}

.c-accordion-small .c-accordion-check:checked + label::before,
.c-accordion-small .c-accordion-check:not(:checked) + label::before {
  left: 7px;
  height: 18px;
}

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

/* Contents */
.c-accordion-content {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
}

.c-accordion-inner {
  padding: 0.75rem 25% 4rem 54px;
  padding: var(--spacing-xs) 25% var(--spacing-m) 54px;
}

.c-accordion-small .c-accordion-inner {
  padding: 0.75rem 0 1.5rem 32px;
  padding: var(--spacing-xs) 0 var(--spacing-s) 32px;
}

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

/* contact snippet inside accordion */
.c-accordion-inner .c-contact {
  position: relative;
}

/* ==========================================================================
  main teaser / cross teaser / news teaser / overview teaser
   ========================================================================== */
.c-box {
  padding: 1.5em 32px;
  padding: var(--padding-box);
}

.c-box-border {
  border: solid 2px #d1d4d5;
  border-color: var(--border-basic);
  border-width: var(--border-width-thin);
}

.c-news-item,
.c-teaser-item {
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.c-teaser-item .c-link-arrow-big,
.c-news-item .c-link-arrow-big,
.c-news-item-text .c-link-arrow-big {
  pointer-events: none;
}

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

.c-main-teaser .c-teaser-item {
  color: #fff;
  background-color: #004087;
  background-color: var(--color-highlight);
}

/*.c-main-teaser .c-col-4:nth-child(4n+1) .c-teaser-item{
    background-color: var(--color-highlight);
}

.c-main-teaser .c-col-4:nth-child(5n+2) .c-teaser-item{
    background-color: var(--bg-dark-2);
}*/
.c-main-teaser .c-teaser-item h3 a,
.c-main-teaser .c-teaser-item .c-link-bold {
  color: #fff;
  color: var(--text-color-light);
}

.c-main-teaser .c-teaser-item:hover {
  background: var(--bg-gradient);
  color: var(--text-color-light);
}

.c-main-teaser .c-teaser-item:hover h3 a,
.c-main-teaser .c-teaser-item:hover .c-link-bold {
  color: var(--text-color-light);
}

.c-main-teaser .c-teaser-item:focus-within {
  background: var(--bg-gradient);
  color: var(--text-color-light);
}

.c-main-teaser .c-teaser-item:focus-within h3 a,
.c-main-teaser .c-teaser-item:focus-within .c-link-bold {
  color: var(--text-color-light);
}

.c-cross-teaser .c-teaser-item {
  background-color: #F4F4F5;
  background-color: var(--bg-light);
}

.c-cross-teaser .c-teaser-item h3 a,
.c-news-item h3 a {
  color: #000;
  color: var(--text-color);
}

.c-cross-teaser .c-teaser-item:hover {
  background: var(--bg-gradient);
}

.c-cross-teaser .c-teaser-item:hover,
.c-cross-teaser .c-teaser-item:hover h3 a,
.c-cross-teaser .c-teaser-item:hover .c-link-bold {
  color: var(--text-color-light);
}

.c-cross-teaser .c-teaser-item:focus-within {
  background: var(--bg-gradient);
}

.c-cross-teaser .c-teaser-item:focus-within,
.c-cross-teaser .c-teaser-item:focus-within h3 a,
.c-cross-teaser .c-teaser-item:focus-within .c-link-bold {
  color: var(--text-color-light);
}

.c-news-item-text,
.c-overview-item-text {
  border-left: solid 2px #d1d4d5;
  border-width: var(--border-width-thin);
  border-color: var(--border-basic);
  padding: 1.5em 0 0 32px;
  padding: var(--padding-news-item);
}

.c-news-teaser-big .c-news-item-text {
  border-left: none;
  border-top: solid 2px #d1d4d5;
  border-width: var(--border-width-thin);
  border-color: var(--border-basic);
  padding: 2.5em 0 0 0;
}

.c-news-item-text ul + h3 {
  padding-top: 0;
}

/*.c-news-item-text p {
    padding-bottom: 1em;
}*/
.c-ratiobox-news img {
  transition: all 0.2s ease-out;
}

.c-news-item:hover .c-ratiobox-news img {
  transform: scale(1.02);
}

.c-news-item:focus-within .c-ratiobox-news img {
  transform: scale(1.02);
}

.c-news-teaser-big .c-col-4,
.c-news-teaser-big .c-col-6 {
  position: unset;
}

/* crossteaser / mainteaser without smaller arrow */
.c-main-teaser .c-text-block p,
.c-cross-teaser .c-text-block p,
.c-news-item-text p {
  padding-bottom: 0.35em;
}

/* overview teaser */
.c-overview-item-text p + ul {
  padding-top: 1.25em;
}

/* ==========================================================================
  Lines
   ========================================================================== */
.c-line-top::before,
.c-line-bottom::after {
  content: "";
  position: absolute;
  left: 30px;
  left: var(--grid-container);
  width: calc(100% - 60px);
  width: calc(100% - var(--grid-container) * 2);
  height: 1px;
  height: var(--border-width-thin);
  background-color: #d1d4d5;
  background-color: var(--border-basic);
}

.c-line-top::before {
  top: 0;
}

.c-line-bottom::after {
  bottom: 0;
}

/* for contact snippet inside accordion */
.c-accordion-inner .c-line-top::before,
.c-accordion-inner .c-line-bottom:after {
  left: 0;
  width: 100%;
}

/* ==========================================================================
  Filter list / filter quicklinks
   ========================================================================== */
.c-filter-list,
.c-filter-quicklinks-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

.c-filter-list li {
  display: inline-block;
  padding-right: 2em;
  padding-bottom: 1.5rem;
  padding-bottom: var(--spacing-s);
}

.c-filter-list a,
.c-filter-quicklinks-list a {
  display: inline-block;
  position: relative;
  padding-bottom: 0.5em;
}

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

.c-filter-list a:hover,
.c-filter-list a:focus,
.c-filter-quicklinks-list a:hover,
.c-filter-quicklinks-list a:focus {
  color: #004087;
  color: var(--color-highlight);
}

.c-filter-list a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  background-color: #004087;
  background-color: var(--color-highlight);
  transition: all 0.2s linear;
}

.c-filter-list a:focus::before,
.c-filter-list a:hover::before,
.c-filter-list .c-active a::before {
  height: 4px;
  height: var(--border-width-fat);
}

/* ==========================================================================
   Filter quicklinks 
   ========================================================================== */
.c-filter-quicklinks {
  z-index: 1;
}

.c-filter-quicklinks-list {
  display: flex;
  flex-flow: row wrap;
}

.c-filter-quicklinks-list li {
  display: flex;
  flex-flow: column;
  flex: 0 0 25%;
  max-width: 25%;
  align-content: flex-end;
}

.c-filter-quicklinks-list a {
  flex-grow: 1;
  display: block;
  text-align: center;
  padding-top: 110px;
  padding-bottom: 1em;
}

.c-filter-quicklinks-list a::before {
  content: "";
  position: absolute;
  top: calc(100% - 30px);
  left: 50%;
  border: solid transparent;
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0);
  border-top-color: transparent;
  border-width: 16px 20px 0;
  margin-left: -20px;
  transition: all 0.2s linear;
}

.c-filter-quicklinks-list a:focus::before,
.c-filter-quicklinks-list a:hover::before,
.c-filter-quicklinks-list .c-active a::before {
  top: 100%;
  border-top-color: #fff;
  border-top-color: var(--text-color-light);
}

/* ==========================================================================
  quicklinks
   ========================================================================== */
.c-quicklinks-content-inner {
  background: #004087;
  background: var(--bg-gradient);
}

.c-quicklinks-list {
  display: flex;
  margin: 0 -15px;
  margin: 0 var(--grid-row);
  flex-flow: row wrap;
  padding: 0;
  list-style: none;
}

.c-quicklinks-list li {
  position: relative;
  padding: 1em 15px;
  padding: 1em var(--grid-col);
  flex: 0 0 100%;
  max-width: 100%;
}

.c-quicklinks-list li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 15px;
  left: var(--grid-col);
  width: calc(100% - 30px);
  width: calc(100% - var(--grid-col) * 2);
  height: 2px;
  height: var(--border-width-thin);
  background-color: #d1d4d5;
  background-color: var(--border-light-blue);
}

.c-quicklinks-list li:nth-child(1)::before {
  background-color: transparent;
}

/* ==========================================================================
   quick nav sticky
   ========================================================================== */
.c-quicknav-sticky {
  display: none;
  position: fixed;
  right: 0;
  top: 50%;
  z-index: 11;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.c-quicknav-sticky ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: bold;
}

.c-quicknav-sticky li {
  position: relative;
  height: 70px;
  margin-top: 2px;
  margin-bottom: 2px;
  margin-top: var(--border-width-thin);
  margin-top: var(--border-width-thin);
}

.c-quicknav-sticky a {
  display: block;
  position: absolute;
  top: 0;
  right: -190px;
  line-height: 70px;
  padding-left: 76px;
  width: 260px;
  background-color: #004087;
  background-color: var(--color-highlight);
  background: var(--bg-gradient);
  transition: all 0.25s ease;
}

.c-quicknav-sticky li:first-child a {
  border-radius: 20px 0 0 0;
}

.c-quicknav-sticky li:last-child a {
  border-radius: 0 0 0 20px;
}

.c-quicknav-sticky a,
.c-quicknav-sticky a:visited,
.c-quicknav-sticky a:focus,
.c-quicknav-sticky a:hover {
  color: #fff;
  color: var(--text-color-light);
}

.c-quicknav-sticky a:focus,
.c-quicknav-sticky a:hover {
  right: 0;
}

/* ==========================================================================
  map
   ========================================================================== */
.c-map {
  /*margin-bottom: 40px;*/
}

.c-map-inner {
  box-sizing: content-box;
  height: 600px;
  height: 65vh;
  background-color: #F4F4F5;
}

/* ==========================================================================
  search / search results
   ========================================================================== */
.c-search-result-list {
  margin: 0 -15px;
  margin-right: var(--grid-row);
  margin-left: var(--grid-row);
  padding: 0;
  list-style: none;
  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-search-result-list li {
  padding: 0 15px;
  padding-left: var(--grid-col);
  padding-right: var(--grid-col);
  -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-search-result-list li {
  padding-bottom: 30px;
  padding-bottom: var(--grid-container);
}

.c-search-result-list .c-active .c-box {
  border-color: #004087;
  border-color: var(--bg-dark);
  background-color: var(--bg-dark);
  color: var(--text-color-light);
}

/* ==========================================================================
  text img 2 col
   ========================================================================== */
.c-text-img-2col-wide {
  background-color: #F4F4F5;
  background-color: var(--bg-light);
}

.c-text-img-2col-wide figure {
  padding-bottom: 1.2em;
  padding-bottom: 1.2em;
}

/* ==========================================================================
  Organigramm
   ========================================================================== */
.c-organigramm-item {
  min-height: 6.2em;
  margin-bottom: 20px;
  margin-bottom: var(--spacing-organigramm-s);
}

.c-organigramm-bg-l1 {
  background-color: #004087;
  border-color: #004087;
  background-color: var(--bg-dark);
  border-color: var(--bg-dark);
}

/*.c-organigramm-bg-stab {
    background-color: $bg-light;
    border-color: $bg-light;
    background-color: var(--bg-light);
    border-color: var(--bg-light);
}*/
.c-organigramm-bg-l2,
.c-organigramm-bg-stab {
  background-color: #285fc3;
  border-color: #285fc3;
  background-color: var(--bg-organigramm-l2);
  border-color: var(--bg-organigramm-l2);
  color: var(--text-color-light);
}

.c-organigramm-bg-l3 {
  background-color: #d4dff3;
  border-color: #d4dff3;
  background-color: var(--bg-organigramm-l3);
  border-color: var(--bg-organigramm-l3);
  color: var(--text-color);
}

.c-organigramm-separator {
  margin: 0;
  padding: 0 0 6.5rem 0;
  padding-bottom: calc(var(--spacing-l) - var(--spacing-organigramm-s));
  height: 1px;
  border: none;
  background: none;
}

/* ==========================================================================
  Cookie notice
   ========================================================================== */
.c-cookie-notice {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 100%;
  padding: 1.5rem 32px;
  background-color: #004087;
  background: var(--bg-gradient);
  color: #fff;
  color: var(--text-color-light);
  line-height: 1.5;
  text-align: left;
  z-index: 20;
}

.c-cookie-notice p,
.c-cookie-notice ul {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.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: 650px) {
  .c-text-block .c-cookie-notice-list li {
    display: block;
  }
  .c-cookie-notice .c-btn {
    display: block;
    width: 100%;
  }
}
/* ==========================================================================
  Sub menu filter
   ========================================================================== */
.c-sub-menu-content {
  display: none;
  visibility: hidden;
}

/* Show the first sub menu container */
.c-sub-menu-content.c-active {
  display: block;
  visibility: visible;
}

/* ==========================================================================
   Link colors and styles
   ========================================================================== */
a[href^="tel:"] {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

.c-text-block a {
  background-image: linear-gradient(to bottom, #004087 0%, #004087 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: 4px 4px;
  transition: background 0.1s;
}

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

.c-text-small a {
  background-size: 2px 2px;
}

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

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

.c-footer-main a,
.c-footer-disclaimer a {
  background-size: 0 0;
  transition: background 0.1s;
}

.c-footer-main a:hover,
.c-footer-main a:focus,
.c-footer-disclaimer a:hover,
.c-footer-disclaimer a:focus {
  background-size: 1px 1px;
  transition: background 0.1s;
}

.c-text-block .c-btn,
.c-text-block .c-btn-secondary,
.c-text-block .c-link-icon,
.c-text-block .c-link-bold,
.c-teaser .c-text-block h3 a,
.c-news-teaser-big .c-text-block h3 a,
.c-text-block .c-showroom-box-list a {
  background-image: none;
}

/* ==========================================================================
   Button 
   ========================================================================== */
.c-btn,
.c-btn-secondary {
  display: inline-block;
  margin: 0;
  padding: 0.8em 24px 0.8em 24px;
  border: none;
  border-radius: 40px;
  line-height: 1.2;
  text-align: center;
  font-weight: bold;
  font-size: 1em;
  transition: all 0.2s ease-out;
  text-decoration: none;
}

.c-btn {
  background-color: #004087;
  background-color: var(--color-highlight);
}

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

.c-btn:hover,
.c-btn:focus {
  color: var(--text-color-light);
  background-color: var(--bg-dark);
}

.c-btn-secondary {
  border: solid 2px #004087;
  border-width: var(--border-width-thin);
  border-color: var(--color-highlight);
  background-color: transparent;
}

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

.c-btn-secondary:hover,
.c-btn-secondary:focus {
  color: #fff;
  color: var(--text-color-light);
  background-color: #004087;
  background-color: var(--color-highlight);
}

.c-btn-uploadfile {
  display: block;
  width: 100%;
}

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

.c-btn-close {
  position: absolute;
  display: block;
  top: 24px;
  right: 30px;
  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-btn-close::before,
.c-btn-close::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -2px;
  height: 4px;
  width: 26px;
  background-color: #fff;
  background-color: var(--text-color-light);
  transition: all 0.5s;
}

.c-btn-close::before {
  transform: rotate(-45deg);
}

.c-btn-close::after {
  transform: rotate(45deg);
}

.c-btn-close:hover::before,
.c-btn-close:hover::after {
  transform: rotate(0deg);
}

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

.c-icon::before,
.c-icon::after,
.c-main-nav-link-arrow::after {
  content: "";
  position: absolute;
  background-image: url(sprite_322c.svg);
  background-repeat: no-repeat;
}

.c-link-icon,
.c-link-bold {
  display: inline-block;
  padding-left: 32px;
  color: #000;
  color: var(--text-color);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

.c-link-arrow-big {
  padding-left: 48px;
  height: 28px;
  width: 48px;
  overflow: hidden;
  text-indent: 100%;
  color: transparent;
}

.c-link-arrow-big::before {
  top: 0;
  left: 0;
  width: 48px;
  height: 28px;
  background-position: 0 -620px;
}

.c-link-arrow-big:hover::before,
.c-link-arrow-big:focus::before {
  background-position: -50px -620px;
}

.c-text-light .c-link-arrow-big::before {
  background-position: -100px -620px;
}

/*.c-cross-teaser .c-teaser-item:hover .c-link-arrow-big::before {
	background-position: -150px -620px;
}

.c-main-teaser .c-teaser-item:hover .c-link-arrow-big::before {
    background-position: -150px -620px;
}

.c-main-teaser .c-teaser-item:focus-within .c-link-arrow-big::before {
    background-position: -150px -620px;
}

.c-cross-teaser .c-teaser-item:focus-within .c-link-arrow-big::before {
    background-position: -150px -620px;
}*/
/* test small arrows in teasers */
.c-main-teaser .c-link-arrow-big,
.c-cross-teaser .c-link-arrow-big,
.c-news-item .c-link-arrow-big {
  padding-left: 38px;
  width: 38px;
  height: 16px;
}

.c-main-teaser .c-link-arrow-big::before,
.c-cross-teaser .c-link-arrow-big::before,
.c-news-item .c-link-arrow-big::before {
  width: 38px;
  height: 16px;
}

.c-main-teaser .c-teaser-item .c-link-arrow-big::before {
  background-position: -100px 0;
}

.c-cross-teaser .c-teaser-item .c-link-arrow-big::before,
.c-news-item .c-link-arrow-big::before {
  background-position: 0 0;
}

.c-cross-teaser .c-teaser-item:hover .c-link-arrow-big::before {
  background-position: -150px 0;
}

.c-main-teaser .c-teaser-item:hover .c-link-arrow-big::before {
  background-position: -150px 0;
}

.c-main-teaser .c-teaser-item:focus-within .c-link-arrow-big::before {
  background-position: -150px 0;
}

.c-cross-teaser .c-teaser-item:focus-within .c-link-arrow-big::before {
  background-position: -150px 0;
}

.c-news-item:hover .c-link-arrow-big::before {
  background-position: -50px 0;
}

.c-news-item:focus-within .c-link-arrow-big::before {
  background-position: -50px 0;
}

/* end small arrows in teasers */
.c-link-arrow::before,
.c-link-back::before {
  top: 0.35em;
  left: 0;
  width: 38px;
  height: 16px;
  background-position: 0 0;
}

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

.c-text-light .c-link-arrow::before,
.c-search-result-list .c-active .c-link-arrow::before {
  background-position: -100px 0;
}

.c-text-light .c-link-arrow:hover::before,
.c-search-result-list .c-active .c-link-arrow:hover::before {
  background-position: -150px 0;
}

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

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

.c-link-download::before {
  top: 0.15em;
  left: 0;
  width: 16px;
  height: 20px;
  background-position: 0 -40px;
}

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

.c-text-light .c-link-download::before {
  background-position: -100px -40px;
}

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

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

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

.c-text-light .c-link-extern::before {
  background-position: -100px -80px;
}

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

.c-main-nav-link-arrow::after {
  top: 0.45em;
  right: 0;
  width: 14px;
  height: 8px;
  background-position: 0 -140px;
}

.c-link-reset::before {
  top: 0.2em;
  left: 0;
  width: 24px;
  height: 20px;
  background-position: 0 -360px;
}

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

.c-btn-search {
  position: absolute;
  top: 0;
  right: 15px;
  right: var(--grid-col);
  margin: 0;
  padding: 0;
  border: none;
  background-color: transparent;
  width: 54px;
  height: 100%;
}

.c-form-search-chimney .c-btn-search {
  right: 0;
}

.c-btn-search::before {
  top: 50%;
  right: 10px;
  width: 34px;
  height: 34px;
  margin-top: -16px;
  background-position: 0 -320px;
}

/* ==========================================================================
  icons
   ========================================================================== */
.c-footer-teaser-link {
  position: relative;
  display: inline-block;
  padding-left: 66px;
}

.c-footer-teaser-link span {
  display: block;
  font-weight: bold;
}

.c-footer-teaser-link::before,
.c-quicknav-link::before {
  content: "";
  position: absolute;
  background-image: url(sprite-icons_6996.svg);
  background-repeat: no-repeat;
  left: 0;
  top: 50%;
  width: 41px;
  height: 41px;
}

.c-footer-teaser-hotline::before {
  background-position: -100px 0;
  margin-top: -18px;
}

.c-footer-teaser-damage::before {
  background-position: -100px -80px;
  margin-top: -18px;
}

.c-footer-teaser-chimney::before {
  background-position: -100px -160px;
  margin-top: -18px;
}

.c-footer-teaser-weather::before {
  background-position: -100px -240px;
  margin-top: -20px;
}

.c-quicknav-link::before {
  left: 15px;
  width: 41px;
  height: 41px;
  margin-top: -20px;
}

.c-quicknav-contact::before {
  left: 16px;
  background-position: -100px 0;
}

.c-quicknav-damage::before {
  left: 18px;
  background-position: -100px -80px;
}

.c-quicknav-chimney::before {
  left: 16px;
  background-position: -100px -160px;
}

.c-quicknav-weather::before {
  background-position: -100px -240px;
}

.c-icon-quicklink::after {
  content: "";
  position: absolute;
  background-image: url(sprite-quicklinks_88f5.svg);
  background-repeat: no-repeat;
  left: 50%;
  top: 10px;
  width: 70px;
  height: 80px;
  margin-left: -35px;
}

.c-icon-quicklink-owner::after {
  background-position: 0 0;
}

.c-icon-quicklink-authority::after {
  background-position: 0 -120px;
}

.c-icon-quicklink-fire::after {
  background-position: 0 -240px;
}

.c-icon-quicklink-planner::after {
  background-position: 0 -360px;
}

.c-icon-reset {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 0.5em;
  right: 0;
  margin-top: -20px;
  cursor: pointer;
}

.c-icon-reset::before {
  top: 50%;
  right: 0;
  margin-top: -14px;
  width: 20px;
  height: 28px;
  background-position: 0 -400px;
}

.c-icon-reset:focus::before,
.c-icon-reset:hover::before {
  background-position: -50px -400px;
}

.c-icon-social {
  display: inline-block;
  position: relative;
  width: 40px;
  height: 41px;
  transition: all 0.2s ease-out;
  overflow: hidden;
}

.c-icon-social:hover {
  transform: scale(1.08);
}

.c-icon-social::before {
  top: 0;
  left: 0;
  width: 40px;
  height: 41px;
}

.c-icon-social-linkedin::before {
  background-position: 0 -440px;
}

.c-icon-social-facebook::before {
  background-position: 0 -560px;
}

.c-icon-social-instagram::before {
  background-position: 0 -500px;
}

/* ==========================================================================
  responsive
   ========================================================================== */
@media only screen and (min-width: 651px) {
  .c-icon-quicklink:hover::after,
.c-icon-quicklink:focus::after {
    margin-top: -6px;
    transition: 0.1s ease-in-out;
  }
}
@media only screen and (max-width: 650px) {
  .c-icon-quicklink::after {
    margin-left: -20px;
    width: 40px;
    height: 40px;
  }
  .c-icon-quicklink-owner::after {
    background-position: -150px 0;
  }
  .c-icon-quicklink-authority::after {
    background-position: -150px -120px;
  }
  .c-icon-quicklink-fire::after {
    background-position: -150px -240px;
  }
  .c-icon-quicklink-planner::after {
    background-position: -150px -360px;
  }
}
/* ==========================================================================
   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-4by3,
.c-ratiobox-news {
  padding-bottom: 75%;
}

.c-ratiobox-1by1 {
  padding-bottom: 100%;
}

.c-ratiobox-showroom,
.c-ratiobox-overview {
  padding-bottom: 66.666%;
}

.c-ratiobox > img,
.c-ratiobox-showroom img,
.c-ratiobox-news img,
.c-ratiobox-overview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

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

/* safari date fix */
input[type=date] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  min-height: 1em;
  padding: 0.65em 12px;
}

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

::placeholder {
  color: #999999;
  color: --color-form-placeholder;
  opacity: 1;
}

.c-form-item {
  position: relative;
  width: 100%;
  padding-bottom: 1.5em;
}

.c-form-item-inner {
  position: relative;
  width: 100%;
}

.c-form-item + h3,
.c-form-standard .c-row + h3,
.c-form-standard fieldset + h3 {
  margin-top: 1.5rem;
}

.c-form-standard .c-btn {
  min-width: calc(33.333% - var(--grid-col));
}

.c-form-info-text {
  display: block;
  padding-top: 0.5em;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
}

/* ==========================================================================
   formfields
   ========================================================================== */
.c-form-text,
.c-form-textarea,
.c-form-select {
  width: 100%;
  font-weight: 400;
  font-weight: var(--font-weight-normal);
}

.c-form-separator {
  padding-bottom: 2em;
}

.c-form-standard .c-form-text,
.c-form-standard textarea {
  width: 100%;
  border: solid 1px #8C9396;
  border-width: var(--border-form-width);
  border-color: var(--border-form);
  color: #000;
  color: var(--text-color);
  padding: 0.65em 12px;
  background-color: #fff;
  background-color: var(--bg-content);
}

.c-form-standard input[type=file] {
  width: 100%;
}

.c-form-standard .c-form-text-search {
  padding-right: 50px;
}

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

.c-form-standard .c-form-text:focus,
.c-form-standard textarea:focus {
  border-color: #004087;
  border-color: var(--border-form-focus);
  outline: none;
}

.c-form-standard .c-form-text: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,
.c-form-standard label {
  display: block;
  padding-bottom: 0.5em;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
}

.c-form-list-vertical,
.c-form-list-horizontal {
  margin: 0;
  padding: 0.5em 0 0 0;
  list-style: none;
}

.c-form-list-horizontal {
  display: flex;
  flex-flow: row wrap;
}

.c-form-list-horizontal li {
  padding-right: 1.5em;
}

.c-form-list-vertical li + li {
  margin-top: -0.5em;
}

/* ==========================================================================
   checkbox / radios
   ========================================================================== */
.c-form-checkbox,
.c-form-radio {
  position: absolute;
  left: -9999px;
}

.c-form-checkbox:checked + label,
.c-form-checkbox:not(:checked) + label,
.c-form-radio:checked + label,
.c-form-radio:not(:checked) + label {
  position: relative;
  display: inline-block;
  padding-left: 50px;
  padding-top: 0.3em;
  font-size: 1rem;
  font-size: var(--font-size-body);
  line-height: 1.5;
  cursor: pointer;
  user-select: none;
  min-height: 34px;
  vertical-align: baseline;
}

.c-form-checkbox:checked + label::before,
.c-form-checkbox:not(:checked) + label::before,
.c-form-radio:checked + label::before,
.c-form-radio:not(:checked) + label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 30px;
  height: 30px;
  border: 1px solid #8C9396;
  background-color: #fff;
  border-width: var(--border-form-width);
  border-color: var(--border-form);
  background-color: var(--bg-content);
  transition: all 0.2s ease-in-out;
}

.c-form-radio:checked + label::before,
.c-form-radio:not(:checked) + label::before {
  border-radius: 50%;
}

.c-form-checkbox:focus + label::before,
.c-form-radio:focus + label::before {
  border-color: #004087;
  background-color: #fff;
  border-color: var(--border-form-focus);
  background-color: var(--bg-content);
}

.c-form-checkbox:checked + label::before,
.c-form-radio:checked + label::before {
  background-color: #fff;
  background-color: var(--bg-content);
}

.c-form-checkbox:checked + label::after,
.c-form-checkbox:not(:checked) + label::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(0.15em + 2px);
  left: 9px;
  transition: all 0.2s ease-in-out;
  width: 12px;
  height: 20px;
  border: solid #004087;
  border-width: 0 4px 4px 0;
  transform: rotate(45deg);
  border-color: var(--color-highlight);
}

.c-form-radio:checked + label::after,
.c-form-radio:not(:checked) + label::after {
  content: "";
  display: block;
  position: absolute;
  top: calc(0.15em + 5px);
  left: 5px;
  transition: all 0.2s ease-in-out;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background-color: #004087;
  background-color: var(--color-highlight);
}

.c-form-checkbox:not(:checked) + label::after {
  opacity: 0;
}

.c-form-radio:not(:checked) + label::after {
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}

.c-form-checkbox:checked + label::after {
  opacity: 1;
}

.c-form-radio:checked + label::after {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.c-form-checkbox:disabled + label::before,
.c-form-checkbox:disabled + label::after,
.c-form-radio:disabled + label::before,
.c-form-radio:disabled + label::after {
  color: #ccc;
  border-color: #ccc;
  border-color: var(--form-disabled);
  color: var(--form-disabled);
}

/* ==========================================================================
   dropdown
   ========================================================================== */
.c-form-standard .c-form-select,
.c-form-standard select {
  display: block;
  padding: 0.65em 40px 0.65em 12px !important;
  width: 100%;
  height: auto !important;
  border: 1px solid #8C9396;
  border-width: var(--border-form-width);
  border-color: var(--border-form);
  border-radius: 0;
  background: url(icon-form-arrow_6c34.svg) right center no-repeat;
  background-color: #fff;
  color: #000;
  background-color: var(--bg-content);
  color: var(--text-color);
  font-size: 100%;
  line-height: 1.4rem !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.c-form-standard select:focus {
  border-color: #004087;
  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;
  border-color: #ccc;
  color: var(--form-disabled);
  border-color: var(--form-disabled);
}

/* ==========================================================================
   form cover
   ========================================================================== */
.c-form-cover-container {
  position: relative;
}

.c-form-cover-item {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  background-color: var(--bg-content);
  opacity: 0.7;
}

/* ==========================================================================
   loader
   ========================================================================== */
.c-form-send {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.c-form-send .c-btn + .c-loader {
  margin-left: 1em;
}

.c-loader {
  display: none;
  width: 32px;
  height: 32px;
  border: 4px solid #d1d4d5;
  border-color: var(--border-basic);
  border-bottom-color: #004087;
  border-bottom-color: var(--color-highlight);
  border-radius: 50%;
  animation: rotation 1s linear infinite;
}

/*.c-form-item-loading .c-form-text,
.c-form-item-loading .c-form-select {
    opacity: 0.3;
}*/
.c-form-item-loading .c-loader {
  display: inline-block;
  position: absolute;
  bottom: calc(1.5em + 9px);
  right: 10px;
  /*right: 50%;
  margin-right: -16px;*/
}

.c-form-send.c-form-item-loading .c-loader {
  position: relative;
  bottom: auto;
  right: auto;
  margin-right: 0;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* ==========================================================================
   error
   ========================================================================== */
.c-form-message-box {
  border: solid 1px #004087;
  border-width: var(--border-form-width);
  border-color: var(--color-highlight);
  color: #004087;
  color: var(--color-highlight);
  margin-bottom: 1.5rem;
  margin-bottom: var(--spacing-s);
}

.c-form-message-box-error {
  border-color: #E0000C;
  border-color: var(--color-form-error);
  color: #E0000C;
  color: var(--color-form-error);
}

.c-form-message-box-ok {
  border-color: #65a569;
  border-color: var(--color-form-ok);
  color: #65a569;
  color: var(--color-form-ok);
}

.text-danger {
  display: none;
  font-size: 0.77rem;
  font-size: var(--font-size-body-xs);
}

/* error message*/
.has-error label,
.text-danger,
.text-danger-non-js-override,
.has-error .c-form-label-text {
  color: #E0000C;
  color: var(--color-form-error);
}

.has-error .text-danger {
  display: block;
  padding-top: 0.5em;
}

.has-error .c-form-checkbox + label::before,
.has-error .c-form-radio + label::before,
.has-error .c-form-text,
.has-error .c-form-textarea,
.has-error .c-form-select,
.has-error textarea {
  border-color: #E0000C;
  border-color: var(--color-form-error);
}

.has-error .c-form-list-horizontal + .text-danger {
  margin-top: -2em;
  padding-bottom: 1.5em;
}

.c-form-info-text {
  display: block;
  padding-top: 0.5em;
  font-size: var(--font-size-body-xs);
}

/*@import "components/_social-media";*/
/* styles for every project */
/* ==========================================================================
   Viewport
   ========================================================================== */
@-ms-viewport {
  width: device-width;
}
/* ==========================================================================
   Mediaqueries
   ========================================================================== */
@media only screen and (min-width: 1660px) {
  /* container max width */
  .c-container-medium {
    max-width: 1640px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-asym-right-edgeless-medium .c-container {
    margin-left: 120px;
  }
  .c-asym-right-edgeless-medium {
    max-width: none;
    width: calc(820px + 50%);
  }
}
@media only screen and (min-width: 1340px) {
  /* container max width */
  .c-container,
.c-main-teaser,
.c-cross-teaser {
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-asym-right-edgeless {
    max-width: none;
    width: calc(660px + 50%);
  }
  /*.c-asym-right-edgeless-medium  {
      max-width: none;
      width: calc(820px + 50%);
  }*/
  .c-asym-right-edgeless,
.c-asym-right-edgeless-medium {
    margin-right: 0;
  }
  .c-showroom .c-asym-col-grid {
    flex: 0 0 790px;
    max-width: 790px;
  }
  .c-showroom .c-asym-col-edgeless {
    flex: 0 0 calc(100% - 790px);
    max-width: calc(100% - 790px);
  }
  .c-showroom .c-asym-right-edgeless-img {
    margin-left: -250px;
  }
}
@media only screen and (max-width: 1200px) {
  .c-header-logo {
    width: 280px;
    height: 70px;
  }
}
@media only screen and (min-width: 981px) {
  .c-quicklinks-list li {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .c-quicklinks-list li:nth-child(2)::before,
.c-quicklinks-list li:nth-child(3)::before {
    background-color: transparent;
  }
  .c-quicknav-sticky {
    display: block;
  }
  .c-offcanvas-meta-list {
    position: absolute;
    padding-top: 24px;
    top: calc(var(--offcanvas-meta-position) * -1);
    right: 30px;
    right: var(--grid-container);
  }
}
@media only screen and (min-width: 651px) and (max-width: 980px) {
  .c-quicklinks-list li {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-quicklinks-list li:nth-child(2)::before {
    background-color: transparent;
  }
}
@media only screen and (max-width: 980px) {
  .c-footer-teaser-list li,
.c-footer-nav-list > li {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-teaser .c-col-4,
.c-form-newsletter .c-col-4,
.c-form-search .c-col-4,
.c-search-result-list li {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-organigramm .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 1000%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-organigramm .c-row-l2 .c-organigramm-item,
.c-organigramm .c-row-stab .c-organigramm-item {
    margin-left: 8.333%;
  }
  .c-organigramm .c-row-l3 .c-organigramm-item {
    margin-left: 16.667%;
  }
  .c-organigramm .c-row-l4 .c-organigramm-item {
    margin-left: 25%;
  }
  .c-text-only .c-col-8,
.c-main-title .c-col-8,
.c-section-title .c-col-8,
.c-img-content .c-col-8 {
    -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-accordion-inner {
    padding-right: 17%;
  }
  .c-showroom, .c-main-title {
    margin-top: var(--spacing-m);
  }
  .c-news-teaser-big .c-col-4 {
    -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-news-link-all .c-col-10 {
    -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%;
  }
}
/* header show offcanvas */
@media only screen and (max-width: 980px) {
  .c-main-nav,
.c-header-meta {
    display: none;
  }
  .c-header-logo,
.c-footer-logo {
    width: 250px;
    height: 62px;
  }
}
@media only screen and (max-width: 900px) {
  .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 (max-width: 850px) {
  .c-form-standard .c-col-4,
.c-form-standard .c-col-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-news-teaser-big .c-col-4,
.c-news-teaser-big .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-news-link-all .c-col-10 {
    -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: 767px) {
  .c-text-only .c-col-8,
.c-main-title .c-col-8,
.c-section-title .c-col-8,
.c-img-content .c-col-8,
.c-text-img-2col-wide .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-2col-wide .c-col-6:first-child {
    padding-bottom: 6.5rem;
    padding-bottom: var(--spacing-l);
  }
  .c-accordion-inner {
    padding-right: 0;
  }
  .c-footer-main .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-top: 4rem;
    padding-top: var(--spacing-m);
  }
  .c-footer-main .c-col-4:first-child {
    padding-top: 0;
  }
  .c-footer-teaser {
    margin-bottom: 1.5rem;
    margin-bottom: var(--spacing-s);
  }
  .c-footer-disclaimer::before {
    background-color: transparent;
  }
  .c-footer-nav-list {
    display: block;
    margin-left: 0;
    margin-right: 0;
  }
  .c-footer-nav-list > li {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    border-bottom: solid 1px #d1d4d5;
    border-color: var(--border-basic);
  }
  .c-footer-nav-list ul {
    padding: 0;
  }
  .c-footer-nav-list ul li {
    padding-left: 32px;
  }
  .c-footer-nav-list ul ul {
    padding-bottom: 1.5em;
  }
  .c-footer-nav-list ul ul li {
    padding-left: 0;
  }
  .c-footer-menu-title + span {
    display: none;
  }
  .c-footer-menu-title {
    display: block;
  }
  .c-footer-menu-content {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
  }
  .c-footer-menu-check:checked ~ .c-footer-menu-content {
    max-height: 9999px;
    transition: max-height 0.3s cubic-bezier(1, 0, 1, 0);
  }
  .c-showroom-text .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%;
  }
  .c-contact .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-contact .c-col-6 + .c-col-6 {
    padding-top: 1.5em;
  }
  .c-form-standard .c-btn {
    min-width: calc(50% - var(--grid-col));
  }
  .c-organigramm-item {
    padding: 0.5em 15px;
    min-height: 0;
  }
}
@media only screen and (min-width: 651px) {
  /*.c-news-teaser .c-col-4,*/
  .c-teaser .c-col-4,
.c-search-result-list li {
    display: flex;
    flex-direction: column;
  }
  /*.c-news-item,*/
  .c-teaser-item,
.c-search-result-list .c-box {
    flex-grow: 1;
  }
}
@media only screen and (max-width: 650px) {
  .c-teaser .c-col-4,
.c-news-teaser-big .c-col-4,
.c-news-teaser-big .c-col-6,
.c-search-result-list li,
.c-overview-teaser .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-filter-quicklinks-list a {
    padding: 60px 5px 1em 5px;
    transition: all 0.2s linear;
  }
  .c-filter-quicklinks-list a::before,
.c-filter-quicklinks-list a:focus::before,
.c-filter-quicklinks-list a:hover::before,
.c-filter-quicklinks-list .c-active a::before {
    border-width: 8px 10px 0;
    margin-left: -10px;
  }
  .c-form-standard .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-form-standard .c-btn {
    min-width: 0;
    width: 100%;
  }
  /*.c-form-newsletter .c-col-4 + .c-col-4 {
      padding-top: 1.5em;
  }*/
  .c-form-send {
    display: block;
  }
  .c-form-item-loading .c-btn + .c-loader {
    display: block;
    margin: 1em auto 0 auto;
  }
  .c-showroom .c-col-5,
.c-showroom .c-col-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-top: 0;
  }
  .c-showroom .c-col-7 {
    padding-top: 1.5rem;
    padding-top: var(--spacing-s);
  }
  .c-showroom .c-asym-right-edgeless-img {
    margin-left: 0;
  }
  .c-news-teaser-big .c-news-item-text {
    padding: var(--padding-news-item);
    border-top: none;
    border-left: solid 2px #d1d4d5;
    border-width: var(--border-width-thin);
    border-color: var(--border-basic);
  }
}
@media only screen and (max-width: 600px) {
  .c-footer-teaser-list li,
.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%;
  }
  .c-footer-disclaimer .c-col-6 {
    text-align: left;
  }
  .c-footer-disclaimer-list li {
    padding-bottom: 1.5rem;
    padding-bottom: var(--spacing-s);
  }
  .c-accordion-title {
    padding: 0.75em 0 0.75em 32px;
  }
  .c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before,
.c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after {
    top: calc(50% - 8px);
  }
  .c-accordion-check:checked + label::after,
.c-accordion-check:not(:checked) + label::after {
    left: 0;
    margin-top: 7px;
    width: 18px;
  }
  .c-accordion-check:checked + label::before,
.c-accordion-check:not(:checked) + label::before {
    left: 7px;
    height: 18px;
  }
  .c-accordion-inner {
    padding-left: 0;
  }
}
@media only screen and (max-width: 440px) {
  .c-header-logo,
.c-footer-logo {
    width: 200px;
    height: 50px;
  }
}
@media only screen and (max-width: 375px) {
  .c-icon-quicklink span {
    display: block;
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }
}
/* ==========================================================================
   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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QTtBQUlBOzs7Ozs7RUFNSTtFQUNBO0VBQ0E7QU5rMkJKOztBTS8xQkE7OytFQUFBO0FBSUE7O0VBRUMsc0JMd0JXO0VLdkJSO0FOaTJCSjs7QU05MUJBOztFQUVDLGtCTGtCVztFS2pCUjtBTmkyQko7O0FNNzFCQTtFQUNDO0FOZzJCRDs7QU03MUJBO0VBQ0MsdUJMV1k7RUtWVDtBTmcyQko7O0FNMzFCQTtFQUNJLHVCTElTO0VLSFQ7QU44MUJKOztBTTMxQkE7RUFDSTtBTjgxQko7O0FNMzFCQTtFQUNJO0VBQ0EscUJMVFE7RUtVUjtBTjgxQko7O0FNMzFCQTtBQUNBO0VBQ0k7QU44MUJKOztBTTMxQkE7RUFDSSxvQkxiYTtFS2NiO0FOODFCSjs7QU0zMUJBO0VBQ0k7RUFDQTtBTjgxQko7O0FNMzFCQTs7RUFFSSxzQkw5QlE7RUsrQlI7QU44MUJKOztBTTMxQkE7OztFQUdJO0FOODFCSjs7QU0zMUJBO0VBQ0k7RUFDQTtBTjgxQko7O0FNMTFCQTs7O0VBR0ksaUJMaERRO0VLaURSO0VBQ0Esb0JMbERRO0VLbURSO0VBQ0EscUJMckRRO0VLc0RSO0FONjFCSjs7QU0xMUJBO0VBQ0ksaUJMekRRO0VLMERSO0VBQ0Esb0JMM0RRO0VLNERSO0FONjFCSjs7QU0xMUJBOztFQUVJLG1CTGpFUTtFS2tFUjtBTjYxQko7O0FNMTFCQTtFQUNJO0VBQ0EsbUJMdEVRO0VLdUVSO0VBQ0Esc0JMeEVRO0VLeUVSO0FONjFCSjs7QU0xMUJBO0VBQ0Msb0JMOUVXO0VLK0VSO0FONjFCSjs7QU0xMUJBOzs7RUFHSTtFQUNBO0FONjFCSjs7QU0xMUJBO0VBQ0k7RUFDQTtBTjYxQko7O0FNMTFCQTtFQUNJLG9CTDdGUztFSzhGVDtBTjYxQko7O0FNMTFCQTs7K0VBQUE7QUFJQTs7RUFFSSxrQkxwR2E7RUtxR2IsbUJMckdhO0VLc0diO0VBQ0E7QU40MUJKOztBTXoxQkE7RUFDSSxtQkwxR087RUsyR1Asa0JMM0dPO0VLNEdQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNJO0VBQ0k7QU40MUJaOztBTXoxQkE7RUFDSTtBTjQxQko7O0FNejFCQTtFQUNJO0FONDFCSjs7QU16MUJBO0VBQ0k7QU40MUJKOztBTXoxQkE7RUFDSTtBTjQxQko7O0FNejFCQTtFQUNJO0FONDFCSjs7QU16MUJBO0VBQ0k7QU40MUJKOztBTXoxQkE7RUFDSTtBTjQxQko7O0FNejFCQTtFQUNJO0FONDFCSjs7QU16MUJBO0VBQ0k7QU40MUJKOztBTXoxQkE7Ozs7Ozs7Ozs7OztFQVlJO0VBQ0E7RUFDQSxtQkwxS087RUsyS1Asa0JMM0tPO0VLNEtQO0VBQ0E7QU40MUJKOztBTXoxQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FONDFCSjs7QU16MUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjQxQko7O0FNejFCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40MUJKOztBTXoxQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FONDFCSjs7QU16MUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjQxQko7O0FNejFCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40MUJKOztBTXoxQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FONDFCSjs7QU16MUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjQxQko7O0FNejFCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40MUJKOztBTXoxQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FONDFCSjs7QU16MUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTjQxQko7O0FNejFCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU40MUJKOztBTXoxQkE7QUFDQTtFQUNFO0FONDFCRjs7QU16MUJBO0VBQ0U7QU40MUJGOztBTXoxQkE7RUFDRTtBTjQxQkY7O0FNejFCQTtFQUNFO0FONDFCRjs7QU16MUJBO0VBQ0U7QU40MUJGOztBTXoxQkE7RUFDRTtBTjQxQkY7O0FNejFCQTtFQUNFO0FONDFCRjs7QU16MUJBO0VBQ0U7QU40MUJGOztBTXoxQkE7RUFDRTtBTjQxQkY7O0FNejFCQTtFQUNFO0FONDFCRjs7QU16MUJBO0VBQ0U7QU40MUJGOztBTXoxQkE7OytFQUFBO0FBSUE7O0VBRUksa0JMalVpQjtFS2tVakIsaUJMbFVpQjtFS21VakI7RUFDQTtBTjIxQko7O0FNeDFCQTs7OztFQUlJLGtCTDFVaUI7RUsyVWpCLGlCTDNVaUI7RUs0VWpCO0VBQ0E7QU4yMUJKOztBTXgxQkE7O0VBRUk7QU4yMUJKOztBTXgxQkE7O0VBRUk7RUFDQTtBTjIxQko7O0FPM3VDQTs7K0VBQUE7QUFHQTtFQUNDO0VBQ0c7QVA4dUNKOztBTzN1Q0E7OytFQUFBO0FBSUE7Ozs7OztFQU1DO0VBQ0E7RUFDRztBUDZ1Q0o7O0FPenVDQTs7RUFFQztFQUNBO0VBQ0E7RUFDRztFQUNBLGNOYmU7RU1jZjtFQUNBO0VBQ0E7QVA0dUNKOztBT3h1Q0E7O0VBRUM7RUFDQTtFQUNBO0VBQ0c7RUFDQTtFQUNBO0FQMnVDSjs7QU94dUNBO0VBQ0k7RUFDQTtBUDJ1Q0o7O0FPeHVDQTs7RUFFQztFQUNBO0VBQ0c7RUFDSDtFQUNHO0VBQ0E7QVAydUNKOztBT3h1Q0E7RUFDSTtBUDJ1Q0o7O0FPeHVDQTtFQUNJO0VBQ0E7QVAydUNKOztBT3Z1Q0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDB1Q0o7O0FPdnVDQTtFQUNJLGNObEVlO0VNbUVmO0FQMHVDSjs7QU90dUNBOztFQUVJO0FQeXVDSjs7QU9ydUNBOzsrRUFBQTtBQUlBOztFQUVDO0FQdXVDRDs7QU9wdUNBOztFQUVDO0FQdXVDRDs7QU9wdUNBO0VBQ0k7QVB1dUNKOztBT3B1Q0E7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnQkM7QVB1dUNEOztBT3B1Q0E7O0VBRUM7QVB1dUNEOztBT3B1Q0E7O0VBRUk7QVB1dUNKOztBT3B1Q0E7O0VBRUM7RUFDRztFQUNBO0FQdXVDSjs7QU9wdUNBO0VBQ0M7RUFDRztBUHV1Q0o7O0FPcHVDQTtFQUNJLGlCTjVHUTtFTTZHUjtFQUNBO0FQdXVDSjs7QU9wdUNBOzs7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QUNBO0VBQ0E7RUFDSDtBVis3REQ7O0FVMzdEQztFQUNDO0VBQ0E7RUFDQTtBVjg3REY7QVUzN0RDO0VBQ0M7QVY2N0RGO0FVMTdESTs7RUFFSTtBVjQ3RFI7O0FBcjVFQTtBV3hCQTs7K0VBQUE7QUFJQTtFQUNDLHlCVm9CVTtFVW5CUDtBWGc3RUo7O0FXNzZFQTtFQUNDLHlCVmNTO0VVYk47QVhnN0VKOztBVzc2RUE7RUFDQyx5QlZHYTtFVUZWO0FYZzdFSjs7QVc1NkVBOzsrRUFBQTtBQUlBO0VBQ0M7QVg4NkVEOztBVzM2RUE7RUFDRTtBWDg2RUY7O0FXMTZFQTs7RUFFSTtFQUNBO0VBQ0E7QVg2NkVKOztBVzE2RUE7RUFDSTtBWDY2RUo7O0FXejZFQTs7K0VBQUE7QUFHQTtFQUNJO0VBQ0EsaUJWTFE7RVVNUjtFQUNBO0VBQ0EsY1ZwQ2M7RVVxQ2Q7QVg0NkVKOztBV3o2RUE7RUFDSSxXVjVDUztFVTZDVDtBWDQ2RUo7O0FXejZFQTs7RUFFSSxjVi9DYztFVWdEZDtBWDQ2RUo7O0FXejZFQTs7O0VBR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDQ2RUo7O0FXejZFQTs7RUFFSTtFQUNBO0VBQ0Esc0JWbkNTO0VVb0NUO0FYNDZFSjs7QVd6NkVBOztFQUVJO0VBQ0E7QVg0NkVKOztBV3o2RUE7OztFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJWeEVXO0VVeUVYO0FYNDZFSjs7QVd6NkVBOztFQUVJO0FYNDZFSjs7QVd6NkVBO0VBQ0k7QVg0NkVKOztBV3o2RUE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVgyNkVKOztBV3g2RUE7RUFDSTtBWDI2RUo7O0FXeDZFQTtFQUNJO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7RUFDQTtFQUNBLGNWM0hlO0VVNEhmO0FYMjZFSjs7QVd4NkVBO0VBQ0k7QVgyNkVKOztBV3g2RUE7O0VBRUkseUJWNUhPO0VVNkhQO0FYMjZFSjs7QVd4NkVBO0VBQ0k7RUFDQTtBWDI2RUo7O0FXdjZFQTs7OztFQUlJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDA2RUo7O0FXdjZFQTs7OztFQUlJO0FYMDZFSjs7QVd2NkVBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJWdktjO0VVd0tkO0FYMDZFSjs7QVd2NkVBOztFQUVJO0VBQ0E7RUFDRTtBWDA2RU47O0FXdjZFQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYMDZFSjs7QVd2NkVBOztFQUVJO0VBQ0E7QVgwNkVKOztBV3Y2RUE7RUFDSSx5QlZsTWM7RVVtTWQ7QVgwNkVKOztBV3Y2RUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtBWDA2RUo7O0FXdDZFQTtFQUNJO0VBQ0E7QVh5NkVKOztBV3I2RUE7RUFDSTtFQUNBO0FYdzZFSjs7QVdwNkVBO0VBQ0k7RUFDQTtBWHU2RUo7O0FXcDZFQTtBQUVBO0VBQ0k7QVhzNkVKOztBV242RUE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0FYcTZFSjs7QVdsNkVBO0VBQ0k7RUFDQTtFQUNBO0FYcTZFSjs7QVdsNkVBOztFQUVJO0VBQ0E7RUFDQTtBWHE2RUo7O0FXbDZFQTs7O0VBR0k7QVhxNkVKOztBV2w2RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhxNkVGOztBV2o2RUE7RUFDSSxXVjlRZTtFVStRZix5QlY3UWM7RVU4UWQ7QVhvNkVKOztBV2o2RUE7Ozs7OztFQUFBO0FBUUE7O0VBRUksV1Y3UmU7RVU4UmY7QVhtNkVKOztBV2g2RUE7RUFDSTtFQUNBO0FYbTZFSjs7QVdoNkVBOztFQUVJO0FYbTZFSjs7QVdoNkVBO0VBQ0k7RUFDQTtBWG02RUo7O0FXaDZFQTs7RUFFSTtBWG02RUo7O0FXaDZFQTtFQUNJLHlCVjVTTztFVTZTUDtBWG02RUo7O0FXaDZFQTs7RUFFSSxXVjdUUztFVThUVDtBWG02RUo7O0FXaDZFQTtFQUNJO0FYbTZFSjs7QVdoNkVBOzs7RUFHSTtBWG02RUo7O0FXaDZFQTtFQUNJO0FYbTZFSjs7QVdoNkVBOzs7RUFHSTtBWG02RUo7O0FXaDZFQTs7RUFFSTtFQUNBO0VBQ0E7RUFD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QTtFQUNBO0FiZzBIRDs7QWE3ekhBOzs7RUFBQTtBQUtBOztFQUVDO0VBQ0E7RUFDQTtBYit6SEQ7O0FhNXpIQTtFQUNDO0FiK3pIRDs7QWE1ekhBOztFQUVDO0FiK3pIRDs7QWE1ekhBO0VBQ0M7QWIrekhEOztBYTV6SEE7O0VBRUk7QWIrekhKOztBYTV6SEE7Ozs7RUFJQztFQUNBO0VBQ0E7QWIrekhEOztBY3QzSEE7OytFQUFBO0FBR0E7QUFDQTs7OztFQUlJO0VBQ0E7RUFDSDtBZHkzSEQ7O0FjdDNIQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWR5M0hKOztBY3QzSEE7QUFDQTs7OztFQUlDO0FkeTNIRDs7QWN0M0hBO0VBQ0ksY2JZcUI7RWFYckI7RUFDQTtBZHkzSEo7O0FjcjNIQTtFQUNDO0VBQ0E7RUFDQTtBZHczSEQ7O0FjcjNIQTtFQUNDO0VBQ0E7QWR3M0hEOztBY3IzSEE7OztFQUdJLGtCYkhRO0FEMjNIWjs7QWNyM0hBO0VBQ0k7QWR3M0hKOztBY3IzSEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZHczSEo7O0FjcDNIQTs7K0VBQUE7QUFJQTs7O0VBR0k7RUFDQTtFQUNBO0FkczNISjs7QWNuM0hBO0VBQ0k7QWRzM0hKOztBYzcySEE7O0VBRUM7RUFDQTtFQUNHO0VBQ0E7RUFDSCxXYjlFWTtFYStFVDtFQUNIO0VBQ0Esc0JieEVZO0VheUVUO0FkZzNISjs7QWM3MkhBO0VBQ0M7QWRnM0hEOztBYzcySEE7RUFDSTtBZGczSEo7O0FjNzJIQTtFQUNDO0FkZzNIRDs7QWN4MkhBOztFQUVDLHFCYmxGbUI7RWFtRmhCO0VBQ0g7QWQyMkhEOztBY24ySEE7O0VBRUMsa0JiN0ZlO0VhOEZmLFdiOUZlO0VhK0ZaO0VBQ0g7QWRzMkhEOztBY24ySEE7O0VBRUM7RUFDQTtFQUNHO0VBQ0E7QWRzMkhKOztBY24ySEE7O0VBRUk7RUFDQTtFQUNBO0FkczJISjs7QWNuMkhBO0VBQ0k7RUFDQTtBZHMySEo7O0FjbjJIQTtFQUNJO0FkczJISjs7QWNuMkhBO0VBQ0k7QWRzMkhKOztBY2wySEE7OytFQUFBO0FBS0E7O0VBRUk7RUFDQTtBZG0ySEo7O0FjaDJIQTs7OztFQUlJO0VBQ0g7RUFDRztFQUNBO0VBQ0E7RUFDQTtFQUNIO0VBQ0c7RUFDQTtFQUNIO0VBQ0c7QWRtMkhKOztBY2gySEE7Ozs7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCYnJMUztFYXNMVDtFQUNBO0VBQ0E7RUFDQTtBZG0ySEo7O0FjaDJIQTs7RUFFSTtBZG0ySEo7O0FjaDJIQTs7RUFFSSxxQmJ0TGdCO0VhdUxoQixzQmJwTVM7RWFxTVQ7RUFDQTtBZG0ySEo7O0FjaDJIQTs7RUFFSSxzQmIzTVM7RWE0TVQ7QWRtMkhKOztBY2gySEE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtFQUNBO0VBQ0E7RUFDQTtFQUNHO0FkbTJISjs7QWNoMkhBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtFQUNBLHlCYmhQaUI7RWFpUGQ7QWRtMkhKOztBY2gySEE7RUFDSTtBZG0ySEo7O0FjaDJIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRtMkhKOztBY2gySEE7RUFDSTtBZG0ySEo7O0FjaDJIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRtMkhKOztBY2gySEE7Ozs7RUFJQyxXYjVQZTtFYTZQZixrQmI3UGU7RWE4UFo7RUFDSDtBZG0ySEQ7O0FjaDJIQTs7K0VBQUE7QUFJQTs7RUFFSTtFQUNIO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDQTtFQUNBO0VBQ0g7RUFDQSxzQmIvUlk7RWFnU1osV2J6U1k7RWEwU1Q7RUFDSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRrMkhEOztBYy8xSEE7RUFDSSxxQmI5UmdCO0VhK1JoQjtFQUNIO0FkazJIRDs7QWMvMUhBO0VBQ0M7RUFDQTtBZGsySEQ7O0FjLzFIQTtFQUNDO0FkazJIRDs7QWMvMUhBO0VBQ0MsV2I1U2U7RWE2U1o7QWRrMkhKOztBYy8xSEE7O0VBRUMsV2JsVGU7RWFtVGYsa0JiblRlO0Vhb1RaO0VBQ0g7QWRrMkhEOztBYy8xSEE7OytFQUFBO0FBSUE7RUFDSTtBZGkySEo7O0FjOTFIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0JiblZTO0Vhb1ZUO0VBQ0E7QWRpMkhKOztBYzkxSEE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7QWRnMkhKOztBYzcxSEE7RUFDSTtBZGcySEo7O0FjMzFIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QmJwWGM7RWFxWGQ7RUFDQTtFQUNBO0FkODFISjs7QWMzMUhBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTt1QkFBQTtBZDgxSEo7O0FjMTFIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FkNjFISjs7QWMxMUhBO0VBQ0k7SUFDSTtFZDYxSE47RWMzMUhFO0lBQ0k7RWQ2MUhOO0FBQ0Y7QWMxMUhBOzsrRUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsY2JoYWM7RWFpYWQ7RUFDQSxxQmJyWVE7RWFzWVI7QWQyMUhKOztBY3gxSEE7RUFDSSxxQmJsWmU7RWFtWmY7RUFDQSxjYnBaZTtFYXFaZjtBZDIxSEo7O0FjeDFIQTtFQUNJLHFCYnhaWTtFYXlaWjtFQUNBLGNiMVpZO0VhMlpaO0FkMjFISjs7QWN4MUhBO0VBQ0k7RUFDQTtFQUNBO0FkMjFISjs7QWN6MUhBO0FBQ0E7Ozs7RUFJSSxjYnphZTtFYTBhZjtBZDQxSEo7O0FjejFIQTtFQUNJO0VBQ0E7QWQ0MUhKOztBY3oxSEE7Ozs7OztFQU1JLHFCYnhiZTtFYXliZjtBZDQxSEo7O0FjejFIQTtFQUNJO0VBQ0E7QWQ0MUhKOztBY3oxSEE7RUFDSTtFQUNBO0VBQ0E7QWQ0MUhKOztBQXp5SUE7QUFHQTtBZWpDQTs7K0VBQUE7QUFJQTtFQUNDO0FmMjBJRDtBZXgwSUE7OytFQUFBO0FBSUE7RUFDQztFQUNBO0lBQ087SUFDQTtJQUNOO0VmeTBJQTtFZXQwSUU7SUFDSTtFZncwSU47RWVyMElFO0lBQ0k7SUFDQTtFZnUwSU47QUFDRjtBZW4wSUE7RUFDQztFQUNBOzs7SUFHTztJQUNBO0lBQ047RWZxMElBO0VlajBJRTtJQUNJO0lBQ0E7RWZtMElOO0VlaDBJRTs7O0lBQUE7RUFLQTs7SUFFSTtFZmkwSU47RWU5eklFO0lBQ0k7SUFDQTtFZmcwSU47RWU3eklFO0lBQ0k7SUFDQTtFZit6SU47RWU1eklFO0lBQ0k7RWY4eklOO0FBQ0Y7QWV6eklBO0VBQ0M7SUFDTztJQUNBO0VmMnpJTjtBQUNGO0FleHpJQTtFQUNJO0lBQ0k7SUFDQTtFZjB6SU47RWV2eklFOztJQUVJO0VmeXpJTjtFZXR6SUU7SUFDSTtFZnd6SU47RWVyeklFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZnV6SU47QUFDRjtBZXB6SUE7RUFDSTtJQUNJO0lBQ0E7RWZzeklOO0VlbnpJRTtJQUNJO0VmcXpJTjtBQUNGO0FlbHpJQTtFQUNDOztJQUVPO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZveklOO0VlanpJRTs7OztJQUlJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZteklOO0VlaHpJRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZreklOO0VlL3lJRTs7SUFFSTtFZml6SU47RWU5eUlFO0lBQ0k7RWZneklOO0VlN3lJRTtJQUNJO0VmK3lJTjtFZTN5SUU7Ozs7SUFJRjtJQUNNO0lBQ0E7SUFDQTtJQUNBO0VmNnlJTjtFZTF5SUU7SUFDRTtFZjR5SUo7RWV6eUlFO0lBQ0k7RWYyeUlOO0VleHlJRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWYweUlOO0VldnlJRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZ5eUlOO0FBQ0Y7QWV0eUlBO0FBQ0E7RUFDQzs7SUFFQztFZnd5SUE7RWVyeUlFOztJQUVJO0lBQ0E7RWZ1eUlOO0FBQ0Y7QWVweUlBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0Vmc3lJTjtBQUNGO0FlbnlJQTtFQUVJOztJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZveUlOO0VlanlJRTs7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmbXlJTjtFZWh5SUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0Vma3lJTjtBQUNGO0FlL3hJQTtFQUNDOzs7OztJQUtDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWZpeUlBO0VlOXhJRTtJQUNGLHNCZHpOVTtJYzBOSjtFZmd5SU47RWU3eElFO0lBQ0k7RWYreElOO0VlM3hJRTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7SUFDTSxpQmR2T0k7SWN3T0o7RWY2eElOO0VlMXhJRTtJQUNJO0VmNHhJTjtFZXp4SUU7SUFDSSxxQmQvT0k7SWNnUEo7RWYyeElOO0VleHhJRTtJQUNJO0VmMHhJTjtFZXZ4SUU7SUFDSTtJQUNBO0lBQ0E7RWZ5eElOO0VldHhJRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZnd4SU47RWVyeElFO0lBQ0k7RWZ1eElOO0VlcHhJRTtJQUNJO0Vmc3hJTjtFZW54SUU7SUFDSTtFZnF4SU47RWVseElFO0lBQ0k7RWZveElOO0VlanhJRTtJQUNGO0VmbXhJQTtFZWh4SUU7SUFDSTtFZmt4SU47RWUvd0lEO0lBQ0M7SUFDQTtJQUNBO0VmaXhJQTtFZTl3SUU7SUFDRjtJQUNBO0VmZ3hJQTtFZTd3SUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmK3dJTjtFZTV3SUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmOHdJTjtFZTN3SUU7SUFDSTtFZjZ3SU47RWUxd0lFO0lBQ0k7RWY0d0lOO0VlendJRTtJQUNJO0lBQ0E7RWYyd0lOO0FBQ0Y7QWV2d0lBO0VBQ0k7RUFDQTs7SUFFRjtJQUNBO0VmeXdJQTtFZXR3SUQ7RUFDRzs7SUFFRjtFZnd3SUE7QUFDRjtBZXB3SUE7RUFDQzs7Ozs7SUFLTztJQUNBO0lBQ0E7SUFDQTtJQUNBO0Vmc3dJTjtFZW53SUU7SUFDSTtJQUNBO0VmcXdJTjtFZWx3SUU7Ozs7SUFJSTtJQUNIO0Vmb3dJSDtFZWp3SUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmbXdJTjtFZWh3SUU7SUFDSTtJQUNBO0Vma3dJTjtFZS92SUU7O0lBQUE7RUFJQTtJQUNJO0VmZ3dJTjtFZTd2SUU7SUFDSTtJQUNBO0VmK3ZJTjtFZTV2SUU7O0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmOHZJTjtFZTN2SUU7SUFDSSxtQmQxWkk7SWMyWko7RWY2dklOO0VlMXZJRTtJQUNJO0VmNHZJTjtFZXp2SUU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmMnZJTjtBQUNGO0FleHZJQTtFQUNDOztJQUVPO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWYwdklOO0VldnZJRTtJQUNJO0VmeXZJTjtFZXR2SUU7SUFDSSxzQmQxYkk7SWMyYko7RWZ3dklOO0VlcnZJRTtJQUNJO0VmdXZJTjtFZXB2SUU7Ozs7SUFJSTtFZnN2SU47RWVudklFOztJQUVJO0lBQ0E7SUFDQTtFZnF2SU47RWVqdklFOztJQUVJO0lBQ0E7RWZtdklOO0VlaHZJRTtJQUNJO0Vma3ZJTjtBQUNGO0FlN3VJQTtFQUNJOztJQUVJO0lBQ0E7RWYrdUlOO0FBQ0Y7QWU1dUlBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWY4dUlOO0FBQ0Y7QWdCOXdKQTs7K0VBQUE7QUFHQTtFQUNJO0VBQ0E7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFaEJneEpOO0VnQjd3SkQ7O0lBRU87RWhCK3dKTjtFZ0I1d0pFOzs7SUFHRjtFaEI4d0pBO0VnQjN3SkU7O0lBRUk7SUFDQTtFaEI2d0pOO0VnQjF3SkU7SUFDSTtFaEI0d0pOO0VnQnp3SkU7O0lBRUk7RWhCMndKTjtFZ0J4d0pFO0lBQ0k7RWhCMHdKTjtFZ0J2d0pFO0lBQ0k7RWhCeXdKTjtFZ0J0d0pFOzs7SUFHSTtJQUNBO0VoQnd3Sk47RWdCcndKRTs7SUFFSTtJQUNBO0VoQnV3Sk47RWdCcHdKRTtFQUVIOztJQUVDO0lBQ0E7SUFDQTtFaEJxd0pBO0VnQmx3SkU7SUFDSTtFaEJvd0pOO0VnQmp3SkQ7SUFDQztFaEJtd0pBO0VnQmh3SkQ7Ozs7O0lBS0M7RWhCa3dKQTtFZ0IvdkpEO0VBQ0E7SUFDQztFaEJpd0pBO0VnQjl2SkQ7SUFDQztFaEJnd0pBO0FBQ0YsQyIsInNvdXJjZXMiOlsid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9faGVscGVycy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX29mZmNhbnZhcy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19jb250ZW50ZWxlbWVudHMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fYnV0dG9uLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3JhdGlvYm94LnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19wcmludC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFNldHRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKkBpbXBvcnQgXCIuLi9mb250cy9pbmxpbmVGb250cy5zY3NzXCI7Ki9cbkBpbXBvcnQgXCJjb21tb24vX3ZhcmlhYmxlc1wiO1xuLypAaW1wb3J0IFwiY29tbW9uL19mb250c1wiOyovXG5AaW1wb3J0IFwiY29tbW9uL19ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJjb21tb24vX21peGluc1wiO1xuQGltcG9ydCBcImNvbW1vbi9faGVscGVyc1wiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogc3R5bGVzIGZvciBldmVyeSBwcm9qZWN0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYmFzZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2dyaWRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL190eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faGVhZGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9vdGVyXCI7XG5cbi8qIG9wdGlvbmFsIHN0eWxlcyAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvX29mZmNhbnZhc1wiO1xuLypAaW1wb3J0IFwiY29tcG9uZW50cy9fdGFibGVzXCI7Ki9cbkBpbXBvcnQgXCJjb21wb25lbnRzL19jb250ZW50ZWxlbWVudHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19idXR0b24tbGlua3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19yYXRpb2JveFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvcm1cIjtcbi8qQGltcG9ydCBcImNvbXBvbmVudHMvX3NvY2lhbC1tZWRpYVwiOyovXG5cblxuLyogc3R5bGVzIGZvciBldmVyeSBwcm9qZWN0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcmVzcG9uc2l2ZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3ByaW50XCI7IiwiLyogVmFyaWFibGVzLCBOYW1pbmcgbWF5IHZhcnkgZnJvbSBwcm9qZWN0IHRvIHByb2plY3QgKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvbnRzIChzZWUgJ19mb250cy5zY3NzJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBsaWNlbnNlKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5cbiRmb250LXN0YWNrLWRlZmF1bHQ6ICdGaWd0cmVlJywgJ0FyaWFsJywgJ0hlbHZldGljYScsIHNhbnMtc2VyaWY7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb2xvcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIHRleHQgKi9cbiR0ZXh0LWNvbG9yOiAjMDAwOyAvKiBkYXJrIGdyZXkgKi9cbiR0ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xuJHRleHQtY29sb3ItdGl0bGU6ICMwMDQwODc7IC8qIGRhcmsgYmx1ZSAqL1xuJGNvbG9yLWhpZ2hsaWdodDogIzAwNDA4NzsgLyogZGFyayBibHVlICovXG4kY29sb3ItYWxlcnQ6ICMyODVGQzM7IC8qIGJsdWUgKi9cbiRjb2xvci1zZWNvbmRhcnk6ICNFMDAwMEM7IC8qIHJlZCAqL1xuJGNvbG9yLW5hdi1ob3ZlcjogIzU0NTQ1NTtcblxuLyogYmFja2dyb3VuZCAqL1xuJGJnLWNvbnRlbnQ6ICNmZmY7XG4kYmctZGFyazogIzAwNDA4NzsgLyogZGFyayBibHVlICovXG4kYmctbGlnaHQ6ICNGNEY0RjU7IC8qIGxpZ2h0IGdyZXkgKi9cbiRiZy1vcmdhbmlncmFtbS1sMjogIzI4NWZjMztcbiRiZy1vcmdhbmlncmFtbS1sMzogI2Q0ZGZmMztcblxuLyogbGluZS1jb2xvcnMgKi9cbiRib3JkZXItYmFzaWM6ICNkMWQ0ZDU7XG4kYm9yZGVyLWxpZ2h0OiAjRTRFNEU1O1xuXG5cbi8qIGZvcm0gKi9cbiRib3JkZXItZm9ybTogIzhDOTM5NjtcbiRib3JkZXItZm9ybS1mb2N1czogIzAwNDA4NztcbiRmb3JtLWRpc2FibGVkOiAjY2NjO1xuJGNvbG9yLWZvcm0tZXJyb3I6ICNFMDAwMEM7XG4kY29sb3ItZm9ybS1vazogIzY1YTU2OTtcbiRjb2xvci1mb3JtLWluaXRpYWw6ICMxRDFEMUI7XG4kY29sb3ItZm9ybS1wbGFjZWhvbGRlcjogIzk5OTk5OTtcblxuLyogc3BhY2luZyAqL1xuJHNwYWNpbmctbDogNi41cmVtO1xuJHNwYWNpbmctbTogNHJlbTtcbiRzcGFjaW5nLXM6IDEuNXJlbTtcbiRzcGFjaW5nLXhzOiAwLjc1cmVtO1xuXG4vKiBncmlkICovXG4kZ3JpZC1jb250YWluZXI6IDMwcHg7XG4kZ3JpZC1yb3c6IC0xNXB4O1xuJGdyaWQtY29sOiAxNXB4O1xuXG4kZ3JpZC1yb3ctZm9ybS1oYWxmOiAtOHB4O1xuJGdyaWQtY29sLWZvcm0taGFsZjogOHB4O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDdXN0b20gUHJvcGVydGllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbjpyb290IHtcbiAgICAvKiBmb250cyAqL1xuICAgIC0tZm9udC1zdGFjay1kZWZhdWx0OiAnRmlndHJlZScsICdBcmlhbCcsICdIZWx2ZXRpY2EnLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gICAgLS1mb250LXdlaWdodC1ib2xkOiA3MDA7XG4gICAgLS1mb250LXdlaWdodC1leHRyYWJvbGQ6IDgwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNDAwO1xuICAgIFxuICAgIC8qIHRleHQgICovXG4gICAgLS10ZXh0LWNvbG9yOiAjMDAwOyAvKiBibGFjayAqL1xuICAgIC0tdGV4dC1jb2xvci1saWdodDogI2ZmZjtcbiAgICAtLXRleHQtY29sb3ItdGl0bGU6ICMwMDA7IC8qIGRhcmsgYmx1ZSAqL1xuICAgIC0tdGV4dC1jb2xvci1tZWRpdW06ICM2NjY7XG4gICAgLS1jb2xvci1oaWdobGlnaHQ6ICMyODVmYzM7IC8qIGJsdWUgKi9cbiAgICAtLWNvbG9yLWFsZXJ0OiAjMjg1RkMzOyAvKiBibHVlICovXG4gICAgLS1jb2xvci1zZWNvbmRhcnk6ICMyODVmYzM7IC8qIGJsdWUgKi9cbiAgICAtLWNvbG9yLW5hdi1ob3ZlcjogIzI4NWZjMztcbiAgICBcbiAgICAvKiBiYWNrZ3JvdW5kICovXG4gICAgLS1iZy1jb250ZW50OiAjZmZmO1xuICAgIC0tYmctZGFyazogIzAwMDAxRDsgLyogYmx1ZSBkYXJrICovXG4gICAgLS1iZy1kYXJrLTI6ICMwMDE1NDA7IC8qIGJsdWUgbWVkaXVtICovXG4gICAgLS1iZy1saWdodDogI0Y0RjRGNTtcbiAgICAtLWJnLW9yZ2FuaWdyYW1tLWwyOiAjMjg1ZmMzO1xuICAgIC0tYmctb3JnYW5pZ3JhbW0tbDM6ICNkNGRmZjM7IFxuICAgIC0tYmctZ3JhZGllbnQ6ICBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoNDAsOTUsMTk1LDEpIDEwJSwgcmdiYSgwLDIxLDY0LDEpIDUwJSwgcmdiYSgwLDAsMjksMSkgMTAwJSk7IFxuICAgIFxuICAgIC8qIGxpbmVzICovXG4gICAgLS1ib3JkZXItYmFzaWM6ICNkMWQ0ZDU7XG4gICAgLS1ib3JkZXItbGlnaHQ6ICNFNEU0RTU7XG4gICAgLS1ib3JkZXItd2lkdGgtdGhpbjogMnB4O1xuICAgIC0tYm9yZGVyLXdpZHRoLXRoaWNrOiA0cHg7XG4gICAgLS1ib3JkZXItd2lkdGgtZmF0OiA0cHg7XG4gICAgLyotLWJvcmRlci1saWdodC1ibHVlOiAjNjE2MTcxOyovXG4gICAgLS1ib3JkZXItbGlnaHQtYmx1ZTogcmdiYSgyNTUsMjU1LDI1NSwgMC4zKTtcbiAgICBcbiAgICAvKiBzcGFjaW5nICovXG4gICAgLS1zcGFjaW5nLWw6IDYuNXJlbTtcbiAgICAtLXNwYWNpbmctbTogNHJlbTsgXG4gICAgLS1zcGFjaW5nLXM6IDEuNXJlbTtcbiAgICAtLXNwYWNpbmcteHM6IDAuNzVyZW07XG4gICAgLS1zcGFjaW5nLW9yZ2FuaWdyYW1tLXM6IDIwcHg7XG4gICAgLS1wYWRkaW5nLWJveDogMS41ZW0gMzJweDtcbiAgICAtLXBhZGRpbmctbmV3cy1pdGVtOiAxLjVlbSAwIDAgMzJweDtcbiAgICBcbiAgICAtLWhlYWRlci1pbm5lci1oZWlnaHQ6IDk2cHg7XG4gICAgLS1oZWFkZXItaW5uZXItbWFyZ2luLXRvcDogNTRweDtcbiAgICAtLWhlYWRlci1tZXRhLWhlaWdodDogNTBweDtcbiAgICAtLW9mZmNhbnZhcy1tZXRhLXBvc2l0aW9uOiBjYWxjKDk2cHggKyA1NHB4ICsgNTBweCk7XG4gICAgXG4gICAgLyogZm9ybSAqL1xuICAgIC0tYm9yZGVyLWZvcm06ICMwMDAwMUQ7IFxuICAgIC0tYm9yZGVyLWZvcm0tZm9jdXM6ICMyODVmYzM7XG4gICAgLS1ib3JkZXItZm9ybS13aWR0aDogMnB4O1xuICAgIC0tZm9ybS1kaXNhYmxlZDogI2NjYztcbiAgICAtLWNvbG9yLWZvcm0tZXJyb3I6ICNFMDAwMEM7XG4gICAgLS1jb2xvci1mb3JtLW9rOiAjNjVhNTY5O1xuICAgIC0tY29sb3ItZm9ybS1pbml0aWFsOiAjMUQxRDFCO1xuICAgIC0tY29sb3ItZm9ybS1wbGFjZWhvbGRlcjogIzk5OTk5OTtcbiAgICBcbiAgICAvKiBncmlkICovXG4gICAgLS1ncmlkLWNvbnRhaW5lcjogMzBweDtcbiAgICAtLWdyaWQtcm93OiAtMTVweDtcbiAgICAtLWdyaWQtY29sOiAxNXB4O1xuICAgIFxuICAgIC0tZ3JpZC1yb3ctZm9ybS1oYWxmOiAtOHB4O1xuICAgIC0tZ3JpZC1jb2wtZm9ybS1oYWxmOiA4cHg7XG4gICAgXG4gICAgLyogZm9udC1zaXplcyAqL1xuICAgIC0tZm9udC1zaXplLXJvb3Q6IDE4cHg7XG4gICAgLS1mb250LXNpemUtaDE6IDMuMzNyZW07IC8qIDYwcHggKi9cdFxuICAgIC0tZm9udC1zaXplLWgyOiAyLjExcmVtOyAvKiAzOHB4ICovXG4gICAgLS1mb250LXNpemUtaDM6IDEuMzNyZW07XG4gICAgLS1mb250LXNpemUtbGVhZDogMS4zM3JlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5OiAxcmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHktczogMC44OHJlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5LXhzOiAwLjc3cmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHkteHhzOiAwLjY2cmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHktbDogMS43N3JlbTsgLyogMzJweCAqL1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRXhlcHRpb25zIGZvciBkaWZmZXJlbnQgYmFja2dyb3VuZHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtbGlnaHQge1xuICAgIC0tdGV4dC1jb2xvci10aXRsZTogI2ZmZjsgLyogd2hpdGUgKi9cbn1cblxuLyouYy1saW5rLWljb24sXG4uYy1saW5rLWJvbGQge1xuICAgIC0tdGV4dC1jb2xvcjogIzAwNDA4Nztcbn0qL1xuXG4uYy10ZXh0LWxpZ2h0LFxuLmMtdGV4dC1saWdodCAuYy1saW5rLWljb24sXG4uYy10ZXh0LWxpZ2h0IC5jLWxpbmstYm9sZCxcbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtYm94IC5jLWxpbmstaWNvbixcbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtYm94IC5jLWxpbmstYm9sZCxcbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtYm94IGEsXG4uYy1zZWFyY2gtcmVzdWx0LWxpc3QgLmMtYWN0aXZlIC5jLWJveCB7XG4gICAgLS10ZXh0LWNvbG9yOiAjZmZmO1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci10aXRsZTogI2ZmZjtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1idG4ge1xuICAgIC0tdGV4dC1jb2xvci1saWdodDogIzI4NWZjMztcbn1cblxuLmMtdGV4dC1saWdodCAuYy1idG46aG92ZXIsXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bjpmb2N1cyB7XG4gICAgLS10ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bi1zZWNvbmRhcnk6aG92ZXIsXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bi1zZWNvbmRhcnk6Zm9jdXMsXG4uYy10ZXh0LWxpZ2h0IC5jLW9mZmNhbnZhcy1tZXRhLWxpc3QgLmMtYnRuLXNlY29uZGFyeTpob3Zlcixcbi5jLXRleHQtbGlnaHQgLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCAuYy1idG4tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAtLXRleHQtY29sb3ItbGlnaHQ6ICMwMDAwMUQ7XG59XG5cbi5jLWZvb3Rlcixcbi5jLW9mZmNhbnZhcy1uYXYge1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjNDA3Y2ZmOyAvKiBicmlnaHRlciBibHVlICovXG4gICAgLS1jb2xvci1uYXYtaG92ZXI6ICM0MDdjZmY7XG59XG5cblxuLyouYy1tZXNzYWdlLWFsZXJ0IC5jLXRleHQtbGlnaHQgLmMtYnRuIHtcbiAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjMjg1RkMzO1xufSovXG5cbi5jLWJnLWxpZ2h0IC5jLWJ0bixcbi5jLWNvb2tpZS1ub3RpY2UgLmMtYnRuIHtcbiAgICAtLWJnLWxpZ2h0OiAjZmZmO1xufVxuXG4uYy1zZWFyY2gtcmVzdWx0LWxpc3QgLmMtYWN0aXZlIC5jLWFjY29yZGlvbi10aXRsZTpmb2N1cyxcbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcbiAgICAtLWJnLWxpZ2h0OiB0cmFuc3BhcmVudDtcbn1cblxuLmMtc2VhcmNoLXJlc3VsdC1saXN0IC5jLWFjdGl2ZSAuYy1hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgICAtLWJvcmRlci1iYXNpYzogdmFyKC0tYm9yZGVyLWxpZ2h0LWJsdWUpOyBcbn1cblxuLmMtaGVhZGVyLXN0aWNreSB7XG4gICAgLS1oZWFkZXItaW5uZXItaGVpZ2h0OiA5NnB4O1xuICAgIC0taGVhZGVyLWlubmVyLW1hcmdpbi10b3A6IDA7XG59XG5cbi5jLWhlYWRlci1zdGlja3kgLmMtb2ZmY2FudmFzLWlubmVyIHtcbiAgICAtLWhlYWRlci1pbm5lci1tYXJnaW4tdG9wOiA1NHB4O1xufVxuXG4uYy1vcmdhbmlncmFtbSB7XG4gICAgLS1iZy1kYXJrOiAjMDAxNTQwO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJlc3BvbnNpdmUgQ3VzdG9tIFByb3BlcnRpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIC0tZ3JpZC1jb250YWluZXI6IDQwcHg7XG4gICAgICAgIC0tZ3JpZC1yb3c6IC0yMHB4O1xuICAgICAgICAtLWdyaWQtY29sOiAyMHB4O1xuICAgICAgICAtLXBhZGRpbmctYm94OiAxLjhlbSA0MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLXNwYWNpbmctbDogNC41cmVtO1xuICAgICAgICAtLXNwYWNpbmctbTogMnJlbTsgXG4gICAgICAgIC0tc3BhY2luZy1vcmdhbmlncmFtbS1zOiAxMHB4O1xuICAgICAgICAtLWhlYWRlci1pbm5lci1oZWlnaHQ6IDkwcHg7XG4gICAgICAgIC0taGVhZGVyLWlubmVyLW1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIFxuICAgIC5jLWhlYWRlci1zdGlja3kge1xuICAgICAgICAtLWhlYWRlci1pbm5lci1oZWlnaHQ6IDgycHg7XG4gICAgfVxufVxuXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2My4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLypcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRTYvNyB3aGVuIGJvZHkgZm9udC1zaXplIGlzIHNldCB1c2luZyBlbSB1bml0c1xuICogICAgaHR0cDovL2NsYWdudXQuY29tL2Jsb2cvMzQ4LyNjNzkwXG4gKiAyLiBLZWVwcyBwYWdlIGNlbnRyZWQgaW4gYWxsIGJyb3dzZXJzIHJlZ2FyZGxlc3Mgb2YgY29udGVudCBoZWlnaHRcbiAqIDMuIFByZXZlbnRzIGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tXG4gKiAgICB3d3cuNDU2YmVyZWFzdHJlZXQuY29tL2FyY2hpdmUvMjAxMDEyL2NvbnRyb2xsaW5nX3RleHRfc2l6ZV9pbl9zYWZhcmlfZm9yX2lvc193aXRob3V0X2Rpc2FibGluZ191c2VyX3pvb20vXG4gKiA0LiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDQgKi9cbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xufVxuXG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuXG5cbiAqL1xuYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IC8qIGN1YmVncmFmaWsgKi9cbn1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gKi9cblxuYSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3V0bGluZWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIENocm9tZSBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuYTpmb2N1cyB7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFR5cG9ncmFwaHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKlxuKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLypcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLypcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLypcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgc2VyaWY7XG4gICAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qXG4gKiBJbXByb3ZlcyByZWFkYWJpbGl0eSBvZiBwcmUtZm9ybWF0dGVkIHRleHQgaW4gYWxsIGJyb3dzZXJzXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBTZXQgY29uc2lzdGVudCBxdW90ZSB0eXBlcy5cbiAqL1xuXG5xIHtcbiAgICBxdW90ZXM6IFwiXFwyMDFDXCIgXCJcXDIwMURcIiBcIlxcMjAxOFwiIFwiXFwyMDE5XCI7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVtb3ZlcyBib3JkZXIgd2hlbiBpbnNpZGUgJ2EnIGVsZW1lbnQgaW4gSUU2LzcvOC85LCBGRjNcbiAqIDIuIEltcHJvdmVzIGltYWdlIHF1YWxpdHkgd2hlbiBzY2FsZWQgaW4gSUU3XG4gKiAgICBjb2RlLmZsaWNrci5jb20vYmxvZy8yMDA4LzExLzEyL29uLXVpLXF1YWxpdHktdGhlLWxpdHRsZS10aGluZ3MtY2xpZW50LXNpZGUtaW1hZ2UtcmVzaXppbmcvXG4gKi9cblxuaW1nIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyAvKiAyICovXG59XG5cbi8qXG4gKiBDb3JyZWN0cyBvdmVyZmxvdyBkaXNwbGF5ZWQgb2RkbHkgaW4gSUU5XG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZpZ3VyZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaSA1LlxuICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIENvcnJlY3RzIG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUU2LzdcbiAqL1xuXG5mb3JtIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmdcbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOjA7IC8qIGN1YmVncmFmaWsgKi9cbiAgICBtYXJnaW46MDsgLyogY3ViZWdyYWZpayAqL1xuICAgIHBhZGRpbmc6MDsgLyogY3ViZWdyYWZpayAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgYm9yZGVyOiAwO1xufVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cblxuICogNC4gSW1wcm92ZXMgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiA0ICovXG59XG5cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcblxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLypcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3RzIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlcyB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqIDQuIFJlbW92ZXMgaW5uZXIgc3BhY2luZyBpbiBJRTcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxuICogS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRTYuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbiAgICAqb3ZlcmZsb3c6IHZpc2libGU7IC8qIDQgKi9cbn1cblxuLypcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHNcbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lclxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG5cbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vKipcblxuICogMS4gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS5cbiAqIDIuIEltcHJvdmUgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgLyogMiAqL1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzXG4gKi9cblxudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRWxlbWVudHMgY3ViZWdyYWZpa1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYTphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cblxuZGl2LCBwIHtcbiAgICBwYWRkaW5nOjA7XG4gICAgbWFyZ2luOjA7XG59XG5cbmhyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gICAgbWFyZ2luOiAxZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG50aCwgdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xufVxuXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgICAvKiBSZW1vdmVkIGJlY2F1c2Ugb2YgdmlzaWJpbGl0eWNoYW5nZS1hZGRpdGlvbiB0byBmYW5jeS1mb3JtcyBwbHVnaW4uXG4gICAgICogMjAxNS8wMS8yMiAtIEZsb3JpYW4gTcOkZGVyXG4gICAgICogLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyovXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xufVxuXG5odG1sIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaSAzLjAgLSA1LjAsIENocm9tZSAxIC0gOSwgQW5kcm9pZCAyLjEgLSAzLnggKi9cbiAgICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIEZpcmVmb3ggMSAtIDI4ICovXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBTYWZhcmkgNS4xKywgQ2hyb21lIDEwKywgRmlyZWZveCAyOSssIE9wZXJhIDcrLCBJRSA4KywgQW5kcm9pZCA0LjArLCBpT1MgYW55ICovXG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgIC1tb3otYm94LXNpemluZzogaW5oZXJpdDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgLyogSUUgMTAgICovXG4gICAgICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiBJRSAxMSsgKi9cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9ybSBQbGFjZWhvbGRlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICAgIHtAY29udGVudH1cbiAgICAmOi1tb3otcGxhY2Vob2xkZXIgICAgICB7QGNvbnRlbnR9XG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciAgICAge0Bjb250ZW50fVxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICB7QGNvbnRlbnR9ICBcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvbnRzIHNtb290aGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1peGluIGZvbnQtc21vb3RoaW5nKCR2YWx1ZTogb24pIHtcbiAgICBAaWYgJHZhbHVlID09IG9uIHtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBIaWRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWhpZGUtdmlzdWFsbHkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4uYy1oaWRlLWNvbXBsZXRlbHkge1xuXHRkaXNwbGF5OiBub25lO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIGltYWdlIHJlcGxhY2VtZW50ICovXG4uYy1pciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXI6IDA7XG5cdHRleHQtaW5kZW50OiAtOTk5ZW07XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRkaXJlY3Rpb246IGx0cjtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RpY2t5IEZvb3RlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuYm9keSB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uYy1oZWFkZXIsXG4uYy1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uYy1jb250ZW50IHtcbiAgICBmbGV4LWdyb3c6IDE7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2UgUHJvamVjdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYm9keSB7XG5cdEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nKG9uKTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1kZWZhdWx0O1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXN0YWNrLWRlZmF1bHQpO1xuXHRmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBsaW5rcyAqL1xuYSxcbmE6dmlzaXRlZCxcbmE6Zm9jdXMsXG5hOmhvdmVyIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIGltZyAvIG1lZGlhIGRlY2xhcmF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5lbWJlZCxcbm9iamVjdCxcbnZpZGVvLFxuaWZyYW1lLFxuaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWltZy1tYXgtd2lkdGgsXG4uYy1jb250ZW50IC5jLWltZy1tYXgtd2lkdGgge1xuXHR3aWR0aDogYXV0bztcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcgeyBcblx0dmVydGljYWwtYWxpZ246IGJvdHRvbTsgXG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIE1haW4gQ29udGFpbmVyIERlY2xhcmF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oZWFkZXIsXG4uYy1jb250ZW50LFxuLmMtZm9vdGVyLFxuLmMtY29udGFpbmVyLFxuLmMtY29udGFpbmVyLXdpZGUsXG4uYy1jb250YWluZXItbWVkaXVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogYXV0bztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIFBhZGRpbmcgYmV0d2VlbiBDb21wb25lbnRzIFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtY29udGFpbmVyLFxuLmMtY29udGFpbmVyLW1lZGl1bSB7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1sO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1tYWluLXRpdGxlLFxuLmMtc2hvd3Jvb20ge1xuXHRtYXJnaW4tdG9wOiAkc3BhY2luZy1sO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbCk7XG59XG5cblxuLmMtY29udGFpbmVyLW5vLXBhZGRpbmcge1xuXHRwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmMtc2VjdGlvbi10aXRsZSB7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy14cztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cblxuXG4uYy1zZWN0aW9uLXRpdGxlIGgyLmMtc3VidGl0bGUge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy14cztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5jLWxpbmUtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMi41cmVtOyAgICBcbn1cblxuLmMtbGluZS1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctbDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4vKiBjb250YWN0IHNuaXBwZXQgaW5zaWRlIGFjY29yZGlvbiAqL1xuLmMtYWNjb3JkaW9uLWlubmVyIC5jLWxpbmUtYm90dG9te1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG59XG5cbi5jLXRlYXNlciAuYy1jb2wtNCB7XG4gICAgcGFkZGluZy1ib3R0b206ICRncmlkLWNvbnRhaW5lcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xufVxuXG4uYy10ZWFzZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRzcGFjaW5nLWwgLSAkZ3JpZC1jb250YWluZXIpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXNwYWNpbmctbCkgLSB2YXIoLS1ncmlkLWNvbnRhaW5lcikpO1xufVxuXG4uYy1uZXdzLXRlYXNlciAuYy1jb2wtNCxcbi5jLW92ZXJ2aWV3LXRlYXNlciAuYy1jb2wtNiB7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLWw7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLW5ld3MtdGVhc2VyLFxuLmMtbWFwLFxuLmMtb3ZlcnZpZXctdGVhc2VyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmMtZmlsdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkc3BhY2luZy1tIC0gJHNwYWNpbmctcyk7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZy1tKSAtIHZhcigtLXNwYWNpbmctcykpO1xufVxuXG5cbi5jLW5ld3NsZXR0ZXItcmVnaXN0cmF0aW9uLFxuLmMtc2VhcmNoLWNvbnRhaW5lcixcbi5jLXRleHQtaW1nLTJjb2wtd2lkZSB7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLW07XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbSk7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLW07XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctbDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1xdWlja2xpbmtzLWNvbnRlbnQtaW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy1tO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1tO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLW0pO1xufVxuXG4uYy1zZWFyY2gtY29udGFpbmVyLFxuLmMtbWFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy1tO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbSk7XG59XG5cbi5jLW1lc3NhZ2UtYWxlcnQge1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXM7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctcyk7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXM7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG59XG5cbi5jLXNlYXJjaC1yZXN1bHQtdGl0bGUge1xuXHRwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbn1cblxuLmMtdGV4dC1vbmx5ICsgLmMtdGV4dC1vbmx5LFxuLmMtdGV4dC1vbmx5ICsgLmMtYWNjb3JkaW9uLFxuLmMtdGV4dC1vbmx5ICsgLmMtdGVhbS10ZWFzZXIge1xuICAgIG1hcmdpbi10b3A6IC0kc3BhY2luZy1sO1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sKSAqIC0xKTtcbn1cblxuLmMtdGV4dC1vbmx5ICsgLmMtYWNjb3JkaW9uIHtcbiAgICBwYWRkaW5nLXRvcDogLSRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXNwYWNpbmcteHMpICogLTEpO1xufVxuXG4uYy10ZXh0LW9ubHkgKyAuYy10ZWFtLXRlYXNlciB7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIEdyaWQgRGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRhaW5lcixcbi5jLWNvbnRhaW5lci1tZWRpdW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtY29udGFpbmVyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWNvbnRhaW5lcjtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG59XG5cbi5jLXJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ3JpZC1yb3c7XG4gICAgbWFyZ2luLWxlZnQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmMtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmMtcm93LWp1c3RpZnktbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYy1yb3ctanVzdGlmeS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1yb3ctanVzdGlmeS1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmMtcm93LWp1c3RpZnktYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmMtcm93LWp1c3RpZnktYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uYy1yb3ctYWxpZ24tdG9wIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmMtcm93LWFsaWduLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmMtcm93LWFsaWduLWJvdHRvbSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYy1jb2wtMSxcbi5jLWNvbC0yLFxuLmMtY29sLTMsXG4uYy1jb2wtNCxcbi5jLWNvbC01LFxuLmMtY29sLTYsXG4uYy1jb2wtNyxcbi5jLWNvbC04LFxuLmMtY29sLTksXG4uYy1jb2wtMTAsXG4uYy1jb2wtMTEsXG4uYy1jb2wtMTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtY29sO1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtY29sO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29sKTtcbn1cblxuLmMtY29sLTEyIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG4gICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgICAgXG59XG5cbi5jLWNvbC0xMSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTtcbn1cblxuLmMtY29sLTEwIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlO1xufVxuXG4uYy1jb2wtOSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA3NSU7XG4gICAgLW1zLWZsZXg6IDAgMCA3NSU7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmMtY29sLTgge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XG59XG5cbi5jLWNvbC03IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xufVxuXG4uYy1jb2wtNiB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG4gICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmMtY29sLTUge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7XG59XG5cbi5jLWNvbC00IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlO1xufVxuXG4uYy1jb2wtMyB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAyNSU7XG4gICAgLW1zLWZsZXg6IDAgMCAyNSU7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmMtY29sLTIge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7XG59XG5cbi5jLWNvbC0xIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDguMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7XG59XG5cbi8qIG9mZnNldCBjb2xzICovXG4uYy1jb2wtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY3JTtcbn1cblxuLmMtY29sLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLmMtY29sLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjclO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzJTtcbn1cblxuLmMtY29sLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5jLWNvbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzJTtcbn1cblxuLmMtY29sLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjclO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgR3JpZCBWYXJpYW50ZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtY29sLTQgLmMtcm93LFxuLmMtZm9ybS1zdGFuZGFyZCAuYy1jb2wtNiAuYy1yb3cge1xuICAgIG1hcmdpbi1yaWdodDogJGdyaWQtcm93LWZvcm0taGFsZjtcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtcm93LWZvcm0taGFsZjtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ3JpZC1yb3ctZm9ybS1oYWxmKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdyaWQtcm93LWZvcm0taGFsZik7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtY29sLTQgLmMtY29sLTMsXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWNvbC00IC5jLWNvbC05LFxuLmMtZm9ybS1zdGFuZGFyZCAuYy1jb2wtNiAuYy1jb2wtMyxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtY29sLTYgLmMtY29sLTl7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtY29sLWZvcm0taGFsZjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWNvbC1mb3JtLWhhbGY7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbC1mb3JtLWhhbGYpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29sLWZvcm0taGFsZik7XG59XG5cbi5jLWFzeW0tcmlnaHQtZWRnZWxlc3MsXG4uYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLW1lZGl1bSB7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xufVxuXG4uYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLWltZyxcbi5jLWFzeW0tcmlnaHQtZWRnZWxlc3MtY29sIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG59XG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1yb290KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRpdGxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuICAgIHRleHQtd3JhcDpiYWxhbmNlO1xuICAgIFxufVxuXG5oMSxcbi5jLWgxIHtcblx0cGFkZGluZy1ib3R0b206IC40ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdGZvbnQtc2l6ZTogMy4zM3JlbTsgLyogNjBweCAqL1x0XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDEpO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci10aXRsZTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci10aXRsZSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIFxufVxuXG5oMixcbi5jLWgyIHtcblx0cGFkZGluZy1ib3R0b206IC41ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRmb250LXNpemU6IDIuMTFyZW07IC8qIDM4cHggKi9cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG5oMiBzcGFuIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xufVxuXG5oMyxcbi5jLWgzIHtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblx0Zm9udC1zaXplOiAxLjMzcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcblx0cGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmMtbmV3cy10ZWFzZXItYmlnIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG59XG5cbmg0LCAuYy1oNCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuICAgIFxufVxuXG4uYy1zdWJ0aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXNpemU6IDAuNjZyZW07ICAgXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS14eHMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbn1cblxuLmMtbWFpbi10aXRsZSAuYy1zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLXRpdGxlO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLXRpdGxlKTtcbn1cblxuXG4uYy1tZXNzYWdlLWFsZXJ0IC5jLXN1YnRpdGxlLFxuLmMtbWVzc2FnZS1hbGVydCBoMiB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzaWMgVGV4dCBDb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1jb250ZW50LFxuLmMtZm9vdGVyIHtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmMtdGV4dC1ibG9jayBwLFxuLmMtZm9vdGVyLW1haW4gcCB7XG5cdHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbn1cblxuLmMtdGV4dC1ibG9jayBwOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHAgKyBoMixcbi5jLXRleHQtYmxvY2sgcCArIGgzLFxuLmMtdGV4dC1ibG9jayBwICsgaDQsXG4uYy10ZXh0LWJsb2NrIHVsICsgcCxcbi5jLXRleHQtYmxvY2sgdWwgKyBoMixcbi5jLXRleHQtYmxvY2sgdWwgKyBoMyxcbi5jLXRleHQtYmxvY2sgdWwgKyBoNCxcbi5jLXRleHQtYmxvY2sgdWwgKyBvbCxcbi5jLXRleHQtYmxvY2sgb2wgKyBwLFxuLmMtdGV4dC1ibG9jayBvbCArIGgyLFxuLmMtdGV4dC1ibG9jayBvbCArIGgzLFxuLmMtdGV4dC1ibG9jayBvbCArIGg0LFxuLmMtYWNjb3JkaW9uLWlubmVyIC5jLWNvbnRhY3QgKyBwLFxuLmMtYWNjb3JkaW9uLWlubmVyIC5jLWNvbnRhY3QgKyB1bCxcbi5jLWFjY29yZGlvbi1pbm5lciAuYy1jb250YWN0ICsgaDMsXG4uYy1hY2NvcmRpb24taW5uZXIgLmMtY29udGFjdCArIGg0IHtcblx0cGFkZGluZy10b3A6IDEuNWVtO1xufVxuXG4uYy1hY2NvcmRpb24taW5uZXIgcCArIC5jLWNvbnRhY3QgLFxuLmMtYWNjb3JkaW9uLWlubmVyIHVsICsgLmMtY29udGFjdCB7XG5cdG1hcmdpbi10b3A6IDEuNWVtO1xufVxuXG4uYy10ZXh0LW9ubHkgKyAuYy10ZXh0LW9ubHkgaDI6Zmlyc3QtY2hpbGQsXG4uYy10ZXh0LW9ubHkgKyAuYy10ZXh0LW9ubHkgaDM6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVlbTtcbn1cblxuLmMtbGVhZCxcbi5jLXNob3dyb29tLWJveCBwIHtcblx0Zm9udC1zaXplOiAxLjMzcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxlYWQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xufVxuXG4uYy1maWx0ZXItcXVpY2tsaW5rcyB7XG5cdGZvbnQtc2l6ZTogMS4zM3JlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZWFkKVxufVxuXG4uYy1sZWFkICsgaDEge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy1tO1xuICAgIHBhZGlkbmctdG9wOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LXNtYWxsLFxuLmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIGNpdGUsXG5maWdjYXB0aW9uLFxuLmMtb2ZmY2FudmFzLW1ldGEsXG4uYy1oZWFkZXItbWV0YSx7XG5cdGZvbnQtc2l6ZTogMC43N3JlbTsgLyogMTRweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xufVxuXG5maWdjYXB0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLmMtZm9vdGVyLWRpc2NsYWltZXIsXG4uYy1mb290ZXItbmF2LWxpc3QgdWwsXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcblx0Zm9udC1zaXplOiAwLjg4cmVtOyAvKiAxNnB4ICovXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKVxufVxuXG4uYy10ZXh0LWJpZyB7XG4gICAgLypmb250LXNpemU6IDEuNzdyZW07IFxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktbCk7Ki9cbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzaWMgTGlzdHMgQ29udGVudCBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtYmxvY2sgdWwsXG4uYy10ZXh0LWJsb2NrIG9sLFxuLmMtZm9ybS1idWxsZXQtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMCAwIDEuNWVtIDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLWZvcm0tYnVsbGV0LWxpc3Qge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpLFxuLmMtZm9ybS1idWxsZXQtbGlzdCBsaSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstbGlzdCBsaSxcbi5jLWxpbmstbGlzdCBsaSxcbi5jLXRleHQtYmxvY2sgLmMtY2F0ZWdvcnktbGlzdCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIG9sIGxpIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG5cbi5jLXRleHQtYmxvY2sgdWwgbGkgKyBsaSxcbi5jLXRleHQtYmxvY2sgb2wgbGkgKyBsaSxcbi5jLWZvcm0tYnVsbGV0LWxpc3QgbGkgKyBsaSB7XG5cdG1hcmdpbi10b3A6IDAuNWVtO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWNhdGVnb3J5LWxpc3QgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmMtdGV4dC1ibG9jayB1bCBsaTo6YmVmb3JlLFxuLmMtZm9ybS1idWxsZXQtbGlzdCBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjU4ZW07XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLXRleHQtYmxvY2sgLmMtbGluay1saXN0IGxpOjpiZWZvcmUsXG4uYy10ZXh0LWJsb2NrIC5jLXNob3dyb29tLWJveC1saXN0IGxpOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5jLXRleHQtYmxvY2sgb2wge1xuXHRjb3VudGVyLXJlc2V0OiBjdXN0b20tY291bnRlcjtcbn1cblxuLmMtdGV4dC1ibG9jayBvbCBsaSB7XG5cdGNvdW50ZXItaW5jcmVtZW50OiBjdXN0b20tY291bnRlcjtcbn1cblxuLmMtdGV4dC1ibG9jayBvbCBsaTo6YmVmb3JlIHtcblx0Y29udGVudDogY291bnRlcihjdXN0b20tY291bnRlcikgXCIuIFwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0d2lkdGg6IDI2cHg7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmMtam9icy1saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtam9icy1saXN0IGxpIHtcblx0cGFkZGluZzogMWVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG5cbi5jLXNwZWNpZmljYXRpb24tbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMCAwIDEuNWVtIDA7XG5cdGJvcmRlci10b3A6IHNvbGlkIDJweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtc3BlY2lmaWNhdGlvbi1saXN0IHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuXG4uYy1zcGVjaWZpY2F0aW9uLWxpc3QgZHQsXG4uYy1zcGVjaWZpY2F0aW9uLWxpc3QgZGQge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6ICRzcGFjaW5nLXhzIDA7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgMDtcblx0Ym9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1zcGVjaWZpY2F0aW9uLWxpc3QgZHQge1xuXHQtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDYwJTtcbiAgICAtbXMtZmxleDogMCAwIDYwJTtcbiAgICBmbGV4OiAwIDAgNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG5cbi5jLXNwZWNpZmljYXRpb24tbGlzdCBkZCB7XG5cdC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNDAlO1xuICAgIC1tcy1mbGV4OiAwIDAgNDAlO1xuICAgIGZsZXg6IDAgMCA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUXVvdGVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMCAwIDEuNXJlbSAwO1xufVxuXG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSBwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgY2l0ZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZXh0IGhlbHBlcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtcmlnaHQge1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmMtdGV4dC1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jLXRleHQtbGlnaHQge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGV4dCBzaXplcyByZXNwb25zaXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy10ZWFzZXIgaDMge1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgLW1zLWh5cGhlbnM6IGF1dG87XG4gICAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAgIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgICBoeXBoZW5zOiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTQ0MHB4KSB7XG4gICAgLmMtbWFpbi10ZWFzZXIgaDMsXG4gICAgLmMtY3Jvc3MtdGVhc2VyIGgzIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC41ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTM2MHB4KSB7XG5cdGgxLCAuYy1oMSxcblx0aDIsIC5jLWgyLFxuXHRoMywgLmMtaDN7XG5cdFx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0XHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdFx0LW1zLXdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHR3b3JkLWJyZWFrOiBicmVhay1hbGw7XG5cdFx0d29yZC1icmVhazogYnJlYWstd29yZDtcblx0XHQtbXMtaHlwaGVuczogYXV0bztcblx0XHQtbW96LWh5cGhlbnM6IGF1dG87XG5cdFx0LXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuXHRcdGh5cGhlbnM6IGF1dG87XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEyMDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1mb250LXNpemUtaDE6IDIuNjZyZW07XG4gICAgICAgIC0tZm9udC1zaXplLWxlYWQ6IDEuMTI1cmVtO1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXIge1xuICAgICAgICBmb250LXNpemU6IDAuODhyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTEwMHB4KSB7XG4gICAgLmMtbWFpbi1uYXYge1xuICAgICAgICBmb250LXNpemU6IDAuODhyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTgwcHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyBcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG4gICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ODUwcHgpIHtcbiAgICAuYy1uZXdzLXRlYXNlci1iaWcgaDMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NzY4cHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbmF2LWxpc3QgPiBsaSBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjMzcmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY1MXB4KSBhbmQgKG1heC13aWR0aDo5ODBweCkge1xuICAgIC5jLWZpbHRlci1xdWlja2xpbmtzIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg4cmVtO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMS44NXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtaDI6IDEuNXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtaDM6IDEuMTI1cmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1sZWFkOiAxLjEyNXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtYm9keS1sOiAxLjVyZW07XG4gICAgfVxuXG5cdC5jLWZpbHRlci1saXN0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg4cmVtOyAvKiAxNnB4ICovXG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgfVxuICAgIFxuICAgIC5jLW9yZ2FuaWdyYW1tLFxuICAgIC5jLW9mZmNhbnZhcy1tZXRhLWxpc3Qge1xuICAgICAgICBmb250LXNpemU6IDAuODhyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgfVxuXG5cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjUwcHgpIHtcbiAgICAuYy1maWx0ZXItcXVpY2tsaW5rcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41NXJlbTsgXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxufVxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVhZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtaGVhZGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG5cdHotaW5kZXg6IDEwO1xufVxuXG4uYy1oZWFkZXItaW5uZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWZsb3c6IHJvdztcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItaW5uZXItaGVpZ2h0KTtcbiAgICBtYXJnaW4tdG9wOiA1NHB4O1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWhlYWRlci1pbm5lci1tYXJnaW4tdG9wKTtcbn1cblxuXG4uYy1oZWFkZXItbG9nbyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDM1MHB4O1xuXHRoZWlnaHQ6IDg4cHg7XG59XG5cbi5jLWhlYWRlci1sb2dvIGEge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhlYWRlciBzdGlja3kgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oZWFkZXItc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNkMmQ0ZDU7XG59XG5cbi5jLWhlYWRlci1zdGlja3kgLmMtaGVhZGVyLWlubmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLmMtaGVhZGVyLXN0aWNreSAuYy1oZWFkZXItbG9nbyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDI3MHB4O1xuXHRoZWlnaHQ6IDY3cHg7XG59XG5cbi5jLWhlYWRlci1zdGlja3kgLmMtaGVhZGVyLW1ldGEge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBza2lwIGxpbmtcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXNraXAtbGluayB7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDsgICAgXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlcjogc29saWQgMnB4ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbiAgICBwYWRkaW5nOiAwLjVlbSAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAyMHB4IDIwcHg7XG59XG5cbi5jLXNraXAtbGluazpmb2N1cyB7XG4gICAgY2xpcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIFxuICAgIGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgbWFpbiBuYXYgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1tYWluLW5hdiB7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcGFkZGluZy1yaWdodDogNzBweDtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgbGkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctbGVmdDogMmVtO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IGEsXG4uYy1tYWluLWFudi1saXN0IGE6dmlzaXRlZCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBhOmhvdmVyLFxuLmMtbWFpbi1uYXYtbGlzdCBhOmZvY3Vze1xuXHRjb2xvcjogJGNvbG9yLW5hdi1ob3ZlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbmF2LWhvdmVyKTtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBhOjpiZWZvcmUge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuLmMtbWFpbi1uYXYtbGlzdCBhOmhvdmVyOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jLWFjdGl2ZSBhOjpiZWZvcmUge1xuXHRoZWlnaHQ6IDRweDtcbiAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1mYXQpO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIG1ldGEgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oZWFkZXItbWV0YSB7XG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGhlaWdodDogdmFyKC0taGVhZGVyLW1ldGEtaGVpZ2h0KTtcbn1cblxuLmMtaGVhZGVyLW1ldGEtbGlzdCxcbi5jLW9mZmNhbnZhcy1tZXRhLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBcbn1cblxuLmMtaGVhZGVyLW1ldGEtbGlzdCBsaSArIGxpLFxuLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCBsaSArIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJlbTtcbn1cblxuLmMtaGVhZGVyLW1ldGEtbGlzdCBhLFxuLmMtaGVhZGVyLW1ldGEtbGlzdCBhOnZpc2l0ZWQge1xuXHRjb2xvcjogIzY2NjY2NjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1tZWRpdW0pO1xufVxuXG4uYy1oZWFkZXItbWV0YS1saXN0IGE6Zm9jdXMsXG4uYy1oZWFkZXItbWV0YS1saXN0IGE6aG92ZXIge1xuXHRjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb290ZXIge1xuXHRwYWRkaW5nLXRvcDogJHNwYWNpbmctbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctbTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtZm9vdGVyLW1haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1tO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG59XG5cbi5jLWZvb3Rlci1uYXYge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1zO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xufVxuXG4uYy1mb290ZXItdGVhc2VyIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLW07XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uYy1mb290ZXItZGlzY2xhaW1lci1saXN0LFxuLmMtZm9vdGVyLWxpbmstbGlzdCxcbi5jLWZvb3Rlci10ZWFzZXItbGlzdCxcbi5jLWZvb3Rlci1zb2NpYWwtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtZm9vdGVyIGEsXG4uYy1mb290ZXIgYTp2aXNpdGVkLFxuLmMtZm9vdGVyLW1haW4gYSxcbi5jLWZvb3Rlci1tYWluIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcdFxufVxuXG4uYy1mb290ZXIgYTpob3Zlcixcbi5jLWZvb3RlciBhOmZvY3VzLFxuLmMtZm9vdGVyLW1haW4gYTpob3Zlcixcbi5jLWZvb3Rlci1tYWluIGE6Zm9jdXMge1xuXHRjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtZm9vdGVyLWxvZ28ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAzNTBweDtcblx0aGVpZ2h0OiA4OHB4O1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLW07XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbn1cblxuLmMtZm9vdGVyLWxvZ28gYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1mb290ZXItc29jaWFsLWxpc3QgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjVlbSAxZW0gMC41ZW0gMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvb3RlciB0ZWFzZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1mb290ZXItdGVhc2VyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtcm93O1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1ncmlkLXJvdyk7XG59XG5cbi5jLWZvb3Rlci10ZWFzZXItbGlzdCBsaSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAyNSU7XG4gICAgLW1zLWZsZXg6IDAgMCAyNSU7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbn1cblxuLmMtZm9vdGVyLXRlYXNlcjo6YmVmb3JlLFxuLmMtZm9vdGVyLXRlYXNlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgbGVmdDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAkZ3JpZC1jb250YWluZXIgKiAyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tZ3JpZC1jb250YWluZXIpICogMik7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgaGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1iYXNpYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib3JkZXItbGlnaHQtYmx1ZSk7XG59XG5cbi5jLWZvb3Rlci10ZWFzZXI6OmFmdGVyIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEaXNjbGFpbWVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgbGkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgPiBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAyZW07XG59XG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgdHJpZ2dlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0b3A6IDUwJTtcbiAgICByaWdodDogJGdyaWQtY29udGFpbmVyO1xuICAgIHJpZ2h0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdG1hcmdpbjogLTIwcHggMCAwIDA7XG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcblx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlcjo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLXRyaWdnZXI6OmFmdGVyIHtcblx0Y29udGVudDonJztcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogNTAlO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjphZnRlciB7XG5cdHdpZHRoOiAyNnB4O1xuXHR0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmJlZm9yZSB7XG5cdGhlaWdodDogMjBweDtcblx0bWFyZ2luLXRvcDogLTEwcHg7XG5cdGJvcmRlci10b3A6IDRweCBzb2xpZCAkY29sb3ItaGlnaGxpZ2h0O1xuXHRib3JkZXItYm90dG9tOiA0cHggc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmFmdGVyIHtcblx0aGVpZ2h0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcblx0bWFyZ2luLXRvcDogLTJweDtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjpmb2N1czo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOmhvdmVyOjphZnRlciB7XG5cdHdpZHRoOiAxNXB4O1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZTo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmFmdGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC41cztcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmJlZm9yZSB7XG5cdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOjphZnRlciB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6aG92ZXI6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOmhvdmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgbmF2IG1haW4gY29udGFpbmVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1vZmZjYW52YXMtbmF2IHtcblx0LypkaXNwbGF5OiBub25lOyovXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcblx0ei1pbmRleDogMTA7XG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdHRyYW5zaXRpb246IGhlaWdodCAuMnMgZWFzZS1vdXQgMHM7XG59XG5cbiNvcGVuLW5hdmlnYXRpb246bm90KDp0YXJnZXQpIC5jLW9mZmNhbnZhcy1uYXYge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmMtb2ZmY2FudmFzLWlubmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5jLW9mZmNhbnZhcy1pbm5lciAuYy1oZWFkZXItaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0taGVhZGVyLWlubmVyLW1hcmdpbi10b3ApICsgdmFyKC0taGVhZGVyLW1ldGEtaGVpZ2h0KSk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgQ29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLW9mZmNhbnZhcy1jb250ZW50IHtcblx0cGFkZGluZy10b3A6IDA7XG59XG5cbi5jLW9mZmNhbnZhcy1tZXRhLWxpc3QsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLW9mZmNhbnZhcy1tZXRhLWxpc3Qge1xuXHRwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctbTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXHRmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ3JpZC1yb3c7XG4gICAgbWFyZ2luLWxlZnQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpOyAgICBcbn1cblxuXG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuXHRwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xufVxuXG5cbi5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1leHRyYWJvbGQpO1xuICAgIFxufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHVsIHtcblx0cGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xuICAgIFxufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHVsIHVsIHtcbiAgICAvKm1hcmdpbi10b3A6IDAuNzVlbTsqL1xuICAgIHBhZGRpbmctbGVmdDogMjRweDtcblx0cGFkZGluZy1ib3R0b206IDNyZW07XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgbGk6Zmlyc3QtY2hpbGQge1xuXHRtYXJnaW4tdG9wOiAxLjFlbTtcbn1cblxuXG5cbi5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgdWwgbGk6Zmlyc3QtY2hpbGQge1xuXHRtYXJnaW4tdG9wOiAwO1xufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHVsIGxpICsgbGkge1xuXHRwYWRkaW5nLXRvcDogMWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHVsIHVsIGxpICsgbGkge1xuXHRwYWRkaW5nLXRvcDogMC42NWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbWV0YS1saXN0IGEsXG4uYy1vZmZjYW52YXMtbWV0YS1saXN0IGE6dmlzaXRlZCxcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBhLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGE6dmlzaXRlZCB7XG5cdGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5cblxuLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCBhOmhvdmVyLFxuLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCBhOmZvY3VzLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGE6aG92ZXIsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgYTpmb2N1c3tcblx0Y29sb3I6ICRjb2xvci1uYXYtaG92ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW5hdi1ob3Zlcik7XG59XG5cbi5jLXRleHQtbGlnaHQgLmMtb2ZmY2FudmFzLW1ldGEtbGlzdCAuYy1idG4tc2Vjb25kYXJ5OmhvdmVyLFxuLmMtdGV4dC1saWdodCAuYy1vZmZjYW52YXMtbWV0YS1saXN0IC5jLWJ0bi1zZWNvbmRhcnk6Zm9jdXMge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBzcGFuIGEge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBzcGFuIGE6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbmF2LWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5hdi1ob3Zlcik7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IHNwYW4gYTpmb2N1czo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IHNwYW4gYTpob3Zlcjo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLWFjdGl2ZSBzcGFuIGE6OmJlZm9yZSB7XG5cdGhlaWdodDogNHB4O1xuICAgIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLWZhdCk7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgYSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAwLjI1ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtY29udGVudCBhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IC00cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC03cHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDEwcHggMTBweCAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtY29udGVudCAuYy1hY3RpdmUgPiBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgLmMtYWN0aXZlID4gYTo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW5hdi1ob3ZlcikgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgYWNjb3JkaW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjayB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTk5OTlweDtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtdGl0bGUge1xuXHRkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiAxZW0gMCAxZW0gNTRweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci10aXRsZTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci10aXRsZSk7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuLmMtb2ZmY2FudmFzLW1lbnUtY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG4uYy1vZmZjYW52YXMtbWVudS1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyIHtcbiAgICBsZWZ0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IDlweDtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSB7XG4gICBcdGxlZnQ6IDIzcHg7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtb2ZmY2FudmFzLW1lbnUtY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9mZmNhbnZhcyBSZXNwb25zaXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTgxcHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbWVudS1jaGVjayxcblx0LmMtb2ZmY2FudmFzLW1lbnUtdGl0bGUsXG4gICAgLmMtb2ZmY2FudmFzLW1lbnUtbGluay1tb2JpbGUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbiAgICBcbiAgICAuYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjFlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjFlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCkge1xuICAgIC5jLW9mZmNhbnZhcy1uYXYtbGlzdDo6YmVmb3JlLFxuICAgIC5jLW9mZmNhbnZhcy1uYXYtbGlzdCA+IGxpOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6ICRncmlkLWNvbDtcbiAgICAgICAgbGVmdDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gJGdyaWQtY29udGFpbmVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWdyaWQtY29udGFpbmVyKSk7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC10aGluKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1iYXNpYztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9yZGVyLWxpZ2h0LWJsdWUpO1xuICAgIH1cbiAgICBcbiAgICAuYy1vZmZjYW52YXMtbmF2LWxpc3Q6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1vZmZjYW52YXMtbmF2LWxpc3QgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1vZmZjYW52YXMtbWVudS10aXRsZSArIHNwYW4geyAgXG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuICAgIFxuXHQuYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1heC1oZWlnaHQ6IDA7XG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigwLDEsMCwxKTtcblx0fVxuICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgPiBsaSB7XG5cdFx0cGFkZGluZy1sZWZ0OiA1NHB4O1xuXHR9XG4gICAgXG4gICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQgfiAuYy1vZmZjYW52YXMtbWVudS1jb250ZW50IHtcblx0XHRtYXgtaGVpZ2h0OiA5OTk5cHg7XG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigxLDAsMSwwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJlbTtcblx0fVxuICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNvbnRlbnQgdWwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtb2ZmY2FudmFzLW1lbnUtY29udGVudCB1bCB1bCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICBcbiAgIC5jLW9mZmNhbnZhcy1tZW51LWxpbmstbW9iaWxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4xZW07XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbWV0YS1saXN0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZXRhLWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjAwcHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbWVudS10aXRsZSB7XG4gICAgICAgIHBhZGRpbmc6IDFlbSAwIDFlbSAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1vZmZjYW52YXMtbWVudS1jb250ZW50ID4gbGkge1xuXHRcdHBhZGRpbmctbGVmdDogMzJweDtcblx0fVxuICAgIFxuICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyLFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbiAgICAuYy1vZmZjYW52YXMtbWVudS1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmV7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA4cHgpO1xuICAgIH1cblxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuICAgIC5jLW9mZmNhbnZhcy1tZW51LWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICB9XG5cbiAgICAuYy1vZmZjYW52YXMtbWVudS1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4gICAgLmMtb2ZmY2FudmFzLW1lbnUtY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDQwcHgpIHtcbiAgICAuYy1vZmZjYW52YXMtbWV0YS1saXN0IC5jLWJ0bi1zZWNvbmRhcnkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT2ZmY2FudmFzIG5hdiBvcGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG5cdC5jLW9mZmNhbnZhcy1uYXYge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0fVxuXHRcblx0LmMtb2ZmY2FudmFzLXRyaWdnZXItb3BlbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuICAgIFxuICAgIC5jLXF1aWNrbmF2LXN0aWNreSxcbiAgICAuYy1jb29raWUtbm90aWNlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG59IiwiXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29sb3JzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1iZy1saWdodCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cbi5jLWJnLWRhcmsge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtbWVzc2FnZS1hbGVydCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbGVydDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hbGVydCk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2hvd3Jvb20gXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1zaG93cm9vbSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLXNob3dyb29tIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3MtaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IC00MS42NjclO1xufVxuXG5cbi5jLXNob3dyb29tLWJveC1saXN0LFxuLmMtdGV4dC1ibG9jayAuYy1zaG93cm9vbS1ib3gtbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1zaG93cm9vbS1ib3gtbGlzdCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEJyZWFkY3J1bWIgLyBjYXRlZ29yeSBsaXN0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtYnJlYWRjcnVtYiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLW07XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxuLmMtYnJlYWRjcnVtYiBhOmhvdmVyLFxuLmMtYnJlYWRjcnVtYiBhOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYnJlYWRjcnVtYiB1bCxcbi5jLWNhdGVnb3J5LWxpc3QsXG4uYy1uZXdzLWl0ZW0tdGV4dCAuYy1jYXRlZ29yeS1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgICAgXG59XG5cbi5jLWJyZWFkY3J1bWIgbGksXG4uYy1jYXRlZ29yeS1saXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMjhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy14cztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLmMtYnJlYWRjcnVtYiBsaTpsYXN0LWNoaWxkLFxuLmMtY2F0ZWdvcnktbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmMtYnJlYWRjcnVtYiBsaTo6YmVmb3JlLFxuLmMtY2F0ZWdvcnktbGlzdCBsaTo6YmVmb3JlLFxuLmMtdGV4dC1ibG9jayAuYy1jYXRlZ29yeS1saXN0IGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgICB3aWR0aDogMnB4O1xuICAgIHdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy1icmVhZGNydW1iIGxpOmxhc3QtY2hpbGQ6OmJlZm9yZSxcbi5jLWNhdGVnb3J5LWxpc3QgbGk6bGFzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uYy1jYXRlZ29yeS1saXN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBBY2NvcmRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbi1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG59XG5cbi5jLWFjY29yZGlvbi1jb250YWluZXIgKyAuYy1hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uYy1hY2NvcmRpb24tdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDFlbSAwIDFlbSA1NHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLXRpdGxlO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLXRpdGxlKTtcbn1cblxuLmMtYWNjb3JkaW9uLXNtYWxsIC5jLWFjY29yZGlvbi10aXRsZSB7XG4gICAgcGFkZGluZzogMWVtIDAgMWVtIDMycHg7XG59XG5cbi5jLWFjY29yZGlvbi10aXRsZTpmb2N1cyxcbi5jLWFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtYWNjb3JkaW9uLWNoZWNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTlweDtcblxufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlLFxuLmMtYWNjb3JkaW9uLWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSxcbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG4uYy1hY2NvcmRpb24tc21hbGwgLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWFjY29yZGlvbi1zbWFsbCAuYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlLFxuLmMtYWNjb3JkaW9uLXNtYWxsIC5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1zbWFsbCAuYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg1MCUgLSA4cHgpO1xufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgIGxlZnQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogOXB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYWNjb3JkaW9uLXNtYWxsIC5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1zbWFsbCAuYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgd2lkdGg6IDE4cHg7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAyM3B4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWFjY29yZGlvbi1zbWFsbCAuYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlLFxuLmMtYWNjb3JkaW9uLXNtYWxsIC5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgIGxlZnQ6IDdweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLyogQ29udGVudHMgKi9cbi5jLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigwLDEsMCwxKTtcblxufVxuXG4uYy1hY2NvcmRpb24taW5uZXIge1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXhzIDI1JSAkc3BhY2luZy1tIDU0cHg7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgMjUlIHZhcigtLXNwYWNpbmctbSkgNTRweDtcblxufVxuXG4uYy1hY2NvcmRpb24tc21hbGwgLmMtYWNjb3JkaW9uLWlubmVyIHtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy14cyAwICRzcGFjaW5nLXMgMzJweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhzKSAwIHZhcigtLXNwYWNpbmctcykgMzJweDtcblxufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCB+IC5jLWFjY29yZGlvbi1jb250ZW50IHtcbiAgIFx0bWF4LWhlaWdodDogOTk5OXB4O1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBjdWJpYy1iZXppZXIoMSwwLDEsMCk7XG59XG5cbi8qIGNvbnRhY3Qgc25pcHBldCBpbnNpZGUgYWNjb3JkaW9uICovXG5cbi5jLWFjY29yZGlvbi1pbm5lciAuYy1jb250YWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIG1haW4gdGVhc2VyIC8gY3Jvc3MgdGVhc2VyIC8gbmV3cyB0ZWFzZXIgLyBvdmVydmlldyB0ZWFzZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWJveCB7XG4gICAgcGFkZGluZzogMS41ZW0gMzJweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWJveCk7XG59XG5cbi5jLWJveC1ib3JkZXIge1xuICAgIGJvcmRlcjogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xufVxuXG4uYy1uZXdzLWl0ZW0sXG4uYy10ZWFzZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuLmMtdGVhc2VyLWl0ZW0gLmMtbGluay1hcnJvdy1iaWcsXG4uYy1uZXdzLWl0ZW0gLmMtbGluay1hcnJvdy1iaWcsXG4uYy1uZXdzLWl0ZW0tdGV4dCAuYy1saW5rLWFycm93LWJpZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jLXRlYXNlci1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cblxuLmMtbWFpbi10ZWFzZXIgLmMtdGVhc2VyLWl0ZW0ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi8qLmMtbWFpbi10ZWFzZXIgLmMtY29sLTQ6bnRoLWNoaWxkKDRuKzEpIC5jLXRlYXNlci1pdGVte1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLW1haW4tdGVhc2VyIC5jLWNvbC00Om50aC1jaGlsZCg1bisyKSAuYy10ZWFzZXItaXRlbXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrLTIpO1xufSovXG5cbi5jLW1haW4tdGVhc2VyIC5jLXRlYXNlci1pdGVtIGgzIGEsXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbSAuYy1saW5rLWJvbGQge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLW1haW4tdGVhc2VyIC5jLXRlYXNlci1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ncmFkaWVudCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbTpob3ZlciBoMyBhLFxuLmMtbWFpbi10ZWFzZXIgLmMtdGVhc2VyLWl0ZW06aG92ZXIgLmMtbGluay1ib2xkIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLW1haW4tdGVhc2VyIC5jLXRlYXNlci1pdGVtOmZvY3VzLXdpdGhpbiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZ3JhZGllbnQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcbn1cblxuLmMtbWFpbi10ZWFzZXIgLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIGgzIGEsXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4gLmMtbGluay1ib2xkIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtY3Jvc3MtdGVhc2VyIC5jLXRlYXNlci1pdGVtIGgzIGEsXG4uYy1uZXdzLWl0ZW0gaDMgYSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxuLmMtY3Jvc3MtdGVhc2VyIC5jLXRlYXNlci1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ncmFkaWVudCk7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbTpob3Zlcixcbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbTpob3ZlciBoMyBhLFxuLmMtY3Jvc3MtdGVhc2VyIC5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWxpbmstYm9sZCB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4uYy1jcm9zcy10ZWFzZXIgLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ncmFkaWVudCk7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4sXG4uYy1jcm9zcy10ZWFzZXIgLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIGgzIGEsXG4uYy1jcm9zcy10ZWFzZXIgLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIC5jLWxpbmstYm9sZCB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4uYy1uZXdzLWl0ZW0tdGV4dCxcbi5jLW92ZXJ2aWV3LWl0ZW0tdGV4dCB7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDJweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICBwYWRkaW5nOiAxLjVlbSAwIDAgMzJweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLW5ld3MtaXRlbSk7XG59XG5cbi5jLW5ld3MtdGVhc2VyLWJpZyAuYy1uZXdzLWl0ZW0tdGV4dCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xuICAgIHBhZGRpbmc6IDIuNWVtIDAgMCAwO1xufVxuXG5cblxuLmMtbmV3cy1pdGVtLXRleHQgdWwgKyBoMyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8qLmMtbmV3cy1pdGVtLXRleHQgcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbn0qL1xuXG4uYy1yYXRpb2JveC1uZXdzIGltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5cbi5jLW5ld3MtaXRlbTpob3ZlciAuYy1yYXRpb2JveC1uZXdzIGltZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbn1cblxuLmMtbmV3cy1pdGVtOmZvY3VzLXdpdGhpbiAuYy1yYXRpb2JveC1uZXdzIGltZyB7XG4gICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4uYy1uZXdzLXRlYXNlci1iaWcgLmMtY29sLTQsXG4uYy1uZXdzLXRlYXNlci1iaWcgLmMtY29sLTYge1xuICAgIHBvc2l0aW9uOiB1bnNldDtcbn1cblxuLyogY3Jvc3N0ZWFzZXIgLyBtYWludGVhc2VyIHdpdGhvdXQgc21hbGxlciBhcnJvdyAqL1xuXG4uYy1tYWluLXRlYXNlciAuYy10ZXh0LWJsb2NrIHAsXG4uYy1jcm9zcy10ZWFzZXIgLmMtdGV4dC1ibG9jayBwLFxuLmMtbmV3cy1pdGVtLXRleHQgcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMzVlbTtcbn1cblxuLyogb3ZlcnZpZXcgdGVhc2VyICovXG4uYy1vdmVydmlldy1pdGVtLXRleHQgcCArIHVsIHtcbiAgICBwYWRkaW5nLXRvcDogMS4yNWVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBMaW5lc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtbGluZS10b3A6OmJlZm9yZSxcbi5jLWxpbmUtYm90dG9tOjphZnRlciB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogJGdyaWQtY29udGFpbmVyO1xuICAgIGxlZnQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gJGdyaWQtY29udGFpbmVyICogMik7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWdyaWQtY29udGFpbmVyKSAqIDIpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItYmFzaWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtbGluZS10b3A6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xufVxuXG4uYy1saW5lLWJvdHRvbTo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbn1cblxuLyogZm9yIGNvbnRhY3Qgc25pcHBldCBpbnNpZGUgYWNjb3JkaW9uICovXG4uYy1hY2NvcmRpb24taW5uZXIgLmMtbGluZS10b3A6OmJlZm9yZSxcbi5jLWFjY29yZGlvbi1pbm5lciAuYy1saW5lLWJvdHRvbTphZnRlciB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRmlsdGVyIGxpc3QgLyBmaWx0ZXIgcXVpY2tsaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZmlsdGVyLWxpc3QsXG4uYy1maWx0ZXItcXVpY2tsaW5rcy1saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmMtZmlsdGVyLWxpc3QgbGkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1zO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xufVxuXG4uYy1maWx0ZXItbGlzdCBhLFxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xufVxuXG4uYy1maWx0ZXItbGlzdCBhLFxuLmMtZmlsdGVyLWxpc3QgYTp2aXNpdGVkLFxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhLFxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhOnZpc2l0ZWR7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbi5jLWZpbHRlci1saXN0IGE6aG92ZXIsXG4uYy1maWx0ZXItbGlzdCBhOmZvY3VzLFxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhOmhvdmVyLFxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhOmZvY3Vze1xuXHRjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtZmlsdGVyLWxpc3QgYTo6YmVmb3JlIHtcblx0Y29udGVudDonJztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuXG4uYy1maWx0ZXItbGlzdCBhOmZvY3VzOjpiZWZvcmUsXG4uYy1maWx0ZXItbGlzdCBhOmhvdmVyOjpiZWZvcmUsXG4uYy1maWx0ZXItbGlzdCAuYy1hY3RpdmUgYTo6YmVmb3Jle1xuXHRoZWlnaHQ6IDRweDtcbiAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1mYXQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmlsdGVyIHF1aWNrbGlua3MgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1maWx0ZXItcXVpY2tsaW5rcyB7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uYy1maWx0ZXItcXVpY2tsaW5rcy1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXHRmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyBcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhIHtcbiAgICBmbGV4LWdyb3c6IDE7XG5cdGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMTEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBcbn1cblxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhOjpiZWZvcmUge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7ICAgIFxuXHR0b3A6IGNhbGMoMTAwJSAtIDMwcHgpO1xuXHRsZWZ0OiA1MCU7XG5cdGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG5cdGhlaWdodDogMDtcblx0d2lkdGg6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXdpZHRoOiAxNnB4IDIwcHggMDtcblx0bWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbn1cblxuLmMtZmlsdGVyLXF1aWNrbGlua3MtbGlzdCBhOmZvY3VzOjpiZWZvcmUsXG4uYy1maWx0ZXItcXVpY2tsaW5rcy1saXN0IGE6aG92ZXI6OmJlZm9yZSxcbi5jLWZpbHRlci1xdWlja2xpbmtzLWxpc3QgLmMtYWN0aXZlIGE6OmJlZm9yZXtcbiAgICB0b3A6IDEwMCU7XG5cdGJvcmRlci10b3AtY29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuXHRib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBxdWlja2xpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1xdWlja2xpbmtzLWNvbnRlbnQtaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWdyYWRpZW50KTtcbn1cblxuXG4uYy1xdWlja2xpbmtzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwICRncmlkLXJvdztcbiAgICBtYXJnaW46IDAgdmFyKC0tZ3JpZC1yb3cpO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1xdWlja2xpbmtzLWxpc3QgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxZW0gJGdyaWQtY29sO1xuICAgIHBhZGRpbmc6IDFlbSB2YXIoLS1ncmlkLWNvbCk7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYy1xdWlja2xpbmtzLWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6ICRncmlkLWNvbDtcbiAgICBsZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICRncmlkLWNvbCAqIDIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1ncmlkLWNvbCkgKiAyKTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC10aGluKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWJhc2ljO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvcmRlci1saWdodC1ibHVlKTtcbn1cblxuLmMtcXVpY2tsaW5rcy1saXN0IGxpOm50aC1jaGlsZCgxKTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBxdWljayBuYXYgc3RpY2t5XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtcXVpY2tuYXYtc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcblx0cmlnaHQ6IDA7XG5cdHRvcDogNTAlO1xuXHR6LWluZGV4OiAxMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuXG4uYy1xdWlja25hdi1zdGlja3kgdWwge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jLXF1aWNrbmF2LXN0aWNreSBsaSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0aGVpZ2h0OiA3MHB4O1xuXHRtYXJnaW4tdG9wOiAycHg7XG5cdG1hcmdpbi1ib3R0b206IDJweDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xufVxuXG4uYy1xdWlja25hdi1zdGlja3kgYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IC0xOTBweDtcblx0bGluZS1oZWlnaHQ6IDcwcHg7XG5cdHBhZGRpbmctbGVmdDogNzZweDtcblx0d2lkdGg6IDI2MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZ3JhZGllbnQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTtcbn1cblxuLmMtcXVpY2tuYXYtc3RpY2t5IGxpOmZpcnN0LWNoaWxkIGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMCAwIDA7XG59XG5cbi5jLXF1aWNrbmF2LXN0aWNreSBsaTpsYXN0LWNoaWxkIGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDIwcHg7XG59XG5cbi5jLXF1aWNrbmF2LXN0aWNreSBhLFxuLmMtcXVpY2tuYXYtc3RpY2t5IGE6dmlzaXRlZCxcbi5jLXF1aWNrbmF2LXN0aWNreSBhOmZvY3VzLFxuLmMtcXVpY2tuYXYtc3RpY2t5IGE6aG92ZXIge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4uYy1xdWlja25hdi1zdGlja3kgYTpmb2N1cyxcbi5jLXF1aWNrbmF2LXN0aWNreSBhOmhvdmVyIHtcblx0cmlnaHQ6IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIG1hcFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtbWFwIHtcbiAgICAvKm1hcmdpbi1ib3R0b206IDQwcHg7Ki9cbn1cblxuLmMtbWFwLWlubmVyIHtcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG5cdGhlaWdodDogNjAwcHg7XG5cdGhlaWdodDogNjV2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbGlnaHQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIHNlYXJjaCAvIHNlYXJjaCByZXN1bHRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1zZWFyY2gtcmVzdWx0LWxpc3Qge1xuXHRtYXJnaW46IDAgJGdyaWQtcm93O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuLmMtc2VhcmNoLXJlc3VsdC1saXN0IGxpIHtcblx0cGFkZGluZzogMCAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuXHQtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlO1xufVxuXG4uYy1zZWFyY2gtcmVzdWx0LWxpc3QgbGkge1xuXHRwYWRkaW5nLWJvdHRvbTogJGdyaWQtY29udGFpbmVyO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG59XG5cbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtYm94IHtcbiAgICBib3JkZXItY29sb3I6ICRiZy1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZGFyayk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICB0ZXh0IGltZyAyIGNvbFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLXRleHQtaW1nLTJjb2wtd2lkZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtdGV4dC1pbWctMmNvbC13aWRlIGZpZ3VyZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjJlbTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgT3JnYW5pZ3JhbW1cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLW9yZ2FuaWdyYW1tLWl0ZW0ge1xuICAgIG1pbi1oZWlnaHQ6IDYuMmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1vcmdhbmlncmFtbS1zKTtcbn1cblxuLmMtb3JnYW5pZ3JhbW0tYmctbDEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLyouYy1vcmdhbmlncmFtbS1iZy1zdGFiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbGlnaHQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmctbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctbGlnaHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctbGlnaHQpO1xufSovXG5cbi5jLW9yZ2FuaWdyYW1tLWJnLWwyLFxuLmMtb3JnYW5pZ3JhbW0tYmctc3RhYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLW9yZ2FuaWdyYW1tLWwyO1xuICAgIGJvcmRlci1jb2xvcjogJGJnLW9yZ2FuaWdyYW1tLWwyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLW9yZ2FuaWdyYW1tLWwyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLW9yZ2FuaWdyYW1tLWwyKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLW9yZ2FuaWdyYW1tLWJnLWwzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctb3JnYW5pZ3JhbW0tbDM7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmctb3JnYW5pZ3JhbW0tbDM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctb3JnYW5pZ3JhbW0tbDMpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctb3JnYW5pZ3JhbW0tbDMpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxuLmMtb3JnYW5pZ3JhbW0tc2VwYXJhdG9yIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwICRzcGFjaW5nLWwgMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLWwpIC0gdmFyKC0tc3BhY2luZy1vcmdhbmlncmFtbS1zKSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIENvb2tpZSBub3RpY2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvb2tpZS1ub3RpY2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuXHRyaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMS41cmVtIDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctZ3JhZGllbnQpO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHotaW5kZXg6IDIwO1xufVxuXG4uYy1jb29raWUtbm90aWNlIHAsXG4uYy1jb29raWUtbm90aWNlIHVsIHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3QgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjVlbSAwLjVlbSAwIDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo2NTBweCkgeyAgIFxuICAgIC5jLXRleHQtYmxvY2sgLmMtY29va2llLW5vdGljZS1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuXHQuYy1jb29raWUtbm90aWNlIC5jLWJ0biB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXHR9XG5cdFxufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU3ViIG1lbnUgZmlsdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1zdWItbWVudS1jb250ZW50e1xuXHRkaXNwbGF5OiBub25lO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIFNob3cgdGhlIGZpcnN0IHN1YiBtZW51IGNvbnRhaW5lciAqL1xuLmMtc3ViLW1lbnUtY29udGVudC5jLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTGluayBjb2xvcnMgYW5kIHN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYVtocmVmXj1cInRlbDpcIl0ge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jLXRleHQtYmxvY2sgYSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sJGNvbG9yLWhpZ2hsaWdodCAwJSwkY29sb3ItaGlnaGxpZ2h0IDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sdmFyKC0tY29sb3ItaGlnaGxpZ2h0KSAwJSx2YXIoLS1jb2xvci1oaWdobGlnaHQpIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiA0cHggNHB4O1xuICBcdHRyYW5zaXRpb246IGJhY2tncm91bmQgLjFzO1xufVxuXG5cblxuLmMtdGV4dC1ibG9jayBhOmZvY3VzLFxuLmMtdGV4dC1ibG9jayBhOmhvdmVyIHtcblx0YmFja2dyb3VuZC1zaXplOiA4cHggOHB4O1xufVxuXG4uYy10ZXh0LXNtYWxsIGEge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMnB4IDJweDtcbn1cblxuLmMtdGV4dC1ibG9jayBhOmZvY3VzLFxuLmMtdGV4dC1ibG9jayBhOmhvdmVyIHtcblx0YmFja2dyb3VuZC1zaXplOiA2cHggNnB4O1xufVxuXG4uYy10ZXh0LXNtYWxsIGE6Zm9jdXMsXG4uYy10ZXh0LXNtYWxsIGE6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA0cHggNHB4O1xufVxuXG4uYy1mb290ZXItbWFpbiBhLFxuLmMtZm9vdGVyLWRpc2NsYWltZXIgYXtcblx0YmFja2dyb3VuZC1zaXplOiAwIDA7XG4gIFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMXM7XG59XG5cbi5jLWZvb3Rlci1tYWluIGE6aG92ZXIsXG4uYy1mb290ZXItbWFpbiBhOmZvY3VzLFxuLmMtZm9vdGVyLWRpc2NsYWltZXIgYTpob3Zlcixcbi5jLWZvb3Rlci1kaXNjbGFpbWVyIGE6Zm9jdXMge1xuXHRiYWNrZ3JvdW5kLXNpemU6IDFweCAxcHg7XG4gIFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMXM7XG59XG5cbi5jLXRleHQtYmxvY2sgLmMtYnRuLFxuLmMtdGV4dC1ibG9jayAuYy1idG4tc2Vjb25kYXJ5LFxuLmMtdGV4dC1ibG9jayAuYy1saW5rLWljb24sXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstYm9sZCxcbi5jLXRlYXNlciAuYy10ZXh0LWJsb2NrIGgzIGEsXG4uYy1uZXdzLXRlYXNlci1iaWcgLmMtdGV4dC1ibG9jayBoMyBhLFxuLmMtdGV4dC1ibG9jayAuYy1zaG93cm9vbS1ib3gtbGlzdCBhIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCdXR0b24gXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1idG4sXG4uYy1idG4tc2Vjb25kYXJ5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwLjhlbSAyNHB4IDAuOGVtIDI0cHg7XG5cdGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAgXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRmb250LXNpemU6IDFlbTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWJ0bixcbi5jLWJ0bjp2aXNpdGVke1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi5jLWJ0bjpob3ZlciwgXG4uYy1idG46Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtYnRuLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC10aGluKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5jLWJ0bi1zZWNvbmRhcnksXG4uYy1idG4tc2Vjb25kYXJ5OnZpc2l0ZWR7XG4gICAgY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWJ0bi1zZWNvbmRhcnk6aG92ZXIsIFxuLmMtYnRuLXNlY29uZGFyeTpmb2N1cyB7ICAgIFxuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5cblxuLmMtYnRuLXVwbG9hZGZpbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uYy1idG4tc21hbGwgeyAgICBcbiAgIHBhZGRpbmc6IDAuNWVtIDIwcHg7XG59XG5cbi5jLWJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRkaXNwbGF5OiBibG9jaztcblx0dG9wOiAyNHB4O1xuICAgIHJpZ2h0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDBweDtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtYnRuLWNsb3NlOjpiZWZvcmUsXG4uYy1idG4tY2xvc2U6OmFmdGVyIHtcblx0Y29udGVudDonJztcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgd2lkdGg6IDI2cHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xufVxuXG4uYy1idG4tY2xvc2U6OmJlZm9yZSB7XG5cdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jLWJ0bi1jbG9zZTo6YWZ0ZXIge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5jLWJ0bi1jbG9zZTpob3Zlcjo6YmVmb3JlLFxuLmMtYnRuLWNsb3NlOmhvdmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIGxpbmtzIHdpdGggaWNvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWljb24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLWljb246OmJlZm9yZSxcbi5jLWljb246OmFmdGVyLFxuLmMtbWFpbi1uYXYtbGluay1hcnJvdzo6YWZ0ZXIge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmMtbGluay1pY29uLFxuLmMtbGluay1ib2xkIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLWxlZnQ6IDMycHg7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uYy1saW5rLWFycm93LWJpZyAge1xuXHRwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogNDhweDtcblx0aGVpZ2h0OiAyOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MjBweDtcbn1cblxuLmMtbGluay1hcnJvdy1iaWc6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstYXJyb3ctYmlnOmZvY3VzOjpiZWZvcmVcbi8qLmMtdGVhc2VyLWl0ZW06aG92ZXIgLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSxcbi5jLXRlYXNlci1pdGVtOmZvY3VzIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUsXG4uYy1uZXdzLWl0ZW06aG92ZXIgLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSxcbi5jLW5ld3MtaXRlbTpmb2N1cyAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlLFxuLmMtbmV3cy1pdGVtLXRleHQ6aG92ZXIgLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSxcbi5jLW5ld3MtaXRlbS10ZXh0OmZvY3VzIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUqLyB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC02MjBweDtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlXG4vKi5jLW1haW4tdGVhc2VyIC5jLXRlYXNlci1pdGVtIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUqLyB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtNjIwcHg7XG59XG5cbi8qLmMtY3Jvc3MtdGVhc2VyIC5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTYyMHB4O1xufVxuXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbTpob3ZlciAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTYyMHB4O1xufVxuXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4gLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IC02MjBweDtcbn1cblxuLmMtY3Jvc3MtdGVhc2VyIC5jLXRlYXNlci1pdGVtOmZvY3VzLXdpdGhpbiAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTYyMHB4O1xufSovXG5cbi8qIHRlc3Qgc21hbGwgYXJyb3dzIGluIHRlYXNlcnMgKi9cbi5jLW1haW4tdGVhc2VyIC5jLWxpbmstYXJyb3ctYmlnLFxuLmMtY3Jvc3MtdGVhc2VyIC5jLWxpbmstYXJyb3ctYmlnLFxuLmMtbmV3cy1pdGVtIC5jLWxpbmstYXJyb3ctYmlnIHtcblx0cGFkZGluZy1sZWZ0OiAzOHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi5jLW1haW4tdGVhc2VyIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUsXG4uYy1jcm9zcy10ZWFzZXIgLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSxcbi5jLW5ld3MtaXRlbSAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0d2lkdGg6IDM4cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbSAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IDA7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbSAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlLFxuLmMtbmV3cy1pdGVtIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbTpob3ZlciAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IDA7XG59XG5cbi5jLW1haW4tdGVhc2VyIC5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWxpbmstYXJyb3ctYmlnOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTBweCAwO1xufVxuXG4uYy1tYWluLXRlYXNlciAuYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4gLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IDA7XG59XG5cbi5jLWNyb3NzLXRlYXNlciAuYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4gLmMtbGluay1hcnJvdy1iaWc6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IDA7XG59XG5cbi5jLW5ld3MtaXRlbTpob3ZlciAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggMDtcbn1cblxuLmMtbmV3cy1pdGVtOmZvY3VzLXdpdGhpbiAuYy1saW5rLWFycm93LWJpZzo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggMDtcbn1cblxuLyogZW5kIHNtYWxsIGFycm93cyBpbiB0ZWFzZXJzICovXG5cbi5jLWxpbmstYXJyb3c6OmJlZm9yZSxcbi5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0dG9wOiAwLjM1ZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAzOHB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLmMtbGluay1hcnJvdzpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1hcnJvdzpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggMDtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1saW5rLWFycm93OjpiZWZvcmUsXG4uYy1zZWFyY2gtcmVzdWx0LWxpc3QgLmMtYWN0aXZlIC5jLWxpbmstYXJyb3c6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAwO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWxpbmstYXJyb3c6aG92ZXI6OmJlZm9yZSxcbi5jLXNlYXJjaC1yZXN1bHQtbGlzdCAuYy1hY3RpdmUgLmMtbGluay1hcnJvdzpob3Zlcjo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IDA7XG59XG5cbi5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbn1cblxuLmMtbGluay1iYWNrOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWJhY2s6Zm9jdXM6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC0yMHB4O1xufVxuXG4uYy1saW5rLWRvd25sb2FkOjpiZWZvcmUge1xuXHR0b3A6IDAuMTVlbTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMjBweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcbn1cblxuLmMtbGluay1kb3dubG9hZDpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1kb3dubG9hZDpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTQwcHg7XG59XG5cbi5jLXRleHQtbGlnaHQgLmMtbGluay1kb3dubG9hZDo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC00MHB4O1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWxpbmstZG93bmxvYWQ6aG92ZXI6OmJlZm9yZSxcbi5jLXRleHQtbGlnaHQgLmMtbGluay1kb3dubG9hZDpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IC00MHB4O1xufVxuXG4uYy1saW5rLWV4dGVybjo6YmVmb3JlIHtcblx0dG9wOiAwZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyMXB4O1xuXHRoZWlnaHQ6IDIxcHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG59XG5cbi5jLWxpbmstZXh0ZXJuOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWV4dGVybjpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTgwcHg7XG59XG5cbi5jLXRleHQtbGlnaHQgLmMtbGluay1leHRlcm46OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtODBweDtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1saW5rLWV4dGVybjpob3Zlcjo6YmVmb3JlLFxuLmMtdGV4dC1saWdodCAuYy1saW5rLWV4dGVybjpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IC04MHB4O1xufVxuXG4uYy1tYWluLW5hdi1saW5rLWFycm93OjphZnRlciB7XG4gICAgdG9wOiAwLjQ1ZW07XG5cdHJpZ2h0OiAwO1xuXHR3aWR0aDogMTRweDtcblx0aGVpZ2h0OiA4cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4O1xufVxuXG5cbi5jLWxpbmstcmVzZXQ6OmJlZm9yZSB7XG5cdHRvcDogMC4yZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDIwcHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM2MHB4O1xufVxuXG4uYy1saW5rLXJlc2V0OmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLXJlc2V0OmZvY3VzOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtMzYwcHg7XG59XG5cbi5jLWJ0bi1zZWFyY2gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICRncmlkLWNvbDtcbiAgICByaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLWZvcm0tc2VhcmNoLWNoaW1uZXkgLmMtYnRuLXNlYXJjaCB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5jLWJ0bi1zZWFyY2g6OmJlZm9yZSB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMyMHB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBpY29uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9vdGVyLXRlYXNlci1saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNjZweDtcbn1cblxuLmMtZm9vdGVyLXRlYXNlci1saW5rIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYy1mb290ZXItdGVhc2VyLWxpbms6OmJlZm9yZSxcbi5jLXF1aWNrbmF2LWxpbms6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vLi4vaW1hZ2VzL3Nwcml0ZS1pY29ucy5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDQxcHg7XG4gICAgaGVpZ2h0OiA0MXB4OyAgXG59XG5cbi5jLWZvb3Rlci10ZWFzZXItaG90bGluZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggMDtcbiAgICBtYXJnaW4tdG9wOiAtMThweDtcbn1cblxuLmMtZm9vdGVyLXRlYXNlci1kYW1hZ2U6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC04MHB4O1xuICAgIG1hcmdpbi10b3A6IC0xOHB4O1xufVxuXG4uYy1mb290ZXItdGVhc2VyLWNoaW1uZXk6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC0xNjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMThweDtcbn1cblxuLmMtZm9vdGVyLXRlYXNlci13ZWF0aGVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMjQwcHg7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi5jLXF1aWNrbmF2LWxpbms6OmJlZm9yZSB7XG5cdGxlZnQ6IDE1cHg7XG4gICAgd2lkdGg6IDQxcHg7XG4gICAgaGVpZ2h0OiA0MXB4OyAgXG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi5jLXF1aWNrbmF2LWNvbnRhY3Q6OmJlZm9yZSB7XG4gICAgbGVmdDogMTZweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IDA7XG59XG5cbi5jLXF1aWNrbmF2LWRhbWFnZTo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTgwcHg7XG59XG5cbi5jLXF1aWNrbmF2LWNoaW1uZXk6OmJlZm9yZSB7XG4gICAgbGVmdDogMTZweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC0xNjBweDtcbn1cblxuLmMtcXVpY2tuYXYtd2VhdGhlcjo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC0yNDBweDtcbn1cblxuLmMtaWNvbi1xdWlja2xpbms6OmFmdGVyIHtcblx0Y29udGVudDonJztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvc3ByaXRlLXF1aWNrbGlua3Muc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogODBweDsgXG4gICAgbWFyZ2luLWxlZnQ6IC0zNXB4O1xufVxuXG4uYy1pY29uLXF1aWNrbGluay1vd25lcjo6YWZ0ZXIge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5jLWljb24tcXVpY2tsaW5rLWF1dGhvcml0eTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMHB4O1xufVxuXG4uYy1pY29uLXF1aWNrbGluay1maXJlOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjQwcHg7XG59XG5cbi5jLWljb24tcXVpY2tsaW5rLXBsYW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNjBweDtcbn1cblxuXG4uYy1pY29uLXJlc2V0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHRvcDogMC41ZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIFxufVxuXG4uYy1pY29uLXJlc2V0OjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0xNHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MDBweDtcbn1cblxuLmMtaWNvbi1yZXNldDpmb2N1czo6YmVmb3JlLFxuLmMtaWNvbi1yZXNldDpob3Zlcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtNDAwcHg7XG59XG5cbi5jLWljb24tc29jaWFsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDFweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1pY29uLXNvY2lhbDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbn1cblxuLmMtaWNvbi1zb2NpYWw6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MXB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC1saW5rZWRpbjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00NDBweDtcbn1cblxuLmMtaWNvbi1zb2NpYWwtZmFjZWJvb2s6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTYwcHg7XG59XG5cbi5jLWljb24tc29jaWFsLWluc3RhZ3JhbTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01MDBweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgcmVzcG9uc2l2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY1MXB4KSB7IFxuICAgIC5jLWljb24tcXVpY2tsaW5rOmhvdmVyOjphZnRlcixcbiAgICAuYy1pY29uLXF1aWNrbGluazpmb2N1czo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjUwcHgpIHsgICBcblx0LmMtaWNvbi1xdWlja2xpbms6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyBcbiAgICB9XG5cbiAgICAuYy1pY29uLXF1aWNrbGluay1vd25lcjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmMtaWNvbi1xdWlja2xpbmstYXV0aG9yaXR5OjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTBweCAtMTIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWljb24tcXVpY2tsaW5rLWZpcmU6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IC0yNDBweDtcbiAgICB9XG4gICAgXG4gICAgLmMtaWNvbi1xdWlja2xpbmstcGxhbm5lcjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTM2MHB4O1xuICAgIH1cbiAgICBcbn1cblxuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSYXRpbyBCb3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXJhdGlvYm94IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1yYXRpb2JveCA+IGltZyxcbi5jLXJhdGlvYm94ID4gaWZyYW1lLFxuLmMtcmF0aW9ib3ggPiBvYmplY3Qge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG4vKi5jLXJhdGlvYm94ID4gaW1nIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcdFxufSovXG5cbi5jLXJhdGlvYm94ID4gaWZyYW1lLFxuLmMtcmF0aW9ib3ggPiBvYmplY3Qge1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLmMtcmF0aW9ib3gtMTZieTkge1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4uYy1yYXRpb2JveC00YnkzLFxuLmMtcmF0aW9ib3gtbmV3cyB7XG5cdHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi5jLXJhdGlvYm94LTFieTEge1xuXHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcbn1cblxuLmMtcmF0aW9ib3gtc2hvd3Jvb20sXG4uYy1yYXRpb2JveC1vdmVydmlldyB7XG4gICAgcGFkZGluZy1ib3R0b206IDY2LjY2NiU7XG59XG5cbi5jLXJhdGlvYm94ID4gaW1nLFxuLmMtcmF0aW9ib3gtc2hvd3Jvb20gaW1nLFxuLmMtcmF0aW9ib3gtbmV3cyBpbWcsXG4uYy1yYXRpb2JveC1vdmVydmlldyBpbWcge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9ybVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIHNhZmFyaSBmb3JtIGZpeCAqL1xuaW5wdXQsXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbnRleHRhcmVhIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIHNhZmFyaSBkYXRlIGZpeCAqL1xuaW5wdXRbdHlwZT1cImRhdGVcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIG1pbi1oZWlnaHQ6IDFlbTsgXG4gICAgcGFkZGluZzogMC42NWVtIDEycHg7XG59XG5cbi8qIHJlbW92ZSBjaHJvbWUgYXV0b2ZpbGwgeWVsbG93IGNvbG9yICovXG5pbnB1dDotd2Via2l0LWF1dG9maWxsLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMjAwMHM7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3ItZm9ybS1wbGFjZWhvbGRlcjtcbiAgICBjb2xvcjogLS1jb2xvci1mb3JtLXBsYWNlaG9sZGVyO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cblxuLmMtZm9ybS1pdGVtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy1ib3R0b206IDEuNWVtO1xufVxuXG4uYy1mb3JtLWl0ZW0taW5uZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uYy1mb3JtLWl0ZW0gKyBoMyxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtcm93ICsgaDMsXG4uYy1mb3JtLXN0YW5kYXJkIGZpZWxkc2V0ICsgaDMge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLXM7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtYnRuIHtcbiAgICBtaW4td2lkdGg6IGNhbGMoMzMuMzMzJSAtIHZhcigtLWdyaWQtY29sKSk7XG59XG5cbi5jLWZvcm0taW5mby10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07XG4gICAgZm9udC1zaXplOiAwLjc3cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkteHMpO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBmb3JtZmllbGRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXRleHQsIFxuLmMtZm9ybS10ZXh0YXJlYSwgXG4uYy1mb3JtLXNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbn1cblxuLmMtZm9ybS1zZXBhcmF0b3Ige1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG59XG5cbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4vLyAuYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLy8gLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLy8gLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS10ZXh0LFxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXI6IHNvbGlkIDFweCAkYm9yZGVyLWZvcm07XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItZm9ybS13aWR0aCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybSk7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdHBhZGRpbmc6IDAuNjVlbSAxMnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWZvcm0tdGV4dC1zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWEge1xuXHRtaW4taGVpZ2h0OiA2ZW07XG59XG5cbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4vLyAuYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4vLyAuYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWZvcm0tdGV4dDpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWE6Zm9jdXMge1xuXHRib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLy8gLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXTpkaXNhYmxlZCxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmRpc2FibGVkLFxuLy8gLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdOmRpc2FibGVkLFxuLy8gLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpkaXNhYmxlZCxcbi8vIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS10ZXh0OmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYTpkaXNhYmxlZCB7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xuXHRjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS1sYWJlbC10ZXh0LFxuLmMtZm9ybS1zdGFuZGFyZCBsYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gICAgZm9udC1zaXplOiAwLjc3cmVtOyBcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbn1cblxuLmMtZm9ybS1saXN0LXZlcnRpY2FsLFxuLmMtZm9ybS1saXN0LWhvcml6b250YWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjVlbSAwIDAgMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1mb3JtLWxpc3QtaG9yaXpvbnRhbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uYy1mb3JtLWxpc3QtaG9yaXpvbnRhbCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07XG59XG5cbi5jLWZvcm0tbGlzdC12ZXJ0aWNhbCBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41ZW07XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGNoZWNrYm94IC8gcmFkaW9zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5jLWZvcm0tY2hlY2tib3gsXG4uYy1mb3JtLXJhZGlvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTlweDtcbn1cblxuLmMtZm9ybS1jaGVja2JveDpjaGVja2VkK2xhYmVsLFxuLmMtZm9ybS1jaGVja2JveDpub3QoOmNoZWNrZWQpK2xhYmVsLFxuLmMtZm9ybS1yYWRpbzpjaGVja2VkK2xhYmVsLFxuLmMtZm9ybS1yYWRpbzpub3QoOmNoZWNrZWQpK2xhYmVse1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMC4zZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuXHRsaW5lLWhlaWdodDogMS41O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblx0bWluLWhlaWdodDogMzRweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5jLWZvcm0tY2hlY2tib3g6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlLFxuLmMtZm9ybS1jaGVja2JveDpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUsXG4uYy1mb3JtLXJhZGlvOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWZvcm0tcmFkaW86bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDAuMTVlbTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1mb3JtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLWZvcm0td2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1mb3JtLXJhZGlvOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWZvcm0tcmFkaW86bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5jLWZvcm0tY2hlY2tib3g6Zm9jdXMrbGFiZWw6OmJlZm9yZSxcbi5jLWZvcm0tcmFkaW86Zm9jdXMrbGFiZWw6OmJlZm9yZXtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbn1cblxuLmMtZm9ybS1jaGVja2JveDpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1mb3JtLXJhZGlvOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLWZvcm0tY2hlY2tib3g6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4uYy1mb3JtLWNoZWNrYm94Om5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDAuMTVlbSArIDJweCk7XG4gICAgbGVmdDogOXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDEycHg7XG5cdGhlaWdodDogMjBweDtcblx0Ym9yZGVyOiBzb2xpZCAkY29sb3ItaGlnaGxpZ2h0O1xuXHRib3JkZXItd2lkdGg6IDAgNHB4IDRweCAwO1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1mb3JtLXJhZGlvOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuLmMtZm9ybS1yYWRpbzpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYygwLjE1ZW0gKyA1cHgpO1xuICAgIGxlZnQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWZvcm0tY2hlY2tib3g6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5jLWZvcm0tcmFkaW86bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuLmMtZm9ybS1jaGVja2JveDpjaGVja2VkK2xhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmMtZm9ybS1yYWRpbzpjaGVja2VkK2xhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4uYy1mb3JtLWNoZWNrYm94OmRpc2FibGVkK2xhYmVsOjpiZWZvcmUsXG4uYy1mb3JtLWNoZWNrYm94OmRpc2FibGVkK2xhYmVsOjphZnRlcixcbi5jLWZvcm0tcmFkaW86ZGlzYWJsZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWZvcm0tcmFkaW86ZGlzYWJsZWQrbGFiZWw6OmFmdGVye1xuXHRjb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcblx0Y29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgZHJvcGRvd25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS1zZWxlY3QsXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDAuNjVlbSA0MHB4IDAuNjVlbSAxMnB4ICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1mb3JtO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLWZvcm0td2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9pY29uLWZvcm0tYXJyb3cuc3ZnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRsaW5lLWhlaWdodDogMS40cmVtICFpbXBvcnRhbnQ7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xuXHRhcHBlYXJhbmNlOiBub25lO1x0XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Qgb3B0aW9uIHtcblx0cGFkZGluZzogMDtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdDpkaXNhYmxlZDo6LW1zLWV4cGFuZCB7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3RbZGlzYWJsZWRdIHtcblx0Y29sb3I6ICRmb3JtLWRpc2FibGVkO1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGZvcm0gY292ZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tY292ZXItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLWZvcm0tY292ZXItaXRlbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIG9wYWNpdHk6IDAuNztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGxvYWRlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zZW5kIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmMtZm9ybS1zZW5kIC5jLWJ0biArIC5jLWxvYWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuXG5cbi5jLWxvYWRlciB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGFuaW1hdGlvbjogcm90YXRpb24gMXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4vKi5jLWZvcm0taXRlbS1sb2FkaW5nIC5jLWZvcm0tdGV4dCxcbi5jLWZvcm0taXRlbS1sb2FkaW5nIC5jLWZvcm0tc2VsZWN0IHtcbiAgICBvcGFjaXR5OiAwLjM7XG59Ki9cblxuLmMtZm9ybS1pdGVtLWxvYWRpbmcgLmMtbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogY2FsYygxLjVlbSArIDlweCk7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgLypyaWdodDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTE2cHg7Ki9cbn1cblxuLmMtZm9ybS1zZW5kLmMtZm9ybS1pdGVtLWxvYWRpbmcgLmMtbG9hZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGlvbiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufSBcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGVycm9yXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLW1lc3NhZ2UtYm94IHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLWZvcm0td2lkdGgpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy1zO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG59XG5cbi5jLWZvcm0tbWVzc2FnZS1ib3gtZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWZvcm0tZXJyb3I7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLWVycm9yKTtcbiAgICBjb2xvcjogJGNvbG9yLWZvcm0tZXJyb3I7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tZXJyb3IpO1xufVxuXG4uYy1mb3JtLW1lc3NhZ2UtYm94LW9rIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1mb3JtLW9rO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9ybS1vayk7XG4gICAgY29sb3I6ICRjb2xvci1mb3JtLW9rO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLW9rKTtcbn1cblxuLnRleHQtZGFuZ2Vye1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjc3cmVtOyBcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXhzKTtcbn1cbi8qIGVycm9yIG1lc3NhZ2UqL1xuLmhhcy1lcnJvciBsYWJlbCxcbi50ZXh0LWRhbmdlcixcbi50ZXh0LWRhbmdlci1ub24tanMtb3ZlcnJpZGUsXG4uaGFzLWVycm9yIC5jLWZvcm0tbGFiZWwtdGV4dCB7XG4gICAgY29sb3I6ICRjb2xvci1mb3JtLWVycm9yO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLWVycm9yKTtcbn1cblxuLmhhcy1lcnJvciAudGV4dC1kYW5nZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbn1cblxuLmhhcy1lcnJvciAuYy1mb3JtLWNoZWNrYm94ICsgbGFiZWw6OmJlZm9yZSxcbi5oYXMtZXJyb3IgLmMtZm9ybS1yYWRpbyArIGxhYmVsOjpiZWZvcmUsXG4uaGFzLWVycm9yIC5jLWZvcm0tdGV4dCxcbi5oYXMtZXJyb3IgLmMtZm9ybS10ZXh0YXJlYSxcbi5oYXMtZXJyb3IgLmMtZm9ybS1zZWxlY3QsXG4uaGFzLWVycm9yIHRleHRhcmVhIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1mb3JtLWVycm9yO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9ybS1lcnJvcik7XG59XG5cbi5oYXMtZXJyb3IgLmMtZm9ybS1saXN0LWhvcml6b250YWwgKyAudGV4dC1kYW5nZXIge1xuICAgIG1hcmdpbi10b3A6IC0yZW07XG4gICAgcGFkZGluZy1ib3R0b206MS41ZW07XG59XG5cbi5jLWZvcm0taW5mby10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS14cyk7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFZpZXdwb3J0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ALW1zLXZpZXdwb3J0IHtcblx0d2lkdGg6IGRldmljZS13aWR0aDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1lZGlhcXVlcmllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2NjBweCkge1xuXHQvKiBjb250YWluZXIgbWF4IHdpZHRoICovXG5cdC5jLWNvbnRhaW5lci1tZWRpdW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDE2NDBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLW1lZGl1bSAuYy1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3MtbWVkaXVtICB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoODIwcHggKyA1MCUpO1xuICAgIH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTM0MHB4KSB7XG5cdC8qIGNvbnRhaW5lciBtYXggd2lkdGggKi9cblx0LmMtY29udGFpbmVyLFxuICAgIC5jLW1haW4tdGVhc2VyLFxuICAgIC5jLWNyb3NzLXRlYXNlciB7XG4gICAgICAgIG1heC13aWR0aDogMTMyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3Mge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDY2MHB4ICsgNTAlKTtcbiAgICB9XG4gICAgXG4gICAgLyouYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLW1lZGl1bSAge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDgyMHB4ICsgNTAlKTtcbiAgICB9Ki9cbiAgICBcbiAgICAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLFxuICAgIC5jLWFzeW0tcmlnaHQtZWRnZWxlc3MtbWVkaXVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1zaG93cm9vbSAuYy1hc3ltLWNvbC1ncmlkIHtcbiAgICAgICAgZmxleDogMCAwIDc5MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDc5MHB4OyBcbiAgICB9XG4gICAgXG4gICAgLmMtc2hvd3Jvb20gLmMtYXN5bS1jb2wtZWRnZWxlc3Mge1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygxMDAlIC0gNzkwcHgpOyBcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3OTBweCk7IFxuICAgIH1cbiAgICBcbiAgICAuYy1zaG93cm9vbSAuYy1hc3ltLXJpZ2h0LWVkZ2VsZXNzLWltZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjUwcHg7XG4gICAgfVxuICAgIFxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTIwMHB4KSB7ICBcblx0LmMtaGVhZGVyLWxvZ28ge1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo5ODFweCkgeyAgXG4gICAgLmMtcXVpY2tsaW5rcy1saXN0IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7XG4gICAgfVxuICAgIFxuICAgIC5jLXF1aWNrbGlua3MtbGlzdCBsaTpudGgtY2hpbGQoMik6OmJlZm9yZSxcbiAgICAuYy1xdWlja2xpbmtzLWxpc3QgbGk6bnRoLWNoaWxkKDMpOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgLmMtcXVpY2tuYXYtc3RpY2t5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC5jLW9mZmNhbnZhcy1tZXRhLWxpc3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgICAgICB0b3A6IGNhbGModmFyKC0tb2ZmY2FudmFzLW1ldGEtcG9zaXRpb24pICogLTEpO1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2NTFweCkgYW5kIChtYXgtd2lkdGg6OTgwcHgpIHsgIFxuICAgIC5jLXF1aWNrbGlua3MtbGlzdCBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICBcbiAgICAuYy1xdWlja2xpbmtzLWxpc3QgbGk6bnRoLWNoaWxkKDIpOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCkgeyAgXG5cdC5jLWZvb3Rlci10ZWFzZXItbGlzdCBsaSxcbiAgICAuYy1mb290ZXItbmF2LWxpc3QgPiBsaSB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXIgLmMtY29sLTQsXG4gICAgLmMtZm9ybS1uZXdzbGV0dGVyIC5jLWNvbC00LFxuICAgIC5jLWZvcm0tc2VhcmNoIC5jLWNvbC00LFxuICAgIC5jLXNlYXJjaC1yZXN1bHQtbGlzdCBsaSB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICBcbiAgICAuYy1vcmdhbmlncmFtbSAuYy1jb2wtNCB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDEwMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5jLW9yZ2FuaWdyYW1tIC5jLXJvdy1sMiAuYy1vcmdhbmlncmFtbS1pdGVtLFxuICAgIC5jLW9yZ2FuaWdyYW1tIC5jLXJvdy1zdGFiIC5jLW9yZ2FuaWdyYW1tLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogOC4zMzMlO1xuICAgIH1cbiAgICBcbiAgICAuYy1vcmdhbmlncmFtbSAuYy1yb3ctbDMgLmMtb3JnYW5pZ3JhbW0taXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNi42NjclO1xuICAgIH1cbiAgICBcbiAgICAuYy1vcmdhbmlncmFtbSAuYy1yb3ctbDQgLmMtb3JnYW5pZ3JhbW0taXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC5jLXRleHQtb25seSAuYy1jb2wtOCxcblx0LmMtbWFpbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtc2VjdGlvbi10aXRsZSAuYy1jb2wtOCxcbiAgICAuYy1pbWctY29udGVudCAuYy1jb2wtOCB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7ICAgIFx0XG5cdH1cbiAgICBcbiAgICAuYy1hY2NvcmRpb24taW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMTclO1xuICAgIH1cbiAgICBcbiAgICAuYy1zaG93cm9vbSwgLmMtbWFpbi10aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbSk7XG4gICAgfVxuICAgIFxuICAgIC5jLW5ld3MtdGVhc2VyLWJpZyAuYy1jb2wtNCB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgICAgIG1heC13aWR0aDogNDEuNjY2NjclO1xuICAgIH1cbiAgICBcbiAgICAuYy1uZXdzLWxpbmstYWxsIC5jLWNvbC0xMCB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgICAgIG1heC13aWR0aDogOTEuNjY2NjclO1xuICAgIH1cbn1cblxuLyogaGVhZGVyIHNob3cgb2ZmY2FudmFzICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTgwcHgpIHsgIFxuXHQuYy1tYWluLW5hdixcbiAgICAuYy1oZWFkZXItbWV0YSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuICAgIFxuICAgIC5jLWhlYWRlci1sb2dvLFxuICAgIC5jLWZvb3Rlci1sb2dvIHtcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICBoZWlnaHQ6IDYycHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTAwcHgpIHsgIFxuICAgIC5jLXNob3dyb29tLXRleHQgLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgICAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo4NTBweCkgeyAgXG5cbiAgICAuYy1mb3JtLXN0YW5kYXJkIC5jLWNvbC00LFxuICAgIC5jLWZvcm0tc3RhbmRhcmQgLmMtY29sLTgge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5jLW5ld3MtdGVhc2VyLWJpZyAuYy1jb2wtNCxcbiAgICAuYy1uZXdzLXRlYXNlci1iaWcgLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgXG4gICAgLmMtbmV3cy1saW5rLWFsbCAuYy1jb2wtMTAge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHsgIFxuXHQuYy10ZXh0LW9ubHkgLmMtY29sLTgsXG5cdC5jLW1haW4tdGl0bGUgLmMtY29sLTgsXG5cdC5jLXNlY3Rpb24tdGl0bGUgLmMtY29sLTgsXG4gICAgLmMtaW1nLWNvbnRlbnQgLmMtY29sLTgsXG4gICAgLmMtdGV4dC1pbWctMmNvbC13aWRlIC5jLWNvbC02IHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICAgXHRcblx0fVxuICAgIFxuICAgIC5jLXRleHQtaW1nLTJjb2wtd2lkZSAuYy1jb2wtNjpmaXJzdC1jaGlsZCB7XG5cdFx0cGFkZGluZy1ib3R0b206ICRzcGFjaW5nLWw7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xuXHR9XG4gICAgXG4gICAgLmMtYWNjb3JkaW9uLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItbWFpbiAuYy1jb2wtNCB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLW07XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItbWFpbiAuYy1jb2wtNDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItdGVhc2VyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctcztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXI6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItbmF2LWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLW5hdi1saXN0ID4gbGkge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLW5hdi1saXN0IHVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLW5hdi1saXN0IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItbmF2LWxpc3QgdWwgdWwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgfVxuICAgIFxuICAgIC5jLWZvb3Rlci1uYXYtbGlzdCB1bCB1bCBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLW1lbnUtdGl0bGUgKyBzcGFuIHsgIFxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItbWVudS10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcblx0LmMtZm9vdGVyLW1lbnUtY29udGVudCB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRtYXgtaGVpZ2h0OiAwO1xuXHRcdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBjdWJpYy1iZXppZXIoMCwxLDAsMSk7XG5cdH0gICAgXG4gICAgIFxuICAgIC5jLWZvb3Rlci1tZW51LWNoZWNrOmNoZWNrZWQgfiAuYy1mb290ZXItbWVudS1jb250ZW50IHtcblx0XHRtYXgtaGVpZ2h0OiA5OTk5cHg7XG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigxLDAsMSwwKTtcblx0fVxuICAgIFxuICAgIC5jLXNob3dyb29tLXRleHQgLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTtcbiAgICB9XG4gICAgXG4gICAgLmMtY29udGFjdCAuYy1jb2wtNiB7XG4gICAgICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgLmMtY29udGFjdCAuYy1jb2wtNiArIC5jLWNvbC02IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNWVtO1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLXN0YW5kYXJkIC5jLWJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1ncmlkLWNvbCkpO1xuICAgIH1cbiAgICBcbiAgICAuYy1vcmdhbmlncmFtbS1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMC41ZW0gMTVweDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY1MXB4KSB7ICBcbiAgICAvKi5jLW5ld3MtdGVhc2VyIC5jLWNvbC00LCovXG4gICAgLmMtdGVhc2VyIC5jLWNvbC00LFxuICAgIC5jLXNlYXJjaC1yZXN1bHQtbGlzdCBsaSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR9XG5cblx0LyouYy1uZXdzLWl0ZW0sKi9cbiAgICAuYy10ZWFzZXItaXRlbSxcbiAgICAuYy1zZWFyY2gtcmVzdWx0LWxpc3QgLmMtYm94IHtcblx0XHRmbGV4LWdyb3c6IDE7XG5cdH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjUwcHgpIHsgIFxuXHQuYy10ZWFzZXIgLmMtY29sLTQsXG4gICAgLmMtbmV3cy10ZWFzZXItYmlnIC5jLWNvbC00LFxuICAgIC5jLW5ld3MtdGVhc2VyLWJpZyAuYy1jb2wtNixcbiAgICAuYy1zZWFyY2gtcmVzdWx0LWxpc3QgbGksXG4gICAgLmMtb3ZlcnZpZXctdGVhc2VyIC5jLWNvbC02IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuYy1maWx0ZXItcXVpY2tsaW5rcy1saXN0IGEge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDVweCAxZW0gNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgfVxuICAgIFxuICAgIC5jLWZpbHRlci1xdWlja2xpbmtzLWxpc3QgYTo6YmVmb3JlLFxuICAgIC5jLWZpbHRlci1xdWlja2xpbmtzLWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuICAgIC5jLWZpbHRlci1xdWlja2xpbmtzLWxpc3QgYTpob3Zlcjo6YmVmb3JlLFxuICAgIC5jLWZpbHRlci1xdWlja2xpbmtzLWxpc3QgLmMtYWN0aXZlIGE6OmJlZm9yZXtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiA4cHggMTBweCAwO1xuXHQgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLXN0YW5kYXJkIC5jLWNvbC02IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLXN0YW5kYXJkIC5jLWJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC8qLmMtZm9ybS1uZXdzbGV0dGVyIC5jLWNvbC00ICsgLmMtY29sLTQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41ZW07XG4gICAgfSovXG4gICAgXG4gICAgLmMtZm9ybS1zZW5kIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvcm0taXRlbS1sb2FkaW5nIC5jLWJ0biArIC5jLWxvYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDFlbSBhdXRvIDAgYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmMtc2hvd3Jvb20gLmMtY29sLTUsXG4gICAgLmMtc2hvd3Jvb20gLmMtY29sLTcge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICBcbiAgICAuYy1zaG93cm9vbSAuYy1jb2wtNyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy1zO1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG4gICAgXG4gICAgLmMtc2hvd3Jvb20gLmMtYXN5bS1yaWdodC1lZGdlbGVzcy1pbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgXG4gICAgLmMtbmV3cy10ZWFzZXItYmlnIC5jLW5ld3MtaXRlbS10ZXh0IHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1uZXdzLWl0ZW0pO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjAwcHgpIHsgIFxuXHQuYy1mb290ZXItdGVhc2VyLWxpc3QgbGksXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXIgLmMtY29sLTYge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvb3Rlci1kaXNjbGFpbWVyIC5jLWNvbC02IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCBsaSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1zO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbiAgICB9XG4gICAgXG4gICAgLmMtYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMC43NWVtIDAgMC43NWVtIDMycHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4gICAgLmMtYWNjb3JkaW9uLWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSxcbiAgICAuYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4gICAgLmMtYWNjb3JkaW9uLWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDhweCk7XG4gICAgfVxuXG4gICAgLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuICAgIC5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgfVxuXG5cbiAgICAuYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlLFxuICAgIC5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiA3cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICB9XG4gICAgXG4gICAgLmMtYWNjb3JkaW9uLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDQwcHgpIHsgXG4gICAgLmMtaGVhZGVyLWxvZ28sXG4gICAgLmMtZm9vdGVyLWxvZ28ge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDozNzVweCkgeyBcbiAgICAuYy1pY29uLXF1aWNrbGluayBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUHJpbnQgQ1NTXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIHByaW50IHtcbiAgICAvKiBiYXNlIHN0eWxlcyAqL1xuICAgICoge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyBcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblx0XG5cdGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICAgIFxuICAgIC5jLWlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICAgIGFbaHJlZl06YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcblx0ICB9XG4gICAgXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG4gICAgXG4gICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IFxuICAgIH1cbiAgICBcbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICAgIFxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAgICAgXG4gICAgQHBhZ2Uge1xuICAgICAgICBtYXJnaW46IDAuNWNtO1xuICAgIH1cbiAgICBcbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cbiAgICBcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIGJyZWFrLWFmdGVyOmF2b2lkO1xuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG4gICAgXG4gICAgLyogZm9udC1zaXplcyAqL1xuXHRcblx0aHRtbCxcblx0Ym9keSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdC8qb3ZlcmZsb3c6IGF1dG87Ki9cblx0fVxuICAgIFxuICAgIGJvZHkge1xuICAgICAgICBmb250LXNpemU6MTJweDsgICAgXG4gICAgfVxuXHRcblx0aDEsIC5jLWgxIHtcblx0XHRmb250LXNpemU6IDI0cHg7XG5cdH1cblx0XG5cdC5jLWxlYWQsXG5cdC5jLXRleHQtYmxvY2sgLmMtbGVhZCxcblx0aDIsIC5jLWgyLFxuXHRoMywgLmMtaDMsXG5cdC5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSBwIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdH1cblx0XG5cdC8qIHByb2plY3Qgc3R5bGVzICovXG5cdC5jLWNvbnRhaW5lciB7XG5cdFx0cGFkZGluZy1ib3R0b206IDJlbTtcblx0fVxuXHRcblx0LmMtZm9vdGVyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuXG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/