/*!***************************************************************************************************************************************************************************************************************!*\
  !*** 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,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Sjs7QU0zMEJBOzsrRUFBQTtBQUtBOzs7RUFHQyxXTHpCWTtFSzBCVDtBTjQwQko7O0FNejBCQTtFQUNDO0FONDBCRDs7QU14MEJBOzsrRUFBQTtBQUlBOzs7OztFQUtJO0FOMDBCSjs7QU12MEJBO0VBQ0k7QU4wMEJKOztBTXYwQkE7O0VBRUM7RUFDQTtBTjAwQkQ7O0FNdjBCQTtFQUNDO0FOMDBCRDs7QU9uNUJBOzsrRUFBQTtBQUlBOzs7Ozs7RUFNSTtFQUNBO0VBQ0E7QVBxNUJKOztBT2w1QkE7OytFQUFBO0FBTUE7Ozs7OztFQU1DLHNCTklXO0VNSFI7QVBrNUJKOztBTy80QkE7Ozs7O0VBS0k7RUFDQTtBUGs1Qko7O0FPLzRCQTtFQUNJO0VBQ0E7RUFDQTtBUGs1Qko7O0FPLzRCQTtFQUNDO0VBQ0c7QVBrNUJKOztBTy80QkE7RUFDQztBUGs1QkQ7O0FPLzRCQTtFQUNDLHVCTnRCWTtFTXVCVDtBUGs1Qko7O0FPLzRCQTs7OztFQUlJO0VBQ0E7QVBrNUJKOztBTy80QkE7O0VBRUk7QVBrNUJKOztBTy80QkE7OztFQUdJO0FQazVCSjs7QU8vNEJBO0VBQ0k7QVBrNUJKOztBTzk0QkE7OztFQUdJO0VBQ0E7QVBpNUJKOztBTzk0QkE7O0VBRUk7QVBpNUJKOztBTzk0QkE7RUFDSTtFQUNBO0FQaTVCSjs7QU85NEJBOzsrRUFBQTtBQUlBO0VBQ0ksa0JOckVhO0VNc0ViLG1CTnRFYTtFTXVFYjtFQUNBO0FQZzVCSjs7QU83NEJBO0VBQ0ksbUJOM0VPO0VNNEVQLGtCTjVFTztFTTZFUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSTtFQUNJO0FQZzVCWjs7QU83NEJBO0VBQ0k7QVBnNUJKOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83NEJBO0VBQ0k7QVBnNUJKOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83NEJBO0VBQ0k7QVBnNUJKOztBTzc0QkE7RUFDSTtBUGc1Qko7O0FPNzRCQTtFQUNJO0FQZzVCSjs7QU83NEJBOzs7Ozs7Ozs7Ozs7RUFZSTtFQUNBO0VBQ0EsbUJOM0lPO0VNNElQLGtCTjVJTztFTTZJUDtFQUNBO0FQZzVCSjs7QU83NEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUGc1Qko7O0FPNzRCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBnNUJKOztBTzc0QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQZzVCSjs7QU83NEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUGc1Qko7O0FPNzRCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBnNUJKOztBTzc0QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQZzVCSjs7QU83NEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUGc1Qko7O0FPNzRCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBnNUJKOztBTzc0QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQZzVCSjs7QU83NEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUGc1Qko7O0FPNzRCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBnNUJKOztBTzc0QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQZzVCSjs7QU83NEJBO0FBQ0E7RUFDRTtBUGc1QkY7O0FPNzRCQTtFQUNFO0FQZzVCRjs7QU83NEJBO0VBQ0U7QVBnNUJGOztBTzc0QkE7RUFDRTtBUGc1QkY7O0FPNzRCQTtFQUNFO0FQZzVCRjs7QU83NEJBO0VBQ0U7QVBnNUJGOztBTzc0QkE7RUFDRTtBUGc1QkY7O0FPNzRCQTtFQUNFO0FQZzVCRjs7QU83NEJBO0VBQ0U7QVBnNUJGOztBTzc0QkE7RUFDRTtBUGc1QkY7O0FPNzRCQTtFQUNFO0FQZzVCRjs7QU83NEJBOzsrRUFBQTtBQ3JVQTs7K0VBQUE7QUFHQTtFQUNDO0VBQ0c7QVJ3dENKOztBUXJ0Q0E7OytFQUFBO0FBSUE7Ozs7OztFQU1DO0VBQ0E7RUFDRztFQUNBO0FSdXRDSjs7QVFwdENBOztFQUVDO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7RUFDQTtBUnV0Q0o7O0FRcHRDQTs7RUFFQztFQUNBO0VBQ0E7RUFDRztFQUNBO0VBQ0E7QVJ1dENKOztBUXB0Q0E7RUFDSTtBUnV0Q0o7O0FRcHRDQTs7RUFFQztFQUNBO0VBQ0E7RUFDRztFQUNBO0VBQ0E7QVJ1dENKOztBUXB0Q0E7RUFDSTtBUnV0Q0o7O0FRcHRDQTs7RUFFQztFQUNBO0VBQ0E7RUFDRztFQUNBO0VBQ0E7QVJ1dENKOztBUXB0Q0E7OytFQUFBO0FBSUE7O0VBRUM7QVJzdENEOztBUW50Q0E7O0VBRUM7QVJzdENEOztBUWp0Q0E7O0VBRUk7QVJvdENKOztBUWp0Q0E7Ozs7Ozs7Ozs7OztFQVlDO0FSb3RDRDs7QVFqdENBO0VBQ0k7QVJvdENKOztBUWp0Q0E7RUFDSTtFQUNIO0VBQ0c7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBOzs7Ozs7OztFQVFDO0VBQ0c7QVJvdENKOztBUWp0Q0E7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBO0VBQ0k7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBO0VBQ0M7RUFDQTtFQUNHO0FSb3RDSjs7QVFqdENBO0VBQ0k7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVJvdENKOztBUWp0Q0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0FSb3RDSjs7QVFqdENBO0VBQ0k7RUFDQTtBUm90Q0o7O0FRanRDQTs7K0VBQUE7QUFJQTs7OztFQUlDO0VBQ0E7RUFDQTtBUm10Q0Q7O0FRaHRDQTtFQUNJO0FSbXRDSjs7QVFodENBOztFQUVDO0VBQ0E7QVJtdENEOztBUWh0Q0E7OztFQUdJO0FSbXRDSjs7QVFodENBOzs7O0VBSUM7QVJtdENEOztBUWh0Q0E7RUFDQztFQUNBO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7QVJtdENKOztBUWh0Q0E7OztFQUdJO0FSbXRDSjs7QVEvc0NBO0VBQ0M7QVJrdENEOztBUS9zQ0E7RUFDQztBUmt0Q0Q7O0FRL3NDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXUDlPWTtFTytPVDtFQUNIO0VBQ0c7RUFDSDtBUmt0Q0Q7O0FRL3NDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FSa3RDSjs7QVEvc0NBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJrdENKOztBUS9zQ0E7OytFQUFBO0FBSUE7RUFDQztFQUNBO0VBQ0c7RUFDQTtBUml0Q0o7O0FROXNDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDSDtFQUNHO0VBQ0E7QVJpdENKOztBUTlzQ0E7RUFDSTtFQUNIO0VBQ0E7RUFDRztBUml0Q0o7O0FROXNDQTs7K0VBQUE7QUFJQTtFQUNDO0FSZ3RDRDs7QVE3c0NBO0VBQ0M7QVJndENEOztBUTdzQ0E7RUFDQyxXUDlTa0I7RU8rU2Y7QVJndENKOztBUTdzQ0E7OytFQUFBO0FBSUE7RUFDQzs7O0lBR0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VSK3NDQTtBQUNGO0FRNXNDQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RVI2c0NOO0VRMXNDRTs7SUFFSTtFUjRzQ047QUFDRjtBUXhzQ0E7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFUjBzQ047QUFDRjtBUXZzQ0E7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFUnlzQ047QUFDRjtBU25rREE7OytFQUFBO0FBR0E7RUFDQyxzQlJrQlk7RVFqQlQ7RUFDSDtBVHFrREQ7O0FTbGtEQTtFQUNDO0VBQ0c7RUFDSDtFQUNBO0VBQ0E7RUFDRztBVHFrREo7O0FTamtEQTtFQUNDO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7RUFDQTtFQUNBOzs7dUNBQUE7RUFJQTtBVG9rREo7O0FTamtEQTtFQUNJO0FUb2tESjs7QVNqa0RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0g7RUFDRztFQUNBO0FUb2tESjs7QVNqa0RBO0VBQ0k7RUFDQTtBVG9rREo7O0FTamtEQTtFQUNDO0FUb2tERDs7QVNqa0RBO0VBQ0M7QVRva0REOztBU2prREE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7QVRta0RKOztBU2hrREE7RUFDSTtFQUNBO0VBQ0E7QVRta0RKOztBU2hrREE7RUFDQztBVG1rREQ7O0FTaGtEQTtFQUNDO0FUbWtERDs7QVNoa0RBO0VBQ0M7RUFDQTtFQUNBO0FUbWtERDs7QVM5akRBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDRztFQUNBO0FUZ2tESjs7QVM3akRBO0VBQ0k7RUFDQTtFQUNIO0VBQ0E7RUFDQTtBVGdrREQ7O0FTM2pEQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQ4akRKOztBUzFqREE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7QVQ2akRKOztBU3pqREE7RUFDQztBVDRqREQ7O0FTempEQTtFQUNDO0FUNGpERDs7QVN4akRBO0VBQ0M7RUFDQTtFQUNHO0FUMmpESjs7QVN4akRBOztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCUmxJaUI7RVFtSWQ7RUFDSDtBVDJqREQ7O0FTeGpEQTs7Ozs7OztFQU9DO0FUMmpERDs7QVN4akRBO0VBQ0k7QVQyakRKOztBU3hqREE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJqREo7O0FTeGpEQTs7OztFQUlJO0FUMmpESjs7QVV6dkRBOzsrRUFBQTtBQUlBO0VBQ0MsbUJUMEJXO0VTekJSLHNCVHlCUTtFU3hCUjtFQUNBO0VBQ0EseUJUY007RVNiTjtBVjJ2REo7O0FVeHZEQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjJ2REo7O0FVeHZEQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjJ2REo7O0FVeHZEQTs7O0VBR0M7RUFDQTtFQUNBO0FWMnZERDs7QVV4dkRBOzsrRUFBQTtBQUlBO0VBQ0k7QVYwdkRKOztBVXZ2REE7RUFDQztFQUNBO0VBQ0E7RUFDRztBVjB2REo7O0FVdnZEQTtFQUNDO0FWMHZERDs7QVV2dkRBO0VBQ0ksa0JUbENRO0VTbUNSO0FWMHZESjs7QVV2dkRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVYwdkRGOztBVXZ2REE7OytFQUFBO0FBSUE7RUFDQyxtQlRsRFc7RVNtRFI7QVZ5dkRKOztBVXR2REE7RUFDQztBVnl2REQ7O0FVdHZEQTtFQUNDO0FWeXZERDs7QVV0dkRBOzs7Ozs7Ozs7O0VBQUE7QUFZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZ3dkRKOztBVXJ2REE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0g7RUFDRztBVnd2REo7O0FBNTFEQTtBV3ZCQTs7K0VBQUE7QUFJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBLFdWNkJnQjtFVTVCYjtFQUNIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYczNERDs7QVduM0RBO0VBQ0M7QVhzM0REOztBV24zREE7O0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWHMzREQ7O0FXbjNEQTs7RUFFQztFQUNBO0FYczNERDs7QVduM0RBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDRztBWHMzREo7O0FXbjNEQTtFQUNDO0VBQ0EseUJWekJTO0VVMEJOO0VBQ0g7QVhzM0REOztBV24zREE7O0VBRUM7QVhzM0REOztBV24zREE7O0VBRUMseUJWbkNpQjtFVW9DZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhzM0RKOztBV24zREE7RUFDQztBWHMzREQ7O0FXbjNEQTtFQUNDO0FYczNERDs7QVduM0RBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QlYvRFM7RVVnRU47RUFDSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhxM0REOztBV24zREE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhxM0RKOztBV2wzREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBWHEzREQ7O0FXbDNEQTs7K0VBQUE7QUFHQTtFQUNDO0FYcTNERDs7QVdsM0RBO0VBQ0M7RUFDQTtFQUNBO0VBQ0c7QVhxM0RKOztBV2wzREE7RUFDSTtBWHEzREo7O0FXbDNEQTtFQUNDO0VBQ0E7RUFDQTtFQUNHO0FYcTNESjs7QVdsM0RBO0VBQ0M7QVhxM0REOztBV2wzREE7RUFDQztFQUNBO0VBQ0E7QVhxM0REOztBV2wzREE7RUFDQztBWHEzREQ7O0FXbDNEQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCVnhJaUI7RVV5SWQ7RUFDSDtBWHEzREQ7O0FXbDNEQTs7OztFQUlDO0VBQ0c7QVhxM0RKOztBV2wzREE7OytFQUFBO0FBR0E7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNIO0FYcTNERDs7QVdoM0RDOztFQUNDO0VBQ0E7RUFDQTtBWG8zREY7QVdqM0RDOztFQUNDO0FYbzNERjs7QVl4akVBOzsrRUFBQTtBQUlBO0FBQ0E7RUFDSTtBWjBqRUo7O0FZdmpFQTtFQUNJO0FaMGpFSjs7QVl2akVBO0VBQ0M7RUFDQTtFQUNHO0VBQ0E7RUFDQTtBWjBqRUo7O0FZdmpFQTtFQUNDO0VBQ0E7RUFDRztBWjBqRUo7O0FZdmpFQTtFQUNDO0FaMGpFRDs7QVl2akVBO0VBQ0k7QVowakVKOztBWXJqRUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUgsZ1NBQ0M7RUFJRTtBWmtqRUo7O0FZOWlFQTs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUN4REE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWJ3bkVKOztBYXJuRUE7RUFDQyx5QlpNVTtFWUxQO0Fid25FSjs7QWFwbkVBOzsrRUFBQTtBQUtBO0VBQ0M7QWJxbkVEOztBYWxuRUE7O0VBRUk7RUFDSDtBYnFuRUQ7O0Fham5FQTtBQUNBO0VBQ0k7SUFDRjtJQUNBO0lBQ0E7SUFDQTtFYm9uRUE7QUFDRjtBYS9tRUE7O0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7QWJpbkVKOztBYTltRUE7RUFDQztBYmluRUQ7O0FhOW1FQTtFQUNDO0VBQ0E7RUFDQTs7bUZBQUE7RUFJRztFQUNBO0VBQ0E7QWJnbkVKOztBYTNtRUE7O0VBRUU7RUFDQTtFQUNBO0FiOG1FRjs7QWEzbUVBO0VBQ0k7QWI4bUVKOztBYTNtRUE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7QWI2bUVKOztBYTFtRUE7RUFDSTtBYjZtRUo7O0FhMW1FQTtFQUNJO0VBQ0E7QWI2bUVKOztBYTFtRUE7RUFDSTtFQUNBO0FiNm1FSjs7QWExbUVBOzsrRUFBQTtBQUlBOzs7RUFHSSx5QlpuR007RVlvR047QWI0bUVKOztBYXptRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiNG1FSjs7QWF6bUVBO0VBQ0k7RUFDQTtBYjRtRUo7O0Fhem1FQTs7K0VBQUE7QUFJQTtFQUNJLHlCWnhITztFWXlIUDtBYjJtRUo7O0FheG1FQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiMm1FSjs7QWF4bUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWIybUVKOztBYXhtRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBYjJtRUo7O0FheG1FQTs7RUFFSTtFQUNBO0VBQ0E7QWIybUVKOztBYXhtRUE7OytFQUFBO0FBR0E7RUFDSTtBYjJtRUo7O0FheG1FQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjJtRUY7O0FheG1FQTs7RUFFSTtBYjJtRUo7O0FheG1FQTtFQUNJO0FiMm1FSjs7QWF4bUVBO0VBQ0k7QWIybUVKOztBYXhtRUE7RUFDSTtBYjJtRUo7O0FheG1FQTtFQUNJO0VBQ0E7QWIybUVKOztBYXZtRUE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FieW1FSjs7QWF0bUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYnltRUo7O0FhdG1FQTs7RUFFSTtFQUNBO0VBQ0E7QWJ5bUVKOztBYXRtRUE7O0VBRUk7RUFDQTtBYnltRUo7O0FhdG1FQTtFQUNJO0VBQ0E7QWJ5bUVKOztBYXRtRUE7RUFDSTtFQUNBO0FieW1FSjs7QWF0bUVBO0VBQ0k7RUFDQTtBYnltRUo7O0FhdG1FQTtFQUNJO0FieW1FSjs7QWF0bUVBOzsrRUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0Fid21FSjs7QWFybUVBOzsrRUFBQTtBQUdBO0VBQ0k7RUFDQTtBYndtRUo7O0FhcG1FQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FidW1FSjs7QWFwbUVBOztFQUVJLGNaNVJjO0VZNlJkO0FidW1FSjs7QWFwbUVBOzs7RUFHSTtFQUNBO0FidW1FSjs7QWFwbUVBOztFQUVJO0VBQ0E7RUFDQTtBYnVtRUo7O0Fhbm1FQTs7K0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtBYnFtRUo7O0FhbG1FQTtFQUNJO0VBQ0E7RUFDQTtBYnFtRUo7O0FhbG1FQTtFQUNJO0VBQ0E7RUFDQTtBYnFtRUo7O0FhbG1FQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FicW1FSjs7QWFsbUVBO0VBQ0k7RUFDQTtBYnFtRUo7O0Fham1FQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWJvbUVKOztBYWptRUE7OytFQUFBO0FBSUE7RUFDSTtFQUNBO0FibW1FSjs7QWFobUVBOzsrRUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNIO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5Qlo1WE07RVk2WE47RUFDQTtFQUNBO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7QWJrbUVKOztBYTlsRUE7RUFDSTtBYmltRUo7O0FhOWxFQTtFQUNJO0FiaW1FSjs7QWE5bEVBO0VBQ0k7RUFDQTtFQUNBO0FiaW1FSjs7QWE5bEVBO0VBQ0M7SUFDQztJQUNNO0lBQ047SUFDQTs7MkNBQUE7RWJtbUVBO0FBQ0Y7QWNyaEZBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDQTtFQUNBO0Fkc2hGRDs7QWNuaEZBO0VBQ0M7RUFDRztFQUNBO0VBQ0E7RUFDQTtFQUNEO0Fkc2hGSDs7QWNuaEZBOztFQUVDO0Fkc2hGRDs7QWNuaEZBOzs7Ozs7OztFQVFDO0Fkc2hGRDs7QWNuaEZBOzsrRUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkcWhGSjs7QWNsaEZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRxaEZKOztBY2xoRkE7OytFQUFBO0FBSUE7OztFQUdJO0VBQ0E7RUFDQTtFQUNIO0VBQ0E7RUFDRztFQUNBO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7RUFDSDtFQUNHO0VBQ0E7RUFDSDtFQUNBO0VBQ0c7QWRvaEZKOztBY2poRkE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7QWRvaEZKOztBY2hoRkE7RUFDQztFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZG1oRko7O0FjaGhGQTtFQUNDO0lBQ0U7RWRtaEZEO0VjamhGRDtJQUNFO0VkbWhGRDtFY2poRkQ7SUFDRTtFZG1oRkQ7QUFDRjtBYy9nRkE7Ozs7Ozs7Ozs7RUFVSSxXYjdIUztFYThIVDtBZGloRko7O0FjOWdGQTs7Ozs7O0VBTUk7QWRpaEZKOztBYzVnRkE7RUFDRztFQUNBO0FkK2dGSDs7QWM1Z0ZBO0VBQ0M7RUFDRztFQUNBO0VBQ0E7QWQrZ0ZKOztBYzVnRkE7RUFDSTtFQUNBO0FkK2dGSjs7QWMzZ0ZBOzsrRUFBQTtBQUlBOztFQUVDO0FkNmdGRDs7QWMxZ0ZBOzs7O0VBSUM7RUFDQTtFQUNBO0VBQ0E7QWQ2Z0ZEOztBYzFnRkE7RUFDQztBZDZnRkQ7O0FjMWdGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0g7RUFDRztBZDZnRko7O0FjMWdGQTtFQUNJO0FkNmdGSjs7QWMxZ0ZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0c7RUFDQTtFQUNBO0FkNmdGSjs7QWMxZ0ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQ2Z0ZKOztBYzFnRkE7OztFQUdDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDZnRkQ7O0FjMWdGQTs7Ozs7RUFLQztBZDZnRkQ7O0FjMWdGQTtFQUNDO0FkNmdGRDs7QWN6Z0ZBO0VBQ0M7QWQ0Z0ZEOztBY3pnRkE7O0VBRUM7QWQ0Z0ZEOztBY3pnRkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNGdGRDs7QWN6Z0ZBOztFQUVDO0FkNGdGRDs7QWN6Z0ZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDRnRkQ7O0FjemdGQTs7RUFFQztBZDRnRkQ7O0FjemdGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWQ0Z0ZEOztBY3pnRkE7O0VBRUM7QWQ0Z0ZEOztBY3pnRkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7QWQ0Z0ZKOztBY3pnRkE7RUFDQztBZDRnRkQ7O0FjemdGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWQ0Z0ZEOztBY3pnRkE7O0VBRUM7QWQ0Z0ZEOztBY3pnRkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7QWQ0Z0ZKOztBY3pnRkE7O0VBRUM7QWQ0Z0ZEOztBY3pnRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0FkNGdGSjs7QWN6Z0ZBO0VBQ0k7QWQ0Z0ZKOztBY3pnRkE7RUFDSTtBZDRnRko7O0FjemdGQTtFQUNJO0VBQ0E7QWQ0Z0ZKOztBY3pnRkE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDRnRko7O0FjemdGQTs7RUFFSTtBZDRnRko7O0FjemdGQTs7O0VBR0k7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RUFDQztFQUNBO0VBQ0EseUJmeEhVO0VleUhQO0VBQ0E7QWhCNG9HSjs7QWdCeG9HQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDQTtFQUNILFdmN0lZO0VlOElUO0VBQ0gsc0JmeklZO0VlMElUO0VBQ0g7RUFDRztFQUNIO0VBQ0c7RUFDSDtFQUNBO0FoQjJvR0Q7O0FnQnRvR0E7RUFDQyxXZjNKa0I7RWU0SmY7RUFDSCx5QmZ2SlM7RWV3Sk47QWhCeW9HSjs7QWdCdG9HQTs7K0VBQUE7QUFJQTtFQUNDO0VBQ0E7RUFDRztBaEJ3b0dKOztBZ0Jyb0dBO0VBQ0M7RUFDQTtBaEJ3b0dEOztBZ0Jyb0dBOztFQUVJO0VBQ0E7RUFDQTtBaEJ3b0dKOztBZ0Jyb0dBOzs7O0VBSUk7RUFDQTtBaEJ3b0dKOztBZ0Jyb0dBOzs7O0VBSUk7RUFDQTtFQUNBO0FoQndvR0o7O0FnQnJvR0E7Ozs7RUFJSTtFQUNIO0VBQ0c7RUFDQTtFQUNBO0VBQ0g7RUFDRztFQUNBO0VBQ0g7QWhCd29HRDs7QWdCcm9HQTs7OztFQUlJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCZi9OUztFZWdPVDtFQUNBO0FoQndvR0o7O0FnQnJvR0E7O0VBRUk7QWhCd29HSjs7QWdCcm9HQTs7RUFFSSxxQmZyTmdCO0Vlc05oQjtFQUNBLHNCZjdPUztFZThPVDtBaEJ3b0dKOztBZ0Jyb0dBOztFQUVJLHNCZm5QUztFZW9QVDtBaEJ3b0dKOztBZ0Jyb0dBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0g7RUFDQTtFQUNHO0VBQ0g7RUFDQTtBaEJ3b0dEOztBZ0Jyb0dBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtFQUNBLHlCZi9RaUI7RWVnUmQ7QWhCd29HSjs7QWdCcm9HQTtFQUNJO0FoQndvR0o7O0FnQnJvR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQndvR0o7O0FnQnJvR0E7O0VBRUk7QWhCd29HSjs7QWdCcm9HQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCd29HSjs7QWdCcm9HQTs7OztFQUlDLFdmNVJlO0VlNlJaO0VBQ0gsa0JmOVJlO0VlK1JaO0FoQndvR0o7O0FnQnJvR0E7OytFQUFBO0FBSUE7RUFDSTtFQUNIO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDQTtFQUNBO0VBQ0g7RUFDQSxzQmZ2VVk7RWV3VVQ7RUFDSCxXZi9VWTtFZWdWVDtFQUNIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCdW9HRDs7QWdCbm9HQTtFQUNJO0lBQ0s7RWhCc29HUDtBQUNGO0FnQm5vR0E7RUFDSSxxQmZwVWdCO0VlcVVoQjtFQUNIO0FoQnFvR0Q7O0FnQmxvR0E7RUFDQztFQUNBO0FoQnFvR0Q7O0FnQmxvR0E7RUFDQztBaEJxb0dEOztBZ0Jsb0dBO0VBQ0MsV2ZsVmU7RWVtVlo7QWhCcW9HSjs7QWdCbG9HQTs7RUFFQyxXZnhWZTtFZXlWWjtFQUNILGtCZjFWZTtFZTJWWjtBaEJxb0dKOztBZ0Jsb0dBOzsrRUFBQTtBQUlBOzs7OztFQUtDO0VBQ0EseUJmcldjO0Vlc1dYO0VBQ0g7RUFDRztFQUNILFdmeFlrQjtFZXlZZjtFQUNIO0VBQ0c7RUFDSDtFQUNHO0VBQ0g7QWhCb29HRDs7QWdCam9HQTs7O0VBR0M7QWhCb29HRDs7QWdCam9HQTtBQUNBOztFQUVDLGNmN1hZO0VlOFhUO0FoQm9vR0o7O0FnQmpvR0E7RUFDQztFQUNBO0FoQm9vR0Q7O0FnQmpvR0E7RUFDQyxxQmZ2WVk7RWV3WVQ7QWhCb29HSjs7QWdCam9HQTs7OztFQUlDLHlCZi9ZWTtFZWdaVDtBaEJvb0dKOztBZ0Jqb0dBO0FBQ0E7Ozs7O0VBS0MseUJmeFpTO0VleVpOO0FoQm9vR0o7O0FnQi9uR0E7OytFQUFBO0FBSUE7RUFDSTtBaEJpb0dKOztBZ0I5bkdBO0VBQ0k7SUFDSTtFaEJpb0dOO0VnQjluR0U7SUFDSTtFaEJnb0dOO0FBQ0Y7QWdCN25HQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCZmhkYztFZWlkZDtFQUNBO0VBQ0E7RUFDQTtBaEIrbkdKOztBZ0I1bkdBO0VBQ0k7RUFDQTtFQUNBO0FoQituR0o7O0FpQmxuSEE7OytFQUFBO0FBSUE7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FqQm1uSEo7O0FpQjdtSEE7RUFDSTtJQUNJO0lBRUE7SUFDQTtJQUNBO0lBQ0E7RWpCK21ITjtFaUJ6bUhFO0lBQ0k7RWpCMm1ITjtBQUNGO0FpQnZtSEE7OytFQUFBO0FBSUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7QWpCd21ISjs7QWlCcm1IQTtFQUNDO0FqQndtSEQ7O0FpQnJtSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQndtSEQ7O0FpQnJtSEE7RUFDQyxjaEJwQ2lCO0VnQnFDZDtBakJ3bUhKOztBaUJybUhBO0VBQ0M7RUFDQTtBakJ3bUhEOztBaUJybUhBOzsrRUFBQTtBQUlBOzs7O0VBSUk7RUFDQTtFQUNBO0VBQ0g7RUFDRztBakJ1bUhKOztBaUJwbUhBOztFQUVJO0VBQ0g7RUFDQTtFQUNBO0VBQ0E7QWpCdW1IRDs7QWlCcG1IQTs7RUFFRztFQUNGO0VBQ0E7RUFDQTtFQUNBO0FqQnVtSEQ7O0FpQnBtSEE7RUFDSTtBakJ1bUhKOztBaUJubUhBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDQTtFQUNDO0FqQnFtSEY7O0FpQmxtSEE7RUFDQztBakJxbUhEOztBaUJqbUhBO0VBQ0M7RUFDQztBakJvbUhGOztBQWhzSEE7QWtCakNBOzsrRUFBQTtBQUlBO0VBQ0M7QWxCb3VIRDtBa0JqdUhBOzsrRUFBQTtBQUlBO0VBQ0M7RUFDQTtJQUNPO0lBQ0E7SUFDTjtFbEJrdUhBO0VrQi90SEU7SUFDRztFbEJpdUhMO0VrQjd0SEU7SUFDRztFbEIrdEhMO0FBQ0Y7QWtCNXRIQTtFQUNDO0VBQ0E7SUFDTztJQUNBO0lBQ047RWxCOHRIQTtFa0IzdEhFO0lBQ0k7RWxCNnRITjtFa0IxdEhFO0lBQ0k7RWxCNHRITjtBQUNGO0FrQnZ0SEE7RUFDQztJQUNPO0lBQ047RWxCeXRIQTtFa0J0dEhFO0lBQ0k7RWxCd3RITjtFa0JydEhFO0lBQ0k7RWxCdXRITjtBQUNGO0FrQnB0SEE7RUFDSTtJQUNFO0VsQnN0SEo7QUFDRjtBa0JudEhBO0FBQ0E7RUFDQztJQUNDO0VsQnF0SEE7RWtCbHRIRDs7SUFFQztFbEJvdEhBO0VrQmp0SEU7SUFDSTtJQUNBO3dCQUFBO0VsQm90SE47RWtCaHRIRTtJQUNJO0VsQmt0SE47RWtCL3NIRTtJQUNJO0VsQml0SE47RWtCOXNIRTtJQUNJO0VsQmd0SE47RWtCN3NIRTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCK3NIQTtBQUNGO0FrQjNzSEE7RUFDSTs7SUFFSTtJQUNOO0lBQ0E7SUFDQTtJQUNBO0VsQjZzSEE7RWtCMXNIRTtJQUNJO0VsQjRzSE47RWtCenNIRTtJQUNJO0VsQjJzSE47RWtCeHNIRTtJQUNJO0VsQjBzSE47RWtCdnNIRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEJ5c0hOO0VrQnRzSEU7O0lBRUk7SUFDTjtJQUNBO0lBQ0E7SUFDQTtFbEJ3c0hBO0VrQnJzSEU7Ozs7SUFJSTtJQUNOO0lBQ0E7SUFDQTtJQUNBO0VsQnVzSEE7RWtCcHNIRTs7SUFFSTtFbEJzc0hOO0FBQ0Y7QWtCbHNIQTtFQUNJOzs7Ozs7SUFNRjtJQUNNO0lBQ0E7SUFDQTtJQUNBO0VsQm9zSE47RWtCaHNIRDtJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDTTtFbEJrc0hOO0VrQi9ySEQ7O0lBRUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEJpc0hBO0VrQjlySEU7SUFDRjtFbEJnc0hBO0VrQjdySEU7SUFDRjtJQUNNO0VsQitySE47RWtCNXJIRTs7SUFFSTtJQUNBO0VsQjhySE47RWtCM3JIRTtJQUNGO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDTTtFbEI2ckhOO0VrQjFySEU7SUFDSTtJQUNBO0lBQ0E7RWxCNHJITjtBQUNGO0FrQnhySEE7RUFDSTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCMHJIQTtFa0J2ckhFO0lBQ0k7SUFDQTtJQUNBO0lBQ0EsbUJqQnpOSTtJaUIwTko7SUFDQTtFbEJ5ckhOO0FBQ0Y7QWtCcnJIQTtFQUVJOztJQUVJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCc3JIQTtFa0JuckhFO0lBQ0k7SUFDQTtFbEJxckhOO0FBQ0Y7QWtCL3FIQTtFQUNDOzs7Ozs7SUFNQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsQmlySEE7RWtCOXFIRTtJQUNJO0lBQ0E7RWxCZ3JITjtFa0I3cUhFOztJQUVJO0lBQ0E7SUFDQTtFbEIrcUhOO0VrQjVxSEU7O0lBRUk7SUFDQTtFbEI4cUhOO0VrQjNxSEU7SUFDSTtJQUNBO0VsQjZxSE47RWtCMXFIRTtJQUNJO0lBQ0E7RWxCNHFITjtFa0J6cUhFO0lBQ0k7SUFDQTtFbEIycUhOO0VrQnhxSEU7SUFDSTtJQUNBO0VsQjBxSE47RWtCdnFIRTtJQUNJO0VsQnlxSE47RWtCdHFIRTtJQUNJO0VsQndxSE47RWtCcnFIRTtJQUNJO0VsQnVxSE47RWtCcHFIRTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCc3FIQTtFa0JucUhFO0lBQ0k7RWxCcXFITjtFa0JscUhFO0lBQ0k7SUFDQTtFbEJvcUhOO0VrQmpxSEU7SUFDSTtJQUNOO0lBQ0E7SUFDQTtJQUNBO0VsQm1xSEE7RWtCaHFIRTtJQUNJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCa3FIQTtBQUNGO0FrQjlwSEE7RUFDSTtJQUNJO0lBQ047RWxCZ3FIQTtFa0I3cEhFOztJQUVJO0VsQitwSE47QUFDRjtBa0I1cEhBO0VBQ0k7Ozs7SUFJSTtJQUNBO0VsQjhwSE47RWtCM3BIRTs7SUFFSTtFbEI2cEhOO0VrQjFwSEU7SUFDSTtFbEI0cEhOO0FBQ0Y7QWtCenBIQTtFQUNJOztJQUVJO0lBQ047SUFDQTtJQUNBO0lBQ0E7RWxCMnBIQTtFa0J4cEhFO0lBQ0k7RWxCMHBITjtBQUNGO0FrQnZwSEE7RUFDQzs7SUFFQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsQnlwSEE7RWtCdHBIRTtJQUNJO0VsQndwSE47QUFDRjtBa0JwcEhBO0VBQ0M7O0lBRUM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEJzcEhBO0VrQm5wSEU7SUFDSTtFbEJxcEhOO0FBQ0Y7QWtCanBIQTtFQUNDO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEJtcEhBO0FBQ0Y7QW1COWxJQTs7K0VBQUE7QUFHQTtFQUNJO0VBQ0E7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFbkJnbUlOO0VtQjdsSUQ7O0lBRU87RW5CK2xJTjtFbUI1bElFOzs7SUFHRjtFbkI4bElBO0VtQjNsSUU7O0lBRUk7SUFDQTtFbkI2bElOO0VtQjFsSUU7SUFDSTtFbkI0bElOO0VtQnpsSUU7O0lBRUk7RW5CMmxJTjtFbUJ4bElFO0lBQ0k7RW5CMGxJTjtFbUJ2bElFO0lBQ0k7RW5CeWxJTjtFbUJ0bElFOzs7SUFHSTtJQUNBO0VuQndsSU47RW1CcmxJRTs7SUFFSTtJQUNBO0VuQnVsSU47RW1CcGxJRTtFQUVIOztJQUVDO0lBQ0E7SUFDQTtFbkJxbElBO0VtQmxsSUU7SUFDSTtFbkJvbElOO0VtQmpsSUQ7SUFDQztFbkJtbElBO0VtQmhsSUQ7Ozs7O0lBS0M7RW5Ca2xJQTtFbUIva0lEO0VBQ0E7SUFDQztFbkJpbElBO0VtQjlrSUQ7SUFDQztFbkJnbElBO0FBQ0YsQyIsInNvdXJjZXMiOlsid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbW1vbi9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tbW9uL19ub3JtYWxpemUuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tbW9uL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tbW9uL19oZWxwZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwid2VicGFjazovL2h0bWxjc3NzeW5jLy4uL3N0eWxlcy9jb21wb25lbnRzL19jb250ZW50ZWxlbWVudHMuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fYnV0dG9uLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3JhdGlvYm94LnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vaHRtbGNzc3N5bmMvLi4vc3R5bGVzL2NvbXBvbmVudHMvX3Jlc3BvbnNpdmUuc2NzcyIsIndlYnBhY2s6Ly9odG1sY3Nzc3luYy8uLi9zdHlsZXMvY29tcG9uZW50cy9fcHJpbnQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCBcIi4uL2ZvbnRzL2lubGluZUZvbnRzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21tb24vX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImNvbW1vbi9fZm9udHNcIjtcbkBpbXBvcnQgXCJjb21tb24vX25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcImNvbW1vbi9fbWl4aW5zXCI7XG5AaW1wb3J0IFwiY29tbW9uL19oZWxwZXJzXCI7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBzdHlsZXMgZm9yIGV2ZXJ5IHByb2plY3QgKi9cbkBpbXBvcnQgXCJjb21wb25lbnRzL19iYXNlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19oZWFkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb290ZXJcIjtcblxuLyogb3B0aW9uYWwgc3R5bGVzICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fb2ZmY2FudmFzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fdGFibGVzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fY29udGVudGVsZW1lbnRzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnV0dG9uLWxpbmtzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcmF0aW9ib3hcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb3JtXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYWNjb3JkaW9uXCI7XG5cblxuLyogc3R5bGVzIGZvciBldmVyeSBwcm9qZWN0ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcmVzcG9uc2l2ZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3ByaW50XCI7IiwiLyogVmFyaWFibGVzLCBOYW1pbmcgbWF5IHZhcnkgZnJvbSBwcm9qZWN0IHRvIHByb2plY3QgKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvbnRzIChzZWUgJ19mb250cy5zY3NzJyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBsaWNlbnNlKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogQGltcG9ydCBtdXN0IGJlIGF0IHRvcCBvZiBmaWxlLCBvdGhlcndpc2UgQ1NTIHdpbGwgbm90IHdvcmsgKi9cbi8qIEBpbXBvcnQgdXJsKCcvL2hlbGxvLm15Zm9udHMubmV0L2NvdW50LzQyNjU2MycpOyAqL1xuXG4kZm9udC1zdGFjay1kZWZhdWx0OiAnZmlsc29uLXBybycsICdBcmlhbCcsICdIZWx2ZXRpY2EnLCBzYW5zLXNlcmlmO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmFsbGJhY2tzIHNhc3MgVmFyaWFibGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiB0ZXh0ICovXG4kdGV4dC1jb2xvcjogIzAwMDsgLyogZGFyayBncmV5ICovXG4kdGV4dC1jb2xvci1saWdodDogI2ZmZjtcbiR0ZXh0LWNvbG9yLWxpbms6ICMwMDA7IC8qIGRhcmsgZ3JleSAqL1xuJHRleHQtY29sb3ItbGluay11bmRlcmxpbmU6ICMwMDZBRkY7XG5cbi8qIGJhY2tncm91bmQgKi9cbiRiZy1jb250ZW50OiAjZmZmO1xuJGJnLWRhcms6ICMwMDZBRkY7IC8qIGRhcmsgZ3JleSAqL1xuJGJnLWxpZ2h0OiAjZWJlYmViOyAvKiBsaWdodCBncmV5ICovXG4kY29sb3ItaGlnaGxpZ2h0OiAjMDBEOEY0OyAvKiBibHVlICovXG5cbi8qIGxpbmUtY29sb3JzICovXG4kYm9yZGVyLWJhc2ljOiAjQkNCQ0I1O1xuXG4vKiBzcGFjaW5nICovXG4kc3BhY2luZy1sOiAzLjVyZW07XG4kc3BhY2luZy1tOiAycmVtO1xuJHNwYWNpbmctczogMS41cmVtO1xuJHNwYWNpbmcteHM6IDAuNzVyZW07XG5cbi8qIGdyaWQgKi9cbiRncmlkLWNvbnRhaW5lcjogMjBweDtcbiRncmlkLXJvdzogLTEwcHg7XG4kZ3JpZC1jb2w6IDEwcHg7XG5cblxuLyogZm9ybSAqL1xuJGJvcmRlci1mb3JtOiAjQkNCQ0I1O1xuJGJvcmRlci1mb3JtLWZvY3VzOiAjMDA2QUZGO1xuJGZvcm0tZGlzYWJsZWQ6ICNjY2M7XG4kZm9ybS1lcnJvcjogI2VkMDA0MztcbiRmb3JtLW9rOiAjMDA4YTY1O1xuJGZvcm0taW5pdGlhbDogIzAwNkFGRjtcblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDdXN0b20gUHJvcGVydGllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG46cm9vdCB7XG4gICAgLyogZm9udHMgKi9cbiAgICAtLWZvbnQtc3RhY2stZGVmYXVsdDogJ2ZpbHNvbi1wcm8nLCAnQXJpYWwnLCAnSGVsdmV0aWNhJywgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAgIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAgIC0tZm9udC13ZWlnaHQtYm9sZGVyOiA5MDA7XG4gICAgXG4gICAgLyogdGV4dCAgKi9cbiAgICAtLXRleHQtY29sb3I6ICMwMDA7IC8qIGJsYWNrICovXG4gICAgLS10ZXh0LWNvbG9yLWxpZ2h0OiAjZmZmO1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjMDAwO1xuICAgIC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZTogIzAwNkFGRjtcbiAgICAtLXRleHQtY29sb3ItcXVvdGU6ICMwMDZBRkY7XG4gICAgLS10ZXh0LWNvbG9yLWRpc2FibGVkOiAjN2I3YjdiO1xuICAgIFxuICAgIC8qIGZvbnQtc2l6ZXMgKi9cbiAgICAtLWZvbnQtc2l6ZS1yb290OiAyMHB4O1xuICAgIC0tZm9udC1zaXplLWgxOiAyLjVyZW07IC8qIDUwcHggKi9cbiAgICAtLWZvbnQtc2l6ZS1oMjogMnJlbTsgLyogNDBweCAqL1xuICAgIC0tZm9udC1zaXplLWgzOiAxLjE2cmVtO1xuICAgIC0tZm9udC1zaXplLWxlYWQ6IDFyZW07XG4gICAgLS1mb250LXNpemUtcXVvdGU6IDJyZW07XG4gICAgLS1mb250LXNpemUtYm9keTogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5LXM6IDAuODVyZW07XG4gICAgLS1mb250LXNpemUtbGluazogMXJlbTtcbiAgICBcbiAgICAvKiBjb2xvcnMgLyBiYWNrZ3JvdW5kICovXG4gICAgLS1iZy1jb250ZW50OiAjZmZmO1xuICAgIC0tYmctZGFyazogIzAwNkFGRjsgLyogbWVkaXVtIGJsdWUgKi9cbiAgICAtLWJnLWxpZ2h0OiAjZWJlYmViOyAvKiBsaWdodCBncmV5ICovXG4gICAgLS1jb2xvci1oaWdobGlnaHQ6ICMwMEQ4RjQ7IC8qIGJsdWUgKi9cbiAgICAtLWNvbG9yLXN3aXNzc2tpOiAjRTIwMDFBO1xuICAgIC0tYmctZGlzYWJsZWQ6ICNmOGY4Zjg7XG4gICAgXG4gICAgLyogbGluZXMgKi9cbiAgICAtLWJvcmRlci1iYXNpYzogI0JDQkNCNTtcbiAgICAtLWJvcmRlci1vdXRzaWRlOiAxNnB4O1xuICAgIC0tYm9yZGVyLXdpZHRoLWw6IDhweDtcbiAgICAtLWJvcmRlci13aWR0aC1zOiAycHg7XG4gICAgXG4gICAgLyogc3BhY2luZyBiZXR3ZWVuIGNvbXBvbmVudHMgYmFzZWQgb24gcmVtICovXG4gICAgLS1zcGFjaW5nLXhsOiAxMXJlbTtcbiAgICAtLXNwYWNpbmctbDogMy41cmVtO1xuICAgIC0tc3BhY2luZy1tOiAycmVtOyBcbiAgICAtLXNwYWNpbmctczogMS41cmVtO1xuICAgIC0tc3BhY2luZy14czogMC43NXJlbTsgIFxuICAgIC0tcGFkZGluZy1ib3g6IDI0cHg7XG4gICAgXG4gICAgLyogaGVhZGVyICovXG4gICAgLS1oZWFkZXItaGVpZ2h0OiAxMDBweDtcbiAgICBcbiAgICAgXG4gICAgLyogZ3JpZCAqL1xuICAgIC0tZ3JpZC1jb250YWluZXI6IDI4cHg7XG4gICAgLS1ncmlkLXJvdzogLTE0cHg7XG4gICAgLS1ncmlkLWNvbDogMTRweDtcbiAgICAtLWdyaWQtZ2FwOiAxNnB4O1xuICAgIFxuICAgIC8qIGZvcm0gKi9cbiAgICAtLWJvcmRlci1mb3JtOiAjQkNCQ0I1OyBcbiAgICAtLWJvcmRlci1mb3JtLWZvY3VzOiAjMDA2QUZGO1xuICAgIC0tZm9ybS1kaXNhYmxlZDogI2NjYztcbiAgICAtLWZvcm0tZXJyb3I6ICNlZDAwNDM7XG4gICAgLS1mb3JtLW9rOiAjMDA4YTY1O1xuICAgIC0tZm9ybS1pbml0aWFsOiAjMDA2QUZGO1xuICAgIC0tZm9ybS1ib3JkZXItd2lkdGg6IDJweDtcbiAgICAtLWZvcm0tY2hlY2tib3gtcGFkZGluZy10b3AtdGV4dDogMC4zNWVtO1xuICAgIC0tdGlja2V0LXBhZGRpbmctaW5wdXQ6IDAuNzNlbSAxMHB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRXhlcHRpb25zIGZvciBkaWZmZXJlbnQgYmFja2dyb3VuZHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtbGlnaHQge1xuICAgIC0tdGV4dC1jb2xvcjogI2ZmZjtcbiAgICAtLXRleHQtY29sb3ItbGluazogI2ZmZjtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1idG4sXG4uYy10ZXh0LWxpZ2h0IC5jLWJ0bi10aWNrZXQge1xuICAgIC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZTogI2ZmZjtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1ldmVudHMtYm94IHtcbiAgICAtLWJvcmRlci1iYXNpYzogIzAwRDhGNDtcbn1cblxuLmMtaGVhZGVyIHtcbiAgICAtLXRleHQtY29sb3ItbGluazogIzAwNkFGRjtcbn1cblxuLmMtbGluay1pY29uIHtcbiAgICAtLXRleHQtY29sb3ItbGluazogIzAwNkFGRjtcbn1cblxuLmMtdGV4dC1saWdodCAuYy1saW5rLWljb24ge1xuICAgIC0tdGV4dC1jb2xvci1saW5rOiAjZmZmO1xufVxuXG4uYy1idG4tc21hbGwge1xuICAgIC0tYm9yZGVyLXdpZHRoLWw6IDRweDtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCB7XG4gICAgLS1jb2xvci1oaWdobGlnaHQ6ICMwMDZBRkY7IFxufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC5jLWRhdGUge1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiAjMDBEOEY0OyBcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy10aWNrZXQtYm94LWRpc2FibGVkIC5jLWRhdGUge1xuICAgIC0tY29sb3ItaGlnaGxpZ2h0OiB2YXIoLS10ZXh0LWNvbG9yLWRpc2FibGVkKTtcbn1cblxuLmMtdGlja2V0LWJveCB7XG4gICAgLS1ib3JkZXItd2lkdGgtbDogNHB4O1xufVxuXG4uYy10aWNrZXQtYm94IHtcbiAgICAtLWJvcmRlci1iYXNpYzogIzY5OWNmODtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy10ZXh0LWxpZ2h0IC5jLXRpY2tldC1ib3gtY2FydC1xdWFudGl0eSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCAuYy10ZXh0LWxpZ2h0IC5jLXRpY2tldC1ib3gtY2FydC1xdWFudGl0eSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLXRleHQtbGlnaHQgLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLXRleHQtbGlnaHQgLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Qge1xuICAgIC0tdGV4dC1jb2xvcjogIzAwMDsgICAgXG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGV4dC1saWdodCAuYy10aWNrZXQtYm94LWNhcnQtcXVhbnRpdHkgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGV4dC1saWdodCAuYy10aWNrZXQtYm94LWNhcnQtcXVhbnRpdHkgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIC5jLXRleHQtbGlnaHQgLmMtdGlja2V0LWJveC1za2lwYXNzIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgc3Bhbjo6YmVmb3JlLCBcbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGV4dC1saWdodCAuYy10aWNrZXQtYm94LXNraXBhc3MgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOjpiZWZvcmUsXG4uYy10ZXh0LWxpZ2h0IC5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYy10ZXh0LWxpZ2h0IC5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0e1xuICAgIC0tYm9yZGVyLWZvcm06ICNmZmY7XG4gICAgLS1ib3JkZXItZm9ybS1mb2N1czogIzAwRDhGNDtcbn1cblxuLmMtZm9ybS1sYWJlbC10ZXh0LFxuLmMtdGlja2V0LXByaWNlIHNwYW4ge1xuICAgIC0tZm9udC1zaXplLWJvZHktczogMC43NXJlbTtcbn1cblxuLmMtZm9ybS1sYWJlbC10ZXh0LXNtYWxse1xuICAgIC0tZm9ybS1jaGVja2JveC1wYWRkaW5nLXRvcC10ZXh0OiAwLjU1ZW07XG59XG5cbi5jLWNvb2tpZS1ub3RpY2UsXG4uYy1ldmVudHMtYm94LW1lbWJlciB7XG4gICAgLS10ZXh0LWNvbG9yLWxpbmstdW5kZXJsaW5lOiAjMDBEOEY0O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmVzcG9uc2l2ZSBDdXN0b20gUHJvcGVydGllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1ncmlkLWNvbnRhaW5lcjogNDhweDtcbiAgICAgICAgLS1ncmlkLXJvdzogLTI0cHg7XG4gICAgICAgIC0tZ3JpZC1jb2w6IDI0cHg7XG4gICAgICAgIC0tcGFkZGluZy1ib3g6IDMycHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWZvcm0tbXVsdGluZSB7XG4gICAgICAgIC0tZ3JpZC1jb250YWluZXI6IDI4cHg7XG4gICAgICAgIC0tZ3JpZC1yb3c6IC0xNHB4O1xuICAgICAgICAtLWdyaWQtY29sOiAxNHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1ncmlkLWNvbnRhaW5lcjogNjRweDtcbiAgICAgICAgLS1ncmlkLXJvdzogLTMycHg7XG4gICAgICAgIC0tZ3JpZC1jb2w6IDMycHg7XG4gICAgICAgIC0tYm9yZGVyLW91dHNpZGU6IDIwcHg7XG4gICAgICAgIC0tZ3JpZC1nYXA6IDIwcHg7XG4gICAgICAgIC0tcGFkZGluZy1ib3g6IDQ4cHg7XG4gICAgICAgIC0tdGlja2V0LXBhZGRpbmctaW5wdXQ6IDAuNDhlbSAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLW11bHRpbmUge1xuICAgICAgICAtLWdyaWQtY29udGFpbmVyOiAyOHB4O1xuICAgICAgICAtLWdyaWQtcm93OiAtMTRweDtcbiAgICAgICAgLS1ncmlkLWNvbDogMTRweDtcbiAgICB9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjExMDBweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1oZWFkZXItaGVpZ2h0OiA1MHB4OyBcbiAgICAgICAgLS1ib3JkZXItb3V0c2lkZTogOHB4O1xuICAgICAgICAtLWdyaWQtZ2FwOiA4cHg7XG4gICAgICAgIC0tc3BhY2luZy14bDogN3JlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkge1xuICAgIDpyb290IHtcbiAgICAgICAgLS1ib3JkZXItd2lkdGgtbDogNnB4O1xuICAgICAgICAtLXRpY2tldC1wYWRkaW5nLWlucHV0OiAwLjhlbSAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb3JtLWxhYmVsLXRleHQtc21hbGx7XG4gICAgICAgIC0tZm9ybS1jaGVja2JveC1wYWRkaW5nLXRvcC10ZXh0OiAwLjc1ZW07XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByb2plY3QgRm9udHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuICAgLyoqXG4gICAgKiBAbGljZW5zZVxuICAgICogTXlGb250cyBXZWJmb250IEJ1aWxkIElEIDQzNTEzMzEsIDIwMjItMDItMDdUMDI6MjQ6MjgtMDUwMFxuICAgICpcbiAgICAqIFRoZSBmb250cyBsaXN0ZWQgaW4gdGhpcyBub3RpY2UgYXJlIHN1YmplY3QgdG8gdGhlIEVuZCBVc2VyIExpY2Vuc2VcbiAgICAqIEFncmVlbWVudChzKSBlbnRlcmVkIGludG8gYnkgdGhlIHdlYnNpdGUgb3duZXIuIEFsbCBvdGhlciBwYXJ0aWVzIGFyZVxuICAgICogZXhwbGljaXRseSByZXN0cmljdGVkIGZyb20gdXNpbmcgdGhlIExpY2Vuc2VkIFdlYmZvbnRzKHMpLlxuICAgICpcbiAgICAqIFlvdSBtYXkgb2J0YWluIGEgdmFsaWQgbGljZW5zZSBhdCB0aGUgVVJMcyBiZWxvdy5cbiAgICAqXG4gICAgKiBXZWJmb250OiBUaGVTYW5zLUxpZ2h0IGJ5IEx1Y2FzRm9udHNcbiAgICAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvbHVjYXNmb250cy90aGVzYW5zL2xpZ2h0L1xuICAgICpcbiAgICAqIFdlYmZvbnQ6IFRoZVNhbnMtQm9sZCBieSBMdWNhc0ZvbnRzXG4gICAgKiBVUkw6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL2ZvbnRzL2x1Y2FzZm9udHMvdGhlc2Fucy9ib2xkL1xuICAgICpcbiAgICAqXG4gICAgKiBXZWJmb250cyBjb3B5cmlnaHQ6IENvcHlyaWdodCAxOTk0LTIwMjEgTHVjKGFzKSBkZSBHcm9vdCwgcHVibGlzaGVkIGJ5IEx1Y2FzRm9udHMsIHd3dy5sdWNhc2ZvbnRzLmNvbSAgQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAgICAqXG4gICAgKiDCqSAyMDIyIE15Rm9udHMgSW5jXG4gICAqL1xuXG4gICAvL0Bmb250LWZhY2Uge1xuXHQvL1x0Zm9udC1mYW1pbHk6ICdUaGVTYW5zJztcblx0Ly9cdGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG5cdC8vXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdC8vXHRmb250LXdlaWdodDogMzAwO1xuXHQvL1x0Zm9udC1zdHJldGNoOiBub3JtYWw7XG5cdC8vXHRzcmM6IFx0dXJsKCR3ZWJmb250LWxhbnotYXJjaGl0ZWt0ZW5fbGlnaHRfd29mZjIpIGZvcm1hdCgnd29mZjInKSxcblx0Ly9cdFx0XHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9saWdodF93b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbiAgIC8vfVxuICAgLy9cbiAgIC8vQGZvbnQtZmFjZSB7XG5cdC8vXHRmb250LWZhbWlseTogJ1RoZVNhbnMnO1xuXHQvL1x0Zm9udC1kaXNwbGF5OiBmYWxsYmFjaztcblx0Ly9cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Ly9cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdC8vXHRmb250LXN0cmV0Y2g6IG5vcm1hbDtcblx0Ly9cdHNyYzogXHR1cmwoJHdlYmZvbnQtbGFuei1hcmNoaXRla3Rlbl9ib2xkX3dvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG5cdC8vXHRcdFx0dXJsKCR3ZWJmb250LWxhbnotYXJjaGl0ZWt0ZW5fYm9sZF93b2ZmKSBmb3JtYXQoJ3dvZmYnKTtcbiAgIC8vfVxuXG5cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbn1cblxuLypcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFNi83IHdoZW4gYm9keSBmb250LXNpemUgaXMgc2V0IHVzaW5nIGVtIHVuaXRzXG4gKiAgICBodHRwOi8vY2xhZ251dC5jb20vYmxvZy8zNDgvI2M3OTBcbiAqIDIuIEtlZXBzIHBhZ2UgY2VudHJlZCBpbiBhbGwgYnJvd3NlcnMgcmVnYXJkbGVzcyBvZiBjb250ZW50IGhlaWdodFxuICogMy4gUHJldmVudHMgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb21cbiAqICAgIHd3dy40NTZiZXJlYXN0cmVldC5jb20vYXJjaGl2ZS8yMDEwMTIvY29udHJvbGxpbmdfdGV4dF9zaXplX2luX3NhZmFyaV9mb3JfaW9zX3dpdGhvdXRfZGlzYWJsaW5nX3VzZXJfem9vbS9cbiAqIDQuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5odG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogNCAqL1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgLyogMiAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG5cblxuICovXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgLyogY3ViZWdyYWZpayAqL1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAqL1xuXG5hIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdXRsaW5lYCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gQ2hyb21lIGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5hOmZvY3VzIHtcbiAgICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVHlwb2dyYXBoeVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qXG4qIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBzZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLypcbiAqIEltcHJvdmVzIHJlYWRhYmlsaXR5IG9mIHByZS1mb3JtYXR0ZWQgdGV4dCBpbiBhbGwgYnJvd3NlcnNcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIFNldCBjb25zaXN0ZW50IHF1b3RlIHR5cGVzLlxuICovXG5cbnEge1xuICAgIHF1b3RlczogXCJcXDIwMUNcIiBcIlxcMjAxRFwiIFwiXFwyMDE4XCIgXCJcXDIwMTlcIjtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG5cbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cblxuICovXG5cbnN1YixcbnN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZW1vdmVzIGJvcmRlciB3aGVuIGluc2lkZSAnYScgZWxlbWVudCBpbiBJRTYvNy84LzksIEZGM1xuICogMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRTdcbiAqICAgIGNvZGUuZmxpY2tyLmNvbS9ibG9nLzIwMDgvMTEvMTIvb24tdWktcXVhbGl0eS10aGUtbGl0dGxlLXRoaW5ncy1jbGllbnQtc2lkZS1pbWFnZS1yZXNpemluZy9cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cbn1cblxuLypcbiAqIENvcnJlY3RzIG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRTlcbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmlndXJlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpIDUuXG4gKi9cblxuZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ29ycmVjdHMgbWFyZ2luIGRpc3BsYXllZCBvZGRseSBpbiBJRTYvN1xuICovXG5cbmZvcm0ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLypcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZ1xuICovXG5cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6MDsgLyogY3ViZWdyYWZpayAqL1xuICAgIG1hcmdpbjowOyAvKiBjdWJlZ3JhZmlrICovXG4gICAgcGFkZGluZzowOyAvKiBjdWJlZ3JhZmlrICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICBib3JkZXI6IDA7XG59XG5cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuXG4gKiA0LiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnNcbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDQgKi9cbn1cblxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdHMgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmVzIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4gKiBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFNi5cbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xuICAgICpvdmVyZmxvdzogdmlzaWJsZTsgLyogNCAqL1xufVxuXG4vKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50c1xuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcblxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5cbi8qKlxuXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvKiAyICovXG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHNcbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFbGVtZW50cyBjdWJlZ3JhZmlrXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5hOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuXG5kaXYsIHAge1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46MDtcbn1cblxuaHIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgICBtYXJnaW46IDFlbSAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbnRoLCB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG59XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICAgIC8qIFJlbW92ZWQgYmVjYXVzZSBvZiB2aXNpYmlsaXR5Y2hhbmdlLWFkZGl0aW9uIHRvIGZhbmN5LWZvcm1zIHBsdWdpbi5cbiAgICAgKiAyMDE1LzAxLzIyIC0gRmxvcmlhbiBNw6RkZXJcbiAgICAgKiAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7Ki9cbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmh0bWwge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogU2FmYXJpIDMuMCAtIDUuMCwgQ2hyb21lIDEgLSA5LCBBbmRyb2lkIDIuMSAtIDMueCAqL1xuICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogRmlyZWZveCAxIC0gMjggKi9cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaSA1LjErLCBDaHJvbWUgMTArLCBGaXJlZm94IDI5KywgT3BlcmEgNyssIElFIDgrLCBBbmRyb2lkIDQuMCssIGlPUyBhbnkgKi9cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgICAgLW1vei1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxubGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiBJRSAxMCAgKi9cbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC8qIElFIDExKyAqL1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3JtIFBsYWNlaG9sZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgICAge0Bjb250ZW50fVxuICAgICY6LW1vei1wbGFjZWhvbGRlciAgICAgIHtAY29udGVudH1cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyICAgICB7QGNvbnRlbnR9XG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgICAgIHtAY29udGVudH0gIFxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9udHMgc21vb3RoaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcoJHZhbHVlOiBvbikge1xuICAgIEBpZiAkdmFsdWUgPT0gb24ge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEhpZGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtaGlkZS12aXN1YWxseSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5jLWhpZGUtY29tcGxldGVseSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogaW1hZ2UgcmVwbGFjZW1lbnQgKi9cbi5jLWlyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJvcmRlcjogMDtcblx0dGV4dC1pbmRlbnQ6IC05OTllbTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGRpcmVjdGlvbjogbHRyO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdGlja3kgRm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5odG1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jLWhlYWRlcixcbi5jLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5jLWNvbnRlbnQge1xuICAgIGZsZXgtZ3JvdzogMTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZSBQcm9qZWN0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ib2R5IHtcblx0QGluY2x1ZGUgZm9udC1zbW9vdGhpbmcob24pO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0Zm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3RhY2stZGVmYXVsdCk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIGxpbmtzICovXG5hLFxuYTp2aXNpdGVkLFxuYTpmb2N1cyxcbmE6aG92ZXIge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGluaztcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxudGV4dGFyZWEge1xuXHRyZXNpemU6IG5vbmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIGltZyAvIG1lZGlhIGRlY2xhcmF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5lbWJlZCxcbm9iamVjdCxcbnZpZGVvLFxuaWZyYW1lLFxuaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWltZy1tYXgtd2lkdGgsXG4uYy1jb250ZW50IC5jLWltZy1tYXgtd2lkdGgge1xuXHR3aWR0aDogYXV0bztcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcgeyBcblx0dmVydGljYWwtYWxpZ246IGJvdHRvbTsgXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3RhbmRhcmQgTWFpbiBDb250YWluZXIgRGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWhlYWRlcixcbi5jLWNvbnRlbnQsXG4uYy1mb290ZXIsXG4uYy1jb250YWluZXIsXG4uYy1jb250YWluZXItbWVkaXVtLCBcbi5jLWNvbnRhaW5lci13aWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogYXV0bztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIFBhZGRpbmcgYmV0d2VlbiBDb21wb25lbnRzIFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5cbi5jLWNvbnRhaW5lcixcbi5jLWNvbnRhaW5lci1tZWRpdW0sXG4uYy10ZWFtIC5jLWNvbC00LFxuLmMtYWNjb3JkaW9uLFxuLmMtdGlja2V0cyAuYy10ZXh0LW9ubHksXG4uYy10ZWFzZXItaW1nLWdhbGxlcnkgLmMtY29sLTQge1xuXHRwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbn1cblxuLmMtc2hvd3Jvb20sXG4uYy10ZWFzZXItZXZlbnRzLFxuLmMtdGVhc2VyLWNsdWIsXG4uYy10ZWFzZXItZXRoaWNzLFxuLmMtbWVtYmVycy1zZWFyY2gge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLXNob3dyb29tLXRleHQtaW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiAzLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbn1cblxuLmMtbWFpbi10aXRsZSB7XG5cdG1hcmdpbi10b3A6IDZlbTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXhsKTtcbn1cblxuLmMtY29udGFpbmVyLW5vLXBhZGRpbmcge1xuXHRwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmMtc2VjdGlvbi10aXRsZSB7XG5cdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy14cztcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy14cyk7XG59XG5cbi5jLXRlYXNlci1ldmVudHMsXG4uYy10ZWFzZXItY2x1Yixcbi5jLXRlYXNlci1ldGhpY3MsXG4uYy1tZW1iZXJzLXNlYXJjaCB7XG4gICAgcGFkZGluZy10b3A6IDMuNWVtO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1ldmVudHMgLmMtY29sLTQsXG4uYy10aWNrZXRzIC5jLWNvbC00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xufVxuXG4uYy10ZWFzZXItY2x1YiAuYy1jb2wtNCxcbi5jLXRlYXNlci1jbHViLWxpc3QgbGksXG4uYy10ZWFzZXItZXRoaWNzLWxpc3QgbGkge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xufVxuXG4uYy1ldmVudHMge1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXNwYWNpbmctbCkgLSB2YXIoLS1ncmlkLWNvbnRhaW5lcikpO1xufVxuXG5cbi5jLXRlYXNlci1ldmVudHMgKyAuYy10ZWFzZXItY2x1Yixcbi5jLXRlYXNlci1jbHViICsgLmMtdGVhc2VyLWV0aGljcyxcbi5jLXRlYXNlci1ldGhpY3MgKyAuYy10ZWFzZXItY2x1YiB7XG4gICAgbWFyZ2luLXRvcDogLTMuNWVtO1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sKSAqIC0xKTtcbn1cblxuLmMtY29udGVudCAuYy10ZWFzZXItY2x1YjpsYXN0LWNoaWxkLFxuLmMtY29udGVudCAuYy10ZWFzZXItZXRoaWNzOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jLXBhZ2luZyB7XG4gICAgbWFyZ2luLXRvcDogLTEuNWVtO1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1zKSAqIC0xKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFN0YW5kYXJkIEdyaWQgRGVjbGFyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtY29udGFpbmVyO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbn1cblxuLmMtcm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRncmlkLXJvdztcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtcm93O1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uYy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uYy1yb3ctanVzdGlmeS1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5jLXJvdy1qdXN0aWZ5LXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYy1yb3ctanVzdGlmeS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4uYy1yb3ctanVzdGlmeS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5jLXJvdy1hbGlnbi10b3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYy1yb3ctYWxpZ24tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYy1yb3ctYWxpZ24tYm90dG9tIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5jLWNvbC0xLFxuLmMtY29sLTIsXG4uYy1jb2wtMyxcbi5jLWNvbC00LFxuLmMtY29sLTUsXG4uYy1jb2wtNixcbi5jLWNvbC03LFxuLmMtY29sLTgsXG4uYy1jb2wtOSxcbi5jLWNvbC0xMCxcbi5jLWNvbC0xMSxcbi5jLWNvbC0xMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1jb2w7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ3JpZC1jb2wpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1jb2wpO1xufVxuXG4uYy1jb2wtMTIge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAgICBcbn1cblxuLmMtY29sLTExIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclO1xufVxuXG4uYy1jb2wtMTAge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7XG59XG5cbi5jLWNvbC05IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDc1JTtcbiAgICAtbXMtZmxleDogMCAwIDc1JTtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xufVxuXG4uYy1jb2wtOCB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTtcbn1cblxuLmMtY29sLTcge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7XG59XG5cbi5jLWNvbC02IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDUwJTtcbiAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xufVxuXG4uYy1jb2wtNSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTtcbn1cblxuLmMtY29sLTQge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7XG59XG5cbi5jLWNvbC0zIHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgIC13ZWJraXQtZmxleDogMCAwIDI1JTtcbiAgICAtbXMtZmxleDogMCAwIDI1JTtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xufVxuXG4uYy1jb2wtMiB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgICAtd2Via2l0LWZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTtcbn1cblxuLmMtY29sLTEge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gICAgLXdlYmtpdC1mbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgLW1zLWZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTtcbn1cblxuLyogb2Zmc2V0IGNvbHMgKi9cbi5jLWNvbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjclO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzJTtcbn1cblxuLmMtY29sLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NyU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5jLWNvbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY3JTtcbn1cblxuLmMtY29sLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmMtY29sLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMlO1xufVxuXG4uYy1jb2wtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NyU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBHcmlkIFZhcmlhbnRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmh0bWwge1xuXHRmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcm9vdCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUaXRsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgdGV4dC13cmFwOmJhbGFuY2U7XG59XG5cbmgxLFxuLmMtaDEge1xuXHRwYWRkaW5nLWJvdHRvbTogLjI1ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdGZvbnQtc2l6ZTogMi4wOHJlbTsgLyogNTBweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgxKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oMixcbi5jLWgyIHtcblx0cGFkZGluZy1ib3R0b206IC4yNWVtO1xuXHRsaW5lLWhlaWdodDogMS4yO1xuXHRmb250LXNpemU6IDEuNjZyZW07IC8qIDQwcHggKi9cbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtbWVtYmVycy1zZWFyY2ggaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcbn1cblxuaDMsXG4uYy1oMyB7XG5cdHBhZGRpbmctYm90dG9tOiAwLjI1ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjMzO1xuXHRmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYy1mb3JtLTJjb2wgaDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc1ZW07XG59XG5cbmg0LFxuLmMtaDQge1xuXHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkZXIpO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhc2ljIFRleHQgQ29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtY29udGVudCxcbi5jLWZvb3RlciB7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jLXRleHQtYmxvY2sgcCxcbi5jLWZvb3RlciBwIHtcblx0cGFkZGluZy1ib3R0b206IDEuNWVtO1xufVxuXG5cblxuLmMtdGV4dC1ibG9jayBwOmxhc3QtY2hpbGQsXG4uYy10ZXh0LWJsb2NrIHVsOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIHAgKyBoMixcbi5jLXRleHQtYmxvY2sgcCArIGgzLFxuLmMtdGV4dC1ibG9jayBwICsgaDQsXG4uYy10ZXh0LWJsb2NrIHVsICsgcCxcbi5jLXRleHQtYmxvY2sgdWwgKyBoMixcbi5jLXRleHQtYmxvY2sgdWwgKyBoMyxcbi5jLXRleHQtYmxvY2sgdWwgKyBoNCxcbi5jLXRleHQtYmxvY2sgdWwgKyBvbCxcbi5jLXRleHQtYmxvY2sgb2wgKyBwLFxuLmMtdGV4dC1ibG9jayBvbCArIGgyLFxuLmMtdGV4dC1ibG9jayBvbCArIGgzLFxuLmMtdGV4dC1ibG9jayBvbCArIGg0IHtcblx0cGFkZGluZy10b3A6IDEuNWVtO1xufVxuXG4uYy1sZWFkICsgLmMtYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbn1cblxuLmMtbGVhZCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzM7XG5cdGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZWFkKTtcbiAgICB0ZXh0LXdyYXA6YmFsYW5jZTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5jLXRleHQtc21hbGwsXG4uYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgY2l0ZSxcbi5jLWZvb3Rlcixcbi5jLW1haW4tbmF2LFxuLmMtaGVhZGVyLWxhbmcsXG4uYy10ZWFzZXItY2x1Yi1pdGVtLFxuLmMtdGVhc2VyLWV0aGljcy1pdGVtLFxuLmMtbWVtYmVycy1saXN0IHtcblx0Zm9udC1zaXplOiAwLjc1cmVtOyAvKiAxOHB4ICovXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLmMtY2F0ZWdvcnktdGl0bGUsXG4uYy1kYXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG59XG5cbi5jLWRhdGUge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmMtbGVnZW5kIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctdG9wOiAxZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbn1cblxuLmMtb2ZmY2FudmFzLWxhbmcsIC5jLW9mZmNhbnZhcy1uYXYtbGlzdCB1bCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG59XG5cbi5jLWZvb3Rlci1jYXRlZ29yeS10aXRsZXtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG59XG5cbi5jLXRpY2tldC1wcmljZSxcbi5jLXRleHQtYmxvY2sgLmMtdGlja2V0LXByaWNle1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5jLXRpY2tldC1wcmljZSBzcGFuIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzaWMgTGlzdHMgQ29udGVudCBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtYmxvY2sgdWwsXG4uYy10ZXh0LWJsb2NrIG9sLFxuLmMtbGluay1saXN0LFxuLmMtdGlja2V0cy1saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwIDAgMS41ZW0gMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtdGlja2V0cy1saXN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmMtdGV4dC1ibG9jayB1bCBsaSxcbi5jLXRleHQtYmxvY2sgb2wgbGkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctbGVmdDogMzRweDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1saW5rLWxpc3QgbGksXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaSxcbi5jLXRleHQtYmxvY2sgLmMtdGlja2V0cy1saXN0IGxpe1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmMtdGV4dC1ibG9jayB1bCBsaSArIGxpLFxuLmMtdGV4dC1ibG9jayBvbCBsaSArIGxpLFxuLmMtaWNvbi10aXRsZSArIC5jLWJ0bixcbi5jLXRpY2tldHMtbGlzdCBwICsgLmMtbGluay1pY29uIHtcblx0bWFyZ2luLXRvcDogMC41ZW07XG59XG5cbi5jLXRleHQtYmxvY2sgdWwgbGk6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6J1xcMjAxNCc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMWVtO1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGluay11bmRlcmxpbmUpO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstbGlzdCBsaTo6YmVmb3JlLFxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3QgbGk6OmJlZm9yZSxcbi5jLXRleHQtYmxvY2sgLmMtdGlja2V0cy1saXN0IGxpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG59XG5cblxuLmMtdGV4dC1ibG9jayBvbCB7XG5cdGNvdW50ZXItcmVzZXQ6IGN1c3RvbS1jb3VudGVyO1xufVxuXG4uYy10ZXh0LWJsb2NrIG9sIGxpIHtcblx0Y291bnRlci1pbmNyZW1lbnQ6IGN1c3RvbS1jb3VudGVyO1xufVxuXG4uYy10ZXh0LWJsb2NrIG9sIGxpOjpiZWZvcmUge1xuXHRjb250ZW50OiBjb3VudGVyKGN1c3RvbS1jb3VudGVyKSBcIi4gXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0dG9wOiAwO1xuXHR3aWR0aDogMjZweDtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmMtdGlja2V0cy1saXN0IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDJweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXMpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy10aWNrZXRzLWxpc3QgbGksXG4uYy10aWNrZXRzLWxpc3QgbGl7XG4gICAgcGFkZGluZy10b3A6IDAuNzVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43NWVtO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLXMpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFF1b3RlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWJveCk7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIHZhcigtLWJvcmRlci13aWR0aC1sKSB2YXIoLS10ZXh0LWNvbG9yLXF1b3RlKTtcbn1cblxuLmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIHAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdGZvbnQtc2l6ZTogMS42NnJlbTsgLyogNDBweCAqL1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXF1b3RlKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGRlcik7XG4gICAgdGV4dC13cmFwOmJhbGFuY2U7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItcXVvdGUpO1xufVxuXG4uYy10ZXh0LWJsb2NrIGJsb2NrcXVvdGUgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctdG9wOiAxLjVlbTtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZXh0IGhlbHBlcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRleHQtcmlnaHQge1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmMtdGV4dC1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jLXRleHQtbGlnaHQge1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGV4dCBzaXplcyByZXNwb25zaXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTM2MHB4KSB7XG5cdGgxLCAuYy1oMSxcblx0aDIsIC5jLWgyLFxuXHRoMywgLmMtaDN7XG5cdFx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0XHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdFx0LW1zLXdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblx0XHR3b3JkLWJyZWFrOiBicmVhay1hbGw7XG5cdFx0d29yZC1icmVhazogYnJlYWstd29yZDtcblx0XHQtbXMtaHlwaGVuczogYXV0bztcblx0XHQtbW96LWh5cGhlbnM6IGF1dG87XG5cdFx0LXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuXHRcdGh5cGhlbnM6IGF1dG87XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE2MDFweCkge1x0ICAgIFxuICAgIDpyb290IHtcbiAgICAgICAgLS1mb250LXNpemUtcm9vdDogMjRweDtcbiAgICAgICAgLS1mb250LXNpemUtaDE6IDIuMDhyZW07IC8qIDUwcHggKi9cbiAgICAgICAgLS1mb250LXNpemUtaDI6IDEuNjZyZW07IC8qIDQwcHggKi9cbiAgICAgICAgLS1mb250LXNpemUtcXVvdGU6IDEuNjZyZW07XG4gICAgICAgIC0tZm9udC1zaXplLWJvZHktczogMC43NXJlbTtcbiAgICAgICAgLS1mb250LXNpemUtbGluazogMC43NXJlbTtcbiAgICAgICAgXG4gICAgICAgIC0tZm9ybS1jaGVja2JveC1wYWRkaW5nLXRvcC10ZXh0OiAwLjE3ZW07XG4gICAgfVxuICAgIFxuICAgIC5jLWZvcm0tbGFiZWwtdGV4dCxcbiAgICAuYy10aWNrZXQtcHJpY2Ugc3BhbiB7XG4gICAgICAgIC0tZm9udC1zaXplLWJvZHktczogMC42NXJlbTtcbiAgICB9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEyMDBweCkge1x0ICAgIFxuICAgIDpyb290IHtcbiAgICAgICAgLS1mb250LXNpemUtaDE6IDJyZW07IFxuICAgICAgICAtLWZvbnQtc2l6ZS1oMjogMS41cmVtOyBcbiAgICAgICAgLS1mb250LXNpemUtcXVvdGU6IDEuNnJlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkge1x0ICAgIFxuICAgIDpyb290IHtcbiAgICAgICAgLS1mb250LXNpemUtcm9vdDogMThweDtcbiAgICAgICAgLS1mb250LXNpemUtaDE6IDEuNzVyZW07IFxuICAgICAgICAtLWZvbnQtc2l6ZS1oMjogMS4zM3JlbTtcbiAgICAgICAgLS1mb250LXNpemUtaDM6IDEuMTZyZW07XG4gICAgICAgIC0tZm9udC1zaXplLXF1b3RlOiAxLjMzcmVtO1xuICAgICAgICAtLWZvbnQtc2l6ZS1ib2R5LXM6IDAuODc1cmVtO1xuICAgIH1cbn1cblxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVhZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtaGVhZGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG5cdHotaW5kZXg6IDEwO1xufVxuXG4uYy1oZWFkZXItaW5uZXIge1xuXHRoZWlnaHQ6IDYwcHg7XG4gICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1mbG93OiByb3c7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuXG4uYy1oZWFkZXItbG9nbyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDI2MHB4O1xuXHQvKmhlaWdodDogMTkwcHg7Ki9cbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMjBweDtcbiAgICBsZWZ0OiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgLypiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvYmctbG9nby1oZWFkZXIuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGJvdHRvbTsqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xufVxuXG4uYy1oZWFkZXItbG9nby1jcnlzdGFsIHtcbiAgICBwYWRkaW5nOiAzMnB4IDMycHggMzJweCAzMnB4O1xufVxuXG4uYy1oZWFkZXItbG9nby1zdXBwb3J0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA0MnB4IDMycHggMTJweCAzMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTIwMDFBO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN3aXNzc2tpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvYmctc3dpc3Nza2ktc3VwcG9ydGVyLWRpYWdvbmFsLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG59XG5cbi5jLWhlYWRlci1sb2dvLXN1cHBvcnRlciBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogMTEycHg7XG59XG5cbi5jLWhlYWRlci1sb2dvIGEge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtaGVhZGVyLXN0aWNreXtcblx0cG9zaXRpb246IGZpeGVkO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgbGFuZyBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWhlYWRlci1sYW5nLWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLWhlYWRlci1sYW5nLWxpc3QgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLWhlYWRlci1sYW5nLWxpc3QgbGkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLWhlYWRlci1sYW5nLWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4uYy1oZWFkZXItbGFuZy1saXN0IGEge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogMC41ZW0gMDtcbn1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBtYWluIG5hdiBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLW1haW4tbmF2IHsgICAgXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogM3B4IDNlbSAwIDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuXG4uYy1tYWluLW5hdi1saXN0IHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyAxMHB4KTtcbiAgICByaWdodDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgXG59XG5cbi5jLW1haW4tbmF2LWxpc3QgLmN1cnJlbnQtbWVudS1pdGVtID4gdWwsXG4uYy1tYWluLW5hdi1saXN0IC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiB1bHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG59XG5cblxuLmMtbWFpbi1uYXYtbGlzdCBsaSB7XG5cdC8qZGlzcGxheTogaW5saW5lLWJsb2NrOyovXG59XG5cbi5jLW1haW4tbmF2LWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cblxuLmMtbWFpbi1uYXYtbGlzdCBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC41ZW0gMDtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCBhOjpiZWZvcmUsXG4uYy1oZWFkZXItbGFuZy1saXN0IGE6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6Jyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtbCk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IGE6Zm9jdXM6OmJlZm9yZSxcbi5jLW1haW4tbmF2LWxpc3QgYTpob3Zlcjo6YmVmb3JlLFxuLmMtbWFpbi1uYXYtbGlzdCAuY3VycmVudC1tZW51LWl0ZW0gPiBhOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhOjpiZWZvcmUsXG4uYy1oZWFkZXItbGFuZy1saXN0IGE6Zm9jdXM6OmJlZm9yZSxcbi5jLWhlYWRlci1sYW5nLWxpc3QgYTpob3Zlcjo6YmVmb3JlLFxuLmMtaGVhZGVyLWxhbmctbGlzdCAud3BtbC1scy1jdXJyZW50LWxhbmd1YWdlIGE6OmJlZm9yZSB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9naW4ge1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dpbixcbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggJGJnLWRhcms7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpbmspO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjJzIGxpbmVhcjtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ2luOmZvY3VzLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ2luOmhvdmVyLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDpmb2N1cyxcbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQ6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvb3RlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9vdGVyIHtcblx0cGFkZGluZy10b3A6ICRzcGFjaW5nLWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLWw7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLWZvb3Rlci1kZWNvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLmMtZm9vdGVyLWRlY286OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9kZWNvLWZvb3Rlci5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBvcGFjaXR5OiAwLjI7XG59XG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QsXG4uYy1mb290ZXItbGluay1saXN0LFxuLmMtc29jaWFsLWxpc3Qge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb290ZXIgTWFpblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9vdGVyLXN3aXNzc2tpIHtcbiAgICBtYXgtd2lkdGg6IDE2NXB4O1xufVxuXG4uYy1mb290ZXItbGluay1saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLWZvb3Rlci1saW5rLWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctdG9wOiAwLjVlbTtcbn1cblxuLmMtZm9vdGVyLXN3aXNzc2tpICsgLmMtZm9vdGVyLWNhdGVnb3J5LXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy1sO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLXNvY2lhbC1saXN0IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9vdGVyIERpc2NsYWltZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyIHtcblx0cGFkZGluZy10b3A6ICRzcGFjaW5nLWw7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbCk7XG59XG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgbGkge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctbGVmdDogMmVtO1xufVxuXG4vKi5jLWZvb3RlciBhLFxuLmMtZm9vdGVyIGE6dmlzaXRlZCB7XG5cdGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbi5jLWZvb3RlciBhOmhvdmVyLFxuLmMtZm9vdGVyIGE6Zm9jdXMge1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufSovXG5cbi5jLWZvb3Rlci1uZW9mbHV4ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTM1cHg7XG4gICAgaGVpZ2h0OiAxZW07IFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG59XG5cbi5jLWZvb3Rlci1uZW9mbHV4ZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgIHdpZHRoOiAxMzVweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vLi4vaW1hZ2VzL25lb2ZsdXhlLWxvZ28td2hpdGUuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEzNHB4IDE2cHg7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT2ZmY2FudmFzIHRyaWdnZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRkaXNwbGF5OiBibG9jaztcblx0dG9wOiA1cHg7XG5cdHJpZ2h0OiAkZ3JpZC1jb250YWluZXI7XG4gICAgcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDBweDtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3BlbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtdHJpZ2dlcjo6YWZ0ZXIge1xuXHRjb250ZW50OicnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0dG9wOiA1MCU7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW46OmFmdGVyIHtcblx0d2lkdGg6IDI0cHg7XG5cdHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjo6YmVmb3JlIHtcblx0aGVpZ2h0OiAyMnB4O1xuXHRtYXJnaW4tdG9wOiAtMTFweDtcblx0Ym9yZGVyLXRvcDogNHB4IHNvbGlkICRiZy1kYXJrO1xuXHRib3JkZXItYm90dG9tOiA0cHggc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWRhcmspO1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOjphZnRlciB7XG5cdGhlaWdodDogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcblx0bWFyZ2luLXRvcDogLTJweDtcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItb3Blbjpmb2N1czo6YWZ0ZXIsXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuOmhvdmVyOjphZnRlciB7XG5cdHdpZHRoOiAxNXB4O1xufVxuXG4uYy1vZmZjYW52YXMtdHJpZ2dlci1jbG9zZTo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmFmdGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0Oi0ycHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC41cztcbn1cblxuLmMtb2ZmY2FudmFzLXRyaWdnZXItY2xvc2U6OmJlZm9yZSB7XG5cdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jLW9mZmNhbnZhcy10cmlnZ2VyLWNsb3NlOjphZnRlciB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9mZmNhbnZhcyBuYXYgbWFpbiBjb250YWluZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLW9mZmNhbnZhcy1uYXYge1xuXHQvKmRpc3BsYXk6IG5vbmU7Ki9cblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cdHotaW5kZXg6IDEwO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAwO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgLjJzIGVhc2Utb3V0IDBzO1xufVxuI29wZW4tbmF2aWdhdGlvbi5uYXZpZ2F0aW9uIC5jLW9mZmNhbnZhcy1uYXZcbiNvcGVuLW5hdmlnYXRpb246bm90KDp0YXJnZXQpIC5jLW9mZmNhbnZhcy1uYXYge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmMtb2ZmY2FudmFzLWlubmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPZmZjYW52YXMgQ29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLW9mZmNhbnZhcy1jb250ZW50IHtcblx0cGFkZGluZy10b3A6IDEuNWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3Qge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtb2ZmY2FudmFzLWxhbmcgKyAuYy1vZmZjYW52YXMtbmF2LWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDEuNWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgdWwge1xuXHRtYXJnaW46IDFlbSAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgbGkgKyBsaSB7XG5cdHBhZGRpbmctdG9wOiAwLjc1ZW07XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiAwLjI1ZW07XG59XG5cbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCBsaSBsaSBhIHtcblx0cGFkZGluZy1ib3R0b206IDAuNWVtO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgYTo6YmVmb3JlIHtcblx0Y29udGVudDonJztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgYTpmb2N1czo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IGE6aG92ZXI6OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCAuY3VycmVudC1tZW51LWl0ZW0gPiBhOjpiZWZvcmUsXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmN1cnJlbnQtcGFnZS1hbmNlc3RvciA+IGE6OmJlZm9yZSB7XG5cdGhlaWdodDogOHB4O1xuICAgIGhlaWdodDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT2ZmY2FudmFzIG5hdiBvcGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI29wZW4tbmF2aWdhdGlvbi5vcGVuLFxuI29wZW4tbmF2aWdhdGlvbjp0YXJnZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuI29wZW4tbmF2aWdhdGlvbi5vcGVuLFxuI29wZW4tbmF2aWdhdGlvbjp0YXJnZXQge1xuXHQuYy1vZmZjYW52YXMtbmF2IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdH1cblx0XG5cdC5jLW9mZmNhbnZhcy10cmlnZ2VyLW9wZW4ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGFibGVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIGJveCBhcm91bmQgdGFibGUsIHNvIGl0IGNhbiBzY3JvbGwgb24gc21hbGwgc2NyZWVucyAqL1xuLmMtdGFibGUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uYy10YWJsZS1sYXlvdXQge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uYy10YWJsZS1sYXlvdXQgdGgge1xuXHRwYWRkaW5nOiAwIDE1cHggMC41ZW0gMDtcblx0Ym9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XHRcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLXRhYmxlLWxheW91dCB0ZCB7XG5cdHBhZGRpbmc6IDFlbSAxNXB4IDFlbSAwO1xuXHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvcmRlci1iYXNpYztcdFxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbn1cblxuLmMtdGFibGUtbGF5b3V0IHRkOmxhc3QtY2hpbGQge1xuXHRwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uYy1tZW1iZXJzLXRlbCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG5cbi8qZ3JhZGllbnQgb24gc2Nyb2xsICovXG4uYy10YWJsZSB7XG4gICAgLS10cmFuc3BhcmVudDogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICAtLWJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7XG4gICAgLS1zaGFkb3c6IHJnYmEoMCwwLDAsMC4zKTtcbiAgICBcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIG92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cblx0YmFja2dyb3VuZDpcblx0XHRsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWJhY2tncm91bmQpIDEwJSwgdmFyKC0tdHJhbnNwYXJlbnQpKSxcblx0XHRsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRyYW5zcGFyZW50KSwgdmFyKC0tYmFja2dyb3VuZCkgOTAlKSAwIDEwMCUsXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tc2hhZG93KSwgdmFyKC0tdHJhbnNwYXJlbnQpIDEwJSksXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCB2YXIoLS1zaGFkb3cpLCB2YXIoLS10cmFuc3BhcmVudCkgMTAlKTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGxvY2FsLCBsb2NhbCwgc2Nyb2xsLCBzY3JvbGw7ICAgIFxufVxuXG5cbi8qXG4uYy10YWJsZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBvdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIGJhY2tncm91bmQ6IFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHdoaXRlIDMwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkgbGVmdCBjZW50ZXIsIFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNzAlKSByaWdodCBjZW50ZXIsIFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCAwIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjIpLCByZ2JhKDAsIDAsIDAsIDApKSBsZWZ0IGNlbnRlciwgXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDEwMCUgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMCkpIHJpZ2h0IGNlbnRlcjtcbiAgICBcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggMTAwJSwgNDBweCAxMDAlLCAxNHB4IDEwMCUsIDE0cHggMTAwJTtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBsb2NhbCwgbG9jYWwsIHNjcm9sbCwgc2Nyb2xsO1xufSovIiwiXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29sb3JzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxODgsIDE4OCwgMTgxLCAxKSAwJSwgcmdiYSgxODgsIDE4OCwgMTgxLCAwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTQwcHg7XG4gICAgb3BhY2l0eTogMC40O1xufVxuXG4uYy1iZy1saWdodCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2hvd3Jvb21cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLmMtc2hvd3Jvb20ge1xuXHRvdmVyZmxvdzogaGlkZGVuOyAgICBcbn1cblxuLmMtc2hvd3Jvb20sXG4uYy1zaG93cm9vbS10ZXh0IC5jLXJvdyB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG5cdG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0KSk7IFxufVxuXG5cbi8qIG1pbi1oZWlnaHQgZml4IGZvciBpZTExICovXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgXHQuYy1zaG93cm9vbS10ZXh0IC5jLXJvdzphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHR9XG59XG5cblxuXG4uYy1zaG93cm9vbS1tZWRpYSxcbi5jLWltZy1vdmVybGF5IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7IFxuICAgIGJvcmRlcjogc29saWQgdmFyKC0tYm9yZGVyLW91dHNpZGUpIHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5jLWltZy1vdmVybGF5IHtcblx0b3BhY2l0eTogMC42O1xufVxuXG4uYy1pbWctb3ZlcmxheSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHQvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cHM6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzAwMDAwMCswLDAwMDAwMCsxMDAmMC41KzAsMCsxMDA7TmV1dHJhbCtEZW5zaXR5ICovXG5cdC8qYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjUpIDAlLCByZ2JhKDAsMCwwLDApIDEwMCUpOyBcblx0YmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwLjUpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IFxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiYSgwLDAsMCwwLjUpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7ICovXG4gICAgXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMGRlZyxyZ2JhKDMxLCA2NCwgMTIyLCAwLjQpIDAlLCByZ2JhKDMxLCA2NCwgMTIyLCAwKSA0MCUpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDBkZWcscmdiYSgzMSwgNjQsIDEyMiwgMC40KSAwJSwgcmdiYSgzMSwgNjQsIDEyMiwgMCkgNDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2JhKDMxLCA2NCwgMTIyLCAwLjQpIDAlLCByZ2JhKDMxLCA2NCwgMTIyLCAwKSA0MCUpO1xuXG5cbn1cblxuLmMtc2hvd3Jvb20tbWVkaWEgaW1nLCBcbi5jLXNob3dyb29tLW1lZGlhIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jLXNob3dyb29tIHtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCA2cHggcmdiYSgzMSw2NCwxMjIsMC4xKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiB0ZWFzZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRlYXNlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItbGVmdDogc29saWQgdmFyKC0tYm9yZGVyLW91dHNpZGUpIHZhcigtLWJnLWNvbnRlbnQpO1xuICAgIGJvcmRlci1yaWdodDogc29saWQgdmFyKC0tYm9yZGVyLW91dHNpZGUpIHZhcigtLWJnLWNvbnRlbnQpO1xufVxuXG4uYy10ZWFzZXItYXN5bS1yaWdodCAuYy1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmMtdGVhc2VyLWFzeW0tcmlnaHQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNHB4O1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG59XG5cbi5jLXRlYXNlci1hc3ltLWxlZnQgLmMtdGVhc2VyLWFzeW0taW1nIHtcbiAgICBtYXJnaW4tbGVmdDogLTI0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tZ3JpZC1jb250YWluZXIpICogLTEpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIHRlYXNlciBldmVudHMgLyBldmVudHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLXRlYXNlci1ldmVudHMsXG4uYy10ZWFzZXItZXRoaWNzLFxuLmMtbWVtYmVycy1zZWFyY2gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xufVxuXG4uYy1ldmVudHMtYm94IHtcbiAgICBwYWRkaW5nOiAxLjVlbSAyNHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94KTtcbiAgICBib3JkZXI6IHNvbGlkIDhweCAkYmctZGFyaztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1sKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG59XG5cbi5jLWV2ZW50cyAuYy1ldmVudHMtYm94LW1lbWJlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiB0ZWFzZXIgY2x1YiAvIGV0aGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGVhc2VyLWNsdWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1saWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1saWdodCk7XG59XG5cbi5jLXRlYXNlci1jbHViLWxpc3QsXG4uYy10ZWFzZXItZXRoaWNzLWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ3JpZC1yb3cpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1ncmlkLXJvdyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xufVxuXG4uYy10ZWFzZXItY2x1Yi1saXN0IGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTtcbn1cblxuLmMtdGVhc2VyLWV0aGljcy1saXN0IGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1ncmlkLWNvbCk7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmMtdGVhc2VyLWNsdWItaW1nLFxuLmMtdGVhc2VyLWV0aGljcy1pbWcge1xuICAgIG1heC13aWR0aDogMTMwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41ZW0gYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhzKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiB0ZWFzZXIgaW1nIGdhbGxlcnlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy10ZWFzZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYy10ZWFzZXItbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1yYXRpb2JveC10ZWFzZXItaW1nLWdhbGxlcnkgaW1nLFxuLmMtdGVhc2VyLWxpbmsge1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWgzIC5jLXRlYXNlci1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG59XG5cbi5jLXRlYXNlci1pdGVtOmhvdmVyIGltZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbn1cblxuLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xufVxuXG4uYy10ZWFzZXItaW1nLWdhbGxleS10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctcyk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBnYWxsZXJ5IFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZ2FsbGVyeS1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JpZC1nYXApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdyaWQtZ2FwKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1nYWxsZXJ5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMjB2dyk7XG4gICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgZ3JpZC1nYXA6IHZhcigtLWdyaWQtZ2FwKTtcbn1cblxuLmMtZ2FsbGVyeS1pdGVtIGltZyxcbi5jLWdhbGxlcnktaXRlbSB2aWRlbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uYy1nYWxsZXJ5LXZhcjEtN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTEsXG4uYy1nYWxsZXJ5LXZhcjItN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTEge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xufVxuXG4uYy1nYWxsZXJ5LXZhcjEtN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTQge1xuICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAyIC8gc3BhbiAyO1xufVxuXG4uYy1nYWxsZXJ5LXZhcjItN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTUge1xuICAgIGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAyIC8gc3BhbiAyO1xufVxuXG4uYy1nYWxsZXJ5LTJjb2wge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgMzB2dyk7XG59XG5cbi5jLWdhbGxlcnktMmNvbCAuYy1nYWxsZXJ5LWl0ZW0tMSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMiAvIHNwYW4gMjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgVGVhbVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtdGVhbS1pbWcge1xuICAgIG1heC13aWR0aDogMzMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBwYWdpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1wYWdpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbn1cblxuXG4uYy1wYWdpbmctaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIDhweCA4cHggMDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJnLWRhcmspO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyAgICBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLmMtcGFnaW5nLWl0ZW0sXG4uYy1wYWdpbmctaXRlbTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBjb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi5jLXBhZ2luZy1pdGVtOmhvdmVyLFxuLmMtcGFnaW5nLWl0ZW06Zm9jdXMsXG4uYy1wYWdpbmcgLmMtcGFnaW5nLWFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWRhcmspO1xufVxuXG4uYy1wYWdpbmcgLmMtcGFnaW5nLWRpc2FibGVkLFxuLmMtcGFnaW5nIC5jLXBhZ2luZy1kaXNhYmxlZDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiB0aWNrZXRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy10aWNrZXQtYm94IHtcbiAgICBwYWRkaW5nOiAxLjVlbSAyNHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1kYXJrKTtcbn1cblxuLmMtdGlja2V0LWJveC1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGlzYWJsZWQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctZGlzYWJsZWQpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWRpc2FibGVkKTtcbn1cblxuLmMtdGlja2V0LWJveC1jYXJ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYy10aWNrZXQtYm94LWNhcnQsXG4uYy10aWNrZXQtYm94LXNraXBhc3Mge1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICBwYWRkaW5nLXRvcDogMS4yZW07XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRib3JkZXItYmFzaWM7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtcyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xufVxuXG4uYy10aWNrZXQtYm94LWNhcnQtcXVhbnRpdHkge1xuICAgIG1heC13aWR0aDogNzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgXG59XG5cbi5jLXRpY2tldHMtbWVzc2FnZS1ib3gge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiB2YXIoLS1ncmlkLWNvbnRhaW5lcik7XG4gICAgcmlnaHQ6IHZhcigtLWdyaWQtY29udGFpbmVyKTtcbiAgICBwYWRkaW5nOiAxLjVlbSAyNHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94KTtcbiAgICBib3JkZXI6IHNvbGlkIDhweCAkYmctZGFyaztcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1sKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1iYXNpYyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG4gICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIDQwNFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtbWFpbi10aXRsZS1pbGx1IHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBDb29raWUgbm90aWNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1jb29raWUtbm90aWNle1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuXHRyaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDQ4MHB4O1xuICAgIHBhZGRpbmc6IDEuNXJlbSAzMHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctYm94KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kYXJrKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXHRib3JkZXI6IHNvbGlkIDRweCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItb3V0c2lkZSk7XG59XG5cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYy10ZXh0LWJsb2NrIC5jLWNvb2tpZS1ub3RpY2UtbGlzdCBsaTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmMtdGV4dC1ibG9jayAuYy1jb29raWUtbm90aWNlLWxpc3QgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjVlbSAwLjVlbSAwIDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHsgICAgXG5cdC5jLWNvb2tpZS1ub3RpY2Uge1xuXHRcdHdpZHRoOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0Lypib3JkZXItdG9wOiBzb2xpZCA0cHggJGJvcmRlci1iYXNpYztcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtbCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmctY29udGVudCk7Ki9cblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBMaW5rIGNvbG9ycyBhbmQgc3R5bGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5hW2hyZWZePVwidGVsOlwiXSB7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtdGV4dC1ibG9jayBhIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwkdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSAwJSwkdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHZhcigtLXRleHQtY29sb3ItbGluay11bmRlcmxpbmUpIDAlLHZhcigtLXRleHQtY29sb3ItbGluay11bmRlcmxpbmUpIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiA0cHggNHB4O1xuICBcdHRyYW5zaXRpb246IGJhY2tncm91bmQgLjFzO1xufVxuXG4uYy10ZXh0LWJsb2NrIGE6Zm9jdXMsXG4uYy10ZXh0LWJsb2NrIGE6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLXNpemU6IDhweCA4cHg7XG59XG5cbi5jLXRleHQtYmxvY2sgLmMtYnRuLFxuLmMtdGV4dC1ibG9jayAuYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstYXJyb3csXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstZG93bmxvYWQsXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstZXh0ZXJuLFxuLmMtdGV4dC1ibG9jayAuYy1saW5rLWJhY2ssXG4uYy10ZXh0LWJsb2NrIC5jLWxpbmstbWFpbCxcbi5jLXRleHQtYmxvY2sgLmMtbGluay1saW5rZWRpbntcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIHNraXAgbGlua1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtc2tpcC1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyAgICBcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgLXdlYmtpdC1jbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAwIDAsIDAgMCwgMCAwKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAwIDAsIDAgMCwgMCAwKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMXB4OyAgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgICAgXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDAuNWVtIDIwcHg7XG59XG5cbi5jLXNraXAtbGluazpmb2N1cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogYXV0bzsgICAgXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCdXR0b24gXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1idG4sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYy1idG4tdGlja2V0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcblx0cGFkZGluZzogMThweCA4cHggMTRweCAwO1xuXHRib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogc29saWQgNHB4ICRiZy1kYXJrO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7ICBcblx0Zm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZGVyKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5KTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYy1idG4tdGlja2V0IHtcbiAgICBwYWRkaW5nOiAwLjc1ZW0gMjBweCAwLjZlbSAyMHB4O1xuICAgIGJvcmRlcjogc29saWQgNHB4ICRiZy1kYXJrO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG59XG5cblxuLmMtYnRuOmFmdGVyIHtcblx0Y29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMnB4O1xuICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDI1cHgpO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXI6IHNvbGlkICRiZy1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1jb2xvci1saW5rLXVuZGVybGluZSk7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDRweCA0cHggMDtcbiAgICBib3JkZXItd2lkdGg6IDAgdmFyKC0tYm9yZGVyLXdpZHRoLWwpIHZhcigtLWJvcmRlci13aWR0aC1sKSAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgYW5pbWJ0biB7XG5cdDAlIHtcblx0XHQgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTtcblx0fVxuXHQ1MCUge1xuXHRcdCB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyMHB4LDApO1xuXHR9XG5cdDEwMCUge1xuXHRcdCB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNnB4LDApO1xuXHR9XG59XG5cblxuLmMtYnRuLFxuLmMtYnRuOnZpc2l0ZWQsXG4uYy1idG46aG92ZXIsIFxuLmMtYnRuOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLmMtYnRuLXRpY2tldCxcbi5jLWJ0bi10aWNrZXQ6aG92ZXIsXG4uYy1idG4tdGlja2V0OmZvY3VzIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGluay11bmRlcmxpbmUpO1xufVxuXG4uYy1idG46aG92ZXIsIFxuLmMtYnRuOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLmMtYnRuLXRpY2tldDpob3Zlcixcbi5jLWJ0bi10aWNrZXQ6Zm9jdXMge1xuICAgIGFuaW1hdGlvbjogYW5pbWJ0biAuNHMgZm9yd2FyZHM7XG4gICBcbn1cblxuXG4uYy1idG4tc21hbGwge1xuICAgcGFkZGluZzogMTRweCA4cHggMTRweCAwO1xuICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keS1zKTtcbn1cblxuLmMtYnRuLXNtYWxsOmFmdGVyIHtcblx0dG9wOiA0cHg7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMjFweCk7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xufVxuXG4uYy1idG4tdGlja2V0IHtcbiAgICBwYWRkaW5nOiAxOHB4IDE2cHggMTZweCAxNnB4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktcyk7XG4gICAgXG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIGxpbmtzIHdpdGggaWNvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWljb24sXG4uYy1pY29uLXNvY2lhbCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtaWNvbjo6YmVmb3JlLFxuLmMtaWNvbjo6YWZ0ZXIsXG4uYy1pY29uLXNvY2lhbDo6YmVmb3JlLFxuLmMtaWNvbi10aXRsZTo6YWZ0ZXIge1xuXHRjb250ZW50OicnO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUuc3ZnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmMtaWNvbi1zb2NpYWw6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6dXJsKC4uLy4uL2ltYWdlcy9zcHJpdGUtc29jaWFsLnN2Zyk7XG59XG5cbi5jLWljb24tdGl0bGU6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTJweDtcbiAgICB3aWR0aDogMTA2cHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuXHRiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvc3ByaXRlLWNyeXN0YWwuc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5jLXRleHQtbGlnaHQgLmMtaWNvbi10aXRsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwMHB4O1xufVxuXG4uYy1saW5rLWljb24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmctbGVmdDogMzRweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1saW5rKTtcbn1cblxuLmMtaWNvbi1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI4cHg7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYy1saW5rLWFycm93OjpiZWZvcmUsXG4uYy1saW5rLWJhY2s6OmJlZm9yZSxcbi5jLWljb24tYXJyb3c6OmJlZm9yZSB7XG5cdHRvcDogMC4yNWVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjhweDtcblx0aGVpZ2h0OiAxOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG5cdHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWxpbmstYXJyb3c6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstYXJyb3c6Zm9jdXM6OmJlZm9yZSxcbi5jLWljb24tYXJyb3c6aG92ZXI6OmJlZm9yZSxcbi5jLXRlYXNlci1pdGVtOmhvdmVyIC5jLWljb24tYXJyb3c6OmJlZm9yZSxcbi5jLXRlYXNlci1pdGVtOmZvY3VzIC5jLWljb24tYXJyb3c6OmJlZm9yZSB7XG5cdGxlZnQ6IDRweDtcbn1cblxuLmMtdGVhc2VyLWl0ZW06Zm9jdXMtd2l0aGluIC5jLWljb24tYXJyb3c6OmJlZm9yZSB7XG5cdGxlZnQ6IDRweDtcbn1cblxuXG4uYy1saW5rLWJhY2s6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMHB4O1xufVxuXG4uYy1saW5rLWJhY2s6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstYmFjazpmb2N1czo6YmVmb3JlIHtcblx0bGVmdDogLTRweDtcbn1cblxuLmMtbGluay1kb3dubG9hZDo6YmVmb3JlIHtcblx0dG9wOiAtMC4yNWVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MHB4O1xufVxuXG4uYy1saW5rLWRvd25sb2FkOmhvdmVyOjpiZWZvcmUsXG4uYy1saW5rLWRvd25sb2FkOmZvY3VzOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtNDBweDtcbn1cblxuLmMtbGluay1leHRlcm46OmJlZm9yZSB7XG5cdHRvcDogMGVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjZweDtcblx0aGVpZ2h0OiAyOHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4O1xufVxuXG4uYy1saW5rLWV4dGVybjpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1leHRlcm46Zm9jdXM6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IC01MHB4IC04MHB4O1xufVxuXG4uYy1saW5rLW1haWw6OmJlZm9yZSB7XG5cdHRvcDogLTAuMTVlbTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDI2cHg7XG5cdGhlaWdodDogMjhweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjQwcHg7XG59XG5cbi5jLWxpbmstbWFpbDpob3Zlcjo6YmVmb3JlLFxuLmMtbGluay1tYWlsOmZvY3VzOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTBweCAtMjQwcHg7XG59XG5cbi5jLWxpbmstZGVsZXRlOjpiZWZvcmUge1xuXHR0b3A6IDAuMmVtO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMjFweDtcblx0aGVpZ2h0OiAyMnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MDBweDtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1saW5rLWRlbGV0ZTpob3Zlcjo6YmVmb3JlIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LDApO1xufVxuXG4uYy1saW5rLWxpbmtlZGluOjpiZWZvcmUge1xuXHR0b3A6IDAuMTVlbTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDIxcHg7XG5cdGhlaWdodDogMjFweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjgwcHg7XG59XG5cbi5jLWxpbmstbGlua2VkaW46aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstbGlua2VkaW46Zm9jdXM6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI4MHB4O1xufVxuXG4uYy1saW5rLXJlc2V0OjpiZWZvcmUge1xuXHR0b3A6IDAuMTVlbTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDI2cHg7XG5cdGhlaWdodDogMjZweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDgwcHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1vdXQ7XG59XG5cbi5jLWxpbmstcmVzZXQ6aG92ZXI6OmJlZm9yZSxcbi5jLWxpbmstcmVzZXQ6Zm9jdXM6OmJlZm9yZSB7XG5cdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG5cbi5jLWljb24tc29jaWFsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIGhlaWdodDogNTJweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1pY29uLXNvY2lhbDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbn1cblxuLmMtaWNvbi1zb2NpYWw6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDUycHg7XG4gICAgaGVpZ2h0OiA1MnB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC1mYWNlYm9vazo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5jLWljb24tc29jaWFsLWluc3RhZ3JhbTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MHB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC15b3V0dWJlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMHB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC10d2l0dGVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE4MHB4O1xufVxuXG4uYy1pY29uLXNvY2lhbC1saW5rZWRpbjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yNDBweDtcbn1cblxuLmMtaWNvbi1zb2NpYWwtdmltZW86OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzAwcHg7XG59XG5cbi5jLWljb24tc29jaWFsLXRpa3Rvazo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNjBweDtcbn1cblxuLmMtaWNvbi1zb2NpYWwtd2Vic2l0ZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00MjBweDtcbn1cblxuLmMtaWNvbi10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbn1cblxuLmMtcGFnaW5nLWJhY2s6OmJlZm9yZSxcbi5jLXBhZ2luZy1uZXh0OjpiZWZvcmUge1xuICAgIHRvcDogOHB4O1xuICAgIGxlZnQ6IDlweDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzE5cHg7XG59XG5cbi5jLXBhZ2luZy1iYWNrOmhvdmVyOjpiZWZvcmUsXG4uYy1wYWdpbmctYmFjazpmb2N1czo6YmVmb3JlLCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTMxOXB4O1xufVxuXG4uYy1wYWdpbmctZGlzYWJsZWQuYy1wYWdpbmctYmFjazo6YmVmb3JlLFxuLmMtcGFnaW5nLWRpc2FibGVkLmMtcGFnaW5nLWJhY2s6aG92ZXI6OmJlZm9yZSxcbi5jLXBhZ2luZy1kaXNhYmxlZC5jLXBhZ2luZy1iYWNrOmZvY3VzOjpiZWZvcmUsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMzE5cHg7XG59XG5cbi5jLXBhZ2luZy1uZXh0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzU5cHg7XG59XG5cbi5jLXBhZ2luZy1uZXh0OmhvdmVyOjpiZWZvcmUsXG4uYy1wYWdpbmctbmV4dDpmb2N1czo6YmVmb3JlLCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5cHggLTM1OXB4O1xufVxuXG4uYy1wYWdpbmctZGlzYWJsZWQuYy1wYWdpbmctbmV4dDo6YmVmb3JlLFxuLmMtcGFnaW5nLWRpc2FibGVkLmMtcGFnaW5nLW5leHQ6aG92ZXI6OmJlZm9yZSxcbi5jLXBhZ2luZy1kaXNhYmxlZC5jLXBhZ2luZy1uZXh0OmZvY3VzOjpiZWZvcmUsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMzU5cHg7XG59XG5cbi5jLWljb24tc2hvcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQycHg7XG59XG5cbi5jLWljb24tc2hvcDo6YmVmb3JlIHtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTNweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwcHggLTQ0MHB4O1xufVxuXG4uYy1idG4tc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1NHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmMtYnRuLXNlYXJjaDo6YmVmb3JlIHtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICByaWdodDogMTBweDtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYwcHg7XG59XG5cblxuXG5cbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dpbjo6YmVmb3JlLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDo6YmVmb3JlLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9naW46OmFmdGVyLFxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OjphZnRlcntcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1hcmdpbi10b3A6IC0xM3B4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01MjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ2luOmZvY3VzOjpiZWZvcmUsXG4uYy1tYWluLW5hdi1saXN0IC5jLW1lbnUtbG9naW46aG92ZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwcHggLTUyMHB4OyAgXG59XG5cbi5jLW1haW4tbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQ6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU2MHB4OyBcbn1cblxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDpmb2N1czo6YmVmb3JlLFxuLmMtbWFpbi1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDpob3Zlcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzBweCAtNTYwcHg7ICBcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9naW4sXG4uYy1vZmZjYW52YXMtbmF2LWxpc3QgLmMtbWVudS1sb2dvdXQge1xuICAgIHBhZGRpbmctbGVmdDogMzRweDtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9naW46OmJlZm9yZSxcbi5jLW9mZmNhbnZhcy1uYXYtbGlzdCAuYy1tZW51LWxvZ291dDo6YmVmb3Jle1xuICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9naW46OmFmdGVye1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLTE4cHg7ICAgIFxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMHB4IC01MjBweDtcbn1cblxuLmMtb2ZmY2FudmFzLW5hdi1saXN0IC5jLW1lbnUtbG9nb3V0OjphZnRlcntcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0xN3B4OyAgICBcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzBweCAtNTYwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIHJlc3BvbnNpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAxcHgpIHsgICBcblx0LmMtbGluay1hcnJvdzo6YmVmb3JlLFxuXHQuYy1saW5rLWJhY2s6OmJlZm9yZSB7XG5cdFx0dG9wOiAwLjE1ZW07XG5cdH1cblx0XG5cdC5jLWxpbmstZG93bmxvYWQ6OmJlZm9yZSB7XG5cdFx0dG9wOiAtLjM1ZW07XG5cdH1cblx0XG5cdC5jLWxpbmstZXh0ZXJuOjpiZWZvcmUge1xuXHRcdHRvcDogMGVtO1xuXHR9XG4gICAgXG4gICAgLmMtbGluay1tYWlsOjpiZWZvcmUge1xuICAgICAgICB0b3A6IC0wLjM1ZW07XG4gICAgfVxuXG4gICAgLmMtbGluay1saW5rZWRpbjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwLjFlbTtcbiAgICB9XG4gICAgXG4gICAgLmMtbGluay1yZXNldDo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwLjFlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgeyAgIFxuXHQuYy1saW5rLWFycm93OjpiZWZvcmUsXG5cdC5jLWxpbmstYmFjazo6YmVmb3JlIHtcblx0XHR0b3A6IDAuMTVlbTtcblx0fVxuXHRcblx0LmMtbGluay1kb3dubG9hZDo6YmVmb3JlIHtcblx0XHR0b3A6IC0uMzVlbTtcblx0fVxuXHRcblx0LmMtbGluay1leHRlcm46OmJlZm9yZSB7XG5cdFx0dG9wOiAwZW07XG5cdH1cbiAgICBcbiAgICAuYy1saW5rLW1haWw6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTAuMzVlbTtcbiAgICB9XG5cbiAgICAuYy1saW5rLWxpbmtlZGluOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuMWVtO1xuICAgIH1cbiAgICBcbiAgICAuYy1saW5rLXJlc2V0OjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuMWVtO1xuICAgIH1cbiAgICBcbiAgICAuYy1idG46YWZ0ZXIge1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgbGVmdDogY2FsYygxMDAlIC0gMjNweCk7XG4gICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWJ0bi1zbWFsbDphZnRlciB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLSAxOXB4KTtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICB9XG4gICAgXG4gICAgLmMtaWNvbi10aXRsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1pY29uLXRpdGxlOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTBweCAwO1xuICAgIH1cblxuICAgIC5jLXRleHQtbGlnaHQgLmMtaWNvbi10aXRsZTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTEwMHB4O1xuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmF0aW8gQm94XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1yYXRpb2JveCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0aGVpZ2h0OiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtcmF0aW9ib3ggPiBpbWcsXG4uYy1yYXRpb2JveCA+IGlmcmFtZSxcbi5jLXJhdGlvYm94ID4gb2JqZWN0IHtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcbn1cblxuLmMtcmF0aW9ib3ggPiBpbWcsXG4uYy1yYXRpb2JveCA+IHZpZGVvIHtcblx0Lyp3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvOyovXG4gICAgd2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jLXJhdGlvYm94ID4gaWZyYW1lLFxuLmMtcmF0aW9ib3ggPiBvYmplY3Qge1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmMtcmF0aW9ib3gtMTZieTkge1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4uYy1yYXRpb2JveC00YnkzIHtcblx0cGFkZGluZy1ib3R0b206IDc1JTtcbn1cblxuLmMtcmF0aW9ib3gtMWJ5MSB7XG5cdHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uYy1yYXRpb2JveC10ZWFzZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5jLXJhdGlvYm94LXRlYW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMzMuMzMlO1xufVxuXG4uYy1yYXRpb2JveC10ZWFzZXItaW1nLWdhbGxlcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NiU7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBzYWZhcmkgZm9ybSBmaXggKi9cbmlucHV0LFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxudGV4dGFyZWEge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG5cdC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbn1cblxuaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG59XG5cbi8qIHJlbW92ZSBjaHJvbWUgYXV0b2ZpbGwgeWVsbG93IGNvbG9yICovXG5pbnB1dDotd2Via2l0LWF1dG9maWxsLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMjAwMHM7XG59XG5cbi8qIENocm9tZSwgU2FmYXJpLCBFZGdlLCBPcGVyYSAqL1xuaW5wdXQ6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG5pbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBGaXJlZm94ICovXG5pbnB1dFt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLmMtZm9ybS1pdGVtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXM7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG59XG5cbi5jLWZvcm0tc2VwYXJhdG9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBoZWlnaHQ6IHZhcigtLWJvcmRlci13aWR0aC1zKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib3JkZXItYmFzaWMpO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy1sO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWwpIC0gdmFyKC0tc3BhY2luZy1zKSk7XG59XG5cbi5jLWZvcm1maWVsZC1zZWFyY2gtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGZvcm1maWVsZHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgdGV4dGFyZWEge1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyOiBzb2xpZCAycHggJGJvcmRlci1mb3JtO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0pO1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tZm9ybS1ib3JkZXItd2lkdGgpO1xuXHRjb2xvcjogJHRleHQtY29sb3I7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXHRwYWRkaW5nOiAwLjc1ZW0gMTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGlja2V0LWJveCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgLmMtdGlja2V0LWJveCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcblx0cGFkZGluZzogMC40OGVtIDEwcHg7XG4gICAgcGFkZGluZzogdmFyKC0tdGlja2V0LXBhZGRpbmctaW5wdXQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHRleHRhcmVhIHtcblx0bWluLWhlaWdodDogMTJlbTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuLmMtZm9ybS1zdGFuZGFyZCB0ZXh0YXJlYTpmb2N1cyB7XG5cdGJvcmRlci1jb2xvcjogJGJvcmRlci1mb3JtLWZvY3VzO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWZvcm0tZm9jdXMpO1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiZW1haWxcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInVybFwiXTpkaXNhYmxlZCxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImRhdGVcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJ0ZWxcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJudW1iZXJcIl06ZGlzYWJsZWQsXG4uYy1mb3JtLXN0YW5kYXJkIHRleHRhcmVhOmRpc2FibGVkIHtcblx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcblx0Y29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG5cdGNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy1mb3JtLWxhYmVsLXRleHQge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy1ib3R0b206IDAuMzVlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLmMtZm9ybS1sYWJlbC10ZXh0LXNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBmaWxlIGJ1dHRvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPWZpbGVdIHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDAuNzVlbSAxMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHktc21hbGwpO1xufVxuXG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImZpbGVcIl06OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XG5cdG1hcmdpbi1yaWdodDogMC43NWVtO1xuXHRwYWRkaW5nOiAxLjE1ZW0gMjRweCAxLjE1ZW0gMjRweDtcblx0Ym9yZGVyOiAycHggc29saWQgJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuXG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImZpbGVcIl06OmZpbGUtc2VsZWN0b3ItYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLWxpZ2h0KTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGFyayk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBjaGVja2JveCAvIHJhZGlvc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctbGlzdC1pdGVtIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAuYy1mb3JtLW11bHRpbGluZSAud3BjZjctbGlzdC1pdGVtIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLXJpZ2h0OiAxLjZlbTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXXtcbiAgICBtYXJnaW46IDRweCAwIDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpe1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXStzcGFuLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0rc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdK3NwYW4sXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXStzcGFuIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrc3Bhbixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3BhbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgcGFkZGluZy10b3A6IDAuMzVlbTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tZm9ybS1jaGVja2JveC1wYWRkaW5nLXRvcC10ZXh0KTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cdG1pbi1oZWlnaHQ6IDQ0cHg7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkrc3Bhbjo6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMC4xNWVtO1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGhlaWdodDogMzhweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkYm9yZGVyLWZvcm07XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybSk7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1mb3JtLWJvcmRlci13aWR0aCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKStzcGFuOjpiZWZvcmV7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cytzcGFuOjpiZWZvcmUsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cytzcGFuOjpiZWZvcmV7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWZvcm0tZm9jdXM7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItZm9ybS1mb2N1cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29udGVudCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbnRlbnQpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkK3NwYW46OmFmdGVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStzcGFuOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYygwLjE1ZW0gKyA1cHgpO1xuICAgIGxlZnQ6IDExcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAyMnB4O1xuXHRib3JkZXI6IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuXHRib3JkZXItd2lkdGg6IDAgNHB4IDRweCAwO1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQrc3Bhbjo6YWZ0ZXIsXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDAuMTVlbSArIDlweCk7XG4gICAgbGVmdDogOXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKStzcGFuOjphZnRlcntcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpK3NwYW46OmFmdGVye1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuLmdmb3JtX2ZpZWxkcyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCtzcGFuOjphZnRlcixcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQrc3Bhbjo6YWZ0ZXJ7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCtzcGFuOjphZnRlcntcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkK3NwYW46OmJlZm9yZSxcbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkK3NwYW46OmFmdGVyLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQrc3Bhbjo6YmVmb3JlLFxuLmMtZm9ybS1zdGFuZGFyZCBpbnB1dFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQrc3Bhbjo6YWZ0ZXIge1xuXHRjb2xvcjogJGZvcm0tZGlzYWJsZWQ7XG4gICAgY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xuXHRib3JkZXItY29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBkcm9wZG93blxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAwLjc1ZW0gMzBweCAwLjc1ZW0gMTBweCAhaW1wb3J0YW50O1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXItZm9ybTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtKTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXHRiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvaWNvbi1mb3JtLWFycm93LnN2Z1wiKSByaWdodCBjZW50ZXIgbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29udGVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb250ZW50KTtcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRsaW5lLWhlaWdodDogMS4zNXJlbSAhaW1wb3J0YW50O1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcdFxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNjAxcHgpIHtcdCAgICBcbiAgICAuYy1mb3JtLXN0YW5kYXJkIHNlbGVjdCB7XG4gICAgICAgICBsaW5lLWhlaWdodDogMS40cmVtICFpbXBvcnRhbnQ7XHRcbiAgICB9XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItZm9ybS1mb2N1cztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1mb3JtLWZvY3VzKTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Qgb3B0aW9uIHtcblx0cGFkZGluZzogMDtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIHNlbGVjdDpkaXNhYmxlZDo6LW1zLWV4cGFuZCB7XG5cdGNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1kaXNhYmxlZCk7XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgc2VsZWN0OmRpc2FibGVkLFxuLmMtZm9ybS1zdGFuZGFyZCBzZWxlY3RbZGlzYWJsZWRdIHtcblx0Y29sb3I6ICRmb3JtLWRpc2FibGVkO1xuICAgIGNvbG9yOiB2YXIoLS1mb3JtLWRpc2FibGVkKTtcblx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1kaXNhYmxlZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tZGlzYWJsZWQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgd3A3IGVycm9yIC8gb2sgbWVzc2FnZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjcgZm9ybSAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLndwY2Y3IC5jLWZvcm0tc3RhbmRhcmQgZm9ybSAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjcgZm9ybSAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLndwY2Y3IGZvcm0gLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcblx0LypkaXNwbGF5OiBibG9jazsqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1pbml0aWFsO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvcm0taW5pdGlhbCk7XG5cdHBhZGRpbmc6IDEuNWVtIDMwcHg7XG4gICAgcGFkZGluZzogdmFyKC0tcGFkZGluZy1ib3gpO1xuXHRjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItbGlnaHQpO1xuXHRtYXJnaW46IDAgMCAzZW0gMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXMpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG5cdGJvcmRlcjogbm9uZTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctbm90LXZhbGlkLXRpcCxcbi5jLWZvcm0tc3RhbmRhcmQgLnNjcmVlbi1yZWFkZXItcmVzcG9uc2UsXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1ib2R5LXMpO1xufVxuXG4vKiBlcnJvciAqL1xuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctbm90LXZhbGlkLXRpcCxcbi5jLWZvcm0tc3RhbmRhcmQgLnNjcmVlbi1yZWFkZXItcmVzcG9uc2Uge1xuXHRjb2xvcjogJGZvcm0tZXJyb3I7XG4gICAgY29sb3I6IHZhcigtLWZvcm0tZXJyb3IpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1ub3QtdmFsaWQtdGlwIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctdG9wOiAwLjM1ZW07XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgaW5wdXQud3BjZjctbm90LXZhbGlkIHtcblx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tZXJyb3IpO1xufVxuXG4uYy1mb3JtLXN0YW5kYXJkIGZvcm0uaW52YWxpZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLndwY2Y3IC5jLWZvcm0tc3RhbmRhcmQgZm9ybS5pbnZhbGlkIC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4uYy1mb3JtLXN0YW5kYXJkIC53cGNmNyBmb3JtLmludmFsaWQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi53cGNmNyBmb3JtLmludmFsaWQgLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctcmVzcG9uc2Utb3V0cHV0e1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mb3JtLWVycm9yKTtcbn1cblxuLyogb2sgKi9cbi5jLWZvcm0tc3RhbmRhcmQgZm9ybS5zZW50IC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgZm9ybS5zZW50IC53cGNmNy1yZXNwb25zZS1vdXRwdXQsXG4ud3BjZjcgLmMtZm9ybS1zdGFuZGFyZCBmb3JtLnNlbnQgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCxcbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3IGZvcm0uc2VudCAud3BjZjctcmVzcG9uc2Utb3V0cHV0LFxuLndwY2Y3IGZvcm0uc2VudCAuYy1mb3JtLXN0YW5kYXJkIC53cGNmNy1yZXNwb25zZS1vdXRwdXR7XG5cdGJhY2tncm91bmQtY29sb3I6ICRmb3JtLW9rO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvcm0tb2spO1xufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIHdwNyBzcGlubmVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5mb3JtLnN1Ym1pdHRpbmcgLndwY2Y3LXNwaW5uZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbkBrZXlmcmFtZXMgc3BpbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbi5jLWZvcm0tc3RhbmRhcmQgLndwY2Y3LXNwaW5uZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAtNHB4IDE0cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYm9yZGVyOiA0cHggc29saWQgcmdiYSgyOSwyOSwyNywuMyk7XG4gICAgLypib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1sKTsqL1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmMtZm9ybS1zdGFuZGFyZCAud3BjZjctc3Bpbm5lcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbn1cblxuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBY2NvcmRpb24gVmFyaWFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1hY2NvcmRpb24ge1xuICAgIC0tYWNjb3JkaW9uLWljb24tcGFkZGluZzogNjhweDtcbiAgICBcbiAgICAvKiBwbHVzL21pbnVzIGljb24gKi9cbiAgICAtLXBsdXMtbGVuZ3RoOiA0MHB4O1xuICAgIC0tcGx1cy1zdHJva2U6IDhweDtcbiAgICAtLXBsdXMtc3Ryb2tlLXBvc2l0aW9uOiAxNnB4O1xuICAgIFxuICAgIFxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmMtYWNjb3JkaW9uIHtcbiAgICAgICAgLS1hY2NvcmRpb24taWNvbi1wYWRkaW5nOiA0MHB4O1xuICAgICAgICBcbiAgICAgICAgLyogcGx1cy9taW51cyBpY29uICovXG4gICAgICAgIC0tcGx1cy1sZW5ndGg6IDIwcHg7XG4gICAgICAgIC0tcGx1cy1zdHJva2U6IDRweDtcbiAgICAgICAgLS1wbHVzLXN0cm9rZS1wb3NpdGlvbjogOHB4O1xuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAuYy1hY2NvcmRpb24gLmMtYWNjb3JkaW9uLWlubmVyIHtcbiAgICAgICAgLS1hY2NvcmRpb24taWNvbi1wYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQWNjb3JkaW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1hY2NvcmRpb24tY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkICRib3JkZXItYmFzaWM7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyLWJhc2ljO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1zKTtcbn1cblxuLmMtYWNjb3JkaW9uLWNvbnRhaW5lciArIC5jLWFjY29yZGlvbi1jb250YWluZXIge1xuXHRib3JkZXItdG9wOiBub25lO1xufVxuXG4uYy1hY2NvcmRpb24tdGl0bGUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IDAuOWVtIDAgMC45ZW0gdmFyKC0tYWNjb3JkaW9uLWljb24tcGFkZGluZyk7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5jLWFjY29yZGlvbi10aXRsZTpob3ZlciB7XG5cdGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xufVxuXG4uYy1hY2NvcmRpb24tY2hlY2sge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IC05OTk5cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBY2NvcmRpb24gSWNvbiBDaGVjayBwbHVzL21pbnVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YWZ0ZXIsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YWZ0ZXIsXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlLFxuLmMtYWNjb3JkaW9uLWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSlcbn1cblxuLmMtYWNjb3JkaW9uLWNoZWNrOmNoZWNrZWQrbGFiZWw6OmFmdGVyLFxuLmMtYWNjb3JkaW9uLWNoZWNrOm5vdCg6Y2hlY2tlZCkrbGFiZWw6OmFmdGVyIHtcbiAgIFx0bGVmdDogMDtcblx0LyptYXJnaW4tdG9wOiB2YXIoLS1wbHVzLXN0cm9rZS1wb3NpdGlvbik7Ki9cblx0d2lkdGg6IHZhcigtLXBsdXMtbGVuZ3RoKTtcblx0aGVpZ2h0OiB2YXIoLS1wbHVzLXN0cm9rZSk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5jLWFjY29yZGlvbi1jaGVjazpjaGVja2VkK2xhYmVsOjpiZWZvcmUsXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgIGxlZnQ6IHZhcigtLXBsdXMtc3Ryb2tlLXBvc2l0aW9uKTtcblx0d2lkdGg6IHZhcigtLXBsdXMtc3Ryb2tlKTtcblx0aGVpZ2h0OiB2YXIoLS1wbHVzLWxlbmd0aCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6bm90KDpjaGVja2VkKStsYWJlbDo6YmVmb3JlIHtcbiAgIFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXgtaGVpZ2h0OiAwO1xuIFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigwLDEsMCwxKTtcbn1cblxuLmMtYWNjb3JkaW9uLWlubmVyIHtcblx0cGFkZGluZzogMCAwIHZhcigtLXNwYWNpbmctcykgMDtcblxufVxuXG4uYy1hY2NvcmRpb24tY2hlY2s6Y2hlY2tlZCB+IC5jLWFjY29yZGlvbi1jb250ZW50IHtcblx0bWF4LWhlaWdodDogOTk5OXB4O1xuIFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGN1YmljLWJlemllcigxLDAsMSwwKTtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBWaWV3cG9ydFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQC1tcy12aWV3cG9ydCB7XG5cdHdpZHRoOiBkZXZpY2Utd2lkdGg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNZWRpYXF1ZXJpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNTgwcHgpIHtcblx0LyogY29udGFpbmVyIG1heCB3aWR0aCAqL1xuXHQuYy1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDE1MjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYXN5bS1sZWZ0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDgwcHggKyB2YXIoLS1ncmlkLWNvbnRhaW5lcikpICogLTEpO1xuICAgIH1cbiAgICBcbiAgICBcbiAgICAuYy10ZWFzZXItYXN5bS1yaWdodCAuYy10ZWFzZXItYXN5bS1pbWcge1xuICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygoODBweCArIHZhcigtLWdyaWQtY29udGFpbmVyKSkgKiAtMSk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTcyMHB4KSB7XG5cdC8qIGNvbnRhaW5lciBtYXggd2lkdGggKi9cblx0LmMtY29udGFpbmVyLW1lZGl1bSB7XG4gICAgICAgIG1heC13aWR0aDogMTY4MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1hc3ltLXJpZ2h0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEyNnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItYXN5bS1sZWZ0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTI2cHg7XG4gICAgfVxufVxuXG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjE1MDBweCkgeyAgXG5cdC5jLWhlYWRlci1sb2dvIHtcbiAgICAgICAgdG9wOiAycHg7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHR9XG4gICAgXG4gICAgLmMtaGVhZGVyLWxvZ28tY3J5c3RhbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0NnB4XG4gICAgfVxuICAgIFxuICAgIC5jLWhlYWRlci1sb2dvLXN1cHBvcnRlciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDk2cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTMwMHB4KSB7ICBcbiAgICAuYy1tYWluLW5hdi1saXN0IGxpICsgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgfVxufVxuXG4vKiBoZWFkZXIgc2hvdyBvZmZjYW52YXMgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMTAwcHgpIHsgIFxuXHQuYy1vZmZjYW52YXMtdHJpZ2dlci1vcGVuIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHRcblx0LmMtbWFpbi1uYXYsXG4gICAgLmMtaGVhZGVyLWxhbmcge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbiAgICBcbiAgICAuYy1oZWFkZXItbG9nbyB7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgLypoZWlnaHQ6IDg0cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTZweDsqL1xuICAgIH1cbiAgICBcbiAgICAuYy1oZWFkZXItbG9nby1jcnlzdGFsIHtcbiAgICAgICAgcGFkZGluZzogMjRweCAxNnB4IDEycHggMTZweDtcbiAgICB9XG5cbiAgICAuYy1oZWFkZXItbG9nby1zdXBwb3J0ZXIge1xuICAgICAgICBwYWRkaW5nOiAyMnB4IDE2cHggMTBweCAxNnB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1oZWFkZXItbG9nby1zdXBwb3J0ZXIgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy10aWNrZXRzIC5jLWNvbC00IHtcbiAgICAgICAgd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlOyAgICBcbiAgICB9XG4gIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTAyMHB4KSB7ICBcbiAgICAuYy10ZWFzZXIgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyIC5jLWNvbC04IHtcbiAgICAgICAgd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgICBcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhc2VyIC5jLWNvbC00IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1hc3ltLXJpZ2h0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWdyaWQtY29udGFpbmVyKSAqIC0xKTtcbiAgICB9XG5cbiAgICAuYy10ZWFzZXItYXN5bS1sZWZ0IC5jLXRlYXNlci1hc3ltLWltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1ncmlkLWNvbnRhaW5lcikgKiAtMSk7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlciAuYy1pY29uLXRpdGxlOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLThweDtcbiAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCguLi8uLi9pbWFnZXMvc3ByaXRlLWNyeXN0YWwuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jLWV2ZW50cyAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXItaW1nLWdhbGxlcnkgLmMtY29sLTQge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgNTAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgNTAlO1xuXHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0bWF4LXdpZHRoOiA1MCU7ICAgIFxuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItZXZlbnRzIC5jLWNvbC00LFxuICAgIC5jLXRlYXNlci1ldmVudHMgLmMtY29sLTgsXG4gICAgLmMtdGVhc2VyLWNsdWIgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyLWNsdWIgLmMtY29sLTgge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgXG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1ldmVudHMgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyLWNsdWIgLmMtY29sLTQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbiAgICB9XG4gICAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCkge1xuICAgIC5jLXRleHQtb25seSAuYy1jb2wtOCxcblx0LmMtbWFpbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtc2VjdGlvbi10aXRsZSAuYy1jb2wtOCxcblx0LmMtcXVvdGUgLmMtY29sLTgsXG4gICAgLmMtc2hvd3Jvb20gLmMtY29sLTgsXG4gICAgLmMtZm9ybS0xY29sIC5jLWNvbC04IHtcblx0XHQtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgICAgXHRcblx0fVxuICAgIFxuICAgIFxuXHQuYy1mb290ZXItbWFpbiAuYy1jb2wtMyB7XG5cdFx0d2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDUwJTtcblx0XHQtbXMtZmxleDogMCAwIDUwJTtcblx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdG1heC13aWR0aDogNTAlOyBcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbCk7XG5cdH1cblx0XG5cdC5jLWZvb3Rlci1tYWluIC5jLWNvbC02LFxuICAgIC5jLWZvb3Rlci1kaXNjbGFpbWVyIC5jLWNvbC02IHtcblx0XHR3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgICBcblx0fVxuICAgIFxuICAgIC5jLWZvb3Rlci1kaXNjbGFpbWVyIC5jLWNvbC02IHtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0OyAgIFxuXHR9XG4gICAgXG4gICAgLmMtZm9vdGVyLWRpc2NsYWltZXIgLmMtY29sLTY6Zmlyc3QtY2hpbGQge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG5cdH1cbiAgICBcbiAgICAuYy1mb290ZXItZGlzY2xhaW1lci1saXN0IGxpLFxuICAgIC5jLWZvb3Rlci1kaXNjbGFpbWVyLWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItZXRoaWNzLWxpc3QgbGkge1xuXHRcdHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG5cdFx0LW1zLWZsZXg6IDAgMCA1MCU7XG5cdFx0ZmxleDogMCAwIDUwJTtcblx0XHRtYXgtd2lkdGg6IDUwJTsgXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWwpO1xuXHR9XG4gICAgXG4gICAgLmMtdGVhc2VyLWV0aGljcy1pdGVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTAwcHgpIHsgIFxuICAgIC5jLWZvcm0tMmNvbCAuYy1jb2wtNiB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7IFxuICAgIH0gXG4gICAgXG4gICAgLmMtZm9ybS0yY29sIC5jLWNvbC02Omxhc3QtY2hpbGQgaDMge1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAycHggJGJvcmRlci1iYXNpYztcbiAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtcyk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWJhc2ljKTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLWw7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWwpO1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbCkgLSB2YXIoLS1zcGFjaW5nLXMpKTtcbiAgICB9XG4gICAgXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo4MDBweCkge1xuICAgIFxuICAgIC5jLW1haW4tdGl0bGUtNDA0IC5jLWNvbC03LFxuICAgIC5jLW1haW4tdGl0bGUtNDA0IC5jLWNvbC01IHtcbiAgICAgICAgd2Via2l0LWJveC1mbGV4OiAwO1xuXHRcdC13ZWJraXQtZmxleDogMCAwIDEwMCU7XG5cdFx0LW1zLWZsZXg6IDAgMCAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuXHRcdG1heC13aWR0aDogMTAwJTsgXG4gICAgfVxuICAgIFxuICAgIC5jLW1haW4tdGl0bGUtNDA0IC5jLWNvbC03IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sKTtcbiAgICB9XG4gICAgXG59XG5cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHsgIFxuXHQuYy10ZXh0LW9ubHkgLmMtY29sLTgsXG5cdC5jLW1haW4tdGl0bGUgLmMtY29sLTgsXG5cdC5jLXNlY3Rpb24tdGl0bGUgLmMtY29sLTgsXG5cdC5jLXF1b3RlIC5jLWNvbC04LFxuICAgIC5jLXNob3dyb29tIC5jLWNvbC04LFxuICAgIC5jLWZvcm0tMWNvbCAuYy1jb2wtOCB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgIFx0XG5cdH1cbiAgICBcbiAgICAuYy1nYWxsZXJ5IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgMzB2dyk7XG4gICAgfVxuXG4gICAgLmMtZ2FsbGVyeS1pdGVtIGltZyxcbiAgICAuYy1nYWxsZXJ5LWl0ZW0gdmlkZW8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG5cbiAgICAuYy1nYWxsZXJ5LXZhcjEtN3BpY3MgLmMtZ2FsbGVyeS1pdGVtLTEsXG4gICAgLmMtZ2FsbGVyeS12YXIyLTdwaWNzIC5jLWdhbGxlcnktaXRlbS0xIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7ICBcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG4gICAgfVxuXG4gICAgLmMtZ2FsbGVyeS12YXIxLTdwaWNzIC5jLWdhbGxlcnktaXRlbS00IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7ICBcbiAgICAgICAgZ3JpZC1yb3c6IDMgLyBzcGFuIDM7XG4gICAgfVxuXG4gICAgLmMtZ2FsbGVyeS12YXIyLTdwaWNzIC5jLWdhbGxlcnktaXRlbS01IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7ICBcbiAgICAgICAgZ3JpZC1yb3c6IDMgLyBzcGFuIDM7XG4gICAgfVxuICAgIFxuICAgIC5jLWdhbGxlcnktMmNvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDUsIDIwdncpO1xuICAgIH1cblxuICAgIC5jLWdhbGxlcnktMmNvbCAuYy1nYWxsZXJ5LWl0ZW0tMSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjtcbiAgICB9XG4gICAgXG4gICAgLmMtZ2FsbGVyeS0yY29sIC5jLWdhbGxlcnktaXRlbS0yIHtcbiAgICAgICAgZ3JpZC1yb3c6IDMgLyBzcGFuIDM7XG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlciAuYy1jb2wtNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zMnB4O1xuICAgICAgfVxuICAgIFxuICAgIC5jLXRlYXNlciAuYy1pY29uLXRpdGxlOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwcHggLTIwMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy10ZWFtIC5jLWNvbC00IHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCA1MCU7XG5cdFx0LW1zLWZsZXg6IDAgMCA1MCU7XG5cdFx0ZmxleDogMCAwIDUwJTtcblx0XHRtYXgtd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgXG4gICAgLmMtdGVhbS1pbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYy1mb290ZXItbmVvZmx1eGU6OmJlZm9yZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwcHggMTRweDtcbiAgICB9XG4gICAgXG4gICAgLmMtdGlja2V0cyAuYy1jb2wtNCB7XG4gICAgICAgIHdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICBcbiAgICB9XG4gICAgXG4gICAgLmMtbWVtYmVycy1zZWFyY2ggLmMtY29sLTYge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyBcbiAgICB9IFxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgLmMtdGVhc2VyLWNsdWItbGlzdCBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG5cdFx0bWF4LXdpZHRoOiA1MCU7IFxuICAgIH1cbiAgICBcbiAgICAuYy10ZWFzZXItY2x1Yi1pbWcsXG4gICAgLmMtdGVhc2VyLWV0aGljcy1pbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgIH0gXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUxcHgpIHtcbiAgICAuYy1ldmVudHMgLmMtY29sLTQsXG4gICAgLmMtdGVhc2VyLWV2ZW50cyAuYy1jb2wtNixcbiAgICAuYy10aWNrZXRzIC5jLWNvbC00LFxuICAgIC5jLXRpY2tldC1ib3gge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBcbiAgICAuYy1ldmVudHMtYm94LFxuICAgIC5jLXRpY2tldC1ib3h7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gICAgXG4gICAgLmMtdGlja2V0LWJveC1kZXNjIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICAgLmMtZXZlbnRzIC5jLWNvbC00LFxuICAgIC5jLXRlYXNlci1ldmVudHMgLmMtY29sLTYge1xuICAgICAgICB3ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgXG4gICAgfVxuICAgIFxuICAgIC5jLXRlYXNlci1ldmVudHMgLmMtY29sLTY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ3JpZC1jb250YWluZXIpO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjUwMHB4KSB7ICBcblx0LmMtdGVhbSAuYy1jb2wtNCxcbiAgICAuYy10ZWFzZXItaW1nLWdhbGxlcnkgLmMtY29sLTQge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgICBcdFxuXHR9XG4gICAgXG4gICAgLmMtZm9vdGVyLXN1cHBvcnRlZC1ieSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjQwMHB4KSB7ICBcblx0LmMtdGVhc2VyLWNsdWItbGlzdCBsaSxcbiAgICAuYy10ZWFzZXItZXRoaWNzLWxpc3QgbGkge1xuXHRcdC13ZWJraXQtYm94LWZsZXg6IDA7XG5cdFx0LXdlYmtpdC1mbGV4OiAwIDAgMTAwJTtcblx0XHQtbXMtZmxleDogMCAwIDEwMCU7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlOyAgICBcdFxuXHR9XG4gICAgXG4gICAgLmMtdGVhc2VyLWV0aGljcy1pdGVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MzgwcHgpIHsgIFxuXHQuYy1mb290ZXItbWFpbiAuYy1jb2wtMyB7XG5cdFx0LXdlYmtpdC1ib3gtZmxleDogMDtcblx0XHQtd2Via2l0LWZsZXg6IDAgMCAxMDAlO1xuXHRcdC1tcy1mbGV4OiAwIDAgMTAwJTtcblx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7ICAgIFx0XG5cdH1cbiAgICBcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQcmludCBDU1NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgcHJpbnQge1xuICAgIC8qIGJhc2Ugc3R5bGVzICovXG4gICAgKiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IFxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXHRcblx0YSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgXG4gICAgLmMtaXIgYTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gICAgYVtocmVmXTphZnRlciB7XG5cdFx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuXHQgIH1cbiAgICBcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cbiAgICBcbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgXG4gICAgfVxuICAgIFxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG4gICAgXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICAgICBcbiAgICBAcGFnZSB7XG4gICAgICAgIG1hcmdpbjogMC41Y207XG4gICAgfVxuICAgIFxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuICAgIFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgYnJlYWstYWZ0ZXI6YXZvaWQ7XG4gICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cbiAgICBcbiAgICAvKiBmb250LXNpemVzICovXG5cdFxuXHRodG1sLFxuXHRib2R5IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0LypvdmVyZmxvdzogYXV0bzsqL1xuXHR9XG4gICAgXG4gICAgYm9keSB7XG4gICAgICAgIGZvbnQtc2l6ZToxMnB4OyAgICBcbiAgICB9XG5cdFxuXHRoMSwgLmMtaDEge1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0fVxuXHRcblx0LmMtbGVhZCxcblx0LmMtdGV4dC1ibG9jayAuYy1sZWFkLFxuXHRoMiwgLmMtaDIsXG5cdGgzLCAuYy1oMyxcblx0LmMtdGV4dC1ibG9jayBibG9ja3F1b3RlIHAge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0fVxuXHRcblx0LyogcHJvamVjdCBzdHlsZXMgKi9cblx0LmMtY29udGFpbmVyIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMmVtO1xuXHR9XG5cdFxuXHQuYy1mb290ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG5cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/