/*!***************************************************************************************************************************************************************************************************************!*\
  !*** 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
   ========================================================================== */
/* Variables, Naming may vary from project to project */
/* ==========================================================================
   Fonts (see '_fonts.scss' for more information on license)
   ========================================================================== */
/* @import must be at top of file, otherwise CSS will not work */
/* @import url('//hello.myfonts.net/count/426563'); */
/* ==========================================================================
   Fallbacks sass Variablen
   ========================================================================== */
/* text */
/* dark grey */
/* dark grey */
/* background */
/* dark grey */
/* light grey */
/* blue */
/* line-colors */
/* spacing */
/* grid */
/* form */
/* ==========================================================================
   Custom Properties
   ========================================================================== */
:root {
  /* fonts */
  --font-stack-default: "filson-pro", "Arial", "Helvetica", sans-serif;
  --font-weight-normal: 400;
  --font-weight-bold: 700;
  --font-weight-bolder: 900;
  /* text  */
  --text-color: #000; /* black */
  --text-color-light: #fff;
  --text-color-link: #000;
  --text-color-link-underline: #006AFF;
  --text-color-quote: #006AFF;
  --text-color-disabled: #7b7b7b;
  /* font-sizes */
  --font-size-root: 20px;
  --font-size-h1: 2.5rem; /* 50px */
  --font-size-h2: 2rem; /* 40px */
  --font-size-h3: 1.16rem;
  --font-size-lead: 1rem;
  --font-size-quote: 2rem;
  --font-size-body: 1rem;
  --font-size-body-s: 0.85rem;
  --font-size-link: 1rem;
  /* colors / background */
  --bg-content: #fff;
  --bg-dark: #006AFF; /* medium blue */
  --bg-light: #ebebeb; /* light grey */
  --color-highlight: #00D8F4; /* blue */
  --color-swissski: #E2001A;
  --bg-disabled: #f8f8f8;
  /* lines */
  --border-basic: #BCBCB5;
  --border-outside: 16px;
  --border-width-l: 8px;
  --border-width-s: 2px;
  /* spacing between components based on rem */
  --spacing-xl: 11rem;
  --spacing-l: 3.5rem;
  --spacing-m: 2rem;
  --spacing-s: 1.5rem;
  --spacing-xs: 0.75rem;
  --padding-box: 24px;
  /* header */
  --header-height: 100px;
  /* grid */
  --grid-container: 28px;
  --grid-row: -14px;
  --grid-col: 14px;
  --grid-gap: 16px;
  /* form */
  --border-form: #BCBCB5;
  --border-form-focus: #006AFF;
  --form-disabled: #ccc;
  --form-error: #ed0043;
  --form-ok: #008a65;
  --form-initial: #006AFF;
  --form-border-width: 2px;
  --form-checkbox-padding-top-text: 0.35em;
  --ticket-padding-input: 0.73em 10px;
}

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

.c-text-light .c-btn,
.c-text-light .c-btn-ticket {
  --text-color-link-underline: #fff;
}

.c-text-light .c-events-box {
  --border-basic: #00D8F4;
}

.c-header {
  --text-color-link: #006AFF;
}

.c-link-icon {
  --text-color-link: #006AFF;
}

.c-text-light .c-link-icon {
  --text-color-link: #fff;
}

.c-btn-small {
  --border-width-l: 4px;
}

.c-form-standard {
  --color-highlight: #006AFF;
}

.c-form-standard .c-date {
  --color-highlight: #00D8F4;
}

.c-form-standard .c-ticket-box-disabled .c-date {
  --color-highlight: var(--text-color-disabled);
}

.c-ticket-box {
  --border-width-l: 4px;
}

.c-ticket-box {
  --border-basic: #699cf8;
}

.c-form-standard .c-text-light .c-ticket-box-cart-quantity input[type=number],
.c-form-standard .c-text-light .c-ticket-box-cart-quantity input[type=text],
.c-text-light .c-form-standard input[type=text],
.c-text-light .c-form-standard select {
  --text-color: #000;
}

.c-form-standard .c-text-light .c-ticket-box-cart-quantity input[type=number],
.c-form-standard .c-text-light .c-ticket-box-cart-quantity input[type=text],
.c-form-standard .c-text-light .c-ticket-box-skipass input[type=checkbox]:checked + span::before,
.c-form-standard .c-text-light .c-ticket-box-skipass input[type=checkbox]:not(:checked) + span::before,
.c-text-light .c-form-standard input[type=text],
.c-text-light .c-form-standard select {
  --border-form: #fff;
  --border-form-focus: #00D8F4;
}

.c-form-label-text,
.c-ticket-price span {
  --font-size-body-s: 0.75rem;
}

.c-form-label-text-small {
  --form-checkbox-padding-top-text: 0.55em;
}

.c-cookie-notice,
.c-events-box-member {
  --text-color-link-underline: #00D8F4;
}

/* ==========================================================================
   Responsive Custom Properties
   ========================================================================== */
@media only screen and (min-width: 1200px) {
  :root {
    --grid-container: 48px;
    --grid-row: -24px;
    --grid-col: 24px;
    --padding-box: 32px;
  }
  .c-form-multine {
    --grid-container: 28px;
    --grid-row: -14px;
    --grid-col: 14px;
  }
}
@media only screen and (min-width: 1600px) {
  :root {
    --grid-container: 64px;
    --grid-row: -32px;
    --grid-col: 32px;
    --border-outside: 20px;
    --grid-gap: 20px;
    --padding-box: 48px;
    --ticket-padding-input: 0.48em 10px;
  }
  .c-form-multine {
    --grid-container: 28px;
    --grid-row: -14px;
    --grid-col: 14px;
  }
}
@media only screen and (max-width: 1100px) {
  :root {
    --header-height: 50px;
    --border-outside: 8px;
    --grid-gap: 8px;
    --spacing-xl: 7rem;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --border-width-l: 6px;
    --ticket-padding-input: 0.8em 10px;
  }
  .c-form-label-text-small {
    --form-checkbox-padding-top-text: 0.75em;
  }
}
/* ==========================================================================
   Project Fonts
   ========================================================================== */
/**
 * @license
 * MyFonts Webfont Build ID 4351331, 2022-02-07T02:24:28-0500
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: TheSans-Light by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/light/
 *
 * Webfont: TheSans-Bold by LucasFonts
 * URL: https://www.myfonts.com/fonts/lucasfonts/thesans/bold/
 *
 *
 * Webfonts copyright: Copyright 1994-2021 Luc(as) de Groot, published by LucasFonts, www.lucasfonts.com  All rights reserved.
 *
 * © 2022 MyFonts Inc
*/
/*! 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: "filson-pro", "Arial", "Helvetica", sans-serif;
  font-family: var(--font-stack-default);
  font-weight: normal;
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body);
  -webkit-tap-highlight-color: transparent;
}

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

p:empty {
  display: none;
}

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

textarea {
  resize: none;
}

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

img {
  height: auto;
}

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

img {
  vertical-align: bottom;
}

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

/* ==========================================================================
   Standard Padding between Components 
   ========================================================================== */
.c-container,
.c-container-medium,
.c-team .c-col-4,
.c-accordion,
.c-tickets .c-text-only,
.c-teaser-img-gallery .c-col-4 {
  padding-bottom: 3.5rem;
  padding-bottom: var(--spacing-l);
}

.c-showroom,
.c-teaser-events,
.c-teaser-club,
.c-teaser-ethics,
.c-members-search {
  margin-bottom: 3.5em;
  margin-bottom: var(--spacing-l);
}

.c-showroom-text-inner {
  padding-top: 3.5em;
  padding-top: var(--spacing-l);
  padding-bottom: var(--spacing-m);
}

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

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

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

.c-teaser-events,
.c-teaser-club,
.c-teaser-ethics,
.c-members-search {
  padding-top: 3.5em;
  padding-top: var(--spacing-l);
}

.c-events .c-col-4,
.c-tickets .c-col-4 {
  padding-bottom: var(--grid-container);
}

.c-teaser-club .c-col-4,
.c-teaser-club-list li,
.c-teaser-ethics-list li {
  padding-bottom: var(--spacing-l);
}

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

.c-teaser-events + .c-teaser-club,
.c-teaser-club + .c-teaser-ethics,
.c-teaser-ethics + .c-teaser-club {
  margin-top: -3.5em;
  margin-top: calc(var(--spacing-l) * -1);
}

.c-content .c-teaser-club:last-child,
.c-content .c-teaser-ethics:last-child {
  margin-bottom: 0;
}

.c-paging {
  margin-top: -1.5em;
  margin-top: calc(var(--spacing-s) * -1);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

h1,
.c-h1 {
  padding-bottom: 0.25em;
  line-height: 1.1;
  font-size: 2.08rem; /* 50px */
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-bolder);
  text-transform: uppercase;
}

h2,
.c-h2 {
  padding-bottom: 0.25em;
  line-height: 1.2;
  font-size: 1.66rem; /* 40px */
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-bolder);
  text-transform: uppercase;
}

.c-members-search h2 {
  margin-bottom: 0.75em;
}

h3,
.c-h3 {
  padding-bottom: 0.25em;
  line-height: 1.33;
  font-size: 1.25rem;
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-bolder);
  text-transform: none;
}

.c-form-2col h3 {
  padding-bottom: 0.75em;
}

h4,
.c-h4 {
  padding-bottom: 0.5em;
  line-height: 1.5;
  font-size: 0.85rem;
  font-size: var(--font-size-body-s);
  font-weight: var(--font-weight-bolder);
  text-transform: uppercase;
}

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

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

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

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

.c-lead + .c-btn {
  margin-top: 1.5em;
}

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

.c-text-small,
.c-text-block blockquote cite,
.c-footer,
.c-main-nav,
.c-header-lang,
.c-teaser-club-item,
.c-teaser-ethics-item,
.c-members-list {
  font-size: 0.75rem; /* 18px */
  font-size: var(--font-size-body-s);
}

.c-category-title,
.c-date {
  display: block;
  padding-bottom: 1em;
  font-size: 0.75rem;
  font-weight: 900;
  font-size: var(--font-size-body-s);
  font-weight: var(--font-weight-bolder);
}

.c-date {
  padding-bottom: 0.5em;
  color: var(--color-highlight);
  text-transform: none;
}

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

.c-offcanvas-nav-list {
  font-weight: 900;
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-bolder);
}

.c-offcanvas-lang, .c-offcanvas-nav-list ul {
  font-size: 1rem;
  font-size: var(--font-size-body);
  font-weight: normal;
  font-weight: var(--font-weight-normal);
}

.c-footer-category-title {
  padding-bottom: 1em;
  font-size: 1rem;
  font-size: var(--font-size-body-s);
  font-weight: normal;
  font-weight: var(--font-weight-normal);
}

.c-ticket-price,
.c-text-block .c-ticket-price {
  padding-top: 0.5em;
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-bolder);
  padding-bottom: 0;
}

.c-ticket-price span {
  font-size: var(--font-size-body-s);
  font-weight: var(--font-weight-normal);
}

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

.c-tickets-list {
  padding-bottom: 0;
}

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

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

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

.c-text-block ul li::before {
  content: "—";
  position: absolute;
  top: 0.1em;
  left: 0;
  font-weight: var(--font-weight-bolder);
  color: var(--text-color-link-underline);
}

.c-text-block .c-link-list li::before,
.c-text-block .c-cookie-notice-list li::before,
.c-text-block .c-tickets-list li::before {
  content: "";
}

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

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

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

.c-tickets-list {
  font-size: var(--font-size-body-s);
  border-top: solid 2px #BCBCB5;
  border-width: var(--border-width-s);
  border-color: var(--border-basic);
}

.c-text-block .c-tickets-list li,
.c-tickets-list li {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  border-bottom: solid 2px #BCBCB5;
  border-width: var(--border-width-s);
  border-color: var(--border-basic);
}

/* ==========================================================================
   Quote
   ========================================================================== */
.c-text-block blockquote {
  margin: 0;
  padding: 0 20px 0 0;
  padding-left: var(--padding-box);
  border-left: solid var(--border-width-l) var(--text-color-quote);
}

.c-text-block blockquote p {
  position: relative;
  padding: 0;
  line-height: 1.2;
  font-size: 1.66rem; /* 40px */
  font-size: var(--font-size-quote);
  font-weight: var(--font-weight-bolder);
  text-wrap: balance;
  color: var(--text-color-quote);
}

.c-text-block blockquote cite {
  display: block;
  padding-top: 1.5em;
  font-style: normal;
  font-size: var(--font-size-body-s);
}

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

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

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

/* ==========================================================================
   Text sizes responsive
   ========================================================================== */
@media only screen and (max-width: 1360px) {
  h1, .c-h1,
h2, .c-h2,
h3, .c-h3 {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }
}
@media only screen and (min-width: 1601px) {
  :root {
    --font-size-root: 24px;
    --font-size-h1: 2.08rem; /* 50px */
    --font-size-h2: 1.66rem; /* 40px */
    --font-size-quote: 1.66rem;
    --font-size-body-s: 0.75rem;
    --font-size-link: 0.75rem;
    --form-checkbox-padding-top-text: 0.17em;
  }
  .c-form-label-text,
.c-ticket-price span {
    --font-size-body-s: 0.65rem;
  }
}
@media only screen and (max-width: 1200px) {
  :root {
    --font-size-h1: 2rem;
    --font-size-h2: 1.5rem;
    --font-size-quote: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --font-size-root: 18px;
    --font-size-h1: 1.75rem;
    --font-size-h2: 1.33rem;
    --font-size-h3: 1.16rem;
    --font-size-quote: 1.33rem;
    --font-size-body-s: 0.875rem;
  }
}
/* ==========================================================================
   Header
   ========================================================================== */
.c-header {
  background-color: #fff;
  background-color: var(--bg-content);
  z-index: 10;
}

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

.c-header-logo {
  position: absolute;
  width: 260px;
  /*height: 190px;*/
  top: 0;
  left: 20px;
  left: var(--grid-container);
  /*background-image:url(../../images/bg-logo-header.svg);
  background-repeat: no-repeat;
     background-size: 100% auto;
     background-position: left bottom;*/
  background-color: var(--bg-content);
}

.c-header-logo-crystal {
  padding: 32px 32px 32px 32px;
}

.c-header-logo-supporter {
  position: relative;
  padding: 42px 32px 12px 32px;
  text-align: center;
  background-color: #E2001A;
  background-color: var(--color-swissski);
  background-image: url(bg-swissski-supporter-diagonal_f8ea.svg);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: left top;
}

.c-header-logo-supporter img {
  margin: 0 auto;
  max-width: 112px;
}

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

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

/* ==========================================================================
   lang 
   ========================================================================== */
.c-header-lang-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.c-header-lang-list li {
  margin: 0;
  padding: 0;
  list-style: none;
}

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

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

.c-header-lang-list a {
  display: inline-block;
  position: relative;
  padding: 0.5em 0;
}

/* ==========================================================================
   main nav 
   ========================================================================== */
.c-main-nav {
  text-transform: uppercase;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
}

.c-main-nav-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0;
  padding: 3px 3em 0 0;
  list-style: none;
}

.c-main-nav-list ul {
  display: none;
  position: absolute;
  top: calc(var(--header-height) + 10px);
  right: var(--grid-container);
  list-style: none;
}

.c-main-nav-list .current-menu-item > ul,
.c-main-nav-list .current-page-ancestor > ul {
  display: flex;
  flex-flow: row;
  font-weight: normal;
  font-weight: var(--font-weight-normal);
}

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

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

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

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

.c-main-nav-list a:focus::before,
.c-main-nav-list a:hover::before,
.c-main-nav-list .current-menu-item > a::before,
.c-main-nav-list .current-page-ancestor > a::before,
.c-header-lang-list a:focus::before,
.c-header-lang-list a:hover::before,
.c-header-lang-list .wpml-ls-current-language a::before {
  width: 100%;
}

.c-main-nav-list .c-menu-login {
  margin-top: -2px;
}

.c-main-nav-list .c-menu-login,
.c-main-nav-list .c-menu-logout {
  display: block;
  width: 40px;
  height: 40px;
  padding: 0;
  overflow: hidden;
  border: solid 4px #006AFF;
  border-color: var(--text-color-link);
  transition: border 0.2s linear;
}

.c-main-nav-list .c-menu-login:focus,
.c-main-nav-list .c-menu-login:hover,
.c-main-nav-list .c-menu-logout:focus,
.c-main-nav-list .c-menu-logout:hover {
  border-color: var(--color-highlight);
}

/* ==========================================================================
   Footer
   ========================================================================== */
.c-footer {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
  padding-top: var(--spacing-l);
  padding-bottom: var(--spacing-l);
  background-color: #006AFF;
  background-color: var(--bg-dark);
}

.c-footer-deco {
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.c-footer-deco::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url(deco-footer_dd6b.svg);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
  opacity: 0.2;
}

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

/* ==========================================================================
   Footer Main
   ========================================================================== */
.c-footer-swissski {
  max-width: 165px;
}

.c-footer-link-list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
}

.c-footer-link-list li + li {
  padding-top: 0.5em;
}

.c-footer-swissski + .c-footer-category-title {
  margin-top: 3.5rem;
  margin-top: var(--spacing-l);
}

.c-social-list li {
  display: inline-block;
  padding-right: 10px;
  margin-top: 0.25em;
  margin-bottom: 0.5em;
}

/* ==========================================================================
   Footer Disclaimer
   ========================================================================== */
.c-footer-disclaimer {
  padding-top: 3.5rem;
  padding-top: var(--spacing-l);
}

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

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

/*.c-footer a,
.c-footer a:visited {
	color: $text-color;
    color: var(--text-color);
}

.c-footer a:hover,
.c-footer a:focus {
	color: $text-color;
    color: var(--text-color);
}*/
.c-footer-neofluxe {
  display: inline-block;
  position: relative;
  width: 135px;
  height: 1em;
  margin-left: 0.25em;
}

.c-footer-neofluxe::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
  width: 135px;
  height: 16px;
  background-image: url(neofluxe-logo-white_cfc7.svg);
  background-repeat: no-repeat;
  background-size: 134px 16px;
}

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

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

.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: 24px;
  transition: width 0.2s ease-in-out;
}

.c-offcanvas-trigger-open::before {
  height: 22px;
  margin-top: -11px;
  border-top: 4px solid #006AFF;
  border-bottom: 4px solid #00D8F4;
  border-color: var(--bg-dark);
}

.c-offcanvas-trigger-open::after {
  height: 4px;
  background-color: #006AFF;
  background-color: var(--bg-dark);
  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: #00D8F4;
  background-color: var(--color-highlight);
  margin-top: -2px;
  margin-right: -2px;
  height: 4px;
  width: 30px;
  transition: all 0.5s;
}

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

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

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

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

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

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

.c-offcanvas-nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
}

.c-offcanvas-lang + .c-offcanvas-nav-list {
  margin-top: 1.5em;
}

.c-offcanvas-nav-list ul {
  margin: 1em 0;
  padding: 0;
  list-style: none;
  text-transform: none;
}

.c-offcanvas-nav-list li + li {
  padding-top: 0.75em;
}

.c-offcanvas-nav-list a {
  display: inline-block;
  position: relative;
  padding-bottom: 0.25em;
}

.c-offcanvas-nav-list li li a {
  padding-bottom: 0.5em;
}

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

.c-offcanvas-nav-list a:focus::before,
.c-offcanvas-nav-list a:hover::before,
.c-offcanvas-nav-list .current-menu-item > a::before,
.c-offcanvas-nav-list .current-page-ancestor > a::before {
  height: 8px;
  height: var(--border-width-l);
}

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

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

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

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

.c-table-layout th {
  padding: 0 15px 0.5em 0;
  border-bottom: solid 1px #BCBCB5;
  border-color: var(--border-basic);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
}

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

.c-table-layout td:last-child {
  padding-right: 0;
}

.c-members-tel {
  white-space: nowrap;
}

/*gradient on scroll */
.c-table {
  --transparent: rgba(0, 0, 0, 0);
  --background: rgba(255,255,255,1);
  --shadow: rgba(0,0,0,0.3);
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  background: linear-gradient(to right, var(--background) 10%, var(--transparent)), linear-gradient(to right, var(--transparent), var(--background) 90%) 0 100%, linear-gradient(to right, var(--shadow), var(--transparent) 10%), linear-gradient(to left, var(--shadow), var(--transparent) 10%);
  background-attachment: local, local, scroll, scroll;
}

/*
.c-table {
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    background: 
        linear-gradient(to right, white 30%, rgba(255, 255, 255, 0)) left center, 
        linear-gradient(to left, rgba(255, 255, 255, 0), white 70%) right center, 
        radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) left center, 
        radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) right center;

    background-repeat: no-repeat;
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-attachment: local, local, scroll, scroll;
}*/
/* ==========================================================================
   Colors
   ========================================================================== */
.c-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 140px;
  background: linear-gradient(180deg, rgb(188, 188, 181) 0%, rgba(188, 188, 181, 0) 100%);
  background-size: 100% 140px;
  opacity: 0.4;
}

.c-bg-light {
  background-color: #ebebeb;
  background-color: var(--bg-light);
}

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

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

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

.c-img-overlay {
  opacity: 0.6;
}

.c-img-overlay {
  display: block;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.5+0,0+100;Neutral+Density */
  /*background: -moz-linear-gradient(top,  rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%); 
  background: -webkit-linear-gradient(top,  rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%); 
  background: linear-gradient(to bottom,  rgba(0,0,0,0.5) 0%,rgba(0,0,0,0) 100%); */
  background: -webkit-linear-gradient(0deg, rgba(31, 64, 122, 0.4) 0%, rgba(31, 64, 122, 0) 40%);
  background: -moz-linear-gradient(0deg, rgba(31, 64, 122, 0.4) 0%, rgba(31, 64, 122, 0) 40%);
  background: linear-gradient(0deg, rgba(31, 64, 122, 0.4) 0%, rgba(31, 64, 122, 0) 40%);
}

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

.c-showroom {
  text-shadow: 0px 0px 6px rgba(31, 64, 122, 0.1);
}

/* ==========================================================================
 teaser
   ========================================================================== */
.c-teaser {
  overflow: hidden;
  border-left: solid var(--border-outside) var(--bg-content);
  border-right: solid var(--border-outside) var(--bg-content);
}

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

.c-teaser-asym-right .c-teaser-asym-img {
  margin-right: -24px;
  margin-right: calc(var(--grid-container) * -1);
}

.c-teaser-asym-left .c-teaser-asym-img {
  margin-left: -24px;
  margin-left: calc(var(--grid-container) * -1);
}

/* ==========================================================================
 teaser events / events
   ========================================================================== */
.c-teaser-events,
.c-teaser-ethics,
.c-members-search {
  background-color: #006AFF;
  background-color: var(--bg-dark);
}

.c-events-box {
  padding: 1.5em 24px;
  padding: var(--padding-box);
  border: solid 8px #006AFF;
  border-width: var(--border-width-l);
  border-color: var(--border-basic);
}

.c-events .c-events-box-member {
  border-color: var(--bg-dark);
  background-color: var(--bg-dark);
}

/* ==========================================================================
 teaser club / ethics
   ========================================================================== */
.c-teaser-club {
  background-color: #ebebeb;
  background-color: var(--bg-light);
}

.c-teaser-club-list,
.c-teaser-ethics-list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  margin-right: var(--grid-row);
  margin-left: var(--grid-row);
  display: flex;
  flex-flow: row wrap;
}

.c-teaser-club-list li {
  padding-right: var(--grid-col);
  padding-left: var(--grid-col);
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.c-teaser-ethics-list li {
  padding-right: var(--grid-col);
  padding-left: var(--grid-col);
  flex: 0 0 25%;
  max-width: 25%;
}

.c-teaser-club-img,
.c-teaser-ethics-img {
  max-width: 130px;
  margin: 0 auto 1.5em auto;
  margin-bottom: var(--spacing-xs);
}

/* ==========================================================================
 teaser img gallery
   ========================================================================== */
.c-teaser-item {
  position: relative;
}

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

.c-ratiobox-teaser-img-gallery img,
.c-teaser-link {
  transition: all 0.2s ease-in-out;
}

.c-teaser-item:hover .c-h3 .c-teaser-link {
  color: var(--text-color-link-underline);
}

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

.c-teaser-item:focus-within {
  transform: scale(1.08);
}

.c-teaser-img-galley-text {
  padding-top: 1.5em;
  padding-top: var(--spacing-s);
}

/* ==========================================================================
 gallery 
   ========================================================================== */
.c-gallery-container {
  padding-left: 16px;
  padding-right: 16px;
  padding-left: var(--grid-gap);
  padding-right: var(--grid-gap);
  overflow: hidden;
}

.c-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 20vw);
  grid-gap: 20px;
  grid-gap: var(--grid-gap);
}

.c-gallery-item img,
.c-gallery-item video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-gallery-var1-7pics .c-gallery-item-1,
.c-gallery-var2-7pics .c-gallery-item-1 {
  grid-column: 1/span 1;
  grid-row: 1/span 2;
}

.c-gallery-var1-7pics .c-gallery-item-4 {
  grid-column: 2/span 1;
  grid-row: 2/span 2;
}

.c-gallery-var2-7pics .c-gallery-item-5 {
  grid-column: 3/span 1;
  grid-row: 2/span 2;
}

.c-gallery-2col {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(1, 30vw);
}

.c-gallery-2col .c-gallery-item-1 {
  grid-column: span 2/span 2;
}

/* ==========================================================================
  Team
   ========================================================================== */
.c-team-img {
  max-width: 330px;
  padding-bottom: 1.5em;
  padding-bottom: var(--spacing-s);
}

/* ==========================================================================
  paging
   ========================================================================== */
.c-paging {
  display: flex;
  flex-flow: row wrap;
}

.c-paging-item {
  display: inline-block;
  padding: 0;
  margin: 0 8px 8px 0;
  width: 40px;
  height: 40px;
  line-height: 34px;
  border: solid 4px #00D8F4;
  border-color: var(--bg-dark);
  font-size: var(--font-size-body-s);
  text-align: center;
  background-color: var(--bg-content);
  font-weight: var(--font-weight-bolder);
  transition: all 0.2s ease-in-out;
}

.c-paging-item,
.c-paging-item:visited {
  color: #00D8F4;
  color: var(--bg-dark);
}

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

.c-paging .c-paging-disabled,
.c-paging .c-paging-disabled:hover {
  border-color: var(--form-disabled);
  color: var(--form-disabled);
  background-color: var(--bg-content);
}

/* ==========================================================================
 tickets
   ========================================================================== */
.c-ticket-box {
  padding: 1.5em 24px;
  padding: var(--padding-box);
  background: var(--bg-dark);
}

.c-ticket-box-disabled {
  background-color: var(--bg-disabled);
  border-color: var(--bg-disabled);
  color: var(--text-color-disabled);
}

.c-ticket-box-cart {
  display: flex;
  flex-flow: row wrap;
  align-items: flex-end;
}

.c-ticket-box-cart,
.c-ticket-box-skipass {
  margin-top: 1em;
  padding-top: 1.2em;
  border-top: solid 1px #BCBCB5;
  border-width: var(--border-width-s);
  border-color: var(--border-basic);
}

.c-ticket-box-cart-quantity {
  max-width: 70px;
  margin-right: 16px;
}

.c-tickets-message-box {
  position: fixed;
  top: 20px;
  right: 20px;
  top: var(--grid-container);
  right: var(--grid-container);
  padding: 1.5em 24px;
  padding: var(--padding-box);
  border: solid 8px #006AFF;
  border-width: var(--border-width-l);
  border-color: var(--border-basic);
  background-color: var(--bg-content);
  max-width: 350px;
  margin-left: var(--grid-container);
  z-index: 1;
}

/* ==========================================================================
  404
   ========================================================================== */
.c-main-title-illu {
  max-width: 400px;
  margin: 0 auto;
}

/* ==========================================================================
  Cookie notice
   ========================================================================== */
.c-cookie-notice {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 480px;
  padding: 1.5rem 30px;
  padding: var(--padding-box);
  background-color: #006AFF;
  background-color: var(--bg-dark);
  color: var(--text-color);
  line-height: 1.5;
  text-align: left;
  border: solid 4px #BCBCB5;
  border-color: var(--bg-content);
  border-width: var(--border-outside);
}

.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;
  margin-right: 30px;
}

@media only screen and (max-width: 767px) {
  .c-cookie-notice {
    width: 100%;
    right: 0;
    bottom: 0;
    /*border-top: solid 4px $border-basic;
          border-width: var(--border-width-l);
          border-color: var(--bg-content);*/
  }
}
/* ==========================================================================
   Link colors and styles
   ========================================================================== */
a[href^="tel:"] {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

.c-text-block a {
  background-image: linear-gradient(to bottom, #006AFF 0%, #006AFF 100%);
  background-image: linear-gradient(to bottom, var(--text-color-link-underline) 0%, var(--text-color-link-underline) 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-block .c-btn,
.c-text-block .c-form-standard input[type=submit],
.c-text-block .c-link-arrow,
.c-text-block .c-link-download,
.c-text-block .c-link-extern,
.c-text-block .c-link-back,
.c-text-block .c-link-mail,
.c-text-block .c-link-linkedin {
  background-image: none;
}

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

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

/* ==========================================================================
   Button 
   ========================================================================== */
.c-btn,
.c-form-standard input[type=submit],
.c-btn-ticket {
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 18px 8px 14px 0;
  border: none;
  border-top: solid 4px #006AFF;
  border-width: var(--border-width-l);
  border-color: var(--text-color-link-underline);
  background-color: transparent;
  line-height: 1;
  text-align: left;
  font-weight: 900;
  font-weight: var(--font-weight-bolder);
  font-size: var(--font-size-body);
  transition: all 0.2s ease-in-out;
  text-decoration: none;
  text-transform: uppercase;
}

.c-form-standard input[type=submit],
.c-btn-ticket {
  padding: 0.75em 20px 0.6em 20px;
  border: solid 4px #006AFF;
  border-width: var(--border-width-l);
  border-color: var(--text-color-link-underline);
}

.c-btn:after {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: calc(100% - 25px);
  width: 50px;
  height: 50px;
  border: solid #006AFF;
  border-color: var(--text-color-link-underline);
  border-width: 0 4px 4px 0;
  border-width: 0 var(--border-width-l) var(--border-width-l) 0;
  transform: rotate(-45deg);
  transition: all 0.4s ease-in-out;
}

@keyframes animbtn {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(20px, 0);
  }
  100% {
    transform: translate(16px, 0);
  }
}
.c-btn,
.c-btn:visited,
.c-btn:hover,
.c-btn:focus,
.c-form-standard input[type=submit],
.c-form-standard input[type=submit]:hover,
.c-form-standard input[type=submit]:focus,
.c-btn-ticket,
.c-btn-ticket:hover,
.c-btn-ticket:focus {
  color: #000;
  color: var(--text-color-link-underline);
}

.c-btn:hover,
.c-btn:focus,
.c-form-standard input[type=submit]:hover,
.c-form-standard input[type=submit]:focus,
.c-btn-ticket:hover,
.c-btn-ticket:focus {
  animation: animbtn 0.4s forwards;
}

.c-btn-small {
  padding: 14px 8px 14px 0;
  font-size: var(--font-size-body-s);
}

.c-btn-small:after {
  top: 4px;
  left: calc(100% - 21px);
  width: 40px;
  height: 40px;
}

.c-btn-ticket {
  padding: 18px 16px 16px 16px;
  font-size: var(--font-size-body-s);
}

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

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

.c-icon-social::before {
  background-image: url(sprite-social_4e0a.svg);
}

.c-icon-title::after {
  top: 0;
  left: -2px;
  width: 106px;
  height: 70px;
  background-image: url(sprite-crystal_6229.svg);
  background-position: 0 0;
}

.c-text-light .c-icon-title::after {
  background-position: 0 -100px;
}

.c-link-icon {
  display: inline-block;
  padding-left: 34px;
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  font-size: 1rem;
  font-size: var(--font-size-link);
}

.c-icon-arrow {
  display: block;
  width: 28px;
  height: 28px;
  pointer-events: none;
}

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

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

.c-teaser-item:focus-within .c-icon-arrow::before {
  left: 4px;
}

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

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

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

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

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

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

.c-link-mail::before {
  top: -0.15em;
  left: 0;
  width: 26px;
  height: 28px;
  background-position: 0 -240px;
}

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

.c-link-delete::before {
  top: 0.2em;
  left: 0;
  width: 21px;
  height: 22px;
  background-position: 0 -400px;
  transition: 0.1s ease-in-out;
}

.c-link-delete:hover::before {
  transform: translate(4px, 0);
}

.c-link-linkedin::before {
  top: 0.15em;
  left: 0;
  width: 21px;
  height: 21px;
  background-position: 0 -280px;
}

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

.c-link-reset::before {
  top: 0.15em;
  left: 0;
  width: 26px;
  height: 26px;
  background-position: 0 -480px;
  transition: transform 0.2s ease-out;
}

.c-link-reset:hover::before,
.c-link-reset:focus::before {
  transform: rotate(-90deg);
}

.c-icon-social {
  display: inline-block;
  position: relative;
  width: 52px;
  height: 52px;
  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: 52px;
  height: 52px;
}

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

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

.c-icon-social-youtube::before {
  background-position: 0 -120px;
}

.c-icon-social-twitter::before {
  background-position: 0 -180px;
}

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

.c-icon-social-vimeo::before {
  background-position: 0 -300px;
}

.c-icon-social-tiktok::before {
  background-position: 0 -360px;
}

.c-icon-social-website::before {
  background-position: 0 -420px;
}

.c-icon-title {
  position: relative;
  padding-top: 100px;
}

.c-paging-back::before,
.c-paging-next::before {
  top: 8px;
  left: 9px;
  width: 12px;
  height: 20px;
  background-position: 0 -319px;
}

.c-paging-back:hover::before,
.c-paging-back:focus::before {
  background-position: -40px -319px;
}

.c-paging-disabled.c-paging-back::before,
.c-paging-disabled.c-paging-back:hover::before,
.c-paging-disabled.c-paging-back:focus::before {
  background-position: -80px -319px;
}

.c-paging-next::before {
  left: 11px;
  background-position: 0 -359px;
}

.c-paging-next:hover::before,
.c-paging-next:focus::before {
  background-position: -39px -359px;
}

.c-paging-disabled.c-paging-next::before,
.c-paging-disabled.c-paging-next:hover::before,
.c-paging-disabled.c-paging-next:focus::before {
  background-position: -80px -359px;
}

.c-icon-shop {
  display: inline-block;
  padding-right: 42px;
}

.c-icon-shop::before {
  top: 50%;
  margin-top: -13px;
  right: 0;
  width: 30px;
  height: 30px;
  background-position: -50px -440px;
}

.c-btn-search {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 54px;
  height: 100%;
  border: none;
  background: none;
}

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

.c-main-nav-list .c-menu-login::before,
.c-main-nav-list .c-menu-logout::before,
.c-offcanvas-nav-list .c-menu-login::after,
.c-offcanvas-nav-list .c-menu-logout::after {
  top: 50%;
  left: 50%;
  width: 25px;
  height: 26px;
  margin-top: -13px;
  margin-left: -11px;
  background-position: 0 -520px;
  background-color: transparent;
  transition: none;
}

.c-main-nav-list .c-menu-login:focus::before,
.c-main-nav-list .c-menu-login:hover::before {
  background-position: -30px -520px;
}

.c-main-nav-list .c-menu-logout::before {
  margin-top: -10px;
  margin-left: -12px;
  background-position: 0 -560px;
}

.c-main-nav-list .c-menu-logout:focus::before,
.c-main-nav-list .c-menu-logout:hover::before {
  background-position: -30px -560px;
}

.c-offcanvas-nav-list .c-menu-login,
.c-offcanvas-nav-list .c-menu-logout {
  padding-left: 34px;
}

.c-offcanvas-nav-list .c-menu-login::before,
.c-offcanvas-nav-list .c-menu-logout::before {
  background-image: none;
}

.c-offcanvas-nav-list .c-menu-login::after {
  left: 0;
  margin-left: 0;
  margin-top: -18px;
  background-position: -30px -520px;
}

.c-offcanvas-nav-list .c-menu-logout::after {
  left: 0;
  margin-left: 0;
  margin-top: -17px;
  background-position: -30px -560px;
}

/* ==========================================================================
  responsive
   ========================================================================== */
@media only screen and (min-width: 1601px) {
  .c-link-arrow::before,
.c-link-back::before {
    top: 0.15em;
  }
  .c-link-download::before {
    top: -0.35em;
  }
  .c-link-extern::before {
    top: 0em;
  }
  .c-link-mail::before {
    top: -0.35em;
  }
  .c-link-linkedin::before {
    top: 0.1em;
  }
  .c-link-reset::before {
    top: 0.1em;
  }
}
@media only screen and (max-width: 767px) {
  .c-link-arrow::before,
.c-link-back::before {
    top: 0.15em;
  }
  .c-link-download::before {
    top: -0.35em;
  }
  .c-link-extern::before {
    top: 0em;
  }
  .c-link-mail::before {
    top: -0.35em;
  }
  .c-link-linkedin::before {
    top: 0.1em;
  }
  .c-link-reset::before {
    top: 0.1em;
  }
  .c-btn:after {
    top: 3px;
    left: calc(100% - 23px);
    width: 46px;
    height: 46px;
  }
  .c-btn-small:after {
    top: 3px;
    left: calc(100% - 19px);
    width: 36px;
    height: 36px;
  }
  .c-icon-title {
    padding-top: 80px;
  }
  .c-icon-title::after {
    background-position: -150px 0;
  }
  .c-text-light .c-icon-title::after {
    background-position: -150px -100px;
  }
}
/* ==========================================================================
   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,
.c-ratiobox > video {
  /*width: 100%;
  height: auto;*/
  width: 100%;
  height: 100%;
  object-fit: cover;
}

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

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

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

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

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

.c-ratiobox-team {
  padding-bottom: 133.33%;
}

.c-ratiobox-teaser-img-gallery {
  padding-bottom: 66.66%;
}

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

input::-webkit-datetime-edit {
  line-height: 1.3;
  padding: 0;
  margin-bottom: -1px;
}

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

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

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

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

.c-form-separator {
  display: block;
  padding: 0;
  border: none;
  height: 2px;
  height: var(--border-width-s);
  background-color: var(--border-basic);
  margin: 0;
  margin-bottom: 3.5rem;
  margin-bottom: var(--spacing-l);
  margin-top: calc(var(--spacing-l) - var(--spacing-s));
}

.c-formfield-search-container {
  position: relative;
}

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

.c-form-standard .c-ticket-box input[type=text],
.c-form-standard .c-ticket-box input[type=number] {
  padding: 0.48em 10px;
  padding: var(--ticket-padding-input);
}

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

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

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

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

.c-form-standard .c-form-label-text-small {
  padding-top: 0.5em;
  text-transform: none;
}

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

.c-form-standard input[type=file]::file-selector-button {
  display: inline-block;
  margin-right: 0.75em;
  padding: 1.15em 24px 1.15em 24px;
  border: 2px solid #000;
  border-color: var(--text-color);
  border-width: var(--form-border-width);
  color: #000;
  color: var(--text-color);
  background-color: #fff;
  background-color: var(--bg-content);
  line-height: 1.2;
  font-size: var(--font-size-body);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  text-align: center;
  transition: all 0.2s ease-out;
}

.c-form-standard input[type=file]::file-selector-button:hover {
  color: #fff;
  color: var(--text-color-light);
  background-color: #006AFF;
  background-color: var(--bg-dark);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width: 1601px) {
  .c-form-standard select {
    line-height: 1.4rem !important;
  }
}
.c-form-standard select:focus {
  border-color: #006AFF;
  border-color: var(--border-form-focus);
  outline: none;
}

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

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

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

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

/* ==========================================================================
   wp7 error / ok message
   ========================================================================== */
.c-form-standard .wpcf7-response-output,
.c-form-standard .wpcf7 form .wpcf7-response-output,
.wpcf7 .c-form-standard form .wpcf7-response-output,
.c-form-standard .wpcf7 form .wpcf7-response-output,
.wpcf7 form .c-form-standard .wpcf7-response-output {
  /*display: block;*/
  background-color: #006AFF;
  background-color: var(--form-initial);
  padding: 1.5em 30px;
  padding: var(--padding-box);
  color: #fff;
  color: var(--text-color-light);
  margin: 0 0 3em 0;
  margin-bottom: var(--spacing-s);
  font-weight: bold;
  font-weight: var(--font-weight-bold);
  border: none;
}

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

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

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

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

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

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

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

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

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

/* ==========================================================================
   Accordion Variables
   ========================================================================== */
.c-accordion {
  --accordion-icon-padding: 68px;
  /* plus/minus icon */
  --plus-length: 40px;
  --plus-stroke: 8px;
  --plus-stroke-position: 16px;
}

@media only screen and (max-width: 767px) {
  .c-accordion {
    --accordion-icon-padding: 40px;
    /* plus/minus icon */
    --plus-length: 20px;
    --plus-stroke: 4px;
    --plus-stroke-position: 8px;
  }
  .c-accordion .c-accordion-inner {
    --accordion-icon-padding: 0;
  }
}
/* ==========================================================================
   Accordion
   ========================================================================== */
.c-accordion-container {
  position: relative;
  width: 100%;
  border-top: 2px solid #BCBCB5;
  border-bottom: 2px solid #BCBCB5;
  border-color: var(--border-basic);
  border-width: var(--border-width-s);
}

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

.c-accordion-title {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 0.9em 0 0.9em var(--accordion-icon-padding);
  transition: color 0.2s ease-in-out;
}

.c-accordion-title:hover {
  color: #00D8F4;
  color: var(--color-highlight);
}

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

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

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

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

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

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

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

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

/* styles for every project */
/* ==========================================================================
   Viewport
   ========================================================================== */
@-ms-viewport {
  width: device-width;
}
/* ==========================================================================
   Mediaqueries
   ========================================================================== */
@media only screen and (min-width: 1580px) {
  /* container max width */
  .c-container {
    max-width: 1520px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-teaser-asym-left .c-teaser-asym-img {
    margin-left: calc((80px + var(--grid-container)) * -1);
  }
  .c-teaser-asym-right .c-teaser-asym-img {
    margin-right: calc((80px + var(--grid-container)) * -1);
  }
}
@media only screen and (min-width: 1720px) {
  /* container max width */
  .c-container-medium {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-teaser-asym-right .c-teaser-asym-img {
    margin-right: -126px;
  }
  .c-teaser-asym-left .c-teaser-asym-img {
    margin-left: -126px;
  }
}
@media only screen and (max-width: 1500px) {
  .c-header-logo {
    top: 2px;
    width: 220px;
  }
  .c-header-logo-crystal {
    padding-top: 46px;
  }
  .c-header-logo-supporter img {
    max-width: 96px;
  }
}
@media only screen and (max-width: 1300px) {
  .c-main-nav-list li + li {
    padding-left: 1em;
  }
}
/* header show offcanvas */
@media only screen and (max-width: 1100px) {
  .c-offcanvas-trigger-open {
    display: block;
  }
  .c-main-nav,
.c-header-lang {
    display: none;
  }
  .c-header-logo {
    width: 120px;
    /*height: 84px;
    padding: 10px 16px;*/
  }
  .c-header-logo-crystal {
    padding: 24px 16px 12px 16px;
  }
  .c-header-logo-supporter {
    padding: 22px 16px 10px 16px;
  }
  .c-header-logo-supporter img {
    max-width: 80px;
  }
  .c-tickets .c-col-4 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media only screen and (max-width: 1020px) {
  .c-teaser .c-col-4,
.c-teaser .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-teaser .c-col-4 {
    margin-top: -40px;
  }
  .c-teaser-asym-right .c-teaser-asym-img {
    margin-left: calc(var(--grid-container) * -1);
  }
  .c-teaser-asym-left .c-teaser-asym-img {
    margin-right: calc(var(--grid-container) * -1);
  }
  .c-teaser .c-icon-title::before {
    content: "";
    position: absolute;
    top: -8px;
    left: -10px;
    width: 128px;
    height: 70px;
    background-image: url(sprite-crystal_6229.svg);
    background-repeat: no-repeat;
    background-position: 0 -200px;
  }
  .c-events .c-col-4,
.c-teaser-img-gallery .c-col-4 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-teaser-events .c-col-4,
.c-teaser-events .c-col-8,
.c-teaser-club .c-col-4,
.c-teaser-club .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-teaser-events .c-col-4,
.c-teaser-club .c-col-4 {
    padding-bottom: var(--spacing-l);
  }
}
@media only screen and (max-width: 980px) {
  .c-text-only .c-col-8,
.c-main-title .c-col-8,
.c-section-title .c-col-8,
.c-quote .c-col-8,
.c-showroom .c-col-8,
.c-form-1col .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-footer-main .c-col-3 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding-bottom: var(--spacing-l);
  }
  .c-footer-main .c-col-6,
.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 .c-col-6:first-child {
    padding-bottom: 1.5em;
    padding-bottom: var(--spacing-s);
  }
  .c-footer-disclaimer-list li,
.c-footer-disclaimer-list li + li {
    padding-right: 2em;
    padding-bottom: 0.5em;
  }
  .c-teaser-ethics-list li {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding-bottom: var(--spacing-l);
  }
  .c-teaser-ethics-item {
    max-width: 280px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 900px) {
  .c-form-2col .c-col-6 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-form-2col .c-col-6:last-child h3 {
    border-top: solid 2px #BCBCB5;
    border-width: var(--border-width-s);
    border-color: var(--border-basic);
    padding-top: 3.5rem;
    padding-top: var(--spacing-l);
    margin-top: calc(var(--spacing-l) - var(--spacing-s));
  }
}
@media only screen and (max-width: 800px) {
  .c-main-title-404 .c-col-7,
.c-main-title-404 .c-col-5 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-main-title-404 .c-col-7 {
    padding-bottom: 1.5em;
    padding-bottom: var(--spacing-l);
  }
}
@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-quote .c-col-8,
.c-showroom .c-col-8,
.c-form-1col .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-gallery {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(5, 30vw);
  }
  .c-gallery-item img,
.c-gallery-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .c-gallery-var1-7pics .c-gallery-item-1,
.c-gallery-var2-7pics .c-gallery-item-1 {
    grid-column: 1/span 1;
    grid-row: 1/span 2;
  }
  .c-gallery-var1-7pics .c-gallery-item-4 {
    grid-column: 2/span 1;
    grid-row: 3/span 3;
  }
  .c-gallery-var2-7pics .c-gallery-item-5 {
    grid-column: 2/span 1;
    grid-row: 3/span 3;
  }
  .c-gallery-2col {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(5, 20vw);
  }
  .c-gallery-2col .c-gallery-item-1 {
    grid-column: 1/span 1;
    grid-row: 1/span 2;
  }
  .c-gallery-2col .c-gallery-item-2 {
    grid-row: 3/span 3;
  }
  .c-teaser .c-col-4 {
    margin-top: -32px;
  }
  .c-teaser .c-icon-title::before {
    background-position: -150px -200px;
  }
  .c-team .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-team-img {
    max-width: 200px;
  }
  .c-footer-neofluxe::before {
    margin-top: -5px;
    background-size: 120px 14px;
  }
  .c-tickets .c-col-4 {
    webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-members-search .c-col-6 {
    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: 700px) {
  .c-teaser-club-list li {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .c-teaser-club-img,
.c-teaser-ethics-img {
    max-width: 100px;
  }
}
@media only screen and (min-width: 651px) {
  .c-events .c-col-4,
.c-teaser-events .c-col-6,
.c-tickets .c-col-4,
.c-ticket-box {
    display: flex;
    flex-direction: column;
  }
  .c-events-box,
.c-ticket-box {
    flex-grow: 1;
  }
  .c-ticket-box-desc {
    flex: 1 0 auto;
  }
}
@media only screen and (max-width: 650px) {
  .c-events .c-col-4,
.c-teaser-events .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-teaser-events .c-col-6:first-child {
    padding-bottom: var(--grid-container);
  }
}
@media only screen and (max-width: 500px) {
  .c-team .c-col-4,
.c-teaser-img-gallery .c-col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-footer-supported-by {
    display: block;
  }
}
@media only screen and (max-width: 400px) {
  .c-teaser-club-list li,
.c-teaser-ethics-list li {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .c-teaser-ethics-item {
    max-width: 100%;
  }
}
@media only screen and (max-width: 380px) {
  .c-footer-main .c-col-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
/* ==========================================================================
   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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGVsZW1lbnRzLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUFDaEI7OytFQUFBO0FDREE7QUFFQTs7K0VBQUE7QUFJQTtBQUNBO0FBSUE7OytFQUFBO0FBSUE7QUFDbUI7QUFFSztBQUd4QjtBQUVtQjtBQUNDO0FBQ087QUFFM0I7QUFHQTtBQU1BO0FBTUE7QUFVQTs7K0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEdENKOztBQ3lDQTs7K0VBQUE7QUFJQTtFQUNJO0VBQ0E7QUR2Q0o7O0FDMENBOztFQUVJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTtFQUNJO0FEdkNKOztBQzBDQTs7OztFQUlJO0FEdkNKOztBQzBDQTs7Ozs7O0VBTUk7RUFDQTtBRHZDSjs7QUMwQ0E7O0VBRUk7QUR2Q0o7O0FDMENBO0VBQ0k7QUR2Q0o7O0FDMENBOztFQUVJO0FEdkNKOztBQzBDQTs7K0VBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RUR4Q047RUMyQ0U7SUFDSTtJQUNBO0lBQ0E7RUR6Q047QUFDRjtBQzRDQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUQxQ047RUM2Q0U7SUFDSTtJQUNBO0lBQ0E7RUQzQ047QUFDRjtBQytDQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RUQ3Q047QUFDRjtBQ2dEQTtFQUNJO0lBQ0k7SUFDQTtFRDlDTjtFQ2lERTtJQUNJO0VEL0NOO0FBQ0Y7QUU1TkE7OytFQUFBO0FBS0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNMSDtBQUVBOzsrRUFBQTtBQUlBOztFQUFBO0FBSUE7Ozs7Ozs7Ozs7OztFQVlJO0FIbVBKOztBR2hQQTs7O0VBQUE7QUFLQTs7OztFQUlFO0VBQ0E7QUhrUEY7O0FHL09BOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtBSGlQSjs7QUc5T0E7OztFQUFBO0FBS0E7O0VBRUk7QUhnUEo7O0FHNU9BOzsrRUFBQTtBQUlBOzs7Ozs7O0VBQUE7QUFTQTtFQUNJO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7RUFDQTtBSDZPSjs7QUd6T0E7Ozs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtBSDRPSjs7QUd2T0E7Ozs7RUFBQTtBQU1BO0VBQ0k7QUh5T0o7O0FHdE9BOztFQUFBO0FBSUE7RUFDSTtBSHdPSjs7QUdwT0E7OytFQUFBO0FBSUE7OztFQUFBO0FBS0E7RUFDSTtFQUNBO0FIcU9KOztBR2xPQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtBSG9PRjs7QUdqT0E7O0VBQUE7QUFJQTs7RUFFSTtBSG1PSjs7QUdoT0E7RUFDSTtBSG1PSjs7QUdoT0E7O0VBQUE7QUFJQTtFQUNJO0FIa09KOztBRy9OQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FIaU9GOztBRzlOQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBSGdPSjs7QUc3TkE7O0VBQUE7QUFJQTs7OztFQUlJO0VBQ0E7QUgrTko7O0FHNU5BOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUg4Tko7O0FHM05BOztFQUFBO0FBSUE7RUFDSTtBSDZOSjs7QUcxTkE7O0VBQUE7QUFLQTtFQUNJO0FIMk5KOztBR3hOQTs7OztFQUFBO0FBTUE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7QUgwTko7O0FHdk5BO0VBQ0k7QUgwTko7O0FHdk5BO0VBQ0k7QUgwTko7O0FHdE5BOzsrRUFBQTtBQUlBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7QUh1Tko7O0FHcE5BOztFQUFBO0FBSUE7RUFDSTtBSHNOSjs7QUdsTkE7OytFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNJO0FIbU5KOztBRy9NQTs7K0VBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQ0k7QUhnTko7O0FHN01BOztFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7QUgrTUo7O0FHNU1BOzs7OztFQUFBO0FBT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDhNRjs7QUcxTUE7Ozs7Ozs7RUFBQTtBQVNBOzs7OztFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUg0TUo7O0FHeE1BOzs7RUFBQTtBQUtBO1FBQ1E7RUFDTjtBSDBNRjs7QUd2TUE7Ozs7RUFBQTtBQU1BOztFQUVJO0FIeU1KOztBR3RNQTs7O0VBQUE7QUFLQTtTQUNTO0VBQ1A7QUh3TUY7O0FHck1BOzs7Ozs7OztFQUFBO0FBU0E7Ozs7RUFJSTtFQUNBO0dId01GLGlCR3ZNRTtBSHdNSjs7QUdyTUE7O0VBQUE7QUFJQTs7RUFFSTtBSHVNSjs7QUdsTUE7O0VBQUE7QUFJQTs7OztFQUtFO0VBQ0E7QUhtTUY7O0FHaE1BOztFQUFBO0FBSUE7Ozs7RUFJRTtBSGtNRjs7QUc5TEE7OztFQUFBO0FBS0E7RUFDRTtBSGdNRjs7QUc3TEE7OztFQUFBO0FBS0E7O0VBRUU7RUFDQTtBSCtMRjs7QUc1TEE7O0VBQUE7QUFJQTs7RUFFRTtBSDhMRjs7QUcxTEE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FINExGOztBR3pMQTs7Ozs7O0VBQUE7QUFRQTs7RUFFSTtBSDJMSjs7QUd2TEE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtBSHlMSjs7QUd0TEE7OztFQUFBO0FBS0E7RUFDRTtBSHdMRjs7QUdyTEE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FIdUxGOztBR3BMQTs7K0VBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBSHFMSjs7QUdsTEE7O0VBRUk7QUhxTEo7O0FHbExBOzsrRUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDRTtBSG1MRjs7QUdoTEE7O0VBQUE7QUFJQTtFQUNFO0FIa0xGOztBRy9LQTs7K0VBQUE7QUFJQTtFQUNJO0FIaUxKOztBRzdLQTtFQUNJO0VBQ0E7QUhnTEo7O0FHN0tBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIZ0xKOztBRzdLQTtFQUNJO0VBQ0E7QUhnTEo7O0FHN0tBOztFQUVJOzsrQkFBQTtFQUdBO0FIZ0xKOztBRzdLQTtFQUNJO0VBQ0c7RUFDSztBSGdMWjs7QUc3S0E7OztFQUdJO0VBQ0c7RUFDSztBSGdMWjs7QUc3S0E7RUFDSTtFQUVBO0VBQ0k7QUgrS1I7O0FJM3dCQTs7K0VBQUE7QUFXQTs7K0VBQUE7QUNYQTs7K0VBQUE7QUFJQTtFQUNDO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUxteEJKOztBS2h4QkE7RUFDQztFQUNBO0FMbXhCRDs7QUtoeEJBO0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FMbXhCRDs7QUsvd0JBOzsrRUFBQTtBQUlBO0VBQ0k7RUFDQTtBTGl4Qko7O0FLOXdCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FMaXhCSjs7QUs5d0JBOztFQUVJO0FMaXhCSjs7QUs5d0JBO0VBQ0k7QUxpeEJKOztBQTV6QkE7OytFQUFBO0FBSUE7QU1oQkE7OytFQUFBO0FBSUE7RUZhUTtFQUNBO0VFWlAsc0JMZ0JZO0VLZlQ7RUFDSCxXTFFZO0VLUFQ7RUFDSCwyRExEb0I7RUtFakI7RUFDSDtFQUNHO0VBQ0E7RUFDSDtBTiswQkQ7O0FNNTBCQTtBQUNBOzs7O0VBSUMsV0xMaUI7RUtNZDtFQUNIO0FOKzBCRDs7QU01MEJBO0VBQ0k7QU4rMEJKOztBTTMwQkE7OytFQUFBO0FBS0E7OztFQUdDLFdMekJZO0VLMEJUO0FONDBCSjs7QU16MEJBO0VBQ0M7QU40MEJEOztBTXgwQkE7OytFQUFBO0FBSUE7Ozs7O0VBS0k7QU4wMEJKOztBTXYwQkE7RUFDSTtBTjAwQko7O0FNdjBCQTs7RUFFQztFQUNBO0FOMDBCRDs7QU12MEJBO0VBQ0M7QU4wMEJEOztBT241QkE7OytFQUFBO0FBSUE7Ozs7OztFQU1JO0VBQ0E7RUFDQTtBUHE1Qko7O0FPbDVCQTs7K0VBQUE7QUFNQTs7Ozs7O0VBTUMsc0JOSVc7RU1IUjtBUGs1Qko7O0FPLzRCQTs7Ozs7RUFLSTtFQUNBO0FQazVCSjs7QU8vNEJBO0VBQ0k7RUFDQTtFQUNBO0FQazVCSjs7QU8vNEJBO0VBQ0M7RUFDRztBUGs1Qko7O0FPLzRCQTtFQUNDO0FQazVCRDs7QU8vNEJBO0VBQ0MsdUJOdEJZO0VNdUJUO0FQazVCSjs7QU8vNEJBOzs7O0VBSUk7RUFDQTtBUGs1Qko7O0FPLzRCQTs7RUFFSTtBUGs1Qko7O0FPLzRCQTs7O0VBR0k7QVBrNUJKOztBTy80QkE7RUFDSTtBUGs1Qko7O0FPOTRCQTs7O0VBR0k7RUFDQTtBUGk1Qko7O0FPOTRCQTs7RUFFSTtBUGk1Qko7O0FPOTRCQTtFQUNJO0VBQ0E7QVBpNUJKOztBTzk0QkE7OytFQUFBO0FBSUE7RUFDSSxrQk5yRWE7RU1zRWIsbUJOdEVhO0VNdUViO0VBQ0E7QVBnNUJKOztBTzc0QkE7RUFDSSxtQk4zRU87RU00RVAsa0JONUVPO0VNNkVQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNJO0VBQ0k7QVBnNUJaOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83NEJBO0VBQ0k7QVBnNUJKOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83NEJBO0VBQ0k7QVBnNUJKOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83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QWQ2Z0ZKOztBYzFnRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZDZnRko7O0FjMWdGQTs7O0VBR0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNmdGRDs7QWMxZ0ZBOzs7OztFQUtDO0FkNmdGRDs7QWMxZ0ZBO0VBQ0M7QWQ2Z0ZEOztBY3pnRkE7RUFDQztBZDRnRkQ7O0FjemdGQTs7RUFFQztBZDRnRkQ7O0FjemdGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWQ0Z0ZEOztBY3pnRkE7O0VBRUM7QWQ0Z0ZEOztBY3pnRkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNGdGRDs7QWN6Z0ZBOztFQUVDO0FkNGdGRDs7QWN6Z0ZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDRnRkQ7O0FjemdGQTs7RUFFQztBZDRnRkQ7O0FjemdGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRztBZDRnRko7O0FjemdGQTtFQUNDO0FkNGdGRDs7QWN6Z0ZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDRnRkQ7O0FjemdGQTs7RUFFQztBZDRnRkQ7O0FjemdGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRztBZDRnRko7O0FjemdGQTs7RUFFQztBZDRnRkQ7O0FjemdGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7RUFDQTtBZDRnRko7O0FjemdGQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNGdGSjs7QWN6Z0ZBOztFQUVJO0FkNGdGSjs7QWN6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K0VBQUE7QUFJQTtFQUNDO0VBQ0E7RUFDQSx5QmZ4SFU7RWV5SFA7RUFDQTtBaEI0b0dKOztBZ0J4b0dBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDRztFQUNBO0VBQ0gsV2Y3SVk7RWU4SVQ7RUFDSCxzQmZ6SVk7RWUwSVQ7RUFDSDtFQUNHO0VBQ0g7RUFDRztFQUNIO0VBQ0E7QWhCMm9HRDs7QWdCdG9HQTtFQUNDLFdmM0prQjtFZTRKZjtFQUNILHlCZnZKUztFZXdKTjtBaEJ5b0dKOztBZ0J0b0dBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDQTtFQUNHO0FoQndvR0o7O0FnQnJvR0E7RUFDQztFQUNBO0FoQndvR0Q7O0FnQnJvR0E7O0VBRUk7RUFDQTtFQUNBO0FoQndvR0o7O0FnQnJvR0E7Ozs7RUFJSTtFQUNBO0FoQndvR0o7O0FnQnJvR0E7Ozs7RUFJSTtFQUNBO0VBQ0E7QWhCd29HSjs7QWdCcm9HQTs7OztFQUlJO0VBQ0g7RUFDRztFQUNBO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7RUFDSDtBaEJ3b0dEOztBZ0Jyb0dBOzs7O0VBSUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0JmL05TO0VlZ09UO0VBQ0E7QWhCd29HSjs7QWdCcm9HQTs7RUFFSTtBaEJ3b0dKOztBZ0Jyb0dBOztFQUVJLHFCZnJOZ0I7RWVzTmhCO0VBQ0Esc0JmN09TO0VlOE9UO0FoQndvR0o7O0FnQnJvR0E7O0VBRUksc0JmblBTO0Vlb1BUO0FoQndvR0o7O0FnQnJvR0E7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtFQUNBO0VBQ0c7RUFDSDtFQUNBO0FoQndvR0Q7O0FnQnJvR0E7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNIO0VBQ0EseUJmL1FpQjtFZWdSZDtBaEJ3b0dKOztBZ0Jyb0dBO0VBQ0k7QWhCd29HSjs7QWdCcm9HQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCd29HSjs7QWdCcm9HQTs7RUFFSTtBaEJ3b0dK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O0FrQnBwSEE7RUFDQzs7SUFFQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsQnNwSEE7RWtCbnBIRTtJQUNJO0VsQnFwSE47QUFDRjtBa0JqcEhBO0VBQ0M7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsQm1wSEE7QUFDRjtBbUI5bElBOzsrRUFBQTtBQUdBO0VBQ0k7RUFDQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VuQmdtSU47RW1CN2xJRDs7SUFFTztFbkIrbElOO0VtQjVsSUU7OztJQUdGO0VuQjhsSUE7RW1CM2xJRTs7SUFFSTtJQUNBO0VuQjZsSU47RW1CMWxJRTtJQUNJO0VuQjRsSU47RW1CemxJRTs7SUFFSTtFbkIybElOO0VtQnhsSUU7SUFDSTtFbkIwbElOO0VtQnZsSUU7SUFDSTtFbkJ5bElOO0VtQnRsSUU7OztJQUdJO0lBQ0E7RW5Cd2xJTjtFbUJybElFOztJQUVJO0lBQ0E7RW5CdWxJTjtFbUJwbElFO0VBRUg7O0lBRUM7SUFDQTtJQUNBO0VuQnFsSUE7RW1CbGxJRTtJQUNJO0VuQm9sSU47RW1CamxJRDtJQUNDO0VuQm1sSUE7RW1CaGxJRDs7Ozs7SUFLQztFbkJrbElBO0VtQi9rSUQ7RUFDQTtJQUNDO0VuQmlsSUE7RW1COWtJRDtJQUNDO0VuQmdsSUE7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL21haW4uc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tbW9uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tbW9uL19mb250cy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21tb24vX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21tb24vX21peGlucy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21tb24vX2hlbHBlcnMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fYmFzZS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2NvbnRlbnRlbGVtZW50cy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19idXR0b24tbGlua3Muc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fcmF0aW9ib3guc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fZm9ybS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19wcmludC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFNldHRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0IFwiLi4vZm9udHMvaW5saW5lRm9udHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbW1vbi9fdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiY29tbW9uL19mb250c1wiO1xuQGltcG9ydCBcImNvbW1vbi9fbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiY29tbW9uL19taXhpbnNcIjtcbkBpbXBvcnQgXCJjb21tb24vX2hlbHBlcnNcIjtcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIHN0eWxlcyBmb3IgZXZlcnkgcHJvamVjdCAqL1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Jhc2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ncmlkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2hlYWRlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvb3RlclwiO1xuXG4vKiBvcHRpb25hbCBzdHlsZXMgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL19vZmZjYW52YXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL190YWJsZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jb250ZW50ZWxlbWVudHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19idXR0b24tbGlua3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19yYXRpb2JveFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvcm1cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hY2NvcmRpb25cIjtcblxuXG4vKiBzdHlsZXMgZm9yIGV2ZXJ5IHByb2plY3QgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL19yZXNwb25zaXZlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcHJpbnRcIjsiLCIvKiBWYXJpYWJsZXMsIE5hbWluZyBtYXkgdmFyeSBmcm9tIHByb2plY3QgdG8gcHJvamVjdCAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9udHMgKHNlZSAnX2ZvbnRzLnNjc3MnIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGxpY2Vuc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBAaW1wb3J0IG11c3QgYmUgYXQgdG9wIG9mIGZpbGUsIG90aGVyd2lzZSBDU1Mgd2lsbCBub3Qgd29yayAqL1xuLyogQGltcG9ydCB1cmwoJy8vaGVsbG8ubXlmb250cy5uZXQvY291bnQvNDI2NTYzJyk7ICovXG5cbiRmb250LXN0YWNrLWRlZmF1bHQ6ICdmaWxzb24tcHJvJywgJ0FyaWFsJywgJ0hlbHZldGljYScsIHNhbnMtc2VyaWY7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGYWxsYmFja3Mgc2FzcyBWYXJpYWJsZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIHRleHQgKi9cbiR0ZXh0LWNvbG9yOiAjMDAwOyAvKiBkYXJrIGdyZXkgKi9cbiR0ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xuJHRleHQtY29sb3ItbGluazogIzAwMDsgLyogZGFyayBncmV5ICovXG4kdGV4dC1jb2xvci1saW5rLXVuZGVybGluZTogIzAwNkFGRjtcblxuLyogYmFja2dyb3VuZCAqL1xuJGJnLWNvbnRlbnQ6ICNmZmY7XG4kYmctZGFyazogIzAwNkFGRjsgLyogZGFyayBncmV5ICovXG4kYmctbGlnaHQ6ICNlYmViZWI7IC8qIGxpZ2h0IGdyZXkgKi9cbiRjb2xvci1oaWdobGlnaHQ6ICMwMEQ4RjQ7IC8qIGJsdWUgKi9cblxuLyogbGluZS1jb2xvcnMgKi9cbiRib3JkZXItYmFzaWM6ICNCQ0JDQjU7XG5cbi8qIHNwYWNpbmcgKi9cbiRzcGFjaW5nLWw6IDMuNXJlbTtcbiRzcGFjaW5nLW06IDJyZW07XG4kc3BhY2luZy1zOiAxLjVyZW07XG4kc3BhY2luZy14czogMC43NXJlbTtcblxuLyogZ3JpZCAqL1xuJGdyaWQtY29udGFpbmVyOiAyMHB4O1xuJGdyaWQtcm93OiAtMTBweDtcbiRncmlkLWNvbDogMTBweDtcblxuXG4vKiBmb3JtICovXG4kYm9yZGVyLWZvcm06ICNCQ0JDQjU7XG4kYm9yZGVyLWZvcm0tZm9jdXM6ICMwMDZBRkY7XG4kZm9ybS1kaXNhYmxlZDogI2NjYztcbiRmb3JtLWVycm9yOiAjZWQwMDQzO1xuJGZvcm0tb2s6ICMwMDhhNjU7XG4kZm9ybS1pbml0aWFsOiAjMDA2QUZGO1xuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEN1c3RvbSBQcm9wZXJ0aWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbjpyb290IHtcbiAgICAvKiBmb250cyAqL1xuICAgIC0tZm9udC1zdGFjay1kZWZhdWx0OiAnZmlsc29uLXBybycsICdBcmlhbCcsICdIZWx2ZXRpY2EnLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gICAgLS1mb250LXdlaWdodC1ib2xkOiA3MDA7XG4gICAgLS1mb250LXdlaWdodC1ib2xkZXI6IDkwMDtcbiAgICBcbiAgICAvKiB0ZXh0ICAqL1xuICAgIC0tdGV4dC1jb2xvcjogIzAwMDsgLyogYmxhY2sgKi9cbiAgICAtLXRleHQtY29sb3ItbGlnaHQ6ICNmZmY7XG4gICAgLS10ZXh0LWNvbG9yLWxpbms6ICMwMDA7XG4gICAgLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lOiAjMDA2QUZGO1xuICAgIC0tdGV4dC1jb2xvci1xdW90ZTogIzAwNkFGRjtcbiAgICAtLXRleHQtY29sb3ItZGlzYWJsZWQ6ICM3YjdiN2I7XG4gICAgXG4gICAgLyogZm9udC1zaXplcyAqL1xuICAgIC0tZm9udC1zaXplLXJvb3Q6IDIwcHg7XG4gICAgLS1mb250LXNpemUtaDE6IDIuNXJlbTsgLyogNTBweCAqL1xuICAgIC0tZm9udC1zaXplLWgyOiAycmVtOyAvKiA0MHB4ICovXG4gICAgLS1mb250LXNpemUtaDM6IDEuMTZyZW07XG4gICAgLS1mb250LXNpemUtbGVhZDogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1xdW90ZTogMnJlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5OiAxcmVtO1xuICAgIC0tZm9udC1zaXplLWJvZHktczogMC44NXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1saW5rOiAxcmVtO1xuICAgIFxuICAgIC8qIGNvbG9ycyAvIGJhY2tncm91bmQgKi9cbiAgICAtLWJnLWNvbnRlbnQ6ICNmZmY7XG4gICAgLS1iZy1kYXJrOiAjMDA2QUZGOyAvKiBtZWRpdW0gYmx1ZSAqL1xuICAgIC0tYmctbGlnaHQ6ICNlYmViZWI7IC8qIGxpZ2h0IGdyZXkgKi9cbiAgICAtLWNvbG9yLWhpZ2hsaWdodDogIzAwRDhGNDsgLyogYmx1ZSAqL1xuICAgIC0tY29sb3Itc3dpc3Nza2k6ICNFMjAwMUE7XG4gICAgLS1iZy1kaXNhYmxlZDogI2Y4ZjhmODtcbiAgICBcbiAgICAvKiBsaW5lcyAqL1xuICAgIC0tYm9yZGVyLWJhc2ljOiAjQkNCQ0I1O1xuICAgIC0tYm9yZGVyLW91dHNpZGU6IDE2cHg7XG4gICAgLS1ib3JkZXItd2lkdGgtbDogOHB4O1xuICAgIC0tYm9yZGVyLXdpZHRoLXM6IDJweDtcbiAgICBcbiAgICAvKiBzcGFjaW5nIGJldHdlZW4gY29tcG9uZW50cyBiYXNlZCBvbiByZW0gKi9cbiAgICAtLXNwYWNpbmcteGw6IDExcmVtO1xuICAgIC0tc3BhY2luZy1sOiAzLjVyZW07XG4gICAgLS1zcGFjaW5nLW06IDJyZW07IFxuICAgIC0tc3BhY2luZy1zOiAxLjVyZW07XG4gICAgLS1zcGFjaW5nLXhzOiAwLjc1cmVtOyAgXG4gICAgLS1wYWRkaW5nLWJveDogMjRweDtcbiAgICBcbiAgICAvKiBoZWFkZXIgKi9cbiAgICAtLWhlYWRlci1oZWlnaHQ6IDEwMHB4O1xuICAgIFxuICAgICBcbiAgICAvKiBncmlkICovXG4gICAgLS1ncmlkLWNvbnRhaW5lcjogMjhweDtcbiAgICAtLWdyaWQtcm93OiAtMTRweDtcbiAgICAtLWdyaWQtY29sOiAxNHB4O1xuICAgIC0tZ3JpZC1nYXA6IDE2cHg7XG4gICAgXG4gICAgLyogZm9ybSAqL1xuICAgIC0tYm9yZGVyLWZvcm06ICNCQ0JDQjU7IFxuICAgIC0tYm9yZGVyLWZvcm0tZm9jdXM6ICMwMDZBRkY7XG4gICAgLS1mb3JtLWRpc2FibGVkOiAjY2NjO1xuICAgIC0tZm9ybS1lcnJvcjogI2VkMDA0MztcbiAgICAtLWZvcm0tb2s6ICMwMDhhNjU7XG4gICAgLS1mb3JtLWluaXRpYWw6ICMwMDZBRkY7XG4gICAgLS1mb3JtLWJvcmRlci13aWR0aDogMnB4O1xuICAgIC0tZm9ybS1jaGVja2JveC1wYWRkaW5nLXRvcC10ZXh0OiAwLjM1ZW07XG4gICAgLS10aWNrZXQtcGFkZGluZy1pbnB1dDogMC43M2VtIDEwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFeGVwdGlvbnMgZm9yIGRpZmZlcmVudCBiYWNrZ3JvdW5kc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGV4dC1saWdodCB7XG4gICAgLS10ZXh0LWNvbG9yOiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjZmZmO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bixcbi5jLXRleHQtbGlnaHQgLmMtYnRuLXRpY2tldCB7XG4gICAgLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lOiAjZmZmO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWV2ZW50cy1ib3gge1xuICAgIC0tYm9yZGVyLWJhc2ljOiAjMDBEOEY0O1xufVxuXG4uYy1oZWFkZXIge1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjMDA2QUZGO1xufVxuXG4uYy1saW5rLWljb24ge1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjMDA2QUZGO1xufVxuXG4uYy10ZXh0LWxpZ2h0IC5jLWxpbmstaWNvbiB7XG4gICAgLS10ZXh0LWNvbG9yLWxpbms6ICNmZmY7XG59XG5cbi5jLWJ0bi1zbWFsbCB7XG4gICAgLS1ib3JkZXItd2lkdGgtbDogNHB4O1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHtcbiAgICAtLWNvbG9yLWhpZ2hsaWdodDogIzAwNkFGRjsgXG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtZGF0ZSB7XG4gICAgLS1jb2xvci1oaWdobGlnaHQ6ICMwMEQ4RjQ7IFxufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLXRpY2tldC1ib3gtZGlzYWJsZWQgLmMtZGF0ZSB7XG4gICAgLS1jb2xvci1oaWdobGlnaHQ6IHZhcigtLXRleHQtY29sb3ItZGlzYWJsZWQpO1xufVxuXG4uYy10aWNrZXQtYm94IHtcbiAgICAtLWJvcmRlci13aWR0aC1sOiA0cHg7XG59XG5cbi5jLXRpY2tldC1ib3gge1xuICAgIC0tYm9yZGVyLWJhc2ljOiAjNjk5Y2Y4O1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLXRleHQtbGlnaHQgLmMtdGlja2V0LWJveC1jYXJ0LXF1YW50aXR5IGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIC5jLXRleHQtbGlnaHQgLmMtdGlja2V0LWJveC1jYXJ0LXF1YW50aXR5IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLmMtdGV4dC1saWdodCAuYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLmMtdGV4dC1saWdodCAuYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCB7XG4gICAgLS10ZXh0LWNvbG9yOiAjMDAwOyAgICBcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy10ZXh0LWxpZ2h0IC5jLXRpY2tldC1ib3gtY2FydC1xdWFudGl0eSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCAuYy10ZXh0LWxpZ2h0IC5jLXRpY2tldC1ib3gtY2FydC1xdWFudGl0eSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGV4dC1saWdodCAuYy10aWNrZXQtYm94LXNraXBhc3MgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBzcGFuOjpiZWZvcmUsIFxuLmMtZm9ybS1zdGFuZGFyZCAuYy10ZXh0LWxpZ2h0IC5jLXRpY2tldC1ib3gtc2tpcGFzcyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIHNwYW46OmJlZm9yZSxcbi5jLXRleHQtbGlnaHQgLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLXRleHQtbGlnaHQgLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3R7XG4gICAgLS1ib3JkZXItZm9ybTogI2ZmZjtcbiAgICAtLWJvcmRlci1mb3JtLWZvY3VzOiAjMDBEOEY0O1xufVxuXG4uYy1mb3JtLWxhYmVsLXRleHQsXG4uYy10aWNrZXQtcHJpY2Ugc3BhbiB7XG4gICAgLS1mb250LXNpemUtYm9keS1zOiAwLjc1cmVtO1xufVxuXG4uYy1mb3JtLWxhYmVsLXRleHQtc21hbGx7XG4gICAgLS1mb3JtLWNoZWNrYm94LXBhZGRpbmctdG9wLXRleHQ6IDAuNTVlbTtcbn1cblxuLmMtY29va2llLW5vdGljZSxcbi5jLWV2ZW50cy1ib3gtbWVtYmVyIHtcbiAgICAtLXRleHQtY29sb3ItbGluay11bmRlcmxpbmU6ICMwMEQ4RjQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSZXNwb25zaXZlIEN1c3RvbSBQcm9wZXJ0aWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLWdyaWQtY29udGFpbmVyOiA0OHB4O1xuICAgICAgICAtLWdyaWQtcm93OiAtMjRweDtcbiAgICAgICAgLS1ncmlkLWNvbDogMjRweDtcbiAgICAgICAgLS1wYWRkaW5nLWJveDogMzJweDtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9ybS1tdWx0aW5lIHtcbiAgICAgICAgLS1ncmlkLWNvbnRhaW5lcjogMjhweDtcbiAgICAgICAgLS1ncmlkLXJvdzogLTE0cHg7XG4gICAgICAgIC0tZ3JpZC1jb2w6IDE0cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLWdyaWQtY29udGFpbmVyOiA2NHB4O1xuICAgICAgICAtLWdyaWQtcm93OiAtMzJweDtcbiAgICAgICAgLS1ncmlkLWNvbDogMzJweDtcbiAgICAgICAgLS1ib3JkZXItb3V0c2lkZTogMjBweDtcbiAgICAgICAgLS1ncmlkLWdhcDogMjBweDtcbiAgICAgICAgLS1wYWRkaW5nLWJveDogNDhweDtcbiAgICAgICAgLS10aWNrZXQtcGFkZGluZy1pbnB1dDogMC40OGVtIDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvcm0tbXVsdGluZSB7XG4gICAgICAgIC0tZ3JpZC1jb250YWluZXI6IDI4cHg7XG4gICAgICAgIC0tZ3JpZC1yb3c6IC0xNHB4O1xuICAgICAgICAtLWdyaWQtY29sOiAxNHB4O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTEwMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLWhlYWRlci1oZWlnaHQ6IDUwcHg7IFxuICAgICAgICAtLWJvcmRlci1vdXRzaWRlOiA4cHg7XG4gICAgICAgIC0tZ3JpZC1nYXA6IDhweDtcbiAgICAgICAgLS1zcGFjaW5nLXhsOiA3cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLWJvcmRlci13aWR0aC1sOiA2cHg7XG4gICAgICAgIC0tdGlja2V0LXBhZGRpbmctaW5wdXQ6IDAuOGVtIDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvcm0tbGFiZWwtdGV4dC1zbWFsbHtcbiAgICAgICAgLS1mb3JtLWNoZWNrYm94LXBhZGRpbmctdG9wLXRleHQ6IDAuNzVlbTtcbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUHJvamVjdCBGb250c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4gICAvKipcbiAgICAqIEBsaWNlbnNlXG4gICAgKiBNeUZvbnRzIFdlYmZvbnQgQnVpbGQgSUQgNDM1MTMzMSwgMjAyMi0wMi0wN1QwMjoyNDoyOC0wNTAwXG4gICAgKlxuICAgICogVGhlIGZvbnRzIGxpc3RlZCBpbiB0aGlzIG5vdGljZSBhcmUgc3ViamVjdCB0byB0aGUgRW5kIFVzZXIgTGljZW5zZVxuICAgICogQWdyZWVtZW50KHMpIGVudGVyZWQgaW50byBieSB0aGUgd2Vic2l0ZSBvd25lci4gQWxsIG90aGVyIHBhcnRpZXMgYXJlXG4gICAgKiBleHBsaWNpdGx5IHJlc3RyaWN0ZWQgZnJvbSB1c2luZyB0aGUgTGljZW5zZWQgV2ViZm9udHMocykuXG4gICAgKlxuICAgICogWW91IG1heSBvYnRhaW4gYSB2YWxpZCBsaWNlbnNlIGF0IHRoZSBVUkxzIGJlbG93LlxuICAgICpcbiAgICAqIFdlYmZvbnQ6IFRoZVNhbnMtTGlnaHQgYnkgTHVjYXNGb250c1xuICAgICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9sdWNhc2ZvbnRzL3RoZXNhbnMvbGlnaHQvXG4gICAgKlxuICAgICogV2ViZm9udDogVGhlU2Fucy1Cb2xkIGJ5IEx1Y2FzRm9udHNcbiAgICAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvbHVjYXNmb250cy90aGVzYW5zL2JvbGQvXG4gICAgKlxuICAgICpcbiAgICAqIFdlYmZvbnRzIGNvcHlyaWdodDogQ29weXJpZ2h0IDE5OTQtMjAyMSBMdWMoYXMpIGRlIEdyb290LCBwdWJsaXNoZWQgYnkgTHVjYXNGb250cywgd3d3Lmx1Y2FzZm9udHMuY29tICBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgICpcbiAgICAqIMKpIDIwMjIgTXlGb250cyBJbmNcbiAgICovXG5cbiAgIC8vQGZvbnQtZmFjZSB7XG5cdC8vXHRmb250LWZhbWlseTogJ1RoZVNhbnMnO1xuXHQvL1x0Zm9udC1kaXNwbGF5OiBmYWxsYmFjaztcblx0Ly9cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Ly9cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdC8vXHRmb250LXN0cmV0Y2g6IG5vcm1hbDtcblx0Ly9cdHNyYzogXHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9saWdodF93b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuXHQvL1x0XHRcdHVybCgkd2ViZm9udC1sYW56LWFyY2hpdGVrdGVuX2xpZ2h0X3dvZmYpIGZvcm1hdCgnd29mZicpO1xuICAgLy99XG4gICAvL1xuICAgLy9AZm9udC1mYWNlIHtcblx0Ly9cdGZvbnQtZmFtaWx5OiAnVGhlU2Fucyc7XG5cdC8vXHRmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xuXHQvL1x0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHQvL1x0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Ly9cdGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuXHQvL1x0c3JjOiBcdHVybCgkd2ViZm9udC1sYW56LWFyY2hpdGVrdGVuX2JvbGRfd29mZjIpIGZvcm1hdCgnd29mZjInKSxcblx0Ly9cdFx0XHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9ib2xkX3dvZmYpIGZvcm1hdCgnd29mZicpO1xuICAgLy99XG5cblxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4qIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENvcnJlY3RzIHRleHQgcmVzaXppbmcgb2RkbHkgaW4gSUU2Lzcgd2hlbiBib2R5IGZvbnQtc2l6ZSBpcyBzZXQgdXNpbmcgZW0gdW5pdHNcbiAqICAgIGh0dHA6Ly9jbGFnbnV0LmNvbS9ibG9nLzM0OC8jYzc5MFxuICogMi4gS2VlcHMgcGFnZSBjZW50cmVkIGluIGFsbCBicm93c2VycyByZWdhcmRsZXNzIG9mIGNvbnRlbnQgaGVpZ2h0XG4gKiAzLiBQcmV2ZW50cyBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbVxuICogICAgd3d3LjQ1NmJlcmVhc3RyZWV0LmNvbS9hcmNoaXZlLzIwMTAxMi9jb250cm9sbGluZ190ZXh0X3NpemVfaW5fc2FmYXJpX2Zvcl9pb3Nfd2l0aG91dF9kaXNhYmxpbmdfdXNlcl96b29tL1xuICogNC4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmh0bWwge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiA0ICovXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsOyAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbn1cblxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cblxuXG4gKi9cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyAvKiBjdWJlZ3JhZmlrICovXG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICovXG5cbmEge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYG91dGxpbmVgIGluY29uc2lzdGVuY3kgYmV0d2VlbiBDaHJvbWUgYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmE6Zm9jdXMge1xuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUeXBvZ3JhcGh5XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuICovXG5cbmgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLypcbiogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIDUgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICAgIGJhY2tncm91bmQ6ICNmZjA7XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi8qXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKlxuICogSW1wcm92ZXMgcmVhZGFiaWxpdHkgb2YgcHJlLWZvcm1hdHRlZCB0ZXh0IGluIGFsbCBicm93c2Vyc1xuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogU2V0IGNvbnNpc3RlbnQgcXVvdGUgdHlwZXMuXG4gKi9cblxucSB7XG4gICAgcXVvdGVzOiBcIlxcMjAxQ1wiIFwiXFwyMDFEXCIgXCJcXDIwMThcIiBcIlxcMjAxOVwiO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcblxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICAgIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZXMgYm9yZGVyIHdoZW4gaW5zaWRlICdhJyBlbGVtZW50IGluIElFNi83LzgvOSwgRkYzXG4gKiAyLiBJbXByb3ZlcyBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFN1xuICogICAgY29kZS5mbGlja3IuY29tL2Jsb2cvMjAwOC8xMS8xMi9vbi11aS1xdWFsaXR5LXRoZS1saXR0bGUtdGhpbmdzLWNsaWVudC1zaWRlLWltYWdlLXJlc2l6aW5nL1xuICovXG5cbmltZyB7XG4gICAgYm9yZGVyOiAwOyAvKiAxICovXG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgLyogMiAqL1xufVxuXG4vKlxuICogQ29ycmVjdHMgb3ZlcmZsb3cgZGlzcGxheWVkIG9kZGx5IGluIElFOVxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGaWd1cmVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkgNS5cbiAqL1xuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMDtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDb3JyZWN0cyBtYXJnaW4gZGlzcGxheWVkIG9kZGx5IGluIElFNi83XG4gKi9cblxuZm9ybSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjowOyAvKiBjdWJlZ3JhZmlrICovXG4gICAgbWFyZ2luOjA7IC8qIGN1YmVncmFmaWsgKi9cbiAgICBwYWRkaW5nOjA7IC8qIGN1YmVncmFmaWsgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gIGJvcmRlcjogMDtcbn1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG5cbiAqIDQuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vyc1xuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogNCAqL1xufVxuXG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG5cbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0cyBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZXMgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKiA0LiBSZW1vdmVzIGlubmVyIHNwYWNpbmcgaW4gSUU3IHdpdGhvdXQgYWZmZWN0aW5nIG5vcm1hbCB0ZXh0IGlucHV0cy5cbiAqIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUU2LlxuICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG4gICAgKm92ZXJmbG93OiB2aXNpYmxlOyAvKiA0ICovXG59XG5cbi8qXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cblxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXJcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cblxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblxuLyoqXG5cbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkuXG4gKiAyLiBJbXByb3ZlIHJlYWRhYmlsaXR5IGFuZCBhbGlnbm1lbnQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bzsgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxsc1xuICovXG5cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEVsZW1lbnRzIGN1YmVncmFmaWtcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmE6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5cbmRpdiwgcCB7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowO1xufVxuXG5ociB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxudGgsIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gICAgLyogUmVtb3ZlZCBiZWNhdXNlIG9mIHZpc2liaWxpdHljaGFuZ2UtYWRkaXRpb24gdG8gZmFuY3ktZm9ybXMgcGx1Z2luLlxuICAgICAqIDIwMTUvMDEvMjIgLSBGbG9yaWFuIE3DpGRlclxuICAgICAqIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsqL1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaHRtbCB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBTYWZhcmkgMy4wIC0gNS4wLCBDaHJvbWUgMSAtIDksIEFuZHJvaWQgMi4xIC0gMy54ICovXG4gICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBGaXJlZm94IDEgLSAyOCAqL1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogU2FmYXJpIDUuMSssIENocm9tZSAxMCssIEZpcmVmb3ggMjkrLCBPcGVyYSA3KywgSUUgOCssIEFuZHJvaWQgNC4wKywgaU9TIGFueSAqL1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogaW5oZXJpdDtcbiAgICAgICAtbW96LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5sYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC8qIElFIDEwICAqL1xuICAgICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgLyogSUUgMTErICovXG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm0gUGxhY2Vob2xkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgICB7QGNvbnRlbnR9XG4gICAgJjotbW96LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fVxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgIHtAY29udGVudH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAge0Bjb250ZW50fSAgXG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb250cyBzbW9vdGhpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtaXhpbiBmb250LXNtb290aGluZygkdmFsdWU6IG9uKSB7XG4gICAgQGlmICR2YWx1ZSA9PSBvbiB7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogYXV0bztcbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgSGlkaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1oaWRlLXZpc3VhbGx5IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIGJvcmRlcjogMDtcbn1cblxuLmMtaGlkZS1jb21wbGV0ZWx5IHtcblx0ZGlzcGxheTogbm9uZTtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBpbWFnZSByZXBsYWNlbWVudCAqL1xuLmMtaXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym9yZGVyOiAwO1xuXHR0ZXh0LWluZGVudDogLTk5OWVtO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0ZGlyZWN0aW9uOiBsdHI7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0aWNreSBGb290ZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmh0bWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmMtaGVhZGVyLFxuLmMtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLmMtY29udGVudCB7XG4gICAgZmxleC1ncm93OiAxO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlIFByb2plY3RcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJvZHkge1xuXHRAaW5jbHVkZSBmb250LXNtb290aGluZyhvbik7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRmb250LWZhbWlseTogJGZvbnQtc3RhY2stZGVmYXVsdDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1zdGFjay1kZWZhdWx0KTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5KTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogbGlua3MgKi9cbmEsXG5hOnZpc2l0ZWQsXG5hOmZvY3VzLFxuYTpob3ZlciB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvci1saW5rO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmspO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnA6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufVxuXG50ZXh0YXJlYSB7XG5cdHJlc2l6ZTogbm9uZTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RhbmRhcmQgaW1nIC8gbWVkaWEgZGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmVtYmVkLFxub2JqZWN0LFxudmlkZW8sXG5pZnJhbWUsXG5pbWcge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5pbWcge1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmMtaW1nLW1heC13aWR0aCxcbi5jLWNvbnRlbnQgLmMtaW1nLW1heC13aWR0aCB7XG5cdHdpZHRoOiBhdXRvO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmltZyB7IFxuXHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyBcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdGFuZGFyZCBNYWluIENvbnRhaW5lciBEZWNsYXJhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaGVhZGVyLFxuLmMtY29udGVudCxcbi5jLWZvb3Rlcixcbi5jLWNvbnRhaW5lcixcbi5jLWNvbnRhaW5lci1tZWRpdW0sIFxuLmMtY29udGFpbmVyLXdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiBhdXRvO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RhbmRhcmQgUGFkZGluZyBiZXR3ZWVuIENvbXBvbmVudHMgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cblxuLmMtY29udGFpbmVyLFxuLmMtY29udGFpbmVyLW1lZGl1bSxcbi5jLXRlYW0gLmMtY29sLTQsXG4uYy1hY2NvcmRpb24sXG4uYy10aWNrZXRzIC5jLXRleHQtb25seSxcbi5jLXRlYXNlci1pbWctZ2FsbGVyeSAuYy1jb2wtNCB7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy1sO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1zaG93cm9vbSxcbi5jLXRlYXNlci1ldmVudHMsXG4uYy10ZWFzZXItY2x1Yixcbi5jLXRlYXNlci1ldGhpY3MsXG4uYy1tZW1iZXJzLXNlYXJjaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbn1cblxuLmMtc2hvd3Jvb20tdGV4dC1pbm5lciB7XG4gICAgcGFkZGluZy10b3A6IDMuNWVtO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWwpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLW0pO1xufVxuXG4uYy1tYWluLXRpdGxlIHtcblx0bWFyZ2luLXRvcDogNmVtO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmcteGwpO1xufVxuXG4uYy1jb250YWluZXItbm8tcGFkZGluZyB7XG5cdHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy1zZWN0aW9uLXRpdGxlIHtcblx0cGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXhzO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLmMtdGVhc2VyLWV2ZW50cyxcbi5jLXRlYXNlci1jbHViLFxuLmMtdGVhc2VyLWV0aGljcyxcbi5jLW1lbWJlcnMtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXRvcDogMy41ZW07XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLWV2ZW50cyAuYy1jb2wtNCxcbi5jLXRpY2tldHMgLmMtY29sLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG59XG5cbi5jLXRlYXNlci1jbHViIC5jLWNvbC00LFxuLmMtdGVhc2VyLWNsdWItbGlzdCBsaSxcbi5jLXRlYXNlci1ldGhpY3MtbGlzdCBsaSB7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLWV2ZW50cyB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZy1sKSAtIHZhcigtLWdyaWQtY29udGFpbmVyKSk7XG59XG5cblxuLmMtdGVhc2VyLWV2ZW50cyArIC5jLXRlYXNlci1jbHViLFxuLmMtdGVhc2VyLWNsdWIgKyAuYy10ZWFzZXItZXRoaWNzLFxuLmMtdGVhc2VyLWV0aGljcyArIC5jLXRlYXNlci1jbHViIHtcbiAgICBtYXJnaW4tdG9wOiAtMy41ZW07XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWwpICogLTEpO1xufVxuXG4uYy1jb250ZW50IC5jLXRlYXNlci1jbHViOmxhc3QtY2hpbGQsXG4uYy1jb250ZW50IC5jLXRlYXNlci1ldGhpY3M6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmMtcGFnaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAtMS41ZW07XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLXMpICogLTEpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RhbmRhcmQgR3JpZCBEZWNsYXJhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWNvbnRhaW5lcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xufVxuXG4uYy1yb3cge1xuICAgIG1hcmdpbi1yaWdodDogJGdyaWQtcm93O1xuICAgIG1hcmdpbi1sZWZ0OiAkZ3JpZC1yb3c7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWdyaWQtcm93KTtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG5cbi5jLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmMtcm93LWp1c3RpZnktY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmMtcm93LWp1c3RpZnktcmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmMtcm93LWFsaWduLXRvcCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5jLXJvdy1hbGlnbi1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jLXJvdy1hbGlnbi1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuLmMtY29sLTEsXG4uYy1jb2wtMixcbi5jLWNvbC0zLFxuLmMtY29sLTQsXG4uYy1jb2wtNSxcbi5jLWNvbC02LFxuLmMtY29sLTcsXG4uYy1jb2wtOCxcbi5jLWNvbC05LFxuLmMtY29sLTEwLFxuLmMtY29sLTExLFxuLmMtY29sLTEyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWNvbDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWNvbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG59XG5cbi5jLWNvbC0xMiB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7ICAgIFxufVxuXG4uYy1jb2wtMTEge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIC1tcy1mbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7XG59XG5cbi5jLWNvbC0xMCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTtcbn1cblxuLmMtY29sLTkge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNzUlO1xuICAgIC1tcy1mbGV4OiAwIDAgNzUlO1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG59XG5cbi5jLWNvbC04IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICAtbXMtZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclO1xufVxuXG4uYy1jb2wtNyB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgLW1zLWZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTtcbn1cblxuLmMtY29sLTYge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5jLWNvbC01IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICAtbXMtZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclO1xufVxuXG4uYy1jb2wtNCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgLW1zLWZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTtcbn1cblxuLmMtY29sLTMge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMjUlO1xuICAgIC1tcy1mbGV4OiAwIDAgMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5jLWNvbC0yIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAtbXMtZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclO1xufVxuXG4uYy1jb2wtMSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlO1xufVxuXG4vKiBvZmZzZXQgY29scyAqL1xuLmMtY29sLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzJTtcbn1cblxuLmMtY29sLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY3JTtcbn1cblxuLmMtY29sLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLmMtY29sLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjclO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY3JTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdyaWQgVmFyaWFudGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1yb290KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRpdGxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICB0ZXh0LXdyYXA6YmFsYW5jZTtcbn1cblxuaDEsXG4uYy1oMSB7XG5cdHBhZGRpbmctYm90dG9tOiAuMjVlbTtcblx0bGluZS1oZWlnaHQ6IDEuMTtcblx0Zm9udC1zaXplOiAyLjA4cmVtOyAvKiA1MHB4ICovXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDEpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmgyLFxuLmMtaDIge1xuXHRwYWRkaW5nLWJvdHRvbTogLjI1ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdGZvbnQtc2l6ZTogMS42NnJlbTsgLyogNDBweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYy1tZW1iZXJzLXNlYXJjaCBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NWVtO1xufVxuXG5oMyxcbi5jLWgzIHtcblx0cGFkZGluZy1ib3R0b206IDAuMjVlbTtcblx0bGluZS1oZWlnaHQ6IDEuMzM7XG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5jLWZvcm0tMmNvbCBoMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbn1cblxuaDQsXG4uYy1oNCB7XG5cdHBhZGRpbmctYm90dG9tOiAwLjVlbTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0Zm9udC1zaXplOiAwLjg1cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzaWMgVGV4dCBDb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1jb250ZW50LFxuLmMtZm9vdGVyIHtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmMtdGV4dC1ibG9jayBwLFxuLmMtZm9vdGVyIHAge1xuXHRwYWRkaW5nLWJvdHRvbTogMS41ZW07XG59XG5cblxuXG4uYy10ZXh0LWJsb2NrIHA6bGFzdC1jaGlsZCxcbi5jLXRleHQtYmxvY2sgdWw6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5jLXRleHQtYmxvY2sgcCArIGgyLFxuLmMtdGV4dC1ibG9jayBwICsgaDMsXG4uYy10ZXh0LWJsb2NrIHAgKyBoNCxcbi5jLXRleHQtYmxvY2sgdWwgKyBwLFxuLmMtdGV4dC1ibG9jayB1bCArIGgyLFxuLmMtdGV4dC1ibG9jayB1bCArIGgzLFxuLmMtdGV4dC1ibG9jayB1bCArIGg0LFxuLmMtdGV4dC1ibG9jayB1bCArIG9sLFxuLmMtdGV4dC1ibG9jayBvbCArIHAsXG4uYy10ZXh0LWJsb2NrIG9sICsgaDIsXG4uYy10ZXh0LWJsb2NrIG9sICsgaDMsXG4uYy10ZXh0LWJsb2NrIG9sICsgaDQge1xuXHRwYWRkaW5nLXRvcDogMS41ZW07XG59XG5cbi5jLWxlYWQgKyAuYy1idG4ge1xuICAgIG1hcmdpbi10b3A6IDEuNWVtO1xufVxuXG4uYy1sZWFkIHtcbiAgICBsaW5lLWhlaWdodDogMS4zMztcblx0Zm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxlYWQpO1xuICAgIHRleHQtd3JhcDpiYWxhbmNlO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmMtdGV4dC1zbWFsbCxcbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSBjaXRlLFxuLmMtZm9vdGVyLFxuLmMtbWFpbi1uYXYsXG4uYy1oZWFkZXItbGFuZyxcbi5jLXRlYXNlci1jbHViLWl0ZW0sXG4uYy10ZWFzZXItZXRoaWNzLWl0ZW0sXG4uYy1tZW1iZXJzLWxpc3Qge1xuXHRmb250LXNpemU6IDAuNzVyZW07IC8qIDE4cHggKi9cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xufVxuXG4uYy1jYXRlZ29yeS10aXRsZSxcbi5jLWRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbn1cblxuLmMtZGF0ZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYy1sZWdlbmQge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy10b3A6IDFlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3Qge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xufVxuXG4uYy1vZmZjYW52YXMtbGFuZywgLmMtb2ZmY2FudmFzLW5hdi1saXN0IHVsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbn1cblxuLmMtZm9vdGVyLWNhdGVnb3J5LXRpdGxle1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbn1cblxuLmMtdGlja2V0LXByaWNlLFxuLmMtdGV4dC1ibG9jayAuYy10aWNrZXQtcHJpY2V7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmMtdGlja2V0LXByaWNlIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNpYyBMaXN0cyBDb250ZW50IFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGV4dC1ibG9jayB1bCxcbi5jLXRleHQtYmxvY2sgb2wsXG4uYy1saW5rLWxpc3QsXG4uYy10aWNrZXRzLWxpc3Qge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDAgMCAxLjVlbSAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy10aWNrZXRzLWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpLFxuLmMtdGV4dC1ibG9jayBvbCBsaSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiAzNHB4O1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstbGlzdCBsaSxcbi5jLXRleHQtYmxvY2sgLmMtY29va2llLW5vdGljZS1saXN0IGxpLFxuLmMtdGV4dC1ibG9jayAuYy10aWNrZXRzLWxpc3QgbGl7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHVsIGxpICsgbGksXG4uYy10ZXh0LWJsb2NrIG9sIGxpICsgbGksXG4uYy1pY29uLXRpdGxlICsgLmMtYnRuLFxuLmMtdGlja2V0cy1saXN0IHAgKyAuYy1saW5rLWljb24ge1xuXHRtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuLmMtdGV4dC1ibG9jayB1bCBsaTo6YmVmb3JlIHtcblx0Y29udGVudDonXFwyMDE0Jztcblx0cG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4xZW07XG4gICAgbGVmdDogMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG59XG5cbi5jLXRleHQtYmxvY2sgLmMtbGluay1saXN0IGxpOjpiZWZvcmUsXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaTo6YmVmb3JlLFxuLmMtdGV4dC1ibG9jayAuYy10aWNrZXRzLWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbn1cblxuXG4uYy10ZXh0LWJsb2NrIG9sIHtcblx0Y291bnRlci1yZXNldDogY3VzdG9tLWNvdW50ZXI7XG59XG5cbi5jLXRleHQtYmxvY2sgb2wgbGkge1xuXHRjb3VudGVyLWluY3JlbWVudDogY3VzdG9tLWNvdW50ZXI7XG59XG5cbi5jLXRleHQtYmxvY2sgb2wgbGk6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IGNvdW50ZXIoY3VzdG9tLWNvdW50ZXIpIFwiLiBcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdHdpZHRoOiAyNnB4O1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYy10aWNrZXRzLWxpc3Qge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtcyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLXRpY2tldHMtbGlzdCBsaSxcbi5jLXRpY2tldHMtbGlzdCBsaXtcbiAgICBwYWRkaW5nLXRvcDogMC43NWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc1ZW07XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtcyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUXVvdGVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctYm94KTtcbiAgICBib3JkZXItbGVmdDogc29saWQgdmFyKC0tYm9yZGVyLXdpZHRoLWwpIHZhcigtLXRleHQtY29sb3ItcXVvdGUpO1xufVxuXG4uYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgcCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogMDtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0Zm9udC1zaXplOiAxLjY2cmVtOyAvKiA0MHB4ICovXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcXVvdGUpO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICB0ZXh0LXdyYXA6YmFsYW5jZTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1xdW90ZSk7XG59XG5cbi5jLXRleHQtYmxvY2sgYmxvY2txdW90ZSBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy10b3A6IDEuNWVtO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRleHQgaGVscGVyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYy10ZXh0LWNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtdGV4dC1saWdodCB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZXh0IHNpemVzIHJlc3BvbnNpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMzYwcHgpIHtcblx0aDEsIC5jLWgxLFxuXHRoMiwgLmMtaDIsXG5cdGgzLCAuYy1oM3tcblx0XHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuXHRcdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0XHQtbXMtd29yZC1icmVhazogYnJlYWstYWxsO1xuXHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRcdC1tcy1oeXBoZW5zOiBhdXRvO1xuXHRcdC1tb3otaHlwaGVuczogYXV0bztcblx0XHQtd2Via2l0LWh5cGhlbnM6IGF1dG87XG5cdFx0aHlwaGVuczogYXV0bztcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTYwMXB4KSB7XHQgICAgXG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1yb290OiAyNHB4O1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMi4wOHJlbTsgLyogNTBweCAqL1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMjogMS42NnJlbTsgLyogNDBweCAqL1xuICAgICAgICAtLWZvbnQtc2l6ZS1xdW90ZTogMS42NnJlbTtcbiAgICAgICAgLS1mb250LXNpemUtYm9keS1zOiAwLjc1cmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1saW5rOiAwLjc1cmVtO1xuICAgICAgICBcbiAgICAgICAgLS1mb3JtLWNoZWNrYm94LXBhZGRpbmctdG9wLXRleHQ6IDAuMTdlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtZm9ybS1sYWJlbC10ZXh0LFxuICAgIC5jLXRpY2tldC1wcmljZSBzcGFuIHtcbiAgICAgICAgLS1mb250LXNpemUtYm9keS1zOiAwLjY1cmVtO1xuICAgIH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTIwMHB4KSB7XHQgICAgXG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMnJlbTsgXG4gICAgICAgIC0tZm9udC1zaXplLWgyOiAxLjVyZW07IFxuICAgICAgICAtLWZvbnQtc2l6ZS1xdW90ZTogMS42cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KSB7XHQgICAgXG4gICAgOnJvb3Qge1xuICAgICAgICAtLWZvbnQtc2l6ZS1yb290OiAxOHB4O1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMTogMS43NXJlbTsgXG4gICAgICAgIC0tZm9udC1zaXplLWgyOiAxLjMzcmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1oMzogMS4xNnJlbTtcbiAgICAgICAgLS1mb250LXNpemUtcXVvdGU6IDEuMzNyZW07XG4gICAgICAgIC0tZm9udC1zaXplLWJvZHktczogMC44NzVyZW07XG4gICAgfVxufVxuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcblx0ei1pbmRleDogMTA7XG59XG5cbi5jLWhlYWRlci1pbm5lciB7XG5cdGhlaWdodDogNjBweDtcbiAgICBoZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWZsb3c6IHJvdztcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5cbi5jLWhlYWRlci1sb2dvIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMjYwcHg7XG5cdC8qaGVpZ2h0OiAxOTBweDsqL1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIGxlZnQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICAvKmJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9iZy1sb2dvLWhlYWRlci5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tOyovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLWhlYWRlci1sb2dvLWNyeXN0YWwge1xuICAgIHBhZGRpbmc6IDMycHggMzJweCAzMnB4IDMycHg7XG59XG5cbi5jLWhlYWRlci1sb2dvLXN1cHBvcnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDQycHggMzJweCAxMnB4IDMycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMjAwMUE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3dpc3Nza2kpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9iZy1zd2lzc3NraS1zdXBwb3J0ZXItZGlhZ29uYWwuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDtcbn1cblxuLmMtaGVhZGVyLWxvZ28tc3VwcG9ydGVyIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMTJweDtcbn1cblxuLmMtaGVhZGVyLWxvZ28gYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1oZWFkZXItc3RpY2t5e1xuXHRwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBsYW5nIFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaGVhZGVyLWxhbmctbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtaGVhZGVyLWxhbmctbGlzdCBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtaGVhZGVyLWxhbmctbGlzdCBsaSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmMtaGVhZGVyLWxhbmctbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAxZW07XG59XG5cbi5jLWhlYWRlci1sYW5nLWxpc3QgYSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAwLjVlbSAwO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIG1haW4gbmF2IFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtbWFpbi1uYXYgeyAgICBcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5jLW1haW4tbmF2LWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAzcHggM2VtIDAgMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuXG5cbi5jLW1haW4tbmF2LWxpc3QgdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIDEwcHgpO1xuICAgIHJpZ2h0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuY3VycmVudC1tZW51LWl0ZW0gPiB1bCxcbi5jLW1haW4tbmF2LWxpc3QgLmN1cnJlbnQtcGFnZS1hbmNlc3RvciA+IHVse1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3c7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbn1cblxuXG4uYy1tYWluLW5hdi1saXN0IGxpIHtcblx0LypkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Ki9cbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAxLjVlbTtcbn1cblxuXG4uYy1tYWluLW5hdi1saXN0IGEge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwLjVlbSAwO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IGE6OmJlZm9yZSxcbi5jLWhlYWRlci1sYW5nLWxpc3QgYTo6YmVmb3JlIHtcblx0Y29udGVudDonJztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1sKTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuLmMtbWFpbi1uYXYtbGlzdCBhOmhvdmVyOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6OmJlZm9yZSxcbi5jLW1haW4tbmF2LWxpc3QgLmN1cnJlbnQtcGFnZS1hbmNlc3RvciA+IGE6OmJlZm9yZSxcbi5jLWhlYWRlci1sYW5nLWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuLmMtaGVhZGVyLWxhbmctbGlzdCBhOmhvdmVyOjpiZWZvcmUsXG4uYy1oZWFkZXItbGFuZy1saXN0IC53cG1sLWxzLWN1cnJlbnQtbGFuZ3VhZ2UgYTo6YmVmb3JlIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dpbiB7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ2luLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IHNvbGlkIDRweCAkYmctZGFyaztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGluayk7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuMnMgbGluZWFyO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9naW46Zm9jdXMsXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9naW46aG92ZXIsXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OmZvY3VzLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb290ZXIge1xuXHRwYWRkaW5nLXRvcDogJHNwYWNpbmctbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctbDtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtZm9vdGVyLWRlY28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1mb290ZXItZGVjbzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2RlY28tZm9vdGVyLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIG9wYWNpdHk6IDAuMjtcbn1cblxuLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCxcbi5jLWZvb3Rlci1saW5rLWxpc3QsXG4uYy1zb2NpYWwtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvb3RlciBNYWluXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb290ZXItc3dpc3Nza2kge1xuICAgIG1heC13aWR0aDogMTY1cHg7XG59XG5cbi5jLWZvb3Rlci1saW5rLWxpc3Qge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtZm9vdGVyLWxpbmstbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy10b3A6IDAuNWVtO1xufVxuXG4uYy1mb290ZXItc3dpc3Nza2kgKyAuYy1mb290ZXItY2F0ZWdvcnktdGl0bGUge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLWw7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbn1cblxuLmMtc29jaWFsLWxpc3QgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb290ZXIgRGlzY2xhaW1lclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9vdGVyLWRpc2NsYWltZXIge1xuXHRwYWRkaW5nLXRvcDogJHNwYWNpbmctbDtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbn1cblxuLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCBsaSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiAyZW07XG59XG5cbi8qLmMtZm9vdGVyIGEsXG4uYy1mb290ZXIgYTp2aXNpdGVkIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxuLmMtZm9vdGVyIGE6aG92ZXIsXG4uYy1mb290ZXIgYTpmb2N1cyB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59Ki9cblxuLmMtZm9vdGVyLW5lb2ZsdXhlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMzVweDtcbiAgICBoZWlnaHQ6IDFlbTsgXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVlbTtcbn1cblxuLmMtZm9vdGVyLW5lb2ZsdXhlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgd2lkdGg6IDEzNXB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvbmVvZmx1eGUtbG9nby13aGl0ZS5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTM0cHggMTZweDtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgdHJpZ2dlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0b3A6IDVweDtcblx0cmlnaHQ6ICRncmlkLWNvbnRhaW5lcjtcbiAgICByaWdodDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRtYXJnaW46IDA7XG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcblx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXI6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy10cmlnZ2VyOjphZnRlciB7XG5cdGNvbnRlbnQ6Jyc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDUwJTtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjo6YWZ0ZXIge1xuXHR3aWR0aDogMjRweDtcblx0dHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjpiZWZvcmUge1xuXHRoZWlnaHQ6IDIycHg7XG5cdG1hcmdpbi10b3A6IC0xMXB4O1xuXHRib3JkZXItdG9wOiA0cHggc29saWQgJGJnLWRhcms7XG5cdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmFmdGVyIHtcblx0aGVpZ2h0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xuXHRtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOmZvY3VzOjphZnRlcixcbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46aG92ZXI6OmFmdGVyIHtcblx0d2lkdGg6IDE1cHg7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZTo6YWZ0ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6LTJweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZTo6YmVmb3JlIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmFmdGVyIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT2ZmY2FudmFzIG5hdiBtYWluIGNvbnRhaW5lclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtb2ZmY2FudmFzLW5hdiB7XG5cdC8qZGlzcGxheTogbm9uZTsqL1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0ei1pbmRleDogMTA7XG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdHRyYW5zaXRpb246IGhlaWdodCAuMnMgZWFzZS1vdXQgMHM7XG59XG4jb3Blbi1uYXZpZ2F0aW9uLm5hdmlnYXRpb24gLmMtb2ZmY2FudmFzLW5hdlxuI29wZW4tbmF2aWdhdGlvbjpub3QoOnRhcmdldCkgLmMtb2ZmY2FudmFzLW5hdiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYy1vZmZjYW52YXMtaW5uZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRtaW4taGVpZ2h0OiAxMDB2aDtcblx0b3ZlcmZsb3cteTogYXV0bztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9mZmNhbnZhcyBDb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtb2ZmY2FudmFzLWNvbnRlbnQge1xuXHRwYWRkaW5nLXRvcDogMS41ZW07XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYy1vZmZjYW52YXMtbGFuZyArIC5jLW9mZmNhbnZhcy1uYXYtbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogMS41ZW07XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCB1bCB7XG5cdG1hcmdpbjogMWVtIDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBsaSArIGxpIHtcblx0cGFkZGluZy10b3A6IDAuNzVlbTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGEge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1ib3R0b206IDAuMjVlbTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGxpIGxpIGEge1xuXHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBhOjpiZWZvcmUge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBhOmZvY3VzOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgYTpob3Zlcjo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCAuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYTo6YmVmb3JlIHtcblx0aGVpZ2h0OiA4cHg7XG4gICAgaGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtbCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgbmF2IG9wZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jb3Blbi1uYXZpZ2F0aW9uLm9wZW4sXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4jb3Blbi1uYXZpZ2F0aW9uLm9wZW4sXG4jb3Blbi1uYXZpZ2F0aW9uOnRhcmdldCB7XG5cdC5jLW9mZmNhbnZhcy1uYXYge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0fVxuXHRcblx0LmMtb2ZmY2FudmFzLXRyaWdnZXItb3BlbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUYWJsZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogYm94IGFyb3VuZCB0YWJsZSwgc28gaXQgY2FuIHNjcm9sbCBvbiBzbWFsbCBzY3JlZW5zICovXG4uYy10YWJsZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5jLXRhYmxlLWxheW91dCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jLXRhYmxlLWxheW91dCB0aCB7XG5cdHBhZGRpbmc6IDAgMTVweCAwLjVlbSAwO1xuXHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcdFxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtdGFibGUtbGF5b3V0IHRkIHtcblx0cGFkZGluZzogMWVtIDE1cHggMWVtIDA7XG5cdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkYm9yZGVyLWJhc2ljO1x0XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy10YWJsZS1sYXlvdXQgdGQ6bGFzdC1jaGlsZCB7XG5cdHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jLW1lbWJlcnMtdGVsIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5cblxuLypncmFkaWVudCBvbiBzY3JvbGwgKi9cbi5jLXRhYmxlIHtcbiAgICAtLXRyYW5zcGFyZW50OiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIC0tYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiAgICAtLXNoYWRvdzogcmdiYSgwLDAsMCwwLjMpO1xuICAgIFxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuXHRiYWNrZ3JvdW5kOlxuXHRcdGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tYmFja2dyb3VuZCkgMTAlLCB2YXIoLS10cmFuc3BhcmVudCkpLFxuXHRcdGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdHJhbnNwYXJlbnQpLCB2YXIoLS1iYWNrZ3JvdW5kKSA5MCUpIDAgMTAwJSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1zaGFkb3cpLCB2YXIoLS10cmFuc3BhcmVudCkgMTAlKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHZhcigtLXNoYWRvdyksIHZhcigtLXRyYW5zcGFyZW50KSAxMCUpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogbG9jYWwsIGxvY2FsLCBzY3JvbGwsIHNjcm9sbDsgICAgXG59XG5cblxuLypcbi5jLXRhYmxlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIG92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgYmFja2dyb3VuZDogXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgd2hpdGUgMzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSBsZWZ0IGNlbnRlciwgXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB3aGl0ZSA3MCUpIHJpZ2h0IGNlbnRlciwgXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDAgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMCkpIGxlZnQgY2VudGVyLCBcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUgYXQgMTAwJSA1MCUsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwKSkgcmlnaHQgY2VudGVyO1xuICAgIFxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCAxMDAlLCA0MHB4IDEwMCUsIDE0cHggMTAwJSwgMTRweCAxMDAlO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGxvY2FsLCBsb2NhbCwgc2Nyb2xsLCBzY3JvbGw7XG59Ki8iLCJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb2xvcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxNDBweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE4OCwgMTg4LCAxODEsIDEpIDAlLCByZ2JhKDE4OCwgMTg4LCAxODEsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxNDBweDtcbiAgICBvcGFjaXR5OiAwLjQ7XG59XG5cbi5jLWJnLWxpZ2h0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBTaG93cm9vbVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4uYy1zaG93cm9vbSB7XG5cdG92ZXJmbG93OiBoaWRkZW47ICAgIFxufVxuXG4uYy1zaG93cm9vbSxcbi5jLXNob3dyb29tLXRleHQgLmMtcm93IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcblx0bWluLWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWhlYWRlci1oZWlnaHQpKTsgXG59XG5cblxuLyogbWluLWhlaWdodCBmaXggZm9yIGllMTEgKi9cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICBcdC5jLXNob3dyb29tLXRleHQgLmMtcm93OmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWluLWhlaWdodDogaW5oZXJpdDtcblx0XHRmb250LXNpemU6IDA7XG5cdH1cbn1cblxuXG5cbi5jLXNob3dyb29tLW1lZGlhLFxuLmMtaW1nLW92ZXJsYXkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTsgXG4gICAgYm9yZGVyOiBzb2xpZCB2YXIoLS1ib3JkZXItb3V0c2lkZSkgdmFyKC0tYmctY29udGVudCk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLmMtaW1nLW92ZXJsYXkge1xuXHRvcGFjaXR5OiAwLjY7XG59XG5cbi5jLWltZy1vdmVybGF5IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMDAwMDAwKzAsMDAwMDAwKzEwMCYwLjUrMCwwKzEwMDtOZXV0cmFsK0RlbnNpdHkgKi9cblx0LypiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDAsMCwwLDAuNSkgMCUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7IFxuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDAsMCwwLDAuNSkgMCUscmdiYSgwLDAsMCwwKSAxMDAlKTsgXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDAuNSkgMCUscmdiYSgwLDAsMCwwKSAxMDAlKTsgKi9cbiAgICBcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMzEsIDY0LCAxMjIsIDAuNCkgMCUsIHJnYmEoMzEsIDY0LCAxMjIsIDApIDQwJSk7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMGRlZyxyZ2JhKDMxLCA2NCwgMTIyLCAwLjQpIDAlLCByZ2JhKDMxLCA2NCwgMTIyLCAwKSA0MCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMzEsIDY0LCAxMjIsIDAuNCkgMCUsIHJnYmEoMzEsIDY0LCAxMjIsIDApIDQwJSk7XG5cblxufVxuXG4uYy1zaG93cm9vbS1tZWRpYSBpbWcsIFxuLmMtc2hvd3Jvb20tbWVkaWEgdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtc2hvd3Jvb20ge1xuICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDZweCByZ2JhKDMxLDY0LDEyMiwwLjEpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRlYXNlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGVhc2VyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCB2YXIoLS1ib3JkZXItb3V0c2lkZSkgdmFyKC0tYmctY29udGVudCk7XG4gICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB2YXIoLS1ib3JkZXItb3V0c2lkZSkgdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLXRlYXNlci1hc3ltLXJpZ2h0IC5jLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uYy10ZWFzZXItYXN5bS1yaWdodCAuYy10ZWFzZXItYXN5bS1pbWcge1xuICAgIG1hcmdpbi1yaWdodDogLTI0cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWdyaWQtY29udGFpbmVyKSAqIC0xKTtcbn1cblxuLmMtdGVhc2VyLWFzeW0tbGVmdCAuYy10ZWFzZXItYXN5bS1pbWcge1xuICAgIG1hcmdpbi1sZWZ0OiAtMjRweDtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gdGVhc2VyIGV2ZW50cyAvIGV2ZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGVhc2VyLWV2ZW50cyxcbi5jLXRlYXNlci1ldGhpY3MsXG4uYy1tZW1iZXJzLXNlYXJjaCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLWV2ZW50cy1ib3gge1xuICAgIHBhZGRpbmc6IDEuNWVtIDI0cHg7XG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1ib3gpO1xuICAgIGJvcmRlcjogc29saWQgOHB4ICRiZy1kYXJrO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtZXZlbnRzIC5jLWV2ZW50cy1ib3gtbWVtYmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWRhcmspO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRlYXNlciBjbHViIC8gZXRoaWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy10ZWFzZXItY2x1YiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWxpZ2h0KTtcbn1cblxuLmMtdGVhc2VyLWNsdWItbGlzdCxcbi5jLXRlYXNlci1ldGhpY3MtbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWdyaWQtcm93KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG5cbi5jLXRlYXNlci1jbHViLWxpc3QgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29sKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdyaWQtY29sKTtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlO1xufVxuXG4uYy10ZWFzZXItZXRoaWNzLWxpc3QgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29sKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdyaWQtY29sKTtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xufVxuXG4uYy10ZWFzZXItY2x1Yi1pbWcsXG4uYy10ZWFzZXItZXRoaWNzLWltZyB7XG4gICAgbWF4LXdpZHRoOiAxMzBweDtcbiAgICBtYXJnaW46IDAgYXV0byAxLjVlbSBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHMpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRlYXNlciBpbWcgZ2FsbGVyeVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLXRlYXNlci1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLXRlYXNlci1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXJhdGlvYm94LXRlYXNlci1pbWctZ2FsbGVyeSBpbWcsXG4uYy10ZWFzZXItbGluayB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtdGVhc2VyLWl0ZW06aG92ZXIgLmMtaDMgLmMtdGVhc2VyLWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lKTtcbn1cblxuLmMtdGVhc2VyLWl0ZW06aG92ZXIgaW1nIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xufVxuXG4uYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG59XG5cbi5jLXRlYXNlci1pbWctZ2FsbGV5LXRleHQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zKTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGdhbGxlcnkgXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1nYWxsZXJ5LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWdhcCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1nYXApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLWdhbGxlcnkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAyMHZ3KTtcbiAgICBncmlkLWdhcDogMjBweDtcbiAgICBncmlkLWdhcDogdmFyKC0tZ3JpZC1nYXApO1xufVxuXG4uYy1nYWxsZXJ5LWl0ZW0gaW1nLFxuLmMtZ2FsbGVyeS1pdGVtIHZpZGVvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jLWdhbGxlcnktdmFyMS03cGljcyAuYy1nYWxsZXJ5LWl0ZW0tMSxcbi5jLWdhbGxlcnktdmFyMi03cGljcyAuYy1nYWxsZXJ5LWl0ZW0tMSB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG59XG5cbi5jLWdhbGxlcnktdmFyMS03cGljcyAuYy1nYWxsZXJ5LWl0ZW0tNCB7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDI7XG59XG5cbi5jLWdhbGxlcnktdmFyMi03cGljcyAuYy1nYWxsZXJ5LWl0ZW0tNSB7XG4gICAgZ3JpZC1jb2x1bW46IDMgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDI7XG59XG5cbi5jLWdhbGxlcnktMmNvbCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCAzMHZ3KTtcbn1cblxuLmMtZ2FsbGVyeS0yY29sIC5jLWdhbGxlcnktaXRlbS0xIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyIC8gc3BhbiAyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBUZWFtXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy10ZWFtLWltZyB7XG4gICAgbWF4LXdpZHRoOiAzMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIHBhZ2luZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLXBhZ2luZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG5cbi5jLXBhZ2luZy1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgOHB4IDhweCAwO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICBib3JkZXI6IHNvbGlkIDRweCAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZGFyayk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICAgIFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1wYWdpbmctaXRlbSxcbi5jLXBhZ2luZy1pdGVtOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtcGFnaW5nLWl0ZW06aG92ZXIsXG4uYy1wYWdpbmctaXRlbTpmb2N1cyxcbi5jLXBhZ2luZyAuYy1wYWdpbmctYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLXBhZ2luZyAuYy1wYWdpbmctZGlzYWJsZWQsXG4uYy1wYWdpbmcgLmMtcGFnaW5nLWRpc2FibGVkOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRpY2tldHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRpY2tldC1ib3gge1xuICAgIHBhZGRpbmc6IDEuNWVtIDI0cHg7XG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1ib3gpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWRhcmspO1xufVxuXG4uYy10aWNrZXQtYm94LWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kaXNhYmxlZCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1kaXNhYmxlZCk7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItZGlzYWJsZWQpO1xufVxuXG4uYy10aWNrZXQtYm94LWNhcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5jLXRpY2tldC1ib3gtY2FydCxcbi5jLXRpY2tldC1ib3gtc2tpcGFzcyB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjJlbTtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1zKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG59XG5cbi5jLXRpY2tldC1ib3gtY2FydC1xdWFudGl0eSB7XG4gICAgbWF4LXdpZHRoOiA3MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICBcbn1cblxuLmMtdGlja2V0cy1tZXNzYWdlLWJveCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMjBweDtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICByaWdodDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIHBhZGRpbmc6IDEuNWVtIDI0cHg7XG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1ib3gpO1xuICAgIGJvcmRlcjogc29saWQgOHB4ICRiZy1kYXJrO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgei1pbmRleDogMTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgNDA0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1tYWluLXRpdGxlLWlsbHUge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIENvb2tpZSBub3RpY2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvb2tpZS1ub3RpY2V7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG5cdHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogNDgwcHg7XG4gICAgcGFkZGluZzogMS41cmVtIDMwcHg7XG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1ib3gpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlcjogc29saWQgNHB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci1vdXRzaWRlKTtcbn1cblxuXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5jLXRleHQtYmxvY2sgLmMtY29va2llLW5vdGljZS1saXN0IGxpOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNWVtIDAuNWVtIDAgMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgICBcblx0LmMtY29va2llLW5vdGljZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHQvKmJvcmRlci10b3A6IHNvbGlkIDRweCAkYm9yZGVyLWJhc2ljO1xuICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1sKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTsqL1xuXHR9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIExpbmsgY29sb3JzIGFuZCBzdHlsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmFbaHJlZl49XCJ0ZWw6XCJdIHtcblx0Y29sb3I6IGluaGVyaXQ7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYy10ZXh0LWJsb2NrIGEge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCR0ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lIDAlLCR0ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSkgMCUsdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDRweCA0cHg7XG4gIFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMXM7XG59XG5cbi5jLXRleHQtYmxvY2sgYTpmb2N1cyxcbi5jLXRleHQtYmxvY2sgYTpob3ZlciB7XG5cdGJhY2tncm91bmQtc2l6ZTogOHB4IDhweDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1idG4sXG4uYy10ZXh0LWJsb2NrIC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1hcnJvdyxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1kb3dubG9hZCxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1leHRlcm4sXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstYmFjayxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1tYWlsLFxuLmMtdGV4dC1ibG9jayAuYy1saW5rLWxpbmtlZGlue1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgc2tpcCBsaW5rXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1za2lwLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICAgIFxuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwIDAsIDAgMCwgMCAwLCAwIDApO1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDAgMCwgMCAwLCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxcHg7ICBcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAgICBcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyBcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMC41ZW0gMjBweDtcbn1cblxuLmMtc2tpcC1saW5rOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY2xpcDogYXV0bztcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvOyAgICBcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJ1dHRvbiBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWJ0bixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5jLWJ0bi10aWNrZXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAxOHB4IDhweCAxNHB4IDA7XG5cdGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItdG9wOiBzb2xpZCA0cHggJGJnLWRhcms7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgIFxuXHRmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5jLWJ0bi10aWNrZXQge1xuICAgIHBhZGRpbmc6IDAuNzVlbSAyMHB4IDAuNmVtIDIwcHg7XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggJGJnLWRhcms7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lKTtcbn1cblxuXG4uYy1idG46YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAycHg7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlcjogc29saWQgJGJnLWRhcms7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lKTtcbiAgICBib3JkZXItd2lkdGg6IDAgNHB4IDRweCAwO1xuICAgIGJvcmRlci13aWR0aDogMCB2YXIoLS1ib3JkZXItd2lkdGgtbCkgdmFyKC0tYm9yZGVyLXdpZHRoLWwpIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbn1cblxuQGtleWZyYW1lcyBhbmltYnRuIHtcblx0MCUge1xuXHRcdCB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApO1xuXHR9XG5cdDUwJSB7XG5cdFx0IHRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgsMCk7XG5cdH1cblx0MTAwJSB7XG5cdFx0IHRyYW5zZm9ybTogdHJhbnNsYXRlKDE2cHgsMCk7XG5cdH1cbn1cblxuXG4uYy1idG4sXG4uYy1idG46dmlzaXRlZCxcbi5jLWJ0bjpob3ZlciwgXG4uYy1idG46Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG4uYy1idG4tdGlja2V0LFxuLmMtYnRuLXRpY2tldDpob3Zlcixcbi5jLWJ0bi10aWNrZXQ6Zm9jdXMge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG59XG5cbi5jLWJ0bjpob3ZlciwgXG4uYy1idG46Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG4uYy1idG4tdGlja2V0OmhvdmVyLFxuLmMtYnRuLXRpY2tldDpmb2N1cyB7XG4gICAgYW5pbWF0aW9uOiBhbmltYnRuIC40cyBmb3J3YXJkcztcbiAgIFxufVxuXG5cbi5jLWJ0bi1zbWFsbCB7XG4gICBwYWRkaW5nOiAxNHB4IDhweCAxNHB4IDA7XG4gICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xufVxuXG4uYy1idG4tc21hbGw6YWZ0ZXIge1xuXHR0b3A6IDRweDtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAyMXB4KTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG59XG5cbi5jLWJ0bi10aWNrZXQge1xuICAgIHBhZGRpbmc6IDE4cHggMTZweCAxNnB4IDE2cHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbiAgICBcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgbGlua3Mgd2l0aCBpY29uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaWNvbixcbi5jLWljb24tc29jaWFsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYy1pY29uOjpiZWZvcmUsXG4uYy1pY29uOjphZnRlcixcbi5jLWljb24tc29jaWFsOjpiZWZvcmUsXG4uYy1pY29uLXRpdGxlOjphZnRlciB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vLi4vaW1hZ2VzL3Nwcml0ZS5zdmcpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uYy1pY29uLXNvY2lhbDo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vLi4vaW1hZ2VzL3Nwcml0ZS1zb2NpYWwuc3ZnKTtcbn1cblxuLmMtaWNvbi10aXRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtMnB4O1xuICAgIHdpZHRoOiAxMDZweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUtY3J5c3RhbC5zdmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1pY29uLXRpdGxlOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTAwcHg7XG59XG5cbi5jLWxpbmstaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZy1sZWZ0OiAzNHB4O1xuXHRmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxpbmspO1xufVxuXG4uYy1pY29uLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jLWxpbmstYXJyb3c6OmJlZm9yZSxcbi5jLWxpbmstYmFjazo6YmVmb3JlLFxuLmMtaWNvbi1hcnJvdzo6YmVmb3JlIHtcblx0dG9wOiAwLjI1ZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyOHB4O1xuXHRoZWlnaHQ6IDE4cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcblx0dHJhbnNpdGlvbjogMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLmMtbGluay1hcnJvdzpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1hcnJvdzpmb2N1czo6YmVmb3JlLFxuLmMtaWNvbi1hcnJvdzpob3Zlcjo6YmVmb3JlLFxuLmMtdGVhc2VyLWl0ZW06aG92ZXIgLmMtaWNvbi1hcnJvdzo6YmVmb3JlLFxuLmMtdGVhc2VyLWl0ZW06Zm9jdXMgLmMtaWNvbi1hcnJvdzo6YmVmb3JlIHtcblx0bGVmdDogNHB4O1xufVxuXG4uYy10ZWFzZXItaXRlbTpmb2N1cy13aXRoaW4gLmMtaWNvbi1hcnJvdzo6YmVmb3JlIHtcblx0bGVmdDogNHB4O1xufVxuXG5cbi5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTIwcHg7XG59XG5cbi5jLWxpbmstYmFjazpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1iYWNrOmZvY3VzOjpiZWZvcmUge1xuXHRsZWZ0OiAtNHB4O1xufVxuXG4uYy1saW5rLWRvd25sb2FkOjpiZWZvcmUge1xuXHR0b3A6IC0wLjI1ZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyMHB4O1xuXHRoZWlnaHQ6IDI4cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG59XG5cbi5jLWxpbmstZG93bmxvYWQ6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstZG93bmxvYWQ6Zm9jdXM6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC00MHB4O1xufVxuXG4uYy1saW5rLWV4dGVybjo6YmVmb3JlIHtcblx0dG9wOiAwZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyNnB4O1xuXHRoZWlnaHQ6IDI4cHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG59XG5cbi5jLWxpbmstZXh0ZXJuOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWV4dGVybjpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTgwcHg7XG59XG5cbi5jLWxpbmstbWFpbDo6YmVmb3JlIHtcblx0dG9wOiAtMC4xNWVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjZweDtcblx0aGVpZ2h0OiAyOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNDBweDtcbn1cblxuLmMtbGluay1tYWlsOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLW1haWw6Zm9jdXM6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC0yNDBweDtcbn1cblxuLmMtbGluay1kZWxldGU6OmJlZm9yZSB7XG5cdHRvcDogMC4yZW07XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAyMXB4O1xuXHRoZWlnaHQ6IDIycHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwMHB4O1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWxpbmstZGVsZXRlOmhvdmVyOjpiZWZvcmUge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsMCk7XG59XG5cbi5jLWxpbmstbGlua2VkaW46OmJlZm9yZSB7XG5cdHRvcDogMC4xNWVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjFweDtcblx0aGVpZ2h0OiAyMXB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yODBweDtcbn1cblxuLmMtbGluay1saW5rZWRpbjpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1saW5rZWRpbjpmb2N1czo6YmVmb3JlIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjgwcHg7XG59XG5cbi5jLWxpbmstcmVzZXQ6OmJlZm9yZSB7XG5cdHRvcDogMC4xNWVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjZweDtcblx0aGVpZ2h0OiAyNnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00ODBweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dDtcbn1cblxuLmMtbGluay1yZXNldDpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1yZXNldDpmb2N1czo6YmVmb3JlIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLmMtaWNvbi1zb2NpYWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUycHg7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLWljb24tc29jaWFsOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xufVxuXG4uYy1pY29uLXNvY2lhbDo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogNTJweDtcbiAgICBoZWlnaHQ6IDUycHg7XG59XG5cbi5jLWljb24tc29jaWFsLWZhY2Vib29rOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLmMtaWNvbi1zb2NpYWwtaW5zdGFncmFtOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTYwcHg7XG59XG5cbi5jLWljb24tc29jaWFsLXlvdXR1YmU6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTIwcHg7XG59XG5cbi5jLWljb24tc29jaWFsLXR3aXR0ZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTgwcHg7XG59XG5cbi5jLWljb24tc29jaWFsLWxpbmtlZGluOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI0MHB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC12aW1lbzo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMDBweDtcbn1cblxuLmMtaWNvbi1zb2NpYWwtdGlrdG9rOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM2MHB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC13ZWJzaXRlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQyMHB4O1xufVxuXG4uYy1pY29uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xufVxuXG4uYy1wYWdpbmctYmFjazo6YmVmb3JlLFxuLmMtcGFnaW5nLW5leHQ6OmJlZm9yZSB7XG4gICAgdG9wOiA4cHg7XG4gICAgbGVmdDogOXB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMTlweDtcbn1cblxuLmMtcGFnaW5nLWJhY2s6aG92ZXI6OmJlZm9yZSxcbi5jLXBhZ2luZy1iYWNrOmZvY3VzOjpiZWZvcmUsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMzE5cHg7XG59XG5cbi5jLXBhZ2luZy1kaXNhYmxlZC5jLXBhZ2luZy1iYWNrOjpiZWZvcmUsXG4uYy1wYWdpbmctZGlzYWJsZWQuYy1wYWdpbmctYmFjazpob3Zlcjo6YmVmb3JlLFxuLmMtcGFnaW5nLWRpc2FibGVkLmMtcGFnaW5nLWJhY2s6Zm9jdXM6OmJlZm9yZSwge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0zMTlweDtcbn1cblxuLmMtcGFnaW5nLW5leHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNTlweDtcbn1cblxuLmMtcGFnaW5nLW5leHQ6aG92ZXI6OmJlZm9yZSxcbi5jLXBhZ2luZy1uZXh0OmZvY3VzOjpiZWZvcmUsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzlweCAtMzU5cHg7XG59XG5cbi5jLXBhZ2luZy1kaXNhYmxlZC5jLXBhZ2luZy1uZXh0OjpiZWZvcmUsXG4uYy1wYWdpbmctZGlzYWJsZWQuYy1wYWdpbmctbmV4dDpob3Zlcjo6YmVmb3JlLFxuLmMtcGFnaW5nLWRpc2FibGVkLmMtcGFnaW5nLW5leHQ6Zm9jdXM6OmJlZm9yZSwge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0zNTlweDtcbn1cblxuLmMtaWNvbi1zaG9wIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogNDJweDtcbn1cblxuLmMtaWNvbi1zaG9wOjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xM3B4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtNDQwcHg7XG59XG5cbi5jLWJ0bi1zZWFyY2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uYy1idG4tc2VhcmNoOjpiZWZvcmUge1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjBweDtcbn1cblxuXG5cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ2luOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dpbjo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQ6OmFmdGVye1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luLXRvcDogLTEzcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTUyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBcbiAgICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9naW46Zm9jdXM6OmJlZm9yZSxcbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dpbjpob3Zlcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzBweCAtNTIwcHg7ICBcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDo6YmVmb3JlIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTYwcHg7IFxufVxuXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OmZvY3VzOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IC01NjBweDsgIFxufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dpbixcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCAuYy1tZW51LWxvZ291dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNHB4O1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dpbjo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OjpiZWZvcmV7XG4gICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dpbjo6YWZ0ZXJ7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtMThweDsgICAgXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwcHggLTUyMHB4O1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQ6OmFmdGVye1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLTE3cHg7ICAgIFxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IC01NjBweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgcmVzcG9uc2l2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDFweCkgeyAgIFxuXHQuYy1saW5rLWFycm93OjpiZWZvcmUsXG5cdC5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0XHR0b3A6IDAuMTVlbTtcblx0fVxuXHRcblx0LmMtbGluay1kb3dubG9hZDo6YmVmb3JlIHtcblx0XHR0b3A6IC0uMzVlbTtcblx0fVxuXHRcblx0LmMtbGluay1leHRlcm46OmJlZm9yZSB7XG5cdFx0dG9wOiAwZW07XG5cdH1cbiAgICBcbiAgICAuYy1saW5rLW1haWw6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTAuMzVlbTtcbiAgICB9XG5cbiAgICAuYy1saW5rLWxpbmtlZGluOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuMWVtO1xuICAgIH1cbiAgICBcbiAgICAuYy1saW5rLXJlc2V0OjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuMWVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KSB7ICAgXG5cdC5jLWxpbmstYXJyb3c6OmJlZm9yZSxcblx0LmMtbGluay1iYWNrOjpiZWZvcmUge1xuXHRcdHRvcDogMC4xNWVtO1xuXHR9XG5cdFxuXHQuYy1saW5rLWRvd25sb2FkOjpiZWZvcmUge1xuXHRcdHRvcDogLS4zNWVtO1xuXHR9XG5cdFxuXHQuYy1saW5rLWV4dGVybjo6YmVmb3JlIHtcblx0XHR0b3A6IDBlbTtcblx0fVxuICAgIFxuICAgIC5jLWxpbmstbWFpbDo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtMC4zNWVtO1xuICAgIH1cblxuICAgIC5jLWxpbmstbGlua2VkaW46OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMC4xZW07XG4gICAgfVxuICAgIFxuICAgIC5jLWxpbmstcmVzZXQ6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMC4xZW07XG4gICAgfVxuICAgIFxuICAgIC5jLWJ0bjphZnRlciB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLSAyM3B4KTtcbiAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgIGhlaWdodDogNDZweDtcbiAgICB9XG4gICAgXG4gICAgLmMtYnRuLXNtYWxsOmFmdGVyIHtcbiAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDE5cHgpO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1pY29uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWljb24tdGl0bGU6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MHB4IDA7XG4gICAgfVxuXG4gICAgLmMtdGV4dC1saWdodCAuYy1pY29uLXRpdGxlOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTBweCAtMTAwcHg7XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSYXRpbyBCb3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXJhdGlvYm94IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1yYXRpb2JveCA+IGltZyxcbi5jLXJhdGlvYm94ID4gaWZyYW1lLFxuLmMtcmF0aW9ib3ggPiBvYmplY3Qge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG4uYy1yYXRpb2JveCA+IGltZyxcbi5jLXJhdGlvYm94ID4gdmlkZW8ge1xuXHQvKndpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87Ki9cbiAgICB3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtcmF0aW9ib3ggPiBpZnJhbWUsXG4uYy1yYXRpb2JveCA+IG9iamVjdCB7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uYy1yYXRpb2JveC0xNmJ5OSB7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5jLXJhdGlvYm94LTRieTMge1xuXHRwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuXG4uYy1yYXRpb2JveC0xYnkxIHtcblx0cGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi5jLXJhdGlvYm94LXRlYXNlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmMtcmF0aW9ib3gtdGVhbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEzMy4zMyU7XG59XG5cbi5jLXJhdGlvYm94LXRlYXNlci1pbWctZ2FsbGVyeSB7XG4gICAgcGFkZGluZy1ib3R0b206IDY2LjY2JTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9ybVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIHNhZmFyaSBmb3JtIGZpeCAqL1xuaW5wdXQsXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG50ZXh0YXJlYSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xufVxuXG5pbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cblxuLyogcmVtb3ZlIGNocm9tZSBhdXRvZmlsbCB5ZWxsb3cgY29sb3IgKi9cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAyMDAwcztcbn1cblxuLyogQ2hyb21lLCBTYWZhcmksIEVkZ2UsIE9wZXJhICovXG5pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEZpcmVmb3ggKi9cbmlucHV0W3R5cGU9bnVtYmVyXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG4uYy1mb3JtLWl0ZW0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctcztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcbn1cblxuLmMtZm9ybS1zZXBhcmF0b3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLWw7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbCkgLSB2YXIoLS1zcGFjaW5nLXMpKTtcbn1cblxuLmMtZm9ybWZpZWxkLXNlYXJjaC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgZm9ybWZpZWxkc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXI6IHNvbGlkIDJweCAkYm9yZGVyLWZvcm07XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybSk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1mb3JtLWJvcmRlci13aWR0aCk7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdHBhZGRpbmc6IDAuNzVlbSAxMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy10aWNrZXQtYm94IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLmMtZm9ybS1zdGFuZGFyZCAuYy10aWNrZXQtYm94IGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHRwYWRkaW5nOiAwLjQ4ZW0gMTBweDtcbiAgICBwYWRkaW5nOiB2YXIoLS10aWNrZXQtcGFkZGluZy1pbnB1dCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWEge1xuXHRtaW4taGVpZ2h0OiAxMmVtO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIHRleHRhcmVhOmZvY3VzIHtcblx0Ym9yZGVyLWNvbG9yOiAkYm9yZGVyLWZvcm0tZm9jdXM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybS1mb2N1cyk7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdOmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWE6ZGlzYWJsZWQge1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWRpc2FibGVkO1xuXHRjb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcblx0Y29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWZvcm0tbGFiZWwtdGV4dCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nLWJvdHRvbTogMC4zNWVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy1mb3JtLWxhYmVsLXRleHQtc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGZpbGUgYnV0dG9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9ZmlsZV0ge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogMC43NWVtIDEwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zbWFsbCk7XG59XG5cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZmlsZVwiXTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHRcblx0bWFyZ2luLXJpZ2h0OiAwLjc1ZW07XG5cdHBhZGRpbmc6IDEuMTVlbSAyNHB4IDEuMTVlbSAyNHB4O1xuXHRib3JkZXI6IDJweCBzb2xpZCAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tZm9ybS1ib3JkZXItd2lkdGgpO1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5KTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG5cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZmlsZVwiXTo6ZmlsZS1zZWxlY3Rvci1idXR0b246aG92ZXIge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGNoZWNrYm94IC8gcmFkaW9zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1saXN0LWl0ZW0ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWZvcm0tbXVsdGlsaW5lIC53cGNmNy1saXN0LWl0ZW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJde1xuICAgIG1hcmdpbjogNHB4IDAgMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCl7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdK3NwYW4sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXStzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0rc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdK3NwYW4ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKStzcGFue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMC4zNWVtO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1mb3JtLWNoZWNrYm94LXBhZGRpbmctdG9wLXRleHQpO1xuXHRsaW5lLWhlaWdodDogMS41O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblx0bWluLWhlaWdodDogNDRweDtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKStzcGFuOjpiZWZvcmV7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwLjE1ZW07XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXItZm9ybTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtKTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpK3NwYW46OmJlZm9yZXtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzK3NwYW46OmJlZm9yZXtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK3NwYW46OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YWZ0ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDAuMTVlbSArIDVweCk7XG4gICAgbGVmdDogMTFweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDIycHg7XG5cdGJvcmRlcjogc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG5cdGJvcmRlci13aWR0aDogMCA0cHggNHB4IDA7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjphZnRlcixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMC4xNWVtICsgOXB4KTtcbiAgICBsZWZ0OiA5cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVye1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YWZ0ZXJ7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG4uZ2Zvcm1fZmllbGRzIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK3NwYW46OmFmdGVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjphZnRlcntcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK3NwYW46OmFmdGVye1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQrc3Bhbjo6YWZ0ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCtzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCtzcGFuOjphZnRlciB7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG5cdGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGRyb3Bkb3duXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDAuNzVlbSAzMHB4IDAuNzVlbSAxMHB4ICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0Ym9yZGVyOiAycHggc29saWQgJGJvcmRlci1mb3JtO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tZm9ybS1ib3JkZXItd2lkdGgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9pY29uLWZvcm0tYXJyb3cuc3ZnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGxpbmUtaGVpZ2h0OiAxLjM1cmVtICFpbXBvcnRhbnQ7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xuXHRhcHBlYXJhbmNlOiBub25lO1x0XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDFweCkge1x0ICAgIFxuICAgIC5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0IHtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRyZW0gIWltcG9ydGFudDtcdFxuICAgIH1cbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1mb3JtLWZvY3VzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0tZm9jdXMpO1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCBvcHRpb24ge1xuXHRwYWRkaW5nOiAwO1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OmRpc2FibGVkOjotbXMtZXhwYW5kIHtcblx0Y29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Q6ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdFtkaXNhYmxlZF0ge1xuXHRjb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICB3cDcgZXJyb3IgLyBvayBtZXNzYWdlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNyBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgLmMtZm9ybS1zdGFuZGFyZCBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNyBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgZm9ybSAuYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuXHQvKmRpc3BsYXk6IGJsb2NrOyovXG5cdGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWluaXRpYWw7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS1pbml0aWFsKTtcblx0cGFkZGluZzogMS41ZW0gMzBweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWJveCk7XG5cdGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saWdodCk7XG5cdG1hcmdpbjogMCAwIDNlbSAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcblx0Ym9yZGVyOiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1ub3QtdmFsaWQtdGlwLFxuLmMtZm9ybS1zdGFuZGFyZCAuc2NyZWVuLXJlYWRlci1yZXNwb25zZSxcbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG59XG5cbi8qIGVycm9yICovXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1ub3QtdmFsaWQtdGlwLFxuLmMtZm9ybS1zdGFuZGFyZCAuc2NyZWVuLXJlYWRlci1yZXNwb25zZSB7XG5cdGNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1lcnJvcik7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LW5vdC12YWxpZC10aXAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy10b3A6IDAuMzVlbTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dC53cGNmNy1ub3QtdmFsaWQge1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWVycm9yO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1lcnJvcik7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgZm9ybS5pbnZhbGlkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgLmMtZm9ybS1zdGFuZGFyZCBmb3JtLmludmFsaWQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3IGZvcm0uaW52YWxpZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLndwY2Y3IGZvcm0uaW52YWxpZCAuYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXR7XG5cdGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWVycm9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvcm0tZXJyb3IpO1xufVxuXG4vKiBvayAqL1xuLmMtZm9ybS1zdGFuZGFyZCBmb3JtLnNlbnQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi53cGNmNyBmb3JtLnNlbnQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi53cGNmNyAuYy1mb3JtLXN0YW5kYXJkIGZvcm0uc2VudCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjcgZm9ybS5zZW50IC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgZm9ybS5zZW50IC5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGZvcm0tb2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS1vayk7XG59XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgd3A3IHNwaW5uZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmZvcm0uc3VibWl0dGluZyAud3BjZjctc3Bpbm5lciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctc3Bpbm5lciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IC00cHggMTRweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBib3JkZXI6IDRweCBzb2xpZCByZ2JhKDI5LDI5LDI3LC4zKTtcbiAgICAvKmJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpOyovXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1zcGlubmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG5cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFjY29yZGlvbiBWYXJpYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbiB7XG4gICAgLS1hY2NvcmRpb24taWNvbi1wYWRkaW5nOiA2OHB4O1xuICAgIFxuICAgIC8qIHBsdXMvbWludXMgaWNvbiAqL1xuICAgIC0tcGx1cy1sZW5ndGg6IDQwcHg7XG4gICAgLS1wbHVzLXN0cm9rZTogOHB4O1xuICAgIC0tcGx1cy1zdHJva2UtcG9zaXRpb246IDE2cHg7XG4gICAgXG4gICAgXG4gICAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy1hY2NvcmRpb24ge1xuICAgICAgICAtLWFjY29yZGlvbi1pY29uLXBhZGRpbmc6IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAvKiBwbHVzL21pbnVzIGljb24gKi9cbiAgICAgICAgLS1wbHVzLWxlbmd0aDogMjBweDtcbiAgICAgICAgLS1wbHVzLXN0cm9rZTogNHB4O1xuICAgICAgICAtLXBsdXMtc3Ryb2tlLXBvc2l0aW9uOiA4cHg7XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5jLWFjY29yZGlvbiAuYy1hY2NvcmRpb24taW5uZXIge1xuICAgICAgICAtLWFjY29yZGlvbi1pY29uLXBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBY2NvcmRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbi1jb250YWluZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItdG9wOiAycHggc29saWQgJGJvcmRlci1iYXNpYztcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXMpO1xufVxuXG4uYy1hY2NvcmRpb24tY29udGFpbmVyICsgLmMtYWNjb3JkaW9uLWNvbnRhaW5lciB7XG5cdGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5jLWFjY29yZGlvbi10aXRsZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogMC45ZW0gMCAwLjllbSB2YXIoLS1hY2NvcmRpb24taWNvbi1wYWRkaW5nKTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcblx0Y29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjayB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTk5OTlweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFjY29yZGlvbiBJY29uIENoZWNrIHBsdXMvbWludXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjphZnRlcixcbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKVxufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIge1xuICAgXHRsZWZ0OiAwO1xuXHQvKm1hcmdpbi10b3A6IHZhcigtLXBsdXMtc3Ryb2tlLXBvc2l0aW9uKTsqL1xuXHR3aWR0aDogdmFyKC0tcGx1cy1sZW5ndGgpO1xuXHRoZWlnaHQ6IHZhcigtLXBsdXMtc3Ryb2tlKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmJlZm9yZSxcbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgbGVmdDogdmFyKC0tcGx1cy1zdHJva2UtcG9zaXRpb24pO1xuXHR3aWR0aDogdmFyKC0tcGx1cy1zdHJva2UpO1xuXHRoZWlnaHQ6IHZhcigtLXBsdXMtbGVuZ3RoKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpub3QoOmNoZWNrZWQpK2xhYmVsOjpiZWZvcmUge1xuICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1hY2NvcmRpb24tY29udGVudCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1heC1oZWlnaHQ6IDA7XG4gXHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgY3ViaWMtYmV6aWVyKDAsMSwwLDEpO1xufVxuXG4uYy1hY2NvcmRpb24taW5uZXIge1xuXHRwYWRkaW5nOiAwIDAgdmFyKC0tc3BhY2luZy1zKSAwO1xuXG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkIH4gLmMtYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRtYXgtaGVpZ2h0OiA5OTk5cHg7XG4gXHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgY3ViaWMtYmV6aWVyKDEsMCwxLDApO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFZpZXdwb3J0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ALW1zLXZpZXdwb3J0IHtcblx0d2lkdGg6IGRldmljZS13aWR0aDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1lZGlhcXVlcmllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE1ODBweCkge1xuXHQvKiBjb250YWluZXIgbWF4IHdpZHRoICovXG5cdC5jLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTUyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1hc3ltLWxlZnQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICAgICBtYXJnaW4tbGVmdDogY2FsYygoODBweCArIHZhcigtLWdyaWQtY29udGFpbmVyKSkgKiAtMSk7XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC5jLXRlYXNlci1hc3ltLXJpZ2h0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCg4MHB4ICsgdmFyKC0tZ3JpZC1jb250YWluZXIpKSAqIC0xKTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNzIwcHgpIHtcblx0LyogY29udGFpbmVyIG1heCB3aWR0aCAqL1xuXHQuYy1jb250YWluZXItbWVkaXVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNjgwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLWFzeW0tcmlnaHQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTI2cHg7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1hc3ltLWxlZnQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMjZweDtcbiAgICB9XG59XG5cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTUwMHB4KSB7ICBcblx0LmMtaGVhZGVyLWxvZ28ge1xuICAgICAgICB0b3A6IDJweDtcblx0XHR3aWR0aDogMjIwcHg7XG5cdH1cbiAgICBcbiAgICAuYy1oZWFkZXItbG9nby1jcnlzdGFsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQ2cHhcbiAgICB9XG4gICAgXG4gICAgLmMtaGVhZGVyLWxvZ28tc3VwcG9ydGVyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogOTZweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMzAwcHgpIHsgIFxuICAgIC5jLW1haW4tbmF2LWxpc3QgbGkgKyBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICB9XG59XG5cbi8qIGhlYWRlciBzaG93IG9mZmNhbnZhcyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjExMDBweCkgeyAgXG5cdC5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdFxuXHQuYy1tYWluLW5hdixcbiAgICAuYy1oZWFkZXItbGFuZyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuICAgIFxuICAgIC5jLWhlYWRlci1sb2dvIHtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAvKmhlaWdodDogODRweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNnB4OyovXG4gICAgfVxuICAgIFxuICAgIC5jLWhlYWRlci1sb2dvLWNyeXN0YWwge1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDE2cHggMTJweCAxNnB4O1xuICAgIH1cblxuICAgIC5jLWhlYWRlci1sb2dvLXN1cHBvcnRlciB7XG4gICAgICAgIHBhZGRpbmc6IDIycHggMTZweCAxMHB4IDE2cHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWhlYWRlci1sb2dvLXN1cHBvcnRlciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDgwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLXRpY2tldHMgLmMtY29sLTQge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgNTAlO1xuXHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0bWF4LXdpZHRoOiA1MCU7ICAgIFxuICAgIH1cbiAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMDIwcHgpIHsgIFxuICAgIC5jLXRlYXNlciAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXIgLmMtY29sLTgge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgIFxuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXIgLmMtY29sLTQge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLWFzeW0tcmlnaHQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tZ3JpZC1jb250YWluZXIpICogLTEpO1xuICAgIH1cblxuICAgIC5jLXRlYXNlci1hc3ltLWxlZnQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWdyaWQtY29udGFpbmVyKSAqIC0xKTtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyIC5jLWljb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOHB4O1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUtY3J5c3RhbC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMDBweDtcbiAgICB9XG4gICAgXG4gICAgLmMtZXZlbnRzIC5jLWNvbC00LFxuICAgIC5jLXRlYXNlci1pbWctZ2FsbGVyeSAuYy1jb2wtNCB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG5cdFx0LW1zLWZsZXg6IDAgMCA1MCU7XG5cdFx0ZmxleDogMCAwIDUwJTtcblx0XHRtYXgtd2lkdGg6IDUwJTsgICAgXG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1ldmVudHMgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyLWV2ZW50cyAuYy1jb2wtOCxcbiAgICAuYy10ZWFzZXItY2x1YiAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXItY2x1YiAuYy1jb2wtOCB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICBcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLWV2ZW50cyAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXItY2x1YiAuYy1jb2wtNCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KSB7XG4gICAgLmMtdGV4dC1vbmx5IC5jLWNvbC04LFxuXHQuYy1tYWluLXRpdGxlIC5jLWNvbC04LFxuXHQuYy1zZWN0aW9uLXRpdGxlIC5jLWNvbC04LFxuXHQuYy1xdW90ZSAuYy1jb2wtOCxcbiAgICAuYy1zaG93cm9vbSAuYy1jb2wtOCxcbiAgICAuYy1mb3JtLTFjb2wgLmMtY29sLTgge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgICAgIG1heC13aWR0aDogODMuMzMzMzMlOyAgICBcdFxuXHR9XG4gICAgXG4gICAgXG5cdC5jLWZvb3Rlci1tYWluIC5jLWNvbC0zIHtcblx0XHR3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgNTAlO1xuXHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0bWF4LXdpZHRoOiA1MCU7IFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcblx0fVxuXHRcblx0LmMtZm9vdGVyLW1haW4gLmMtY29sLTYsXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXIgLmMtY29sLTYge1xuXHRcdHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgIFxuXHR9XG4gICAgXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXIgLmMtY29sLTYge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7ICAgXG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItZGlzY2xhaW1lciAuYy1jb2wtNjpmaXJzdC1jaGlsZCB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zKTtcblx0fVxuICAgIFxuICAgIC5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgbGksXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXItbGlzdCBsaSArIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1ldGhpY3MtbGlzdCBsaSB7XG5cdFx0d2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlOyBcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG5cdH1cbiAgICBcbiAgICAuYy10ZWFzZXItZXRoaWNzLWl0ZW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDI4MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5MDBweCkgeyAgXG4gICAgLmMtZm9ybS0yY29sIC5jLWNvbC02IHtcbiAgICAgICAgd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgXG4gICAgfSBcbiAgICBcbiAgICAuYy1mb3JtLTJjb2wgLmMtY29sLTY6bGFzdC1jaGlsZCBoMyB7XG4gICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDJweCAkYm9yZGVyLWJhc2ljO1xuICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1zKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xuICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctbDtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbCk7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sKSAtIHZhcigtLXNwYWNpbmctcykpO1xuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjgwMHB4KSB7XG4gICAgXG4gICAgLmMtbWFpbi10aXRsZS00MDQgLmMtY29sLTcsXG4gICAgLmMtbWFpbi10aXRsZS00MDQgLmMtY29sLTUge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9XG4gICAgXG4gICAgLmMtbWFpbi10aXRsZS00MDQgLmMtY29sLTcge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xuICAgIH1cbiAgICBcbn1cblxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgXG5cdC5jLXRleHQtb25seSAuYy1jb2wtOCxcblx0LmMtbWFpbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtc2VjdGlvbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtcXVvdGUgLmMtY29sLTgsXG4gICAgLmMtc2hvd3Jvb20gLmMtY29sLTgsXG4gICAgLmMtZm9ybS0xY29sIC5jLWNvbC04IHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICAgXHRcblx0fVxuICAgIFxuICAgIC5jLWdhbGxlcnkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg1LCAzMHZ3KTtcbiAgICB9XG5cbiAgICAuYy1nYWxsZXJ5LWl0ZW0gaW1nLFxuICAgIC5jLWdhbGxlcnktaXRlbSB2aWRlbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgIC5jLWdhbGxlcnktdmFyMS03cGljcyAuYy1nYWxsZXJ5LWl0ZW0tMSxcbiAgICAuYy1nYWxsZXJ5LXZhcjItN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTEge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTsgIFxuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjtcbiAgICB9XG5cbiAgICAuYy1nYWxsZXJ5LXZhcjEtN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTQge1xuICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTsgIFxuICAgICAgICBncmlkLXJvdzogMyAvIHNwYW4gMztcbiAgICB9XG5cbiAgICAuYy1nYWxsZXJ5LXZhcjItN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTUge1xuICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTsgIFxuICAgICAgICBncmlkLXJvdzogMyAvIHNwYW4gMztcbiAgICB9XG4gICAgXG4gICAgLmMtZ2FsbGVyeS0yY29sIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgMjB2dyk7XG4gICAgfVxuXG4gICAgLmMtZ2FsbGVyeS0yY29sIC5jLWdhbGxlcnktaXRlbS0xIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgIH1cbiAgICBcbiAgICAuYy1nYWxsZXJ5LTJjb2wgLmMtZ2FsbGVyeS1pdGVtLTIge1xuICAgICAgICBncmlkLXJvdzogMyAvIHNwYW4gMztcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyIC5jLWNvbC00IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTMycHg7XG4gICAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyIC5jLWljb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTBweCAtMjAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYW0gLmMtY29sLTQge1xuICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFtLWltZyB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvb3Rlci1uZW9mbHV4ZTo6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMjBweCAxNHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy10aWNrZXRzIC5jLWNvbC00IHtcbiAgICAgICAgd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgIFxuICAgIH1cbiAgICBcbiAgICAuYy1tZW1iZXJzLXNlYXJjaCAuYy1jb2wtNiB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7IFxuICAgIH0gXG4gICAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAuYy10ZWFzZXItY2x1Yi1saXN0IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcblx0XHRtYXgtd2lkdGg6IDUwJTsgXG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1jbHViLWltZyxcbiAgICAuYy10ZWFzZXItZXRoaWNzLWltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgfSBcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NTFweCkge1xuICAgIC5jLWV2ZW50cyAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXItZXZlbnRzIC5jLWNvbC02LFxuICAgIC5jLXRpY2tldHMgLmMtY29sLTQsXG4gICAgLmMtdGlja2V0LWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIFxuICAgIC5jLWV2ZW50cy1ib3gsXG4gICAgLmMtdGlja2V0LWJveHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgICBcbiAgICAuYy10aWNrZXQtYm94LWRlc2Mge1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgICAuYy1ldmVudHMgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyLWV2ZW50cyAuYy1jb2wtNiB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICBcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyLWV2ZW50cyAuYy1jb2wtNjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTAwcHgpIHsgIFxuXHQuYy10ZWFtIC5jLWNvbC00LFxuICAgIC5jLXRlYXNlci1pbWctZ2FsbGVyeSAuYy1jb2wtNCB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgIFx0XG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItc3VwcG9ydGVkLWJ5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDAwcHgpIHsgIFxuXHQuYy10ZWFzZXItY2x1Yi1saXN0IGxpLFxuICAgIC5jLXRlYXNlci1ldGhpY3MtbGlzdCBsaSB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgIFx0XG5cdH1cbiAgICBcbiAgICAuYy10ZWFzZXItZXRoaWNzLWl0ZW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDozODBweCkgeyAgXG5cdC5jLWZvb3Rlci1tYWluIC5jLWNvbC0zIHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICAgXHRcblx0fVxuICAgIFxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByaW50IENTU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSBwcmludCB7XG4gICAgLyogYmFzZSBzdHlsZXMgKi9cbiAgICAqIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cdFxuXHRhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICBcbiAgICAuYy1pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgICBhW2hyZWZdOmFmdGVyIHtcblx0XHRjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG5cdCAgfVxuICAgIFxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICAgIFxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyBcbiAgICB9XG4gICAgXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cbiAgICBcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgICAgIFxuICAgIEBwYWdlIHtcbiAgICAgICAgbWFyZ2luOiAwLjVjbTtcbiAgICB9XG4gICAgXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgIHdpZG93czogMztcbiAgICB9XG4gICAgXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBicmVhay1hZnRlcjphdm9pZDtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuICAgIFxuICAgIC8qIGZvbnQtc2l6ZXMgKi9cblx0XG5cdGh0bWwsXG5cdGJvZHkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHQvKm92ZXJmbG93OiBhdXRvOyovXG5cdH1cbiAgICBcbiAgICBib2R5IHtcbiAgICAgICAgZm9udC1zaXplOjEycHg7ICAgIFxuICAgIH1cblx0XG5cdGgxLCAuYy1oMSB7XG5cdFx0Zm9udC1zaXplOiAyNHB4O1xuXHR9XG5cdFxuXHQuYy1sZWFkLFxuXHQuYy10ZXh0LWJsb2NrIC5jLWxlYWQsXG5cdGgyLCAuYy1oMixcblx0aDMsIC5jLWgzLFxuXHQuYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgcCB7XG5cdFx0Zm9udC1zaXplOiAxNnB4O1xuXHR9XG5cdFxuXHQvKiBwcm9qZWN0IHN0eWxlcyAqL1xuXHQuYy1jb250YWluZXIge1xuXHRcdHBhZGRpbmctYm90dG9tOiAyZW07XG5cdH1cblx0XG5cdC5jLWZvb3RlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cblxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/