/**
 * Load all the files
 */
/**
 * Settings
 *
 * Used with preprocessors and contain font,
 * colors and other definitions
 */
/**
 * Settings
 *
 * Used with preprocessors and contain font,
 * colors and other definitions
 */
/*
 * Define colors
 */
/*
 * Beaking Points
 */
/**
 * Tools
 *
 * Globally used mixins and functions. It's important
 * not to output any CSS in the first 2 layers.
 */
/**
 * Tools
 *
 * Globally used mixins and functions. It's important
 * not to output any CSS in the first 2 layers.
 */
/*
 * Useful mixins
 */
/**
 * Hides an element, but still keeps it in the DOM
 * (unlike display:none)
 */
/**
 * Generic
 *
 * Reset and/or normalize styles, box-sizing definition, etc.
 * This is the first layer which generates actual CSS
 */
/**
 * Generic
 *
 * Reset and/or normalize styles, box-sizing definition, etc.
 * This is the first layer which generates actual CSS
 */
/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
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/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

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

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

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

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

/**
 * 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
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

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

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 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, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

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

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

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

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */ /* 2 */
  box-sizing: content-box;
}

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

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

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

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

td,
th {
  padding: 0;
}

ul {
  padding: 0;
  margin: 0;
}

textarea,
input[type=text],
input[type=email],
input[type=search],
input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

/**
 * Generic
 *
 * Reset and/or normalize styles, box-sizing definition, etc.
 * This is the first layer which generates actual CSS
 */
/**
 * Include font files
 *
 */
/* source-sans-pro-regular - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-regular.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-regular.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* source-sans-pro-italic - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-italic.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* source-sans-pro-600 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-600.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-600.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* source-sans-pro-600italic - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-600italic.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-600italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* source-sans-pro-700italic - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-700italic.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-700italic.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* source-sans-pro-700 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/source-sans-pro-latin-700.woff2") format("woff2"), url("../fonts/source-sans-pro-latin-700.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/**
 * Base / Elements
 *
 * Styling of bare HTML elements (like H1, A, etc.).
 * These acome with default styling from the browser
 * so we can redefine them here.
 */
/**
 * Base / Elements
 *
 * Styling of bare HTML elements (like H1, A, etc.).
 * These acome with default styling from the browser
 * so we can redefine them here.
 */
html {
  box-sizing: border-box;
  height: 100%;
  color: #16161d;
  font-size: 16px;
  line-height: 1.4;
}

*, *:before, *:after {
  box-sizing: inherit;
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  margin: 0;
}

p {
  margin: 0 0 1rem;
  line-height: 1.6;
}

ul, ol {
  margin: 0 0 1rem;
  padding: 0 0 0 1rem;
  line-height: 1.6;
}
ul li, ol li {
  margin: 0 0 0.25rem;
}

a {
  text-decoration: none;
  color: inherit;
}

table {
  border-collapse: collapse;
}

td {
  padding: 6px;
  border: 1px solid #dfdfdf;
}

tr:nth-child(even):not([bgcolor]) td:not([bgcolor]) {
  background: #f9f9f9;
}

hr {
  margin: 3rem auto;
  width: 50%;
  border: none;
  border-bottom: 1px solid rgb(243.4, 243.4, 243.4);
}

/**
 * Objects
 *
 * Class-based selectors which define undecorated
 * design patterns.
 * e.g. ".thumbnail-list"
 */
/**
 * Objects
 *
 * Class-based selectors which define undecorated
 * design patterns.
 * e.g. ".thumbnail-list"
 */
.row {
  margin: 0 0 60px;
}
.row:after {
  content: "";
  clear: both;
  display: block;
}

.column:after {
  content: "";
  clear: both;
  display: block;
}
.column.right {
  float: right;
}
.column.col-50 {
  width: 100%;
}
@media only screen and (min-width: 640px) {
  .column.col-50 {
    width: 50%;
  }
}
.column .widget {
  margin: 0 0 60px;
  float: left;
  width: 100%;
}
@media only screen and (min-width: 640px) {
  .column .widget {
    width: 50%;
  }
}

.entry a,
.comments-area a {
  color: #de2122;
  text-decoration: underline;
}

.button {
  padding: 7px 10px;
  border: 1px solid #e3e3e2;
  border-left: none;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  width: auto;
}
@media screen and (min-width: 1050px) {
  .button {
    margin: 0;
    padding: 8px 16px;
    font-size: 16px;
    border-left: 1px solid #e3e3e2;
  }
}

.table-container {
  width: 100%;
  overflow-x: scroll;
}

/**
 * Components
 *
 * Specific UI components. This is where the majority
 * of our work takes place and our UI components are
 * basically composed of Objects and Components
 * e.g. ".featured-products-list"
 */
/**
 * Components
 *
 * Specific UI components. This is where the majority
 * of our work takes place and our UI components are
 * basically composed of Objects and Components
 * e.g. ".featured-products-list"
 */
/**
 * Site Wrapper
 *
 * Define the order of basic site elements
 */
.site-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.site-wrapper .site-header {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.site-wrapper .site-content-index, .site-wrapper .site-content-single, .site-wrapper .site-content-page, .site-wrapper .site-content-error, .site-wrapper .site-content-archive, .site-wrapper .site-content-search, .site-wrapper .site-content-events, .site-wrapper .not-found {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  width: 100%;
}
.site-wrapper .sidebar {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
.site-wrapper .site-footer {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5;
}
.site-wrapper .ad-top-leaderboard {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

/**
 * Site Header
 */
.site-header {
  position: relative;
  margin-bottom: 20px;
  background-color: white;
  border-bottom: 1px solid rgb(243.4, 243.4, 243.4);
  width: 100%;
}
.site-header:after {
  content: "";
  clear: both;
  display: block;
}

body.fixed-nav .site-header {
  position: fixed;
  top: 0;
  left: 0;
  padding: 0;
  width: 100%;
  max-width: none;
  z-index: 21;
  background-color: white;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  border-color: #fff;
  -webkit-transition: box-shadow 0.5s 0.1s, border 0.6s;
          transition: box-shadow 0.5s 0.1s, border 0.6s;
}

body.fixed-nav.admin-bar .site-header {
  top: 32px;
}

.site-header-inner {
  position: relative;
  padding: 10px 0 0 0;
}
@media screen and (min-width: 1050px) {
  .site-header-inner {
    padding-right: 20px;
  }
}
@media screen and (min-width: 1240px) {
  .site-header-inner {
    padding-right: 210px;
    margin: 0 auto;
    max-width: 1600px;
  }
}

@media screen and (min-width: 1240px) {
  body.fixed-nav .site-header-inner {
    margin: 0 auto;
    padding-right: 210px;
    max-width: 1600px;
  }
}

.site-header-logo {
  margin: 5px 0 10px 20px;
  width: 160px;
  display: block;
}
.site-header-logo svg {
  width: 160px;
  height: 52px;
}
@media screen and (min-width: 680px) {
  .site-header-logo {
    width: 200px;
  }
  .site-header-logo svg {
    width: 200px;
    height: 65px;
  }
}
@media screen and (min-width: 1050px) {
  .site-header-logo {
    float: left;
    width: 250px;
    display: inline-block;
  }
  .site-header-logo svg {
    width: 250px;
    height: 81px;
  }
}
@media screen and (min-width: 1240px) {
  .site-header-logo {
    margin-left: 35px;
  }
}
@media screen and (min-width: 1600px) {
  .site-header-logo {
    float: left;
    width: 282px;
    display: inline-block;
  }
  .site-header-logo svg {
    width: 282px;
    height: 91px;
  }
}
.site-header-logo svg {
  vertical-align: bottom;
}

body.fixed-nav .site-header-logo {
  width: 160px;
}
body.fixed-nav .site-header-logo svg {
  width: 160px;
  height: 52px;
}

/**
 * Main Navigation
 */
.toggle-navigation {
  position: absolute;
  top: 21px;
  right: 20px;
  padding: 10px 34px 10px 10px;
  color: #de2122;
  color: #16161d;
  background: url(../images/icon-menu.svg) no-repeat center right 10px;
  background-size: 18px 15px;
  font-size: 16px;
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
  border: 1px solid #e3e3e2;
  border-radius: 2px;
}
@media screen and (min-width: 680px) {
  .toggle-navigation {
    top: 30px;
  }
}
@media screen and (min-width: 1050px) {
  .toggle-navigation {
    display: none;
  }
}

.navigation-toggle:checked ~ .toggle-navigation {
  background: url(../images/icon-x.svg) no-repeat center right 11px;
  background-size: 15px 15px;
}

.navigation-toggle {
  display: none;
}

body.fixed-nav .site-header-navigation ul {
  margin-top: 19px;
}

.site-header-navigation {
  position: relative;
  height: 0;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header-navigation:after {
  content: "";
  clear: both;
  display: block;
}
@media screen and (min-width: 1050px) {
  .site-header-navigation {
    float: right;
    margin-right: 58px;
    height: auto;
    overflow: auto;
    border-top: none;
    border-bottom: none;
  }
}
@media screen and (min-width: 1360px) {
  .site-header-navigation {
    margin-right: 78px;
  }
}
.site-header-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (min-width: 1050px) {
  .site-header-navigation ul {
    margin-top: 39px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 16px;
  }
}
@media screen and (min-width: 1600px) {
  .site-header-navigation ul {
    margin-top: 44px;
  }
}
.site-header-navigation .menu-item {
  display: inline-block;
  padding: 12px 22px;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
@media screen and (min-width: 480px) {
  .site-header-navigation .menu-item {
    -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
  }
}
@media screen and (min-width: 630px) {
  .site-header-navigation .menu-item {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
  }
}
@media screen and (min-width: 680px) {
  .site-header-navigation .menu-item {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
@media screen and (min-width: 1050px) {
  .site-header-navigation .menu-item {
    padding: 0;
    margin-left: 24px;
  }
  .site-header-navigation .menu-item:first-of-type {
    margin-left: 0;
  }
}
@media screen and (min-width: 1360px) {
  .site-header-navigation .menu-item {
    margin-left: 44px;
  }
}
.site-header-navigation .menu-item a {
  display: inline-block;
  padding: 2px 0 1px 32px;
}
.site-header-navigation .menu-item a:hover, .site-header-navigation .menu-item a:focus {
  color: #de2122;
}
.site-header-navigation .menu-item.icon-technik a {
  background: url(../images/icon-technik.svg) no-repeat left center;
  background-size: 29px 29px;
}
.site-header-navigation .menu-item.icon-technik a:hover, .site-header-navigation .menu-item.icon-technik a:focus {
  background: url(../images/icon-technik-red.svg) no-repeat left center;
  background-size: 29px 29px;
}
.site-header-navigation .menu-item.icon-fotokultur a {
  background: url(../images/icon-fotokultur.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-fotokultur a:hover, .site-header-navigation .menu-item.icon-fotokultur a:focus {
  background: url(../images/icon-fotokultur-red.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-buecher a {
  background: url(../images/icon-buecher.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-buecher a:hover, .site-header-navigation .menu-item.icon-buecher a:focus {
  background: url(../images/icon-buecher-red.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-top-stories a {
  background: url(../images/icon-top-stories.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-top-stories a:hover, .site-header-navigation .menu-item.icon-top-stories a:focus {
  background: url(../images/icon-top-stories-red.svg) no-repeat left center;
  background-size: 28px 28px;
}
.site-header-navigation .menu-item.icon-software a {
  background: url(../images/icon-software.svg) no-repeat left center;
  background-size: 27px 27px;
}
.site-header-navigation .menu-item.icon-software a:hover, .site-header-navigation .menu-item.icon-software a:focus {
  background: url(../images/icon-software-red.svg) no-repeat left center;
  background-size: 27px 27px;
}
.site-header-navigation .menu-item.icon-events a {
  background: url(../images/icon-events.svg) no-repeat left center;
  background-size: 27px 27px;
}
.site-header-navigation .menu-item.icon-events a:hover, .site-header-navigation .menu-item.icon-events a:focus {
  background: url(../images/icon-events-red.svg) no-repeat left center;
  background-size: 27px 27px;
}

.navigation-toggle:checked ~ .site-header-navigation {
  padding-top: 0.25rem;
  height: auto;
  overflow: auto;
  border-top: 1px solid rgb(243.4, 243.4, 243.4);
}
@media screen and (min-width: 1050px) {
  .navigation-toggle:checked ~ .site-header-navigation {
    padding-top: 0;
    border-top: none;
  }
}

/**
 * Search Form
 */
.toggle-search-form {
  position: absolute;
  top: 21px;
  right: 112px;
  display: inline-block;
  width: 38px;
  height: 38px;
  overflow: hidden;
  background: url(../images/icon-search.svg) no-repeat center center;
  background-size: 20px 20px;
  text-indent: -100000em;
  border: 1px solid #e3e3e2;
  border-radius: 2px;
  cursor: pointer;
}
@media screen and (min-width: 680px) {
  .toggle-search-form {
    top: 30px;
  }
}
@media screen and (min-width: 1050px) {
  .toggle-search-form {
    top: 41px;
    right: 20px;
    border: none;
  }
}
@media screen and (min-width: 1240px) {
  .toggle-search-form {
    right: 210px;
  }
}
@media screen and (min-width: 1600px) {
  .toggle-search-form {
    top: 46px;
  }
}

@media screen and (min-width: 1050px) {
  .fixed-nav .toggle-search-form {
    top: 22px;
  }
}

.search-toggle:checked ~ .toggle-search-form {
  background: url(../images/icon-x.svg) no-repeat center center;
  background-size: 18px 18px;
}

.toggle-search-form {
  cursor: pointer;
}

.search-toggle {
  display: none;
}

.site-header-search {
  clear: both;
  height: 0;
  overflow: hidden;
  max-width: 95%;
}
@media screen and (min-width: 1050px) {
  .site-header-search {
    height: auto;
    max-width: none;
  }
}

.search-toggle:checked ~ .site-header-search {
  height: auto;
}

.search-toggle:checked ~ .site-header-search .search-form {
  height: auto;
  padding: 20px 20px 20px;
}

.search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
  max-width: 400px;
}
@media screen and (min-width: 1050px) {
  .search-form {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 0;
    max-width: 560px;
    height: 0px;
    overflow: hidden;
  }
}
.search-form .search-field {
  padding: 4px;
  border: 1px solid #e3e3e2;
  font-size: 14px;
  line-height: 1;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media screen and (min-width: 1050px) {
  .search-form .search-field {
    margin-bottom: 10px;
    padding: 8px;
    font-size: 20px;
    width: 100%;
  }
}
.search-form .search-submit {
  padding: 7px 10px;
  border: 1px solid #e3e3e2;
  border-left: none;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  width: auto;
}
@media screen and (min-width: 1050px) {
  .search-form .search-submit {
    margin: 0;
    padding: 8px 16px;
    font-size: 16px;
    border-left: 1px solid #e3e3e2;
  }
}

/**
 * Homepage
 */
.site-content-index, .site-content-archive, .site-content-search, .site-content-events {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1600px;
}
.site-content-index .articles, .site-content-index .events-container, .site-content-archive .articles, .site-content-archive .events-container, .site-content-search .articles, .site-content-search .events-container, .site-content-events .articles, .site-content-events .events-container {
  width: 100%;
}
@media screen and (min-width: 860px) {
  .site-content-index .articles, .site-content-index .events-container, .site-content-archive .articles, .site-content-archive .events-container, .site-content-search .articles, .site-content-search .events-container, .site-content-events .articles, .site-content-events .events-container {
    float: left;
    width: 66.66666%;
  }
}
@media screen and (min-width: 1240px) {
  .site-content-index .articles, .site-content-index .events-container, .site-content-archive .articles, .site-content-archive .events-container, .site-content-search .articles, .site-content-search .events-container, .site-content-events .articles, .site-content-events .events-container {
    width: 58.33333%;
    width: -webkit-calc(66.66666% - 95px);
    width: calc(66.66666% - 95px);
  }
}
.site-content-index .sidebar, .site-content-archive .sidebar, .site-content-search .sidebar, .site-content-events .sidebar {
  width: 100%;
}
@media screen and (min-width: 860px) {
  .site-content-index .sidebar, .site-content-archive .sidebar, .site-content-search .sidebar, .site-content-events .sidebar {
    float: left;
    padding-left: 20px;
    width: 33.33333%;
  }
}
@media screen and (min-width: 1240px) {
  .site-content-index .sidebar, .site-content-archive .sidebar, .site-content-search .sidebar, .site-content-events .sidebar {
    width: 29.16666%;
    width: -webkit-calc(33.33333% - 95px);
    width: calc(33.33333% - 95px);
  }
}
.site-content-index .side-ad-wrapper, .site-content-archive .side-ad-wrapper, .site-content-search .side-ad-wrapper, .site-content-events .side-ad-wrapper {
  display: none;
}
@media screen and (min-width: 1240px) {
  .site-content-index .side-ad-wrapper, .site-content-archive .side-ad-wrapper, .site-content-search .side-ad-wrapper, .site-content-events .side-ad-wrapper {
    display: block;
    float: left;
    padding-left: 20px;
    width: 12.5%;
    width: 190px;
  }
}

/**
 * Single Tempate
 */
.site-content-single, .site-content-page, .site-content-search, .site-content-error {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1600px;
}
.site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
  width: 100%;
}
@media screen and (min-width: 860px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    float: left;
    width: 66.66666%;
  }
}
@media screen and (min-width: 1240px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    width: 58.33333%;
    width: -webkit-calc(66.66666% - 95px);
    width: calc(66.66666% - 95px);
  }
}
.site-content-single .sidebar, .site-content-page .sidebar, .site-content-search .sidebar, .site-content-error .sidebar {
  width: 100%;
}
@media screen and (min-width: 860px) {
  .site-content-single .sidebar, .site-content-page .sidebar, .site-content-search .sidebar, .site-content-error .sidebar {
    float: left;
    padding-left: 20px;
    width: 33.33333%;
  }
}
@media screen and (min-width: 1240px) {
  .site-content-single .sidebar, .site-content-page .sidebar, .site-content-search .sidebar, .site-content-error .sidebar {
    width: 29.16666%;
    width: -webkit-calc(33.33333% - 95px);
    width: calc(33.33333% - 95px);
  }
}
.site-content-single .side-ad-wrapper, .site-content-page .side-ad-wrapper, .site-content-search .side-ad-wrapper, .site-content-error .side-ad-wrapper {
  display: none;
}
@media screen and (min-width: 1240px) {
  .site-content-single .side-ad-wrapper, .site-content-page .side-ad-wrapper, .site-content-search .side-ad-wrapper, .site-content-error .side-ad-wrapper {
    display: block;
    float: left;
    padding-left: 20px;
    width: 12.5%;
    width: 190px;
  }
}

.articles {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.articles .archive-title, .articles .search-title {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-bottom: 30px;
}
.articles .hero-embed {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
}
@media screen and (min-width: 1240px) {
  .articles .hero-embed {
    margin: 0 22px 0px;
  }
}
.articles .hero-link {
  width: 100%;
  padding: 0.5em 1em 2em;
  color: #de2122;
  text-decoration: underline;
  text-align: center;
}
.articles .teaser {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  overflow: hidden;
  /**
   * Bring order to the chaos that is flexbox!
   *
   * Rectangle Ad: 10
   * Pagination: 1000
   *
   */
}
.articles .teaser:nth-of-type(1), .articles .teaser:nth-of-type(2), .articles .teaser:nth-of-type(3) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.articles .teaser:nth-of-type(4), .articles .teaser:nth-of-type(5), .articles .teaser:nth-of-type(6) {
  -webkit-box-ordinal-group: 21;
      -ms-flex-order: 20;
          order: 20;
}
.articles .teaser:nth-of-type(7), .articles .teaser:nth-of-type(8), .articles .teaser:nth-of-type(9), .articles .teaser:nth-of-type(10), .articles .teaser:nth-of-type(11), .articles .teaser:nth-of-type(12) {
  -webkit-box-ordinal-group: 41;
      -ms-flex-order: 40;
          order: 40;
}
@media screen and (min-width: 420px) {
  .articles .teaser {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .articles .teaser:nth-of-type(2n+1) {
    padding-right: 10px;
  }
  .articles .teaser:nth-of-type(2n+2) {
    padding-left: 10px;
  }
  .articles .teaser:nth-of-type(3) {
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15;
  }
}
@media screen and (min-width: 860px) {
  .articles .teaser {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1240px) {
  .articles .teaser {
    -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
    max-width: 33.33333%;
  }
  .articles .teaser:nth-of-type(3) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .articles .teaser:nth-of-type(2n+1), .articles .teaser:nth-of-type(2n+2) {
    padding-left: 0px;
    padding-right: 0px;
  }
}
.articles .ad-rectangle {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.articles .ad-sponsor-thanks {
  -webkit-box-ordinal-group: 31;
      -ms-flex-order: 30;
          order: 30;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}
.articles .pagination {
  -webkit-box-ordinal-group: 1001;
      -ms-flex-order: 1000;
          order: 1000;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media screen and (min-width: 860px) {
  .articles .pagination {
    grid-column-start: 1;
    grid-column-end: 2;
  }
}
.articles .teaser-event {
  margin-bottom: 20px;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -webkit-box-ordinal-group: 10 !important;
      -ms-flex-order: 9 !important;
          order: 9 !important;
}
@media screen and (min-width: 420px) {
  .articles .teaser-event {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
@media screen and (min-width: 1240px) {
  .articles .teaser-event {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
  }
}

.sidebar .widget {
  padding-bottom: 40px;
  background-color: white;
  border-top: 40px solid white;
  border-bottom: 1px solid rgb(243.4, 243.4, 243.4);
}
.sidebar .widget h3 {
  margin-bottom: 10px;
  color: #de2122;
}
.sidebar .widget a {
  color: #de2122;
  text-decoration: underline;
}

.social-media {
  margin-bottom: 20px;
  width: 100%;
}

.social-media-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.social-media-link {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #16161d;
  text-decoration: underline;
  border: 1px solid rgb(243.4, 243.4, 243.4);
  text-decoration: none;
}
.social-media-link span {
  display: block;
  padding: 7px 5px 7px 27px;
}
.social-media-link.twitter {
  margin-left: 5px;
}
.social-media-link.twitter span {
  background: url(../images/twitter.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-link.facebook {
  margin-right: 5px;
}
.social-media-link.facebook span {
  background: url(../images/facebook.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-link:hover {
  background-color: #de2122;
  color: white;
}
.social-media-link:hover.twitter span {
  background: url(../images/twitter-white.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-link:hover.facebook span {
  background: url(../images/facebook-white.svg) no-repeat left center;
  background-size: 20px 20px;
}

.newsletter input[type=email] {
  padding: 4px;
  width: 100%;
  font-size: 16px;
  border: 1px solid #ddd;
}
.newsletter .mc-field-group {
  margin-bottom: 1rem;
}
.newsletter h4 {
  margin-bottom: 6px;
}
.newsletter ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.newsletter ul:after {
  content: "";
  clear: both;
  display: block;
}
.newsletter li {
  float: left;
  margin: 0 20px 10px 0;
  white-space: nowrap;
}
.newsletter li:last-child {
  margin-right: 0;
}
.newsletter input[type=checkbox] {
  margin-right: 6px;
}
.newsletter .mailchimp-pricay-hint {
  margin-top: -10px;
  font-size: 0.875em;
}

.side-ad-wrapper {
  position: relative;
  display: none;
}
@media screen and (min-width: 1240px) {
  .side-ad-wrapper {
    display: block;
  }
}

/**
 * Donation box
 */
.donation-box {
  margin-bottom: 20px;
  padding: 1em 0.8em;
  background-color: #de2122;
  color: white;
  text-align: center;
}

h3.donation-header {
  margin: 0;
  font-size: 1em;
}

.donation-amounts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.8em 0 0.3em;
}

.donation-button {
  margin: 0 0 0.5em;
  min-width: 101px;
  padding: 0.6em 1em;
  background: transparent;
  border: 1px solid white;
  border-radius: 10px;
}
.donation-button:hover {
  background-color: rgb(177.6, 26.4, 27.2);
}
.donation-button:nth-of-type(2) {
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.donation-button .amount {
  display: block;
  margin: 0;
  font-size: 1.6em;
  font-weight: 700;
  line-height: 1;
}
.donation-button .currency {
  display: block;
  line-height: 1;
  font-size: 0.6em;
}

.donation-provider-info a {
  color: white;
  font-weight: 700;
}

.site-content-page .entry .donation-box p,
.sidebar .donation-box p {
  margin: 0;
  font-size: 0.6em;
}

.sidebar .donation-box {
  margin: 20px 0 0;
  font-size: 1.2rem;
}
.sidebar .donation-box .donation-button {
  min-width: 1px;
}

@media screen and (min-width: 420px) and (max-width: 860px) {
  .sidebar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .sidebar .ad-sponsors {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .sidebar .teaser-top-story {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    margin-bottom: 20px;
  }
  .sidebar .newsletter {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    border: none;
  }
  .sidebar .donation-box {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    margin: 0 0 20px 0;
  }
  .sidebar .widget_recent_comments {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
    border-top: none;
  }
}
@media screen and (min-width: 600px) and (max-width: 860px) {
  .sidebar .ad-sponsors {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
  }
  .sidebar .newsletter {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    padding-left: 20px;
  }
}

.site-content-single, .site-content-page, .site-content-search, .site-content-error {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1600px;
}
@media screen and (min-width: 860px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    padding: 2rem 2rem 2rem 0;
  }
}
@media screen and (min-width: 1050px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    padding-left: 5px;
  }
}
@media screen and (min-width: 1240px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    padding-left: 18px;
    padding-right: 4rem;
  }
}
@media screen and (min-width: 1600px) {
  .site-content-single .post, .site-content-single .page, .site-content-page .post, .site-content-page .page, .site-content-search .post, .site-content-search .page, .site-content-error .post, .site-content-error .page {
    padding-right: 6rem;
  }
}

/**
 * Article Teasers
 */
.teaser {
  position: relative;
  margin-bottom: 20px;
  /**
   * Link to encompass the whole teaser
   */
}
.teaser:after {
  content: "";
  clear: both;
  display: block;
}
@media screen and (min-width: 1240px) {
  .teaser {
    border: 2px solid transparent;
  }
}
.teaser .teaser-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  vertical-align: center;
}
@media screen and (min-width: 420px) {
  .teaser .teaser-link {
    display: block;
  }
}
@media screen and (min-width: 1240px) {
  .teaser .teaser-link {
    padding: 20px 20px 10px;
  }
}
.teaser .teaser-thumbnail-wrap {
  float: left;
  margin: 5px 20px 0 0;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100px;
          flex: 0 0 100px;
  width: 100px;
  height: auto;
}
@media only screen and (min-width: 1240px) {
  .teaser .teaser-thumbnail-wrap {
    position: relative;
    float: none;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    margin: 0 0 0.5rem 0;
    max-width: none;
    width: 100%;
    padding-bottom: 100%;
    overflow: hidden;
  }
  .teaser .teaser-thumbnail-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-backface-visibility: hidden;
  }
}
@media only screen and (min-width: 1240px) {
  .teaser .teaser-thumbnail-wrap + .teaser-content-wrap .teaser-header {
    position: relative;
    padding-top: 15px;
    padding-bottom: 5px;
    margin-top: -76px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), color-stop(50%, rgb(255, 255, 255)), to(rgb(255, 255, 255)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.8) 0%, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%);
  }
}
.teaser .teaser-title {
  margin: 0 0 6px 0;
  font-size: 18px;
  line-height: 1.2;
}
@media only screen and (min-width: 1240px) {
  .teaser .teaser-title {
    font-size: 20px;
    min-height: 42px;
  }
}
.teaser .excerpt {
  display: block;
  margin: 0;
  height: 0px;
  overflow: hidden;
  background-color: white;
}
@media only screen and (min-width: 420px) {
  .teaser .excerpt {
    display: inline;
    height: auto;
    font-size: 16px;
  }
}
@media only screen and (min-width: 1240px) {
  .teaser .excerpt {
    display: block;
    margin: 0 0 10px;
  }
}
.teaser .teaser-meta {
  color: #7E7E83;
  font-size: 12px;
  line-height: 1.5;
}
@media only screen and (min-width: 860px) {
  .teaser .teaser-meta {
    margin: 0 0 2px 0;
    padding-top: 0px;
    font-size: 12px;
  }
}
@media only screen and (min-width: 1240px) {
  .teaser .teaser-meta {
    padding-top: 0;
  }
}
.teaser .post-author {
  white-space: nowrap;
}
.teaser .post-date {
  white-space: nowrap;
}
.teaser .post-time {
  white-space: nowrap;
}
.teaser .post-categories {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 12px;
  line-height: 1;
  display: none;
}
@media only screen and (min-width: 420px) {
  .teaser .post-categories {
    padding-top: 4px;
    display: block;
  }
}
@media only screen and (min-width: 1240px) {
  .teaser .post-categories {
    padding-top: 6px;
  }
}
.teaser .post-categories li {
  display: inline-block;
  margin: 0 5px 5px 0;
  padding: 4px 10px;
  font-weight: 700;
  border: 1px solid #e2e2e9;
}
.teaser .post-categories li:hover, .teaser .post-categories li:focus {
  background-color: rgb(177.6, 26.4, 27.2);
  border: 1px solid rgb(177.6, 26.4, 27.2);
  color: white;
}
.teaser .post-tag {
  position: absolute;
  top: 5px;
  left: 0px;
  color: white;
  background-color: #de2122;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 700;
}
.teaser .post-tag.sponsored {
  background-color: #7E7E83;
}
@media only screen and (min-width: 1240px) {
  .teaser .post-tag {
    top: 20px;
    left: 20px;
    padding: 4px 10px;
    font-size: 12px;
  }
}
@media only screen and (min-width: 1240px) {
  .teaser:not(.teaser-top-story):hover, .teaser:not(.teaser-top-story):focus {
    border: 2px solid rgba(177.6, 26.4, 27.2, 0.4);
    color: rgb(177.6, 26.4, 27.2);
  }
  .teaser:not(.teaser-top-story):hover .teaser-meta, .teaser:not(.teaser-top-story):focus .teaser-meta {
    color: rgb(177.6, 26.4, 27.2);
  }
  .teaser:not(.teaser-top-story):hover .more-link, .teaser:not(.teaser-top-story):focus .more-link {
    stroke: rgb(177.6, 26.4, 27.2);
  }
  .teaser:not(.teaser-top-story):hover .post-categories li, .teaser:not(.teaser-top-story):focus .post-categories li {
    border-color: rgba(177.6, 26.4, 27.2, 0.4);
  }
}

.more-link {
  display: inline-block;
  width: 36px;
  -webkit-transition: -webkit-transform 0.1s ease-in;
          transition: transform 0.1s ease-in;
  fill: transparent;
  stroke: #de2122;
}
.teaser:hover .more-link, .teaser:focus .more-link, .event-list-element:hover .more-link {
  -webkit-transform: translateX(0.5rem);
      -ms-transform: translateX(0.5rem);
          transform: translateX(0.5rem);
}
@media only screen and (min-width: 860px) {
  .more-link {
    display: block;
  }
}
.more-link svg {
  width: 36px;
  height: 36px;
}

.teaser-top-story {
  margin-bottom: 0;
  border: none;
}

.teaser-top-story-inner {
  color: #dfdfdf;
  padding: 0;
}
.teaser-top-story-inner:after {
  content: "";
  clear: both;
  display: block;
}
.teaser-top-story-inner .teaser-top-story-thumbnail {
  display: block;
  height: 100%;
  width: 100%;
  min-height: 300px;
  background-size: cover;
}
@media only screen and (min-width: 1240px) {
  .teaser-top-story-inner .teaser-header {
    position: relative;
    padding-top: 0;
    margin-top: 0;
    background: transparent;
  }
}
.teaser-top-story-inner .post-categories {
  position: absolute;
  top: 10px;
  left: 0px;
  font-size: 1.25em;
}
.teaser-top-story-inner .post-categories li {
  border: 1px solid #de2122;
  background-color: #de2122;
  color: white;
  box-shadow: 2px 0px 5px rgba(0, 0, 0, 0.5);
}
.teaser-top-story-inner .teaser-top-story-content {
  float: left;
  padding: 1rem;
  background-color: #2c2c33;
}
@media screen and (min-width: 860px) {
  .teaser-top-story-inner {
    min-height: 50%;
  }
}

.single-header, .page-header, .archive-header {
  position: relative;
  text-align: center;
}
.single-header img, .page-header img, .archive-header img {
  margin: 0 auto 20px;
  width: auto;
  height: auto;
  max-height: 300px;
  max-width: 300px;
}

.archive-header {
  padding-top: 2rem;
  width: 100%;
}

.single-meta {
  text-align: center;
  margin: 0 auto 1rem auto;
  display: block;
  color: rgb(182.5, 182.5, 200);
  font-size: 1rem;
}
@media only screen and (min-width: 600px) {
  .single-meta {
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 1240px) {
  .single-meta {
    font-size: 1.25rem;
  }
}

.single-title, .page-title, .search-title, .archive-title {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}
@media only screen and (min-width: 600px) {
  .single-title, .page-title, .search-title, .archive-title {
    font-size: 2.75rem;
  }
}

.single-header .post-tag {
  position: absolute;
  top: 5px;
  left: 0px;
  color: white;
  background-color: #de2122;
  padding: 4px 8px;
  font-size: 0.875rem;
  font-weight: 700;
}
.single-header .post-tag.sponsored {
  background-color: #7E7E83;
}

@media only screen and (min-width: 600px) {
  .site-content-single .entry, .site-content-page .entry, .site-content-search .entry, .site-content-error .entry {
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 1240px) {
  .site-content-single .entry, .site-content-page .entry, .site-content-search .entry, .site-content-error .entry {
    font-size: 1.375rem;
  }
}
@media only screen and (min-width: 600px) {
  .site-content-single .entry p, .site-content-single .entry ul, .site-content-single .entry ol, .site-content-single .entry table, .site-content-page .entry p, .site-content-page .entry ul, .site-content-page .entry ol, .site-content-page .entry table, .site-content-search .entry p, .site-content-search .entry ul, .site-content-search .entry ol, .site-content-search .entry table, .site-content-error .entry p, .site-content-error .entry ul, .site-content-error .entry ol, .site-content-error .entry table {
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 1240px) {
  .site-content-single .entry p, .site-content-single .entry ul, .site-content-single .entry ol, .site-content-single .entry table, .site-content-page .entry p, .site-content-page .entry ul, .site-content-page .entry ol, .site-content-page .entry table, .site-content-search .entry p, .site-content-search .entry ul, .site-content-search .entry ol, .site-content-search .entry table, .site-content-error .entry p, .site-content-error .entry ul, .site-content-error .entry ol, .site-content-error .entry table {
    font-size: 1.375rem;
  }
}

/**
 * WordPress default classes
 */
.navigation.pagination {
  text-align: center;
}

/**
 * Style headlines
 */
.entry h2 {
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
  font-size: 2rem;
}
.entry h3 {
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  font-size: 1.6rem;
}

/*
 * Default WordPress alignment classes
 */
.alignnone {
  display: block;
  margin: 1rem 0 1rem;
}

.aligncenter {
  display: block;
  margin: 0 auto 1rem auto;
}

.alignleft {
  float: left;
  margin: 0 1rem 1rem 0;
}

.alignright {
  float: right;
  margin: 0 0 1rem 1rem;
}

/*
 * Figures and captions
 */
.wp-caption {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.wp-caption-text {
  color: #16161d;
}
@media screen and (min-width: 1240px) {
  .wp-caption-text {
    font-size: 1em;
  }
}

/*
 * fi-box shortcode
 */
.fi-box {
  margin-bottom: 2rem;
  padding: 1rem 2rem;
  border: 1px solid #ccc;
  background-color: #f9f9f9;
}
.fi-box:after {
  content: "";
  clear: both;
  display: block;
}

p + .fi-box {
  margin-top: 2rem;
}

.entry .fi-box h3 {
  margin: -1rem -2rem 1rem -2rem;
  padding: 1rem 2rem;
  border-bottom: 1px solid rgba(204, 204, 204, 0.5);
}

.fi-box.box1 {
  color: white;
  background-color: #2c2c33;
  border: none;
}

.fi-box.box2 {
  color: white;
  background-color: rgb(177.6, 26.4, 27.2);
  border: none;
}

.fi-box.box1 h3, .fi-box.box2 h3 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.fi-box.box1 a, .fi-box.box2 a {
  color: white;
  text-decoration: underline;
}

.fi-box p:last-of-type, .fi-box ul:last-of-type {
  margin-bottom: 0;
}

/**
 * Responsive Video Embedding
 */
.fi-responsive-video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
}
.fi-responsive-video iframe, .fi-responsive-video object, .fi-responsive-video embed, .fi-responsive-video video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/**
 * Pagination
 */
.pagination {
  padding: 40px 0;
  line-height: 1;
  font-weight: 700;
  background-color: white;
}
.pagination .current {
  display: inline-block;
  padding: 6px 8px;
}
.pagination a.page-numbers {
  display: inline-block;
  margin: 0 4px 8px;
  padding: 6px 8px;
  font-weight: 400;
  border: 1px solid #dfdfdf;
}
.pagination a.page-numbers:hover {
  color: #de2122;
  border: 1px solid #de2122;
}

/**
 * post navigation
 */
.post-navigation {
  margin-bottom: 3rem;
}
.post-navigation:after {
  content: "";
  clear: both;
  display: block;
}
@media only screen and (min-width: 600px) {
  .post-navigation .nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.post-navigation .nav-previous {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding-right: 1em;
}
.post-navigation .nav-previous svg {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.post-navigation .nav-next {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  padding-left: 1em;
}
.post-navigation .nav-next a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-align: right;
}
.post-navigation .nav-next a svg {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  margin: 0 0 0 10px;
}
.post-navigation .nav-next a img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin: 0 0 0 1.5em;
}
.post-navigation .nav-previous + .nav-next {
  margin-top: 30px;
}
@media only screen and (min-width: 600px) {
  .post-navigation .nav-previous + .nav-next {
    margin-top: 0;
  }
}
.post-navigation a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.post-navigation img {
  -ms-flex-preferred-size: 60px;
      flex-basis: 60px;
  margin: 0 1.5em 0 0;
  max-width: 5em;
  max-height: 5em;
}
.post-navigation svg {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
  margin: 0 10px 0 0;
  width: 50px;
  height: auto;
}
.post-navigation .post-title {
  font-weight: 700;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

/**
 * Sharing on social media
 */
.social-media-sharing {
  margin: 3rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 540px) {
  .social-media-sharing {
    display: block;
  }
  .social-media-sharing:after {
    content: "";
    clear: both;
    display: block;
  }
}

.social-media-sharing-title {
  margin-right: 1rem;
  font-size: 1rem;
}
@media only screen and (min-width: 540px) {
  .social-media-sharing-title {
    display: none;
  }
}

.social-media-sharing-services-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
@media only screen and (min-width: 540px) {
  .social-media-sharing-services-list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.social-media-sharing-services-list li {
  margin-right: 10px;
  color: #16161d;
  text-decoration: none;
  border: 1px solid rgb(243.4, 243.4, 243.4);
}
@media only screen and (min-width: 540px) {
  .social-media-sharing-services-list li {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
}
.social-media-sharing-services-list li:last-child {
  margin-right: 0;
}
.social-media-sharing-services-list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px;
}
@media only screen and (min-width: 540px) {
  .social-media-sharing-services-list li a {
    padding: 0;
  }
}
.social-media-sharing-services-list li a span {
  width: 20px;
  height: 20px;
  text-indent: -10000em;
}
@media only screen and (min-width: 540px) {
  .social-media-sharing-services-list li a span {
    padding: 7px 5px 7px 27px;
    width: auto;
    height: auto;
    text-indent: 0;
  }
}
.social-media-sharing-services-list li a.twitter span {
  background: url(../images/twitter.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-sharing-services-list li a.facebook span {
  background: url(../images/facebook.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-sharing-services-list li a.linkedin span {
  background: url(../images/linkedin.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-sharing-services-list li:hover {
  background-color: #de2122;
  color: white;
}
.social-media-sharing-services-list li:hover .twitter span {
  background: url(../images/twitter-white.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-sharing-services-list li:hover .facebook span {
  background: url(../images/facebook-white.svg) no-repeat left center;
  background-size: 20px 20px;
}
.social-media-sharing-services-list li:hover .linkedin span {
  background: url(../images/linkedin-white.svg) no-repeat left center;
  background-size: 20px 20px;
}

/**
 * Comments
 */
.comments-area {
  padding: 40px 0;
}

.comments-title {
  margin-bottom: 20px;
  font-size: 20px;
}

.comment-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.comment-list .children {
  list-style: none;
}

.comment-body {
  padding: 20px;
  margin-bottom: 20px;
  background-color: #f9f9f9;
}

.comment-metadata a {
  text-decoration: none;
}
.comment-metadata time {
  font-size: 0.875rem;
  color: #8b8ba7;
}

.comment-content p {
  margin-bottom: 6px;
}

.reply {
  font-size: 12px;
}

.comment-form label {
  display: block;
}
.comment-form textarea {
  height: 120px;
  max-width: 100%;
  min-width: 100%;
}
.comment-form textarea, .comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url] {
  padding: 5px;
  width: 100%;
  font-size: 14px;
  line-height: 1.4;
  border: 1px solid #ddd;
}
@media screen and (min-width: 1050px) {
  .comment-form textarea, .comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url] {
    padding: 10px;
    font-size: 16px;
  }
}
.comment-form .form-submit .submit {
  padding: 7px 10px;
  border: 1px solid #e3e3e2;
  border-left: none;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  width: auto;
}
@media screen and (min-width: 1050px) {
  .comment-form .form-submit .submit {
    margin: 0;
    padding: 8px 16px;
    font-size: 16px;
    border-left: 1px solid #e3e3e2;
  }
}

.comment-form-comment {
  position: relative;
}

.comment-remaining-characters {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 0.875rem;
  color: #999;
  -webkit-transition: color 0.5s ease-in;
          transition: color 0.5s ease-in;
}

.comment-remaining-char-count {
  font-weight: 700;
}

.comment-count-large {
  color: #666666;
}

.comment-count-medium {
  color: #16161d;
}

.comment-count-low {
  color: #de2122;
}

[id=comment] + textarea {
  left: 0;
}

/**
 * Events list (used in the sidebar)
 */
.event-list {
  background-color: white;
  border-top: 40px solid white;
}
.event-list h3 {
  margin-bottom: 10px;
  color: #de2122;
}
.event-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.event-list li {
  margin-bottom: 10px;
  border-bottom: 1px solid rgb(243.4, 243.4, 243.4);
}
.event-list li:last-of-type {
  margin-bottom: 0;
}
.event-list a {
  display: block;
}
.event-list a:hover {
  color: rgb(177.6, 26.4, 27.2);
}

/**
 * Event pages Navigation
 */
.event-pages-navigation {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 860px) {
  .event-pages-navigation {
    margin-top: 0;
  }
}
.event-pages-navigation .events-pages {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -0.1rem;
  font-size: 1rem;
}
.event-pages-navigation li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 33.33333%;
          flex: 1 1 33.33333%;
  margin: 0;
  padding: 0 0.1rem 0.2rem 0.1rem;
  display: inline-block;
}
.event-pages-navigation a {
  display: block;
  padding: 0.5rem;
  color: #16161d;
  border: 1px solid #f3f3f3;
  text-align: center;
  text-decoration: none;
}
.event-pages-navigation a:hover, .event-pages-navigation a:focus {
  color: #de2122;
  background-color: white;
  border-color: #de2122;
}
.event-pages-navigation li.current a {
  color: white;
  background-color: #de2122;
  border-color: #de2122;
  cursor: default;
}

/**
 * Events
 */
#tribe-events-bar {
  margin-bottom: 2rem;
}

#tribe-bar-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#tribe-bar-collapse-toggle {
  background-color: orange;
  display: none;
}

#tribe-bar-views {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding: 1rem 2rem;
  background: #f9f9f9;
  text-align: right;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
}

.tribe-bar-views-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline;
  display: none;
}

.tribe-bar-views-option {
  display: inline-block;
  margin: 0 0 0.5rem 0.5rem;
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  color: #aaa;
  border: 1px solid #aaa;
}
.tribe-bar-views-option:hover {
  color: #16161d;
  border: 1px solid #16161d;
}
.tribe-bar-views-option a {
  display: inline-block;
  padding: 4px 10px;
}
.tribe-bar-views-option.tribe-bar-active {
  border: 1px solid #de2122;
}
.tribe-bar-views-option.tribe-bar-active a {
  color: #de2122;
}

.tribe-bar-filters {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 80%;
          flex: 0 0 80%;
  background: #f9f9f9;
  border-right: 2px solid white;
}

.tribe-bar-filters-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.tribe-bar-date-filter {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 35%;
          flex: 1 0 35%;
  padding: 1rem 0 1rem 1rem;
}

.tribe-bar-search-filter {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 35%;
          flex: 1 0 35%;
  padding: 1rem 0 1rem 1rem;
}

.label-tribe-bar-date, .label-tribe-bar-search, .tribe-bar-views-inner label {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  color: #16161d;
}

#tribe-bar-date, #tribe-bar-search {
  padding: 0.2rem;
  width: 100%;
  border: 1px solid #eee;
}

.tribe-bar-submit {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
  padding: 1.3rem 1rem 0;
}
.tribe-bar-submit .tribe-events-button {
  padding: 7px 10px;
  border: 1px solid #e3e3e2;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  width: auto;
}

.tribe-events-list .tribe-events-page-title {
  margin-bottom: 2rem;
  text-align: left;
}

.entry h2.tribe-events-list-separator,
.tribe-events-list-separator,
.tribe-events-list-separator-month {
  display: block;
  margin-bottom: 0;
  border-bottom: 1px solid rgb(243.4, 243.4, 243.4);
  border-bottom: 1px solid #de2122;
  font-size: 1.125rem;
}
.entry h2.tribe-events-list-separator span,
.tribe-events-list-separator span,
.tribe-events-list-separator-month span {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  color: white;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  background-color: #de2122;
}
.type-tribe_events + .entry h2.tribe-events-list-separator,
.type-tribe_events + .tribe-events-list-separator,
.type-tribe_events + .tribe-events-list-separator-month {
  margin-top: 1rem;
}

/**
 * Event list view
 */
.events {
  margin-top: 2rem;
  margin-bottom: 3rem;
  border-bottom: 1px solid #f9f9f9;
}

.entry p.events__no-events {
  margin: 40px 0;
  padding: 20px;
  font-size: 1rem;
  background-color: #f9f9f9;
}

#switch-secondary-filters {
  display: none;
}

.event-search-bar {
  padding: 1rem;
  background-color: #f9f9f9;
  font-size: 1rem;
}
.event-search-bar .main-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  border: none;
}
.event-search-bar [for=event-search-term] {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
  margin-bottom: 0.25rem;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
}
.event-search-bar #event-search-term {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  margin-bottom: 0.5rem;
  width: 100%;
  padding: 5px;
  border: 1px solid #e3e3e2;
}
@media only screen and (min-width: 860px) {
  .event-search-bar #event-search-term {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 60%;
            flex: 0 0 60%;
    margin-bottom: 0;
    width: 60%;
  }
}
.event-search-bar #event-search {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-left: 0;
  width: auto;
  overflow: hidden;
  padding: 0.5rem 1rem;
  text-transform: uppercase;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 700;
  color: white;
  background-color: #de2122;
  border: 1px solid #de2122;
}
@media only screen and (min-width: 860px) {
  .event-search-bar #event-search {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(40% - 0.5rem);
            flex: 0 0 -webkit-calc(40% - 0.5rem);
            flex: 0 0 calc(40% - 0.5rem);
    margin-left: 0.5rem;
    width: -webkit-calc(40% - 0.5rem);
    width: calc(40% - 0.5rem);
  }
}
.event-search-bar .secondary-search-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0.5rem 0 0;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 1s linear;
          transition: height 1s linear;
}
.event-search-bar .secondary-search-options.is-active {
  height: auto;
}
.event-search-bar .event-categories {
  width: 100%;
}
.event-search-bar .event-categories input[type=checkbox] {
  margin: 0 3px 0 0;
  width: 12px;
  height: 12px;
}
.event-search-bar .event-categories label {
  margin: 0 1rem 0 0;
  font-size: 0.75rem;
}
.event-search-bar .event-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 0.5rem;
}
@media only screen and (min-width: 860px) {
  .event-search-bar .event-categories {
    padding-top: 0;
  }
}
.event-search-bar .event-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
  margin-bottom: 0.25rem;
}
.event-search-bar .optional-header {
  position: relative;
  display: block;
  margin: 1rem 0;
  width: 100%;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  z-index: 2;
}
.event-search-bar .optional-header:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
  background-color: #ddd;
  z-index: -2;
}
.event-search-bar .optional-header span {
  padding: 0 4px;
  background-color: #f9f9f9;
}
.event-search-bar .optional-search-item {
  margin-right: 1rem;
}
.event-search-bar .optional-search-item:last-of-type {
  margin-right: 0;
}
.event-search-bar .optional-search-item label {
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}
.event-search-bar .optional-search-item input[type=text] {
  padding: 4px;
  width: 80px;
  font-size: 0.75rem;
  border: 1px solid #e3e3e2;
}
.event-search-bar .optional-search-item select {
  width: auto;
  font-size: 0.75rem;
}

.ui-datepicker {
  background-color: white;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  z-index: 2 !important;
}

.ui-datepicker-prev,
.ui-datepicker-next {
  display: inline-block;
  float: left;
  padding: 0.25rem;
  font-size: 0.875rem;
  color: #de2122;
  cursor: pointer;
}

.ui-datepicker-next {
  float: right;
}

.ui-datepicker-title {
  clear: both;
  text-align: center;
  font-weight: 700;
}

.ui-datepicker-calendar td {
  text-align: center;
}

.ui-datepicker-calendar .ui-datepicker-today {
  background-color: rgba(222, 33, 34, 0.15);
}

.ui-datepicker-calendar .ui-datepicker-current-day {
  background-color: #de2122;
  color: white;
}

.ui-datepicker-unselectable,
.ui-state-disabled {
  background-color: transparent;
  opacity: 0.25;
}

.type-tribe_events .event-wrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.75rem;
}

.tribe-events-list-separator ~ div.type-tribe_events:nth-of-type(even) .event-wrapper {
  background-color: #f9f9f9;
}

.tribe-events-list-separator ~ div.type-tribe_events.featured-event:nth-of-type(even) .event-wrapper {
  background-color: #f9f988;
}

.type-tribe_events.featured-event .event-wrapper {
  background-color: #ffff99;
}

.type-tribe_events.fotoschiff .event-wrapper {
  background-color: rgb(242.75, 251.57, 255);
}

.type-tribe_events.even.featured-event .event-wrapper {
  background-color: #f9f988;
}

.type-tribe_events.even.fotoschiff .event-wrapper {
  background-color: #e6f8ff;
}

.event-date-place {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 40%;
          flex: 0 0 40%;
  padding-right: 1rem;
  font-size: 1rem;
}
.event-date-place .tribe-event-schedule-details {
  font-weight: 700;
}
.event-date-place .event-location {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #7E7E83;
}
.featured-event .event-date-place .event-location {
  color: #aa2;
}
.fotoschiff .event-date-place .event-location {
  color: #227aaa;
}
.event-date-place .additional-infos {
  font-size: 0.875rem;
}

.online-event {
  font-size: 0.75rem;
  text-transform: uppercase;
  color: #de2122;
  border: 1px solid #de2122;
  border-radius: 2px;
  display: inline-block;
  margin: 0.5em 0;
  padding: 0.1em 0.6em;
}

.event-info {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 60%;
          flex: 0 0 60%;
}
.event-info .tribe-events-list-event-title {
  margin: 0 0 0.25rem;
  font-size: 1.2rem;
}

.event-venue,
.event-organizer,
.entry .event-venue,
.entry .event-organizer {
  font-weight: 700;
  color: #7E7E83;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
.featured-event .event-venue,
.featured-event .event-organizer,
.featured-event .entry .event-venue,
.featured-event .entry .event-organizer {
  color: #aa2;
}
.fotoschiff .event-venue,
.fotoschiff .event-organizer,
.fotoschiff .entry .event-venue,
.fotoschiff .entry .event-organizer {
  color: #227aaa;
}
.event-venue.external-link,
.event-organizer.external-link,
.entry .event-venue.external-link,
.entry .event-organizer.external-link {
  background: url(../images/icon-external-link-grey.svg) no-repeat right center;
  background-size: 0.9em 0.9em;
}
.featured-event .event-venue.external-link,
.featured-event .event-organizer.external-link,
.featured-event .entry .event-venue.external-link,
.featured-event .entry .event-organizer.external-link {
  background: url(../images/icon-external-link-yellow.svg) no-repeat right center;
  background-size: 0.9em 0.9em;
}
.fotoschiff .event-venue.external-link,
.fotoschiff .event-organizer.external-link,
.fotoschiff .entry .event-venue.external-link,
.fotoschiff .entry .event-organizer.external-link {
  background: url(../images/icon-external-link-blue.svg) no-repeat right center;
  background-size: 0.9em 0.9em;
}

.event-venue-address {
  color: #7E7E83;
}
.featured-event .event-venue-address {
  color: #aa2;
}
.fotoschiff .event-venue-address {
  color: #227aaa;
}

.entry .tribe-events-list-event-description p {
  margin: 0 0 1rem;
  font-size: 1rem;
  line-height: 1.4;
}
.entry .tribe-events-list-event-description p:last-of-type {
  margin-bottom: 0;
}

.type-tribe_events a:hover .location {
  color: rgb(231.9, 99.6, 100.3);
  color: rgb(177.6, 26.4, 27.2);
}

.type-tribe_events a:hover .more-link {
  -webkit-transform: translateX(0.5rem);
      -ms-transform: translateX(0.5rem);
          transform: translateX(0.5rem);
}

.tribe-address {
  display: block;
}

.tribe-events-gmap {
  color: #de2122;
  text-decoration: underline;
}

.tribe-events-ical.tribe-events-button {
  padding: 7px 10px;
  border: 1px solid #e3e3e2;
  background-color: #eee;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  width: auto;
}

.edit-event-link {
  position: absolute;
  padding: 3px 5px;
  top: 0.875rem;
  right: 0px;
  font-size: 0.75rem;
  background-color: #dfdfdf;
}

.event-cat {
  display: inline-block;
  margin-top: 0.5rem;
  padding: 0.25rem;
  font-size: 12px;
  color: #a9a9af !important;
  background-color: #eee;
  text-decoration: none !important;
}

.featured-event .event-cat {
  color: #aa2 !important;
  background-color: rgba(170, 170, 34, 0.2);
}

.fotoshiff .event-cat {
  color: #227aaa !important;
  background-color: rgba(34, 122, 170, 0.2);
}

/**
 * Site Footer
 */
.site-footer {
  position: relative;
  background-color: #2c2c33;
  color: #dfdfdf;
  margin-top: 4rem;
  padding-top: 3rem;
  padding-bottom: 120px;
  z-index: 12;
  text-align: center;
}
.site-footer:after {
  content: "";
  clear: both;
  display: block;
}
.hide-leaderboard .site-footer {
  padding-bottom: 3rem;
}
@media only screen and (min-width: 860px) {
  .site-footer {
    padding-bottom: 3rem;
  }
}
.site-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer a:hover, .site-footer a:focus {
  text-decoration: underline;
}

/**
 * Advertising Banners
 */
/**
* New ads
*/
[class^=fotointern-] {
  position: relative;
  padding: 5px;
  background-color: #f9f9f9;
  text-align: center;
}

[class^=fotointern-] img {
  vertical-align: bottom;
}

[class^=fotointern-] > a {
  position: relative;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  max-width: 100%;
}

.fotointern-adlabel {
  padding: 4px 5px 3px 5px;
  font-size: 12px;
  line-height: 1;
  text-align: left;
  color: #bbb;
  background-color: #f9f9f9;
  z-index: 2;
}

.fotointern-leaderboard-1 {
  color: transparent;
}
.fotointern-rectangle-1 {
  color: transparent;
  margin-bottom: 20px;
  overflow: hidden;
}
.articles .fotointern-rectangle-1 {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.fotointern-rectangle-2 {
  width: 100%;
  margin: 20px 0;
}

[id^=div-gpt-ad] {
  max-width: 100% !important;
  height: auto !important;
}

.ad-sponsors {
  position: relative;
  margin-bottom: 20px;
  text-align: center;
}
.ad-sponsors .ad-inner:before {
  position: relative;
  content: "Sponsoren";
  display: block;
  padding: 0;
  text-align: left;
}
.fixed-sponsors .ad-sponsors {
  position: fixed;
  top: 50px;
  z-index: -1;
}
.ad-sponsors img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.ad-sponsorbanner {
  width: 100%;
  height: 20rem;
  padding: 1rem;
}
@media screen and (min-width: 420px) {
  .ad-sponsorbanner {
    padding: 1.2rem;
  }
}
@media screen and (min-width: 860px) {
  .ad-sponsorbanner {
    padding: 1.6rem;
  }
}

.ad-sponsorbanner-inner {
  width: 100%;
  height: 100%;
  background: #16161d;
}

.ad-top-leaderboard {
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 0;
  width: 100%;
  max-width: 1600px;
  z-index: 20;
}
.hide-leaderboard .ad-top-leaderboard {
  display: none;
}
@media only screen and (min-width: 860px) {
  .ad-top-leaderboard {
    position: relative;
    bottom: auto;
    left: auto;
    margin: 0 auto;
  }
  .hide-leaderboard .ad-top-leaderboard {
    display: block;
  }
}

body.fixed-nav .ad-top-leaderboard {
  margin-bottom: 20px;
}

.ad-top-leaderboard .ad-inner {
  padding: 5px;
}
@media screen and (min-width: 738px) {
  .ad-top-leaderboard .ad-inner {
    height: 100px;
  }
}
.ad-top-leaderboard .ad-inner:before {
  display: none;
}
@media screen and (min-width: 860px) {
  .ad-top-leaderboard .ad-inner:before {
    display: inline-block;
  }
}

.hide-ad {
  position: absolute;
  top: -7px;
  right: 10px;
  width: 20px;
  height: 19px;
  text-indent: -10000em;
  background: white url(../images/icon-close.svg) no-repeat center center;
  background-size: 9px 9px;
  border: 1px solid #ddd;
  border-radius: 50%;
  z-index: 10;
}
@media screen and (min-width: 860px) {
  .hide-ad {
    display: none;
  }
}

.ad-sponsor-thanks {
  margin-bottom: 20px;
}
.ad-sponsor-thanks .ad-sponsor-thanks-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px 10px 10px;
  background: #2c2c33;
  color: white;
}
@media screen and (min-width: 600px) {
  .ad-sponsor-thanks .ad-sponsor-thanks-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    height: 90px;
  }
}
.ad-sponsor-thanks .brand-logo {
  max-width: 160px;
  height: auto;
  vertical-align: middle;
}
.ad-sponsor-thanks .possible {
  padding: 10px 0;
  display: inline-block;
  line-height: 1;
}
@media screen and (min-width: 600px) {
  .ad-sponsor-thanks .possible {
    padding: 0 25px;
  }
}
.ad-sponsor-thanks .thanks {
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.ad-rectangle {
  margin-bottom: 20px;
}
.ad-rectangle #rectangle-1 {
  max-height: 250px;
  overflow: hidden;
}

.site-content-page .ad-rectangle {
  margin-top: 50px;
}

.site-content-error .ad-rectangle, .site-content-search .error .ad-rectangle {
  margin: 50px 0;
}

/**
 * Responsive iframe ads (HTML5 ads)
 */
.ad-container {
  display: inline-block;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
}

.ad-container__iframe {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border: 1px solid #bbb;
}

.ad-container--leaderboard {
  width: 728px;
  height: 90px;
}
@media screen and (max-width: 728px) {
  .ad-container--leaderboard {
    width: 100%;
    height: auto;
    padding-top: 12.3626373626%;
  }
}

.ad-container--rectangle {
  width: 300px;
  height: 250px;
}
@media screen and (max-width: 300px) {
  .ad-container--rectangle {
    width: 100%;
    height: auto;
    padding-top: 83.3333333333%;
  }
}

.ad-container--billboard {
  width: 970px;
  height: 250px;
}
@media screen and (max-width: 970px) {
  .ad-container--billboard {
    width: 100%;
    height: auto;
    padding-top: 25.7731958763%;
  }
}

.ad-container--skyscraper {
  width: 160px;
  height: 600px;
}
@media screen and (max-width: 160px) {
  .ad-container--skyscraper {
    width: 100%;
    height: auto;
    padding-top: 375%;
  }
}

/**
 * Sponsor slider
 */
.ad-sponsors > [id^=fotointern-] {
  position: relative;
  padding: 5px;
  width: 100%;
  text-align: center;
  background-color: #f9f9f9;
  overflow: hidden;
}

.sponsor-slider {
  width: 200%;
  overflow: hidden;
}
@media only screen and (min-width: 860px) {
  .sponsor-slider {
    max-height: 220px;
  }
}

.sponsor-slider-wrap [class^=fotointern-] {
  float: left;
  width: 50%;
  display: none;
}

.not-found {
  padding: 40px 20px 0;
  text-align: center;
}

.external-link {
  padding-right: 1em;
  background: url(../images/icon-external-link.svg) no-repeat right center;
  background-size: 0.9em 0.9em;
}

[class^=fotointern-] .external-link,
.ad .external-link {
  padding-right: 0;
  background: none;
}

/* Hustle fixes */
.hustle-modal-mc_checkbox {
  margin-right: 8px;
}

/**
 * Boxzilla newsletter signup
 */
.boxzilla-container {
  background-color: black;
  color: #adb5b7;
}
.boxzilla-container .boxzilla {
  padding: 0;
  border: none !important;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.25);
}
.boxzilla-container a {
  color: #de2122;
  text-decoration: underline;
}
.boxzilla-container p {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.boxzilla-container label {
  display: block;
}
.boxzilla-container input[type=submit] {
  display: block;
  padding: 0.75rem;
  width: 100%;
  font-size: 1rem;
  letter-spacing: 1px;
  color: white;
  background-color: #de2122;
  border: none;
}
.boxzilla-container .newsletter-headline {
  margin: 0 0 0.5rem;
  padding: 1.5rem 1.5rem 0;
  color: white;
  font-weight: 400;
  line-height: 1;
}
.boxzilla-container .newsletter-frequency-headline {
  margin: 0 0 0.5rem;
  padding: 0 1.5rem;
  color: white;
  font-weight: 400;
}
.boxzilla-container .newsletter-email {
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #363b3f;
}
.boxzilla-container .newsletter-email label {
  position: absolute;
  margin: -1px;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.boxzilla-container .newsletter-email input {
  width: 100%;
  padding: 0.5rem 0.5rem 0.5rem 2rem;
  border: none;
  font-size: 1rem;
  line-height: 1;
  color: #16161d;
  background: white url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%23aaaaaa' stroke-width='2' stroke-linecap='square' stroke-linejoin='arcs'%3e%3cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'%3e%3c/path%3e%3cpolyline points='22,6 12,13 2,6'%3e%3c/polyline%3e%3c/svg%3e") no-repeat left 0.5rem center;
  border: none;
}
.boxzilla-container .newsletter-frequency input[type=checkbox] {
  display: none;
}
.boxzilla-container .newsletter-frequency label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 0.5rem;
}
.boxzilla-container .newsletter-frequency label span {
  vertical-align: middle;
  line-height: 1;
}
.boxzilla-container .newsletter-frequency label span:before {
  content: "";
  display: inline-block;
  margin: 0 0.5rem 0 0;
  width: 18px;
  height: 18px;
  background: white;
  -webkit-transform: translateY(2px);
      -ms-transform: translateY(2px);
          transform: translateY(2px);
}
.boxzilla-container .newsletter-frequency label input[type=checkbox]:checked + span:before {
  background: white url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%23de2122' stroke-width='3' stroke-linecap='square' stroke-linejoin='arcs'%3e%3cpolyline points='20 6 9 17 4 12'%3e%3c/polyline%3e%3c/svg%3e") no-repeat center center;
}
.boxzilla-container .boxzilla-close-icon {
  color: white;
}

.entry .banner-update-form-hint {
  margin-bottom: 0.75rem;
}
.entry .banner-update-form-hint p {
  margin: 0;
  font-size: 1rem;
}

.banner-update-form {
  padding: 2rem;
  background-color: #f9f9f9;
}
.banner-update-form label {
  display: block;
  font-size: 1rem;
  font-weight: 700;
}
.banner-update-form input[type=url] {
  padding: 0.5rem;
  width: 100%;
}
.banner-update-form input[type=file] {
  font-size: 0.8rem;
}
.banner-update-form input[type=checkbox] {
  float: left;
  margin: 0.2em 0.5em 0 0;
  -webkit-transform: scale(1.6);
      -ms-transform: scale(1.6);
          transform: scale(1.6);
}

.banner-update-nofication {
  margin: 0 0 1rem;
  padding: 1rem;
  font-size: 1rem;
}
.banner-update-nofication.success {
  background-color: green;
  color: white;
}
.banner-update-nofication.failure {
  background-color: #de2122;
  color: white;
}

.logout-link {
  font-size: 1rem;
  padding: 0 2rem;
}

/**
 * Hacks
 *
 * Utilities and helper classes with ability to override
 * anything which goes before in the triangle.
 * e.g. a "hide" helper class
 */
/**
 * Hacks
 *
 * Utilities and helper classes with ability to override
 * anything which goes before in the triangle.
 * e.g. a "hide" helper class
 */
/**
 * Align Text
 *
 */
.aligncenter {
  text-align: center;
}

.alignright {
  text-align: right;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

td[bgcolor="#FFCC99"], td[bgcolor="#FFCCCC"] {
  background-color: #2c2c33 !important;
  color: white !important;
}

td[bgcolor="#FFFF99"] {
  background-color: #FFFF99 !important;
}

.entry p:empty {
  display: none;
}

/** Temporary "Superspecial" Rectangle fixes for Nikon */
.articles .ad-sponsor-thanks {
  display: none;
}
@media only screen and (min-width: 860px) {
  .articles .ad-sponsor-thanks {
    display: initial;
  }
}

.fotointern-rectangle-3 {
  margin: 20px 0;
  width: 100%;
}
.sidebar .fotointern-rectangle-3 {
  display: none;
}
@media only screen and (min-width: 860px) {
  .sidebar .fotointern-rectangle-3 {
    display: block;
  }
}
.site-content-index .articles .fotointern-rectangle-3 {
  -webkit-box-ordinal-group: 31;
      -ms-flex-order: 30;
          order: 30;
}
@media only screen and (min-width: 860px) {
  .site-content-index .articles .fotointern-rectangle-3 {
    display: none;
  }
}

.donation-box {
  margin-top: 0;
}

/**
 * Nivo Lightbox
 *
 * Open image links in a lightbox instead of a new tab.
 */
/*!
 * Nivo Lightbox v1.3.1
 * http://dev7studios.com/nivo-lightbox
 *
 * Copyright 2013, Dev7studios
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */
.nivo-lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99998;
  width: 100%;
  height: 100%;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  box-sizing: border-box;
}

.nivo-lightbox-overlay.nivo-lightbox-open {
  visibility: visible;
  opacity: 1;
}

.nivo-lightbox-wrap {
  position: absolute;
  top: 10%;
  bottom: 10%;
  left: 10%;
  right: 10%;
}

.nivo-lightbox-content {
  width: 100%;
  height: 100%;
}

.nivo-lightbox-title-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99999;
  text-align: center;
}

.nivo-lightbox-nav {
  display: none;
}

.nivo-lightbox-prev {
  position: absolute;
  top: 50%;
  left: 0;
}

.nivo-lightbox-next {
  position: absolute;
  top: 50%;
  right: 0;
}

.nivo-lightbox-close {
  position: absolute;
  top: 2%;
  right: 2%;
}

.nivo-lightbox-image {
  text-align: center;
}

.nivo-lightbox-image img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  vertical-align: middle;
}

.nivo-lightbox-content iframe {
  width: 100%;
  height: 100%;
}

.nivo-lightbox-inline,
.nivo-lightbox-ajax {
  max-height: 100%;
  overflow: auto;
  box-sizing: border-box;
  /* https://bugzilla.mozilla.org/show_bug.cgi?id=308801 */
}

.nivo-lightbox-error {
  display: table;
  text-align: center;
  width: 100%;
  height: 100%;
  color: #fff;
  text-shadow: 0 1px 1px #000;
}

.nivo-lightbox-error p {
  display: table-cell;
  vertical-align: middle;
}

/* Effects
 **********************************************/
.nivo-lightbox-notouch .nivo-lightbox-effect-fade,
.nivo-lightbox-notouch .nivo-lightbox-effect-fadeScale,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideLeft,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideRight,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideUp,
.nivo-lightbox-notouch .nivo-lightbox-effect-slideDown,
.nivo-lightbox-notouch .nivo-lightbox-effect-fall {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

/* fadeScale */
.nivo-lightbox-effect-fadeScale .nivo-lightbox-wrap {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform: scale(0.7);
  -ms-transform: scale(0.7);
  transform: scale(0.7);
}

.nivo-lightbox-effect-fadeScale.nivo-lightbox-open .nivo-lightbox-wrap {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/* slideLeft / slideRight / slideUp / slideDown */
.nivo-lightbox-effect-slideLeft .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideRight .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideUp .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideDown .nivo-lightbox-wrap {
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.nivo-lightbox-effect-slideLeft .nivo-lightbox-wrap {
  -webkit-transform: translateX(-10%);
  -ms-transform: translateX(-10%);
  transform: translateX(-10%);
}

.nivo-lightbox-effect-slideRight .nivo-lightbox-wrap {
  -webkit-transform: translateX(10%);
  -ms-transform: translateX(10%);
  transform: translateX(10%);
}

.nivo-lightbox-effect-slideLeft.nivo-lightbox-open .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideRight.nivo-lightbox-open .nivo-lightbox-wrap {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}

.nivo-lightbox-effect-slideDown .nivo-lightbox-wrap {
  -webkit-transform: translateY(-10%);
  -ms-transform: translateY(-10%);
  transform: translateY(-10%);
}

.nivo-lightbox-effect-slideUp .nivo-lightbox-wrap {
  -webkit-transform: translateY(10%);
  -ms-transform: translateY(10%);
  transform: translateY(10%);
}

.nivo-lightbox-effect-slideUp.nivo-lightbox-open .nivo-lightbox-wrap,
.nivo-lightbox-effect-slideDown.nivo-lightbox-open .nivo-lightbox-wrap {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* fall */
.nivo-lightbox-body-effect-fall .nivo-lightbox-effect-fall {
  -webkit-perspective: 1000px;
  perspective: 1000px;
}

.nivo-lightbox-effect-fall .nivo-lightbox-wrap {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  -webkit-transform: translateZ(300px);
  -ms-transform: translateZ(300px);
  transform: translateZ(300px);
}

.nivo-lightbox-effect-fall.nivo-lightbox-open .nivo-lightbox-wrap {
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

/*
 * Nivo Lightbox Default Theme v1.0
 * http://dev7studios.com/nivo-lightbox
 *
 * Copyright 2013, Dev7studios
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 */
.nivo-lightbox-theme-default.nivo-lightbox-overlay {
  background: #666;
  background: rgba(0, 0, 0, 0.9);
}

.nivo-lightbox-theme-default .nivo-lightbox-content.nivo-lightbox-loading {
  background: url(../images/nivo/loading.gif) no-repeat 50% 50%;
}

.nivo-lightbox-theme-default .nivo-lightbox-nav {
  top: 10%;
  width: 8%;
  height: 80%;
  text-indent: -9999px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  opacity: 0.5;
}

.nivo-lightbox-theme-default .nivo-lightbox-nav:hover {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.5);
}

.nivo-lightbox-theme-default .nivo-lightbox-prev {
  background-image: url(../images/nivo/prev.png);
  border-radius: 0 3px 3px 0;
}

.nivo-lightbox-theme-default .nivo-lightbox-next {
  background-image: url(../images/nivo/next.png);
  border-radius: 3px 0 0 3px;
}

.nivo-lightbox-theme-default .nivo-lightbox-close {
  display: block;
  background: url(../images/nivo/close.png) no-repeat 5px 5px;
  width: 16px;
  height: 16px;
  text-indent: -9999px;
  padding: 5px;
  opacity: 0.5;
}

.nivo-lightbox-theme-default .nivo-lightbox-close:hover {
  opacity: 1;
}

.nivo-lightbox-theme-default .nivo-lightbox-title-wrap {
  bottom: -7%;
}

.nivo-lightbox-theme-default .nivo-lightbox-title {
  font: 14px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  background: #000;
  color: #fff;
  padding: 7px 15px;
  border-radius: 30px;
}

.nivo-lightbox-theme-default .nivo-lightbox-image img {
  background: #fff;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4);
}

.nivo-lightbox-theme-default .nivo-lightbox-ajax,
.nivo-lightbox-theme-default .nivo-lightbox-inline {
  background: #fff;
  padding: 40px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4);
}

@media (-webkit-min-device-pixel-ratio: 1.3), (min--moz-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
  .nivo-lightbox-theme-default .nivo-lightbox-content.nivo-lightbox-loading {
    background-image: url(../images/nivo/loading@2x.gif);
    background-size: 32px 32px;
  }
  .nivo-lightbox-theme-default .nivo-lightbox-prev {
    background-image: url(../images/nivo/prev@2x.png);
    background-size: 48px 48px;
  }
  .nivo-lightbox-theme-default .nivo-lightbox-next {
    background-image: url(../images/nivo/next@2x.png);
    background-size: 48px 48px;
  }
  .nivo-lightbox-theme-default .nivo-lightbox-close {
    background-image: url(../images/nivo/close@2x.png);
    background-size: 16px 16px;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvdG9pbnRlcm4uY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0g7Ozs7O0dBS0c7QUFDSDs7Ozs7R0FLRztBQUNIOztHQUVHO0FBQ0g7O0dBRUc7QUFDSDs7Ozs7R0FLRztBQUNIOzs7OztHQUtHO0FBQ0g7O0dBRUc7QUFDSDs7O0dBR0c7QUFDSDs7Ozs7R0FLRztBQUNIOzs7OztHQUtHO0FBQ0gsNERBQTREO0FBQzVEOzs7O0dBSUc7QUFDSDtFQUNFLHdCQUF3QixDQUFDLE9BQU87RUFDaEMsMkJBQTJCLENBQUMsT0FBTztFQUNuQywrQkFBK0IsQ0FBQyxPQUFPO0NBQ3hDOztBQUVEOztHQUVHO0FBQ0g7RUFDRSxVQUFVO0NBQ1g7O0FBRUQ7Z0ZBQ2dGO0FBQ2hGOzs7O0dBSUc7QUFDSDs7Ozs7Ozs7Ozs7O0VBWUUsZUFBZTtDQUNoQjs7QUFFRDs7O0dBR0c7QUFDSDs7OztFQUlFLHNCQUFzQixDQUFDLE9BQU87RUFDOUIseUJBQXlCLENBQUMsT0FBTztDQUNsQzs7QUFFRDs7O0dBR0c7QUFDSDtFQUNFLGNBQWM7RUFDZCxVQUFVO0NBQ1g7O0FBRUQ7OztHQUdHO0FBQ0g7O0VBRUUsY0FBYztDQUNmOztBQUVEO2dGQUNnRjtBQUNoRjs7R0FFRztBQUNIO0VBQ0Usd0JBQXdCO0NBQ3pCOztBQUVEOztHQUVHO0FBQ0g7O0VBRUUsV0FBVztDQUNaOztBQUVEO2dGQUNnRjtBQUNoRjs7R0FFRztBQUNIO0VBQ0UsMEJBQTBCO0NBQzNCOztBQUVEOztHQUVHO0FBQ0g7O0VBRUUsa0JBQWtCO0NBQ25COztBQUVEOztHQUVHO0FBQ0g7RUFDRSxtQkFBbUI7Q0FDcEI7O0FBRUQ7OztHQUdHO0FBQ0g7RUFDRSxlQUFlO0VBQ2YsaUJBQWlCO0NBQ2xCOztBQUVEOztHQUVHO0FBQ0g7RUFDRSxpQkFBaUI7RUFDakIsWUFBWTtDQUNiOztBQUVEOztHQUVHO0FBQ0g7RUFDRSxlQUFlO0NBQ2hCOztBQUVEOztHQUVHO0FBQ0g7O0VBRUUsZUFB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QUFFRDtFQUNFLDhEQUE4RDtDQUMvRDs7QUFFRDtFQUNFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQiw2QkFBNkI7RUFDN0IsNkJBQTZCO0VBQzdCLGFBQWE7Q0FDZDs7QUFFRDtFQUNFLFdBQVc7RUFDWCxxQ0FBcUM7Q0FDdEM7O0FBRUQ7RUFDRSwrQ0FBK0M7RUFDL0MsMkJBQTJCO0NBQzVCOztBQUVEO0VBQ0UsK0NBQStDO0VBQy9DLDJCQUEyQjtDQUM1Qjs7QUFFRDtFQUNFLGVBQWU7RUFDZiw0REFBNEQ7RUFDNUQsWUFBWTtFQUNaLGFBQWE7RUFDYixxQkFBcUI7RUFDckIsYUFBYTtFQUNiLGFBQWE7Q0FDZDs7QUFFRDtFQUNFLFdBQVc7Q0FDWjs7QUFFRDtFQUNFLFlBQVk7Q0FDYjs7QUFFRDtFQUNFLCtEQUErRDtFQUMvRCxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLG9CQUFvQjtDQUNyQjs7QUFFRDtFQUNFLGlCQUFpQjtFQUdqQiwyQ0FBMkM7Q0FDNUM7O0FBRUQ7O0VBRUUsaUJBQWlCO0VBQ2pCLGNBQWM7RUFHZCwyQ0FBMkM7Q0FDNUM7O0FBRUQ7RUFDRTtJQUNFLHFEQUFxRDtJQUNyRCwyQkFBMkI7R0FDNUI7RUFDRDtJQUNFLGtEQUFrRDtJQUNsRCwyQkFBMkI7R0FDNUI7RUFDRDtJQUNFLGtEQUFrRDtJQUNsRCwyQkFBMkI7R0FDNUI7RUFDRDtJQUNFLG1EQUFtRDtJQUNuRCwyQkFBMkI7R0FDNUI7Q0FDRiIsImZpbGUiOiJmb3RvaW50ZXJuLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTG9hZCBhbGwgdGhlIGZpbGVzXG4gKi9cbi8qKlxuICogU2V0dGluZ3NcbiAqXG4gKiBVc2VkIHdpdGggcHJlcHJvY2Vzc29ycyBhbmQgY29udGFpbiBmb250LFxuICogY29sb3JzIGFuZCBvdGhlciBkZWZpbml0aW9uc1xuICovXG4vKipcbiAqIFNldHRpbmdzXG4gKlxuICogVXNlZCB3aXRoIHByZXByb2Nlc3NvcnMgYW5kIGNvbnRhaW4gZm9udCxcbiAqIGNvbG9ycyBhbmQgb3RoZXIgZGVmaW5pdGlvbnNcbiAqL1xuLypcbiAqIERlZmluZSBjb2xvcnNcbiAqL1xuLypcbiAqIEJlYWtpbmcgUG9pbnRzXG4gKi9cbi8qKlxuICogVG9vbHNcbiAqXG4gKiBHbG9iYWxseSB1c2VkIG1peGlucyBhbmQgZnVuY3Rpb25zLiBJdCdzIGltcG9ydGFudFxuICogbm90IHRvIG91dHB1dCBhbnkgQ1NTIGluIHRoZSBmaXJzdCAyIGxheWVycy5cbiAqL1xuLyoqXG4gKiBUb29sc1xuICpcbiAqIEdsb2JhbGx5IHVzZWQgbWl4aW5zIGFuZCBmdW5jdGlvbnMuIEl0J3MgaW1wb3J0YW50XG4gKiBub3QgdG8gb3V0cHV0IGFueSBDU1MgaW4gdGhlIGZpcnN0IDIgbGF5ZXJzLlxuICovXG4vKlxuICogVXNlZnVsIG1peGluc1xuICovXG4vKipcbiAqIEhpZGVzIGFuIGVsZW1lbnQsIGJ1dCBzdGlsbCBrZWVwcyBpdCBpbiB0aGUgRE9NXG4gKiAodW5saWtlIGRpc3BsYXk6bm9uZSlcbiAqL1xuLyoqXG4gKiBHZW5lcmljXG4gKlxuICogUmVzZXQgYW5kL29yIG5vcm1hbGl6ZSBzdHlsZXMsIGJveC1zaXppbmcgZGVmaW5pdGlvbiwgZXRjLlxuICogVGhpcyBpcyB0aGUgZmlyc3QgbGF5ZXIgd2hpY2ggZ2VuZXJhdGVzIGFjdHVhbCBDU1NcbiAqL1xuLyoqXG4gKiBHZW5lcmljXG4gKlxuICogUmVzZXQgYW5kL29yIG5vcm1hbGl6ZSBzdHlsZXMsIGJveC1zaXppbmcgZGVmaW5pdGlvbiwgZXRjLlxuICogVGhpcyBpcyB0aGUgZmlyc3QgbGF5ZXIgd2hpY2ggZ2VuZXJhdGVzIGFjdHVhbCBDU1NcbiAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9YnV0dG9uXSxcbmlucHV0W3R5cGU9cmVzZXRdLFxuaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5pbnB1dFt0eXBlPWNoZWNrYm94XSxcbmlucHV0W3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuXG51bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxudGV4dGFyZWEsXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1lbWFpbF0sXG5pbnB1dFt0eXBlPXNlYXJjaF0sXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8qKlxuICogR2VuZXJpY1xuICpcbiAqIFJlc2V0IGFuZC9vciBub3JtYWxpemUgc3R5bGVzLCBib3gtc2l6aW5nIGRlZmluaXRpb24sIGV0Yy5cbiAqIFRoaXMgaXMgdGhlIGZpcnN0IGxheWVyIHdoaWNoIGdlbmVyYXRlcyBhY3R1YWwgQ1NTXG4gKi9cbi8qKlxuICogSW5jbHVkZSBmb250IGZpbGVzXG4gKlxuICovXG4vKiBzb3VyY2Utc2Fucy1wcm8tcmVndWxhciAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NvdXJjZS1zYW5zLXByby1sYXRpbi1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zb3VyY2Utc2Fucy1wcm8tbGF0aW4tcmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cbi8qIHNvdXJjZS1zYW5zLXByby1pdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zb3VyY2Utc2Fucy1wcm8tbGF0aW4taXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zb3VyY2Utc2Fucy1wcm8tbGF0aW4taXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xufVxuLyogc291cmNlLXNhbnMtcHJvLTYwMCAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NvdXJjZS1zYW5zLXByby1sYXRpbi02MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL3NvdXJjZS1zYW5zLXByby1sYXRpbi02MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXG59XG4vKiBzb3VyY2Utc2Fucy1wcm8tNjAwaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc291cmNlLXNhbnMtcHJvLWxhdGluLTYwMGl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvc291cmNlLXNhbnMtcHJvLWxhdGluLTYwMGl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cbi8qIHNvdXJjZS1zYW5zLXByby03MDBpdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zb3VyY2Utc2Fucy1wcm8tbGF0aW4tNzAwaXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zb3VyY2Utc2Fucy1wcm8tbGF0aW4tNzAwaXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xufVxuLyogc291cmNlLXNhbnMtcHJvLTcwMCAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NvdXJjZS1zYW5zLXByby1sYXRpbi03MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL3NvdXJjZS1zYW5zLXByby1sYXRpbi03MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXG59XG4vKipcbiAqIEJhc2UgLyBFbGVtZW50c1xuICpcbiAqIFN0eWxpbmcgb2YgYmFyZSBIVE1MIGVsZW1lbnRzIChsaWtlIEgxLCBBLCBldGMuKS5cbiAqIFRoZXNlIGFjb21lIHdpdGggZGVmYXVsdCBzdHlsaW5nIGZyb20gdGhlIGJyb3dzZXJcbiAqIHNvIHdlIGNhbiByZWRlZmluZSB0aGVtIGhlcmUuXG4gKi9cbi8qKlxuICogQmFzZSAvIEVsZW1lbnRzXG4gKlxuICogU3R5bGluZyBvZiBiYXJlIEhUTUwgZWxlbWVudHMgKGxpa2UgSDEsIEEsIGV0Yy4pLlxuICogVGhlc2UgYWNvbWUgd2l0aCBkZWZhdWx0IHN0eWxpbmcgZnJvbSB0aGUgYnJvd3NlclxuICogc28gd2UgY2FuIHJlZGVmaW5lIHRoZW0gaGVyZS5cbiAqL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICBtYXJnaW46IDA7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMDtcbn1cblxucCB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbnVsLCBvbCB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAgMCAwIDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG51bCBsaSwgb2wgbGkge1xuICBtYXJnaW46IDAgMCAwLjI1cmVtO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50ZCB7XG4gIHBhZGRpbmc6IDZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcbn1cblxudHI6bnRoLWNoaWxkKGV2ZW4pOm5vdChbYmdjb2xvcl0pIHRkOm5vdChbYmdjb2xvcl0pIHtcbiAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbn1cblxuaHIge1xuICBtYXJnaW46IDNyZW0gYXV0bztcbiAgd2lkdGg6IDUwJTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiKDI0My40LCAyNDMuNCwgMjQzLjQpO1xufVxuXG4vKipcbiAqIE9iamVjdHNcbiAqXG4gKiBDbGFzcy1iYXNlZCBzZWxlY3RvcnMgd2hpY2ggZGVmaW5lIHVuZGVjb3JhdGVkXG4gKiBkZXNpZ24gcGF0dGVybnMuXG4gKiBlLmcuIFwiLnRodW1ibmFpbC1saXN0XCJcbiAqL1xuLyoqXG4gKiBPYmplY3RzXG4gKlxuICogQ2xhc3MtYmFzZWQgc2VsZWN0b3JzIHdoaWNoIGRlZmluZSB1bmRlY29yYXRlZFxuICogZGVzaWduIHBhdHRlcm5zLlxuICogZS5nLiBcIi50aHVtYm5haWwtbGlzdFwiXG4gKi9cbi5yb3cge1xuICBtYXJnaW46IDAgMCA2MHB4O1xufVxuLnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbHVtbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb2x1bW4ucmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uY29sdW1uLmNvbC01MCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAuY29sdW1uLmNvbC01MCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLmNvbHVtbiAud2lkZ2V0IHtcbiAgbWFyZ2luOiAwIDAgNjBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAuY29sdW1uIC53aWRnZXQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmVudHJ5IGEsXG4uY29tbWVudHMtYXJlYSBhIHtcbiAgY29sb3I6ICNkZTIxMjI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnV0dG9uIHtcbiAgcGFkZGluZzogN3B4IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTI7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UzZTNlMjtcbiAgfVxufVxuXG4udGFibGUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuLyoqXG4gKiBDb21wb25lbnRzXG4gKlxuICogU3BlY2lmaWMgVUkgY29tcG9uZW50cy4gVGhpcyBpcyB3aGVyZSB0aGUgbWFqb3JpdHlcbiAqIG9mIG91ciB3b3JrIHRha2VzIHBsYWNlIGFuZCBvdXIgVUkgY29tcG9uZW50cyBhcmVcbiAqIGJhc2ljYWxseSBjb21wb3NlZCBvZiBPYmplY3RzIGFuZCBDb21wb25lbnRzXG4gKiBlLmcuIFwiLmZlYXR1cmVkLXByb2R1Y3RzLWxpc3RcIlxuICovXG4vKipcbiAqIENvbXBvbmVudHNcbiAqXG4gKiBTcGVjaWZpYyBVSSBjb21wb25lbnRzLiBUaGlzIGlzIHdoZXJlIHRoZSBtYWpvcml0eVxuICogb2Ygb3VyIHdvcmsgdGFrZXMgcGxhY2UgYW5kIG91ciBVSSBjb21wb25lbnRzIGFyZVxuICogYmFzaWNhbGx5IGNvbXBvc2VkIG9mIE9iamVjdHMgYW5kIENvbXBvbmVudHNcbiAqIGUuZy4gXCIuZmVhdHVyZWQtcHJvZHVjdHMtbGlzdFwiXG4gKi9cbi8qKlxuICogU2l0ZSBXcmFwcGVyXG4gKlxuICogRGVmaW5lIHRoZSBvcmRlciBvZiBiYXNpYyBzaXRlIGVsZW1lbnRzXG4gKi9cbi5zaXRlLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnNpdGUtd3JhcHBlciAuc2l0ZS1oZWFkZXIge1xuICBvcmRlcjogMjtcbn1cbi5zaXRlLXdyYXBwZXIgLnNpdGUtY29udGVudC1pbmRleCwgLnNpdGUtd3JhcHBlciAuc2l0ZS1jb250ZW50LXNpbmdsZSwgLnNpdGUtd3JhcHBlciAuc2l0ZS1jb250ZW50LXBhZ2UsIC5zaXRlLXdyYXBwZXIgLnNpdGUtY29udGVudC1lcnJvciwgLnNpdGUtd3JhcHBlciAuc2l0ZS1jb250ZW50LWFyY2hpdmUsIC5zaXRlLXdyYXBwZXIgLnNpdGUtY29udGVudC1zZWFyY2gsIC5zaXRlLXdyYXBwZXIgLnNpdGUtY29udGVudC1ldmVudHMsIC5zaXRlLXdyYXBwZXIgLm5vdC1mb3VuZCB7XG4gIG9yZGVyOiAzO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaXRlLXdyYXBwZXIgLnNpZGViYXIge1xuICBvcmRlcjogNDtcbn1cbi5zaXRlLXdyYXBwZXIgLnNpdGUtZm9vdGVyIHtcbiAgb3JkZXI6IDU7XG59XG4uc2l0ZS13cmFwcGVyIC5hZC10b3AtbGVhZGVyYm9hcmQge1xuICBvcmRlcjogMTtcbn1cblxuLyoqXG4gKiBTaXRlIEhlYWRlclxuICovXG4uc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiKDI0My40LCAyNDMuNCwgMjQzLjQpO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaXRlLWhlYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keS5maXhlZC1uYXYgLnNpdGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHotaW5kZXg6IDIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzIDAuMXMsIGJvcmRlciAwLjZzO1xufVxuXG5ib2R5LmZpeGVkLW5hdi5hZG1pbi1iYXIgLnNpdGUtaGVhZGVyIHtcbiAgdG9wOiAzMnB4O1xufVxuXG4uc2l0ZS1oZWFkZXItaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggMCAwIDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMTBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgYm9keS5maXhlZC1uYXYgLnNpdGUtaGVhZGVyLWlubmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMTBweDtcbiAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXItbG9nbyB7XG4gIG1hcmdpbjogNXB4IDAgMTBweCAyMHB4O1xuICB3aWR0aDogMTYwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNpdGUtaGVhZGVyLWxvZ28gc3ZnIHtcbiAgd2lkdGg6IDE2MHB4O1xuICBoZWlnaHQ6IDUycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAuc2l0ZS1oZWFkZXItbG9nbyB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG4gIC5zaXRlLWhlYWRlci1sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNjVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5zaXRlLWhlYWRlci1sb2dvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5zaXRlLWhlYWRlci1sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIGhlaWdodDogODFweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5zaXRlLWhlYWRlci1sb2dvIHtcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5zaXRlLWhlYWRlci1sb2dvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjgycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5zaXRlLWhlYWRlci1sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDI4MnB4O1xuICAgIGhlaWdodDogOTFweDtcbiAgfVxufVxuLnNpdGUtaGVhZGVyLWxvZ28gc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuYm9keS5maXhlZC1uYXYgLnNpdGUtaGVhZGVyLWxvZ28ge1xuICB3aWR0aDogMTYwcHg7XG59XG5ib2R5LmZpeGVkLW5hdiAuc2l0ZS1oZWFkZXItbG9nbyBzdmcge1xuICB3aWR0aDogMTYwcHg7XG4gIGhlaWdodDogNTJweDtcbn1cblxuLyoqXG4gKiBNYWluIE5hdmlnYXRpb25cbiAqL1xuLnRvZ2dsZS1uYXZpZ2F0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIxcHg7XG4gIHJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAxMHB4IDM0cHggMTBweCAxMHB4O1xuICBjb2xvcjogI2RlMjEyMjtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1tZW51LnN2Zykgbm8tcmVwZWF0IGNlbnRlciByaWdodCAxMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMTVweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UzZTNlMjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLnRvZ2dsZS1uYXZpZ2F0aW9uIHtcbiAgICB0b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAudG9nZ2xlLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tdG9nZ2xlOmNoZWNrZWQgfiAudG9nZ2xlLW5hdmlnYXRpb24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24teC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMTFweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG59XG5cbi5uYXZpZ2F0aW9uLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHkuZml4ZWQtbmF2IC5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIHVsIHtcbiAgbWFyZ2luLXRvcDogMTlweDtcbn1cblxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc4cHg7XG4gIH1cbn1cbi5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gdWwge1xuICAgIG1hcmdpbi10b3A6IDM5cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gdWwge1xuICAgIG1hcmdpbi10b3A6IDQ0cHg7XG4gIH1cbn1cbi5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDEycHggMjJweDtcbiAgZmxleC1iYXNpczogNTAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MzBweCkge1xuICAuc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAuc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICB9XG4gIC5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW06Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAuc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtIHtcbiAgICBtYXJnaW4tbGVmdDogNDRweDtcbiAgfVxufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAycHggMCAxcHggMzJweDtcbn1cbi5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0gYTpob3ZlciwgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbSBhOmZvY3VzIHtcbiAgY29sb3I6ICNkZTIxMjI7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tdGVjaG5payBhIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLXRlY2huaWsuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjlweCAyOXB4O1xufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLXRlY2huaWsgYTpob3ZlciwgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLXRlY2huaWsgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi10ZWNobmlrLXJlZC5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyOXB4IDI5cHg7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tZm90b2t1bHR1ciBhIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWZvdG9rdWx0dXIuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjhweCAyOHB4O1xufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLWZvdG9rdWx0dXIgYTpob3ZlciwgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLWZvdG9rdWx0dXIgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1mb3Rva3VsdHVyLXJlZC5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyOHB4IDI4cHg7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tYnVlY2hlciBhIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWJ1ZWNoZXIuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjhweCAyOHB4O1xufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLWJ1ZWNoZXIgYTpob3ZlciwgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLWJ1ZWNoZXIgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1idWVjaGVyLXJlZC5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyOHB4IDI4cHg7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tdG9wLXN0b3JpZXMgYSB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi10b3Atc3Rvcmllcy5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyOHB4IDI4cHg7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tdG9wLXN0b3JpZXMgYTpob3ZlciwgLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLXRvcC1zdG9yaWVzIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tdG9wLXN0b3JpZXMtcmVkLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI4cHggMjhweDtcbn1cbi5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0uaWNvbi1zb2Z0d2FyZSBhIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLXNvZnR3YXJlLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggMjdweDtcbn1cbi5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0uaWNvbi1zb2Z0d2FyZSBhOmhvdmVyLCAuc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tc29mdHdhcmUgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1zb2Z0d2FyZS1yZWQuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjdweCAyN3B4O1xufVxuLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24gLm1lbnUtaXRlbS5pY29uLWV2ZW50cyBhIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWV2ZW50cy5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDI3cHg7XG59XG4uc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiAubWVudS1pdGVtLmljb24tZXZlbnRzIGE6aG92ZXIsIC5zaXRlLWhlYWRlci1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0uaWNvbi1ldmVudHMgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1ldmVudHMtcmVkLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggMjdweDtcbn1cblxuLm5hdmlnYXRpb24tdG9nZ2xlOmNoZWNrZWQgfiAuc2l0ZS1oZWFkZXItbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDI0My40LCAyNDMuNCwgMjQzLjQpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5uYXZpZ2F0aW9uLXRvZ2dsZTpjaGVja2VkIH4gLnNpdGUtaGVhZGVyLW5hdmlnYXRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cbn1cblxuLyoqXG4gKiBTZWFyY2ggRm9ybVxuICovXG4udG9nZ2xlLXNlYXJjaC1mb3JtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIxcHg7XG4gIHJpZ2h0OiAxMTJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tc2VhcmNoLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xuICB0ZXh0LWluZGVudDogLTEwMDAwMGVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC50b2dnbGUtc2VhcmNoLWZvcm0ge1xuICAgIHRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC50b2dnbGUtc2VhcmNoLWZvcm0ge1xuICAgIHRvcDogNDFweDtcbiAgICByaWdodDogMjBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAudG9nZ2xlLXNlYXJjaC1mb3JtIHtcbiAgICByaWdodDogMjEwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudG9nZ2xlLXNlYXJjaC1mb3JtIHtcbiAgICB0b3A6IDQ2cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5maXhlZC1uYXYgLnRvZ2dsZS1zZWFyY2gtZm9ybSB7XG4gICAgdG9wOiAyMnB4O1xuICB9XG59XG5cbi5zZWFyY2gtdG9nZ2xlOmNoZWNrZWQgfiAudG9nZ2xlLXNlYXJjaC1mb3JtIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLXguc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxOHB4IDE4cHg7XG59XG5cbi50b2dnbGUtc2VhcmNoLWZvcm0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWFyY2gtdG9nZ2xlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNpdGUtaGVhZGVyLXNlYXJjaCB7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogOTUlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5zaXRlLWhlYWRlci1zZWFyY2gge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLnNlYXJjaC10b2dnbGU6Y2hlY2tlZCB+IC5zaXRlLWhlYWRlci1zZWFyY2gge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5zZWFyY2gtdG9nZ2xlOmNoZWNrZWQgfiAuc2l0ZS1oZWFkZXItc2VhcmNoIC5zZWFyY2gtZm9ybSB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMjBweCAyMHB4IDIwcHg7XG59XG5cbi5zZWFyY2gtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNDAwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLnNlYXJjaC1mb3JtIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgIGhlaWdodDogMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLWZpZWxkIHtcbiAgcGFkZGluZzogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5zZWFyY2gtZm9ybSAuc2VhcmNoLWZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCB7XG4gIHBhZGRpbmc6IDdweCAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UyO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLnNlYXJjaC1mb3JtIC5zZWFyY2gtc3VibWl0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UzZTNlMjtcbiAgfVxufVxuXG4vKipcbiAqIEhvbWVwYWdlXG4gKi9cbi5zaXRlLWNvbnRlbnQtaW5kZXgsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSwgLnNpdGUtY29udGVudC1zZWFyY2gsIC5zaXRlLWNvbnRlbnQtZXZlbnRzIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgbWF4LXdpZHRoOiAxNjAwcHg7XG59XG4uc2l0ZS1jb250ZW50LWluZGV4IC5hcnRpY2xlcywgLnNpdGUtY29udGVudC1pbmRleCAuZXZlbnRzLWNvbnRhaW5lciwgLnNpdGUtY29udGVudC1hcmNoaXZlIC5hcnRpY2xlcywgLnNpdGUtY29udGVudC1hcmNoaXZlIC5ldmVudHMtY29udGFpbmVyLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5ldmVudHMtY29udGFpbmVyLCAuc2l0ZS1jb250ZW50LWV2ZW50cyAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtZXZlbnRzIC5ldmVudHMtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuc2l0ZS1jb250ZW50LWluZGV4IC5hcnRpY2xlcywgLnNpdGUtY29udGVudC1pbmRleCAuZXZlbnRzLWNvbnRhaW5lciwgLnNpdGUtY29udGVudC1hcmNoaXZlIC5hcnRpY2xlcywgLnNpdGUtY29udGVudC1hcmNoaXZlIC5ldmVudHMtY29udGFpbmVyLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5ldmVudHMtY29udGFpbmVyLCAuc2l0ZS1jb250ZW50LWV2ZW50cyAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtZXZlbnRzIC5ldmVudHMtY29udGFpbmVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjYuNjY2NjYlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnNpdGUtY29udGVudC1pbmRleCAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtaW5kZXggLmV2ZW50cy1jb250YWluZXIsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuYXJ0aWNsZXMsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuZXZlbnRzLWNvbnRhaW5lciwgLnNpdGUtY29udGVudC1zZWFyY2ggLmFydGljbGVzLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuZXZlbnRzLWNvbnRhaW5lciwgLnNpdGUtY29udGVudC1ldmVudHMgLmFydGljbGVzLCAuc2l0ZS1jb250ZW50LWV2ZW50cyAuZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NiUgLSA5NXB4KTtcbiAgfVxufVxuLnNpdGUtY29udGVudC1pbmRleCAuc2lkZWJhciwgLnNpdGUtY29udGVudC1hcmNoaXZlIC5zaWRlYmFyLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuc2lkZWJhciwgLnNpdGUtY29udGVudC1ldmVudHMgLnNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtaW5kZXggLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuc2lkZWJhciwgLnNpdGUtY29udGVudC1zZWFyY2ggLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtZXZlbnRzIC5zaWRlYmFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtaW5kZXggLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuc2lkZWJhciwgLnNpdGUtY29udGVudC1zZWFyY2ggLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtZXZlbnRzIC5zaWRlYmFyIHtcbiAgICB3aWR0aDogMjkuMTY2NjYlO1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDk1cHgpO1xuICB9XG59XG4uc2l0ZS1jb250ZW50LWluZGV4IC5zaWRlLWFkLXdyYXBwZXIsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LWV2ZW50cyAuc2lkZS1hZC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuc2l0ZS1jb250ZW50LWluZGV4IC5zaWRlLWFkLXdyYXBwZXIsIC5zaXRlLWNvbnRlbnQtYXJjaGl2ZSAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LWV2ZW50cyAuc2lkZS1hZC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDEyLjUlO1xuICAgIHdpZHRoOiAxOTBweDtcbiAgfVxufVxuXG4vKipcbiAqIFNpbmdsZSBUZW1wYXRlXG4gKi9cbi5zaXRlLWNvbnRlbnQtc2luZ2xlLCAuc2l0ZS1jb250ZW50LXBhZ2UsIC5zaXRlLWNvbnRlbnQtc2VhcmNoLCAuc2l0ZS1jb250ZW50LWVycm9yIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgbWF4LXdpZHRoOiAxNjAwcHg7XG59XG4uc2l0ZS1jb250ZW50LXNpbmdsZSAucG9zdCwgLnNpdGUtY29udGVudC1zaW5nbGUgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtcGFnZSAucG9zdCwgLnNpdGUtY29udGVudC1wYWdlIC5wYWdlLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucG9zdCwgLnNpdGUtY29udGVudC1zZWFyY2ggLnBhZ2UsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLnBvc3QsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLnBhZ2Uge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNpbmdsZSAucGFnZSwgLnNpdGUtY29udGVudC1wYWdlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXBhZ2UgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucGFnZSwgLnNpdGUtY29udGVudC1lcnJvciAucG9zdCwgLnNpdGUtY29udGVudC1lcnJvciAucGFnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDY2LjY2NjY2JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNpbmdsZSAucGFnZSwgLnNpdGUtY29udGVudC1wYWdlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXBhZ2UgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucGFnZSwgLnNpdGUtY29udGVudC1lcnJvciAucG9zdCwgLnNpdGUtY29udGVudC1lcnJvciAucGFnZSB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NiUgLSA5NXB4KTtcbiAgfVxufVxuLnNpdGUtY29udGVudC1zaW5nbGUgLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtcGFnZSAuc2lkZWJhciwgLnNpdGUtY29udGVudC1zZWFyY2ggLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLnNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5zaWRlYmFyLCAuc2l0ZS1jb250ZW50LXBhZ2UgLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5zaWRlYmFyLCAuc2l0ZS1jb250ZW50LWVycm9yIC5zaWRlYmFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5zaWRlYmFyLCAuc2l0ZS1jb250ZW50LXBhZ2UgLnNpZGViYXIsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5zaWRlYmFyLCAuc2l0ZS1jb250ZW50LWVycm9yIC5zaWRlYmFyIHtcbiAgICB3aWR0aDogMjkuMTY2NjYlO1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDk1cHgpO1xuICB9XG59XG4uc2l0ZS1jb250ZW50LXNpbmdsZSAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LXBhZ2UgLnNpZGUtYWQtd3JhcHBlciwgLnNpdGUtY29udGVudC1zZWFyY2ggLnNpZGUtYWQtd3JhcHBlciwgLnNpdGUtY29udGVudC1lcnJvciAuc2lkZS1hZC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuc2l0ZS1jb250ZW50LXNpbmdsZSAuc2lkZS1hZC13cmFwcGVyLCAuc2l0ZS1jb250ZW50LXBhZ2UgLnNpZGUtYWQtd3JhcHBlciwgLnNpdGUtY29udGVudC1zZWFyY2ggLnNpZGUtYWQtd3JhcHBlciwgLnNpdGUtY29udGVudC1lcnJvciAuc2lkZS1hZC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDEyLjUlO1xuICAgIHdpZHRoOiAxOTBweDtcbiAgfVxufVxuXG4uYXJ0aWNsZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uYXJ0aWNsZXMgLmFyY2hpdmUtdGl0bGUsIC5hcnRpY2xlcyAuc2VhcmNoLXRpdGxlIHtcbiAgb3JkZXI6IDE7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4uYXJ0aWNsZXMgLmhlcm8tZW1iZWQge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuYXJ0aWNsZXMgLmhlcm8tZW1iZWQge1xuICAgIG1hcmdpbjogMCAyMnB4IDBweDtcbiAgfVxufVxuLmFydGljbGVzIC5oZXJvLWxpbmsge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41ZW0gMWVtIDJlbTtcbiAgY29sb3I6ICNkZTIxMjI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYXJ0aWNsZXMgLnRlYXNlciB7XG4gIG9yZGVyOiAxMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyoqXG4gICAqIEJyaW5nIG9yZGVyIHRvIHRoZSBjaGFvcyB0aGF0IGlzIGZsZXhib3ghXG4gICAqXG4gICAqIFJlY3RhbmdsZSBBZDogMTBcbiAgICogUGFnaW5hdGlvbjogMTAwMFxuICAgKlxuICAgKi9cbn1cbi5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDEpLCAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSgyKSwgLmFydGljbGVzIC50ZWFzZXI6bnRoLW9mLXR5cGUoMykge1xuICBvcmRlcjogMTtcbn1cbi5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDQpLCAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSg1KSwgLmFydGljbGVzIC50ZWFzZXI6bnRoLW9mLXR5cGUoNikge1xuICBvcmRlcjogMjA7XG59XG4uYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSg3KSwgLmFydGljbGVzIC50ZWFzZXI6bnRoLW9mLXR5cGUoOCksIC5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDkpLCAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSgxMCksIC5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDExKSwgLmFydGljbGVzIC50ZWFzZXI6bnRoLW9mLXR5cGUoMTIpIHtcbiAgb3JkZXI6IDQwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDIwcHgpIHtcbiAgLmFydGljbGVzIC50ZWFzZXIge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuICAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSgybisyKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDMpIHtcbiAgICBvcmRlcjogMTU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5hcnRpY2xlcyAudGVhc2VyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLmFydGljbGVzIC50ZWFzZXIge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAuYXJ0aWNsZXMgLnRlYXNlcjpudGgtb2YtdHlwZSgzKSB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLmFydGljbGVzIC50ZWFzZXI6bnRoLW9mLXR5cGUoMm4rMSksIC5hcnRpY2xlcyAudGVhc2VyOm50aC1vZi10eXBlKDJuKzIpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIH1cbn1cbi5hcnRpY2xlcyAuYWQtcmVjdGFuZ2xlIHtcbiAgb3JkZXI6IDEwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuLmFydGljbGVzIC5hZC1zcG9uc29yLXRoYW5rcyB7XG4gIG9yZGVyOiAzMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAyO1xufVxuLmFydGljbGVzIC5wYWdpbmF0aW9uIHtcbiAgb3JkZXI6IDEwMDA7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuYXJ0aWNsZXMgLnBhZ2luYXRpb24ge1xuICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xuICAgIGdyaWQtY29sdW1uLWVuZDogMjtcbiAgfVxufVxuLmFydGljbGVzIC50ZWFzZXItZXZlbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBvcmRlcjogOSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDIwcHgpIHtcbiAgLmFydGljbGVzIC50ZWFzZXItZXZlbnQge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5hcnRpY2xlcyAudGVhc2VyLWV2ZW50IHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgfVxufVxuXG4uc2lkZWJhciAud2lkZ2V0IHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItdG9wOiA0MHB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiKDI0My40LCAyNDMuNCwgMjQzLjQpO1xufVxuLnNpZGViYXIgLndpZGdldCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjZGUyMTIyO1xufVxuLnNpZGViYXIgLndpZGdldCBhIHtcbiAgY29sb3I6ICNkZTIxMjI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uc29jaWFsLW1lZGlhIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zb2NpYWwtbWVkaWEtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5zb2NpYWwtbWVkaWEtbGluayB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjQzLjQsIDI0My40LCAyNDMuNCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zb2NpYWwtbWVkaWEtbGluayBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDdweCA1cHggN3B4IDI3cHg7XG59XG4uc29jaWFsLW1lZGlhLWxpbmsudHdpdHRlciB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG4uc29jaWFsLW1lZGlhLWxpbmsudHdpdHRlciBzcGFuIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy90d2l0dGVyLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbn1cbi5zb2NpYWwtbWVkaWEtbGluay5mYWNlYm9vayB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuLnNvY2lhbC1tZWRpYS1saW5rLmZhY2Vib29rIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ZhY2Vib29rLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbn1cbi5zb2NpYWwtbWVkaWEtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZTIxMjI7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5zb2NpYWwtbWVkaWEtbGluazpob3Zlci50d2l0dGVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3R3aXR0ZXItd2hpdGUuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xufVxuLnNvY2lhbC1tZWRpYS1saW5rOmhvdmVyLmZhY2Vib29rIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ZhY2Vib29rLXdoaXRlLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbn1cblxuLm5ld3NsZXR0ZXIgaW5wdXRbdHlwZT1lbWFpbF0ge1xuICBwYWRkaW5nOiA0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG59XG4ubmV3c2xldHRlciAubWMtZmllbGQtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm5ld3NsZXR0ZXIgaDQge1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG4ubmV3c2xldHRlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5uZXdzbGV0dGVyIHVsOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm5ld3NsZXR0ZXIgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDIwcHggMTBweCAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLm5ld3NsZXR0ZXIgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5uZXdzbGV0dGVyIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG4ubmV3c2xldHRlciAubWFpbGNoaW1wLXByaWNheS1oaW50IHtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLnNpZGUtYWQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuc2lkZS1hZC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vKipcbiAqIERvbmF0aW9uIGJveFxuICovXG4uZG9uYXRpb24tYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMWVtIDAuOGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuaDMuZG9uYXRpb24taGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmRvbmF0aW9uLWFtb3VudHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjhlbSAwIDAuM2VtO1xufVxuXG4uZG9uYXRpb24tYnV0dG9uIHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG4gIG1pbi13aWR0aDogMTAxcHg7XG4gIHBhZGRpbmc6IDAuNmVtIDFlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLmRvbmF0aW9uLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzcuNiwgMjYuNCwgMjcuMik7XG59XG4uZG9uYXRpb24tYnV0dG9uOm50aC1vZi10eXBlKDIpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuLmRvbmF0aW9uLWJ1dHRvbiAuYW1vdW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjZlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZG9uYXRpb24tYnV0dG9uIC5jdXJyZW5jeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjZlbTtcbn1cblxuLmRvbmF0aW9uLXByb3ZpZGVyLWluZm8gYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnNpdGUtY29udGVudC1wYWdlIC5lbnRyeSAuZG9uYXRpb24tYm94IHAsXG4uc2lkZWJhciAuZG9uYXRpb24tYm94IHAge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC42ZW07XG59XG5cbi5zaWRlYmFyIC5kb25hdGlvbi1ib3gge1xuICBtYXJnaW46IDIwcHggMCAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5zaWRlYmFyIC5kb25hdGlvbi1ib3ggLmRvbmF0aW9uLWJ1dHRvbiB7XG4gIG1pbi13aWR0aDogMXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjBweCkgYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gIC5zaWRlYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2lkZWJhciAuYWQtc3BvbnNvcnMge1xuICAgIG9yZGVyOiAyO1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICB9XG4gIC5zaWRlYmFyIC50ZWFzZXItdG9wLXN0b3J5IHtcbiAgICBvcmRlcjogMTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5zaWRlYmFyIC5uZXdzbGV0dGVyIHtcbiAgICBvcmRlcjogMztcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgLnNpZGViYXIgLmRvbmF0aW9uLWJveCB7XG4gICAgb3JkZXI6IDQ7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICB9XG4gIC5zaWRlYmFyIC53aWRnZXRfcmVjZW50X2NvbW1lbnRzIHtcbiAgICBvcmRlcjogNTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gIC5zaWRlYmFyIC5hZC1zcG9uc29ycyB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuICAuc2lkZWJhciAubmV3c2xldHRlciB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLnNpdGUtY29udGVudC1zaW5nbGUsIC5zaXRlLWNvbnRlbnQtcGFnZSwgLnNpdGUtY29udGVudC1zZWFyY2gsIC5zaXRlLWNvbnRlbnQtZXJyb3Ige1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAyMHB4O1xuICBtYXgtd2lkdGg6IDE2MDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNpbmdsZSAucGFnZSwgLnNpdGUtY29udGVudC1wYWdlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXBhZ2UgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucGFnZSwgLnNpdGUtY29udGVudC1lcnJvciAucG9zdCwgLnNpdGUtY29udGVudC1lcnJvciAucGFnZSB7XG4gICAgcGFkZGluZzogMnJlbSAycmVtIDJyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNpbmdsZSAucGFnZSwgLnNpdGUtY29udGVudC1wYWdlIC5wb3N0LCAuc2l0ZS1jb250ZW50LXBhZ2UgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5wb3N0LCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucGFnZSwgLnNpdGUtY29udGVudC1lcnJvciAucG9zdCwgLnNpdGUtY29udGVudC1lcnJvciAucGFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuc2l0ZS1jb250ZW50LXNpbmdsZSAucG9zdCwgLnNpdGUtY29udGVudC1zaW5nbGUgLnBhZ2UsIC5zaXRlLWNvbnRlbnQtcGFnZSAucG9zdCwgLnNpdGUtY29udGVudC1wYWdlIC5wYWdlLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAucG9zdCwgLnNpdGUtY29udGVudC1zZWFyY2ggLnBhZ2UsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLnBvc3QsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLnBhZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnNpdGUtY29udGVudC1zaW5nbGUgLnBvc3QsIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5wYWdlLCAuc2l0ZS1jb250ZW50LXBhZ2UgLnBvc3QsIC5zaXRlLWNvbnRlbnQtcGFnZSAucGFnZSwgLnNpdGUtY29udGVudC1zZWFyY2ggLnBvc3QsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5wYWdlLCAuc2l0ZS1jb250ZW50LWVycm9yIC5wb3N0LCAuc2l0ZS1jb250ZW50LWVycm9yIC5wYWdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuICB9XG59XG5cbi8qKlxuICogQXJ0aWNsZSBUZWFzZXJzXG4gKi9cbi50ZWFzZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIC8qKlxuICAgKiBMaW5rIHRvIGVuY29tcGFzcyB0aGUgd2hvbGUgdGVhc2VyXG4gICAqL1xufVxuLnRlYXNlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAudGVhc2VyIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxufVxuLnRlYXNlciAudGVhc2VyLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgdmVydGljYWwtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQyMHB4KSB7XG4gIC50ZWFzZXIgLnRlYXNlci1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC50ZWFzZXIgLnRlYXNlci1saW5rIHtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggMTBweDtcbiAgfVxufVxuLnRlYXNlciAudGVhc2VyLXRodW1ibmFpbC13cmFwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogNXB4IDIwcHggMCAwO1xuICBmbGV4OiAwIDAgMTAwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnRlYXNlciAudGVhc2VyLXRodW1ibmFpbC13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWFyZ2luOiAwIDAgMC41cmVtIDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLnRlYXNlciAudGVhc2VyLXRodW1ibmFpbC13cmFwIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAudGVhc2VyIC50ZWFzZXItdGh1bWJuYWlsLXdyYXAgKyAudGVhc2VyLWNvbnRlbnQtd3JhcCAudGVhc2VyLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTc2cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDAlLCByZ2IoMjU1LCAyNTUsIDI1NSkgNTAlLCByZ2IoMjU1LCAyNTUsIDI1NSkgMTAwJSk7XG4gIH1cbn1cbi50ZWFzZXIgLnRlYXNlci10aXRsZSB7XG4gIG1hcmdpbjogMCAwIDZweCAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAudGVhc2VyIC50ZWFzZXItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICB9XG59XG4udGVhc2VyIC5leGNlcnB0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjBweCkge1xuICAudGVhc2VyIC5leGNlcnB0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnRlYXNlciAuZXhjZXJwdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgfVxufVxuLnRlYXNlciAudGVhc2VyLW1ldGEge1xuICBjb2xvcjogIzdFN0U4MztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAudGVhc2VyIC50ZWFzZXItbWV0YSB7XG4gICAgbWFyZ2luOiAwIDAgMnB4IDA7XG4gICAgcGFkZGluZy10b3A6IDBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC50ZWFzZXIgLnRlYXNlci1tZXRhIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuLnRlYXNlciAucG9zdC1hdXRob3Ige1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRlYXNlciAucG9zdC1kYXRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi50ZWFzZXIgLnBvc3QtdGltZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4udGVhc2VyIC5wb3N0LWNhdGVnb3JpZXMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQyMHB4KSB7XG4gIC50ZWFzZXIgLnBvc3QtY2F0ZWdvcmllcyB7XG4gICAgcGFkZGluZy10b3A6IDRweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnRlYXNlciAucG9zdC1jYXRlZ29yaWVzIHtcbiAgICBwYWRkaW5nLXRvcDogNnB4O1xuICB9XG59XG4udGVhc2VyIC5wb3N0LWNhdGVnb3JpZXMgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA1cHggNXB4IDA7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmU5O1xufVxuLnRlYXNlciAucG9zdC1jYXRlZ29yaWVzIGxpOmhvdmVyLCAudGVhc2VyIC5wb3N0LWNhdGVnb3JpZXMgbGk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc3LjYsIDI2LjQsIDI3LjIpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMTc3LjYsIDI2LjQsIDI3LjIpO1xuICBjb2xvcjogd2hpdGU7XG59XG4udGVhc2VyIC5wb3N0LXRhZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1cHg7XG4gIGxlZnQ6IDBweDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xuICBwYWRkaW5nOiAycHggNnB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4udGVhc2VyIC5wb3N0LXRhZy5zcG9uc29yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0U3RTgzO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnRlYXNlciAucG9zdC10YWcge1xuICAgIHRvcDogMjBweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnRlYXNlcjpub3QoLnRlYXNlci10b3Atc3RvcnkpOmhvdmVyLCAudGVhc2VyOm5vdCgudGVhc2VyLXRvcC1zdG9yeSk6Zm9jdXMge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMTc3LjYsIDI2LjQsIDI3LjIsIDAuNCk7XG4gICAgY29sb3I6IHJnYigxNzcuNiwgMjYuNCwgMjcuMik7XG4gIH1cbiAgLnRlYXNlcjpub3QoLnRlYXNlci10b3Atc3RvcnkpOmhvdmVyIC50ZWFzZXItbWV0YSwgLnRlYXNlcjpub3QoLnRlYXNlci10b3Atc3RvcnkpOmZvY3VzIC50ZWFzZXItbWV0YSB7XG4gICAgY29sb3I6IHJnYigxNzcuNiwgMjYuNCwgMjcuMik7XG4gIH1cbiAgLnRlYXNlcjpub3QoLnRlYXNlci10b3Atc3RvcnkpOmhvdmVyIC5tb3JlLWxpbmssIC50ZWFzZXI6bm90KC50ZWFzZXItdG9wLXN0b3J5KTpmb2N1cyAubW9yZS1saW5rIHtcbiAgICBzdHJva2U6IHJnYigxNzcuNiwgMjYuNCwgMjcuMik7XG4gIH1cbiAgLnRlYXNlcjpub3QoLnRlYXNlci10b3Atc3RvcnkpOmhvdmVyIC5wb3N0LWNhdGVnb3JpZXMgbGksIC50ZWFzZXI6bm90KC50ZWFzZXItdG9wLXN0b3J5KTpmb2N1cyAucG9zdC1jYXRlZ29yaWVzIGxpIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTc3LjYsIDI2LjQsIDI3LjIsIDAuNCk7XG4gIH1cbn1cblxuLm1vcmUtbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDM2cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzIGVhc2UtaW47XG4gIGZpbGw6IHRyYW5zcGFyZW50O1xuICBzdHJva2U6ICNkZTIxMjI7XG59XG4udGVhc2VyOmhvdmVyIC5tb3JlLWxpbmssIC50ZWFzZXI6Zm9jdXMgLm1vcmUtbGluaywgLmV2ZW50LWxpc3QtZWxlbWVudDpob3ZlciAubW9yZS1saW5rIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNXJlbSk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5tb3JlLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubW9yZS1saW5rIHN2ZyB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG59XG5cbi50ZWFzZXItdG9wLXN0b3J5IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4udGVhc2VyLXRvcC1zdG9yeS1pbm5lciB7XG4gIGNvbG9yOiAjZGZkZmRmO1xuICBwYWRkaW5nOiAwO1xufVxuLnRlYXNlci10b3Atc3RvcnktaW5uZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udGVhc2VyLXRvcC1zdG9yeS1pbm5lciAudGVhc2VyLXRvcC1zdG9yeS10aHVtYm5haWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAudGVhc2VyLXRvcC1zdG9yeS1pbm5lciAudGVhc2VyLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi50ZWFzZXItdG9wLXN0b3J5LWlubmVyIC5wb3N0LWNhdGVnb3JpZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMHB4O1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cbi50ZWFzZXItdG9wLXN0b3J5LWlubmVyIC5wb3N0LWNhdGVnb3JpZXMgbGkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGUyMTIyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xuICBjb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDJweCAwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbi50ZWFzZXItdG9wLXN0b3J5LWlubmVyIC50ZWFzZXItdG9wLXN0b3J5LWNvbnRlbnQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmMzMztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC50ZWFzZXItdG9wLXN0b3J5LWlubmVyIHtcbiAgICBtaW4taGVpZ2h0OiA1MCU7XG4gIH1cbn1cblxuLnNpbmdsZS1oZWFkZXIsIC5wYWdlLWhlYWRlciwgLmFyY2hpdmUtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc2luZ2xlLWhlYWRlciBpbWcsIC5wYWdlLWhlYWRlciBpbWcsIC5hcmNoaXZlLWhlYWRlciBpbWcge1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLmFyY2hpdmUtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2luZ2xlLW1ldGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvIDFyZW0gYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiByZ2IoMTgyLjUsIDE4Mi41LCAyMDApO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5zaW5nbGUtbWV0YSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLnNpbmdsZS1tZXRhIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cblxuLnNpbmdsZS10aXRsZSwgLnBhZ2UtdGl0bGUsIC5zZWFyY2gtdGl0bGUsIC5hcmNoaXZlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5zaW5nbGUtdGl0bGUsIC5wYWdlLXRpdGxlLCAuc2VhcmNoLXRpdGxlLCAuYXJjaGl2ZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjc1cmVtO1xuICB9XG59XG5cbi5zaW5nbGUtaGVhZGVyIC5wb3N0LXRhZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1cHg7XG4gIGxlZnQ6IDBweDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xuICBwYWRkaW5nOiA0cHggOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLnNpbmdsZS1oZWFkZXIgLnBvc3QtdGFnLnNwb25zb3JlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3RTdFODM7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnNpdGUtY29udGVudC1zaW5nbGUgLmVudHJ5LCAuc2l0ZS1jb250ZW50LXBhZ2UgLmVudHJ5LCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuZW50cnksIC5zaXRlLWNvbnRlbnQtZXJyb3IgLmVudHJ5IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuc2l0ZS1jb250ZW50LXNpbmdsZSAuZW50cnksIC5zaXRlLWNvbnRlbnQtcGFnZSAuZW50cnksIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5lbnRyeSwgLnNpdGUtY29udGVudC1lcnJvciAuZW50cnkge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnNpdGUtY29udGVudC1zaW5nbGUgLmVudHJ5IHAsIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5lbnRyeSB1bCwgLnNpdGUtY29udGVudC1zaW5nbGUgLmVudHJ5IG9sLCAuc2l0ZS1jb250ZW50LXNpbmdsZSAuZW50cnkgdGFibGUsIC5zaXRlLWNvbnRlbnQtcGFnZSAuZW50cnkgcCwgLnNpdGUtY29udGVudC1wYWdlIC5lbnRyeSB1bCwgLnNpdGUtY29udGVudC1wYWdlIC5lbnRyeSBvbCwgLnNpdGUtY29udGVudC1wYWdlIC5lbnRyeSB0YWJsZSwgLnNpdGUtY29udGVudC1zZWFyY2ggLmVudHJ5IHAsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5lbnRyeSB1bCwgLnNpdGUtY29udGVudC1zZWFyY2ggLmVudHJ5IG9sLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuZW50cnkgdGFibGUsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLmVudHJ5IHAsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLmVudHJ5IHVsLCAuc2l0ZS1jb250ZW50LWVycm9yIC5lbnRyeSBvbCwgLnNpdGUtY29udGVudC1lcnJvciAuZW50cnkgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5lbnRyeSBwLCAuc2l0ZS1jb250ZW50LXNpbmdsZSAuZW50cnkgdWwsIC5zaXRlLWNvbnRlbnQtc2luZ2xlIC5lbnRyeSBvbCwgLnNpdGUtY29udGVudC1zaW5nbGUgLmVudHJ5IHRhYmxlLCAuc2l0ZS1jb250ZW50LXBhZ2UgLmVudHJ5IHAsIC5zaXRlLWNvbnRlbnQtcGFnZSAuZW50cnkgdWwsIC5zaXRlLWNvbnRlbnQtcGFnZSAuZW50cnkgb2wsIC5zaXRlLWNvbnRlbnQtcGFnZSAuZW50cnkgdGFibGUsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5lbnRyeSBwLCAuc2l0ZS1jb250ZW50LXNlYXJjaCAuZW50cnkgdWwsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5lbnRyeSBvbCwgLnNpdGUtY29udGVudC1zZWFyY2ggLmVudHJ5IHRhYmxlLCAuc2l0ZS1jb250ZW50LWVycm9yIC5lbnRyeSBwLCAuc2l0ZS1jb250ZW50LWVycm9yIC5lbnRyeSB1bCwgLnNpdGUtY29udGVudC1lcnJvciAuZW50cnkgb2wsIC5zaXRlLWNvbnRlbnQtZXJyb3IgLmVudHJ5IHRhYmxlIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG59XG5cbi8qKlxuICogV29yZFByZXNzIGRlZmF1bHQgY2xhc3Nlc1xuICovXG4ubmF2aWdhdGlvbi5wYWdpbmF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKipcbiAqIFN0eWxlIGhlYWRsaW5lc1xuICovXG4uZW50cnkgaDIge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuLmVudHJ5IGgzIHtcbiAgbWFyZ2luLXRvcDogMi41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuLypcbiAqIERlZmF1bHQgV29yZFByZXNzIGFsaWdubWVudCBjbGFzc2VzXG4gKi9cbi5hbGlnbm5vbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDAgMXJlbTtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDFyZW0gYXV0bztcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMXJlbSAxcmVtIDA7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAxcmVtIDFyZW07XG59XG5cbi8qXG4gKiBGaWd1cmVzIGFuZCBjYXB0aW9uc1xuICovXG4ud3AtY2FwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICBjb2xvcjogIzE2MTYxZDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG4vKlxuICogZmktYm94IHNob3J0Y29kZVxuICovXG4uZmktYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xufVxuLmZpLWJveDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxucCArIC5maS1ib3gge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uZW50cnkgLmZpLWJveCBoMyB7XG4gIG1hcmdpbjogLTFyZW0gLTJyZW0gMXJlbSAtMnJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjUpO1xufVxuXG4uZmktYm94LmJveDEge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzJjMzM7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmZpLWJveC5ib3gyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc3LjYsIDI2LjQsIDI3LjIpO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5maS1ib3guYm94MSBoMywgLmZpLWJveC5ib3gyIGgzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5maS1ib3guYm94MSBhLCAuZmktYm94LmJveDIgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5maS1ib3ggcDpsYXN0LW9mLXR5cGUsIC5maS1ib3ggdWw6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBSZXNwb25zaXZlIFZpZGVvIEVtYmVkZGluZ1xuICovXG4uZmktcmVzcG9uc2l2ZS12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uZmktcmVzcG9uc2l2ZS12aWRlbyBpZnJhbWUsIC5maS1yZXNwb25zaXZlLXZpZGVvIG9iamVjdCwgLmZpLXJlc3BvbnNpdmUtdmlkZW8gZW1iZWQsIC5maS1yZXNwb25zaXZlLXZpZGVvIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKipcbiAqIFBhZ2luYXRpb25cbiAqL1xuLnBhZ2luYXRpb24ge1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cbi5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA2cHggOHB4O1xufVxuLnBhZ2luYXRpb24gYS5wYWdlLW51bWJlcnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA0cHggOHB4O1xuICBwYWRkaW5nOiA2cHggOHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xufVxuLnBhZ2luYXRpb24gYS5wYWdlLW51bWJlcnM6aG92ZXIge1xuICBjb2xvcjogI2RlMjEyMjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlMjEyMjtcbn1cblxuLyoqXG4gKiBwb3N0IG5hdmlnYXRpb25cbiAqL1xuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG4ucG9zdC1uYXZpZ2F0aW9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyB7XG4gIGZsZXgtYmFzaXM6IDUwJTtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzIHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCB7XG4gIGZsZXgtYmFzaXM6IDUwJTtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCBhIHN2ZyB7XG4gIG9yZGVyOiAzO1xuICBtYXJnaW46IDAgMCAwIDEwcHg7XG59XG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCBhIGltZyB7XG4gIG9yZGVyOiAyO1xuICBtYXJnaW46IDAgMCAwIDEuNWVtO1xufVxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzICsgLm5hdi1uZXh0IHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzICsgLm5hdi1uZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4ucG9zdC1uYXZpZ2F0aW9uIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucG9zdC1uYXZpZ2F0aW9uIGltZyB7XG4gIGZsZXgtYmFzaXM6IDYwcHg7XG4gIG1hcmdpbjogMCAxLjVlbSAwIDA7XG4gIG1heC13aWR0aDogNWVtO1xuICBtYXgtaGVpZ2h0OiA1ZW07XG59XG4ucG9zdC1uYXZpZ2F0aW9uIHN2ZyB7XG4gIGZsZXg6IDAgMCA1MHB4O1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG4ucG9zdC1uYXZpZ2F0aW9uIC5wb3N0LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbn1cblxuLyoqXG4gKiBTaGFyaW5nIG9uIHNvY2lhbCBtZWRpYVxuICovXG4uc29jaWFsLW1lZGlhLXNoYXJpbmcge1xuICBtYXJnaW46IDNyZW0gMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NDBweCkge1xuICAuc29jaWFsLW1lZGlhLXNoYXJpbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zb2NpYWwtbWVkaWEtc2hhcmluZzphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc29jaWFsLW1lZGlhLXNoYXJpbmctdGl0bGUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQwcHgpIHtcbiAgLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zb2NpYWwtbWVkaWEtc2hhcmluZy1zZXJ2aWNlcy1saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NDBweCkge1xuICAuc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG4uc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCBsaSB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKDI0My40LCAyNDMuNCwgMjQzLjQpO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NDBweCkge1xuICAuc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCBsaSB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbn1cbi5zb2NpYWwtbWVkaWEtc2hhcmluZy1zZXJ2aWNlcy1saXN0IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCBsaSBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0MHB4KSB7XG4gIC5zb2NpYWwtbWVkaWEtc2hhcmluZy1zZXJ2aWNlcy1saXN0IGxpIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zb2NpYWwtbWVkaWEtc2hhcmluZy1zZXJ2aWNlcy1saXN0IGxpIGEgc3BhbiB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHRleHQtaW5kZW50OiAtMTAwMDBlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQwcHgpIHtcbiAgLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXNlcnZpY2VzLWxpc3QgbGkgYSBzcGFuIHtcbiAgICBwYWRkaW5nOiA3cHggNXB4IDdweCAyN3B4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgfVxufVxuLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXNlcnZpY2VzLWxpc3QgbGkgYS50d2l0dGVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3R3aXR0ZXIuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xufVxuLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXNlcnZpY2VzLWxpc3QgbGkgYS5mYWNlYm9vayBzcGFuIHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9mYWNlYm9vay5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG59XG4uc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCBsaSBhLmxpbmtlZGluIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xpbmtlZGluLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbn1cbi5zb2NpYWwtbWVkaWEtc2hhcmluZy1zZXJ2aWNlcy1saXN0IGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlMjEyMjtcbiAgY29sb3I6IHdoaXRlO1xufVxuLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXNlcnZpY2VzLWxpc3QgbGk6aG92ZXIgLnR3aXR0ZXIgc3BhbiB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvdHdpdHRlci13aGl0ZS5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG59XG4uc29jaWFsLW1lZGlhLXNoYXJpbmctc2VydmljZXMtbGlzdCBsaTpob3ZlciAuZmFjZWJvb2sgc3BhbiB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZmFjZWJvb2std2hpdGUuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xufVxuLnNvY2lhbC1tZWRpYS1zaGFyaW5nLXNlcnZpY2VzLWxpc3QgbGk6aG92ZXIgLmxpbmtlZGluIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xpbmtlZGluLXdoaXRlLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbn1cblxuLyoqXG4gKiBDb21tZW50c1xuICovXG4uY29tbWVudHMtYXJlYSB7XG4gIHBhZGRpbmc6IDQwcHggMDtcbn1cblxuLmNvbW1lbnRzLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uY29tbWVudC1saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY29tbWVudC1ib2R5IHtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cblxuLmNvbW1lbnQtbWV0YWRhdGEgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jb21tZW50LW1ldGFkYXRhIHRpbWUge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzhiOGJhNztcbn1cblxuLmNvbW1lbnQtY29udGVudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xufVxuXG4ucmVwbHkge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5jb21tZW50LWZvcm0gbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb21tZW50LWZvcm0gdGV4dGFyZWEge1xuICBoZWlnaHQ6IDEyMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbn1cbi5jb21tZW50LWZvcm0gdGV4dGFyZWEsIC5jb21tZW50LWZvcm0gaW5wdXRbdHlwZT10ZXh0XSwgLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPXVybF0ge1xuICBwYWRkaW5nOiA1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLmNvbW1lbnQtZm9ybSB0ZXh0YXJlYSwgLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPXRleHRdLCAuY29tbWVudC1mb3JtIGlucHV0W3R5cGU9ZW1haWxdLCAuY29tbWVudC1mb3JtIGlucHV0W3R5cGU9dXJsXSB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbn1cbi5jb21tZW50LWZvcm0gLmZvcm0tc3VibWl0IC5zdWJtaXQge1xuICBwYWRkaW5nOiA3cHggMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UzZTNlMjtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gIC5jb21tZW50LWZvcm0gLmZvcm0tc3VibWl0IC5zdWJtaXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTNlM2UyO1xuICB9XG59XG5cbi5jb21tZW50LWZvcm0tY29tbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbW1lbnQtcmVtYWluaW5nLWNoYXJhY3RlcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjOTk5O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjVzIGVhc2UtaW47XG59XG5cbi5jb21tZW50LXJlbWFpbmluZy1jaGFyLWNvdW50IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmNvbW1lbnQtY291bnQtbGFyZ2Uge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuLmNvbW1lbnQtY291bnQtbWVkaXVtIHtcbiAgY29sb3I6ICMxNjE2MWQ7XG59XG5cbi5jb21tZW50LWNvdW50LWxvdyB7XG4gIGNvbG9yOiAjZGUyMTIyO1xufVxuXG5baWQ9Y29tbWVudF0gKyB0ZXh0YXJlYSB7XG4gIGxlZnQ6IDA7XG59XG5cbi8qKlxuICogRXZlbnRzIGxpc3QgKHVzZWQgaW4gdGhlIHNpZGViYXIpXG4gKi9cbi5ldmVudC1saXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlci10b3A6IDQwcHggc29saWQgd2hpdGU7XG59XG4uZXZlbnQtbGlzdCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjZGUyMTIyO1xufVxuLmV2ZW50LWxpc3QgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZXZlbnQtbGlzdCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjQzLjQsIDI0My40LCAyNDMuNCk7XG59XG4uZXZlbnQtbGlzdCBsaTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmV2ZW50LWxpc3QgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmV2ZW50LWxpc3QgYTpob3ZlciB7XG4gIGNvbG9yOiByZ2IoMTc3LjYsIDI2LjQsIDI3LjIpO1xufVxuXG4vKipcbiAqIEV2ZW50IHBhZ2VzIE5hdmlnYXRpb25cbiAqL1xuLmV2ZW50LXBhZ2VzLW5hdmlnYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuZXZlbnQtcGFnZXMtbmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuLmV2ZW50LXBhZ2VzLW5hdmlnYXRpb24gLmV2ZW50cy1wYWdlcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTAuMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmV2ZW50LXBhZ2VzLW5hdmlnYXRpb24gbGkge1xuICBmbGV4OiAxIDEgMzMuMzMzMzMlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMC4xcmVtIDAuMnJlbSAwLjFyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5ldmVudC1wYWdlcy1uYXZpZ2F0aW9uIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtO1xuICBjb2xvcjogIzE2MTYxZDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YzZjNmMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZXZlbnQtcGFnZXMtbmF2aWdhdGlvbiBhOmhvdmVyLCAuZXZlbnQtcGFnZXMtbmF2aWdhdGlvbiBhOmZvY3VzIHtcbiAgY29sb3I6ICNkZTIxMjI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6ICNkZTIxMjI7XG59XG4uZXZlbnQtcGFnZXMtbmF2aWdhdGlvbiBsaS5jdXJyZW50IGEge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZTIxMjI7XG4gIGJvcmRlci1jb2xvcjogI2RlMjEyMjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIEV2ZW50c1xuICovXG4jdHJpYmUtZXZlbnRzLWJhciB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbiN0cmliZS1iYXItZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuI3RyaWJlLWJhci1jb2xsYXBzZS10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiN0cmliZS1iYXItdmlld3Mge1xuICBvcmRlcjogMjtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZmxleDogMCAwIDIwJTtcbn1cblxuLnRyaWJlLWJhci12aWV3cy1saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50cmliZS1iYXItdmlld3Mtb3B0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMCAwLjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2FhYTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbn1cbi50cmliZS1iYXItdmlld3Mtb3B0aW9uOmhvdmVyIHtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNjE2MWQ7XG59XG4udHJpYmUtYmFyLXZpZXdzLW9wdGlvbiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA0cHggMTBweDtcbn1cbi50cmliZS1iYXItdmlld3Mtb3B0aW9uLnRyaWJlLWJhci1hY3RpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGUyMTIyO1xufVxuLnRyaWJlLWJhci12aWV3cy1vcHRpb24udHJpYmUtYmFyLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNkZTIxMjI7XG59XG5cbi50cmliZS1iYXItZmlsdGVycyB7XG4gIGZsZXg6IDAgMCA4MCU7XG4gIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIHdoaXRlO1xufVxuXG4udHJpYmUtYmFyLWZpbHRlcnMtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi50cmliZS1iYXItZGF0ZS1maWx0ZXIge1xuICBmbGV4OiAxIDAgMzUlO1xuICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAxcmVtO1xufVxuXG4udHJpYmUtYmFyLXNlYXJjaC1maWx0ZXIge1xuICBmbGV4OiAxIDAgMzUlO1xuICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAxcmVtO1xufVxuXG4ubGFiZWwtdHJpYmUtYmFyLWRhdGUsIC5sYWJlbC10cmliZS1iYXItc2VhcmNoLCAudHJpYmUtYmFyLXZpZXdzLWlubmVyIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzE2MTYxZDtcbn1cblxuI3RyaWJlLWJhci1kYXRlLCAjdHJpYmUtYmFyLXNlYXJjaCB7XG4gIHBhZGRpbmc6IDAuMnJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG59XG5cbi50cmliZS1iYXItc3VibWl0IHtcbiAgZmxleDogMCAwIDIwJTtcbiAgcGFkZGluZzogMS4zcmVtIDFyZW0gMDtcbn1cbi50cmliZS1iYXItc3VibWl0IC50cmliZS1ldmVudHMtYnV0dG9uIHtcbiAgcGFkZGluZzogN3B4IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udHJpYmUtZXZlbnRzLWxpc3QgLnRyaWJlLWV2ZW50cy1wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmVudHJ5IGgyLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvcixcbi50cmliZS1ldmVudHMtbGlzdC1zZXBhcmF0b3IsXG4udHJpYmUtZXZlbnRzLWxpc3Qtc2VwYXJhdG9yLW1vbnRoIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjQzLjQsIDI0My40LCAyNDMuNCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGUyMTIyO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuLmVudHJ5IGgyLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvciBzcGFuLFxuLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvciBzcGFuLFxuLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvci1tb250aCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xufVxuLnR5cGUtdHJpYmVfZXZlbnRzICsgLmVudHJ5IGgyLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvcixcbi50eXBlLXRyaWJlX2V2ZW50cyArIC50cmliZS1ldmVudHMtbGlzdC1zZXBhcmF0b3IsXG4udHlwZS10cmliZV9ldmVudHMgKyAudHJpYmUtZXZlbnRzLWxpc3Qtc2VwYXJhdG9yLW1vbnRoIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLyoqXG4gKiBFdmVudCBsaXN0IHZpZXdcbiAqL1xuLmV2ZW50cyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjlmOWY5O1xufVxuXG4uZW50cnkgcC5ldmVudHNfX25vLWV2ZW50cyB7XG4gIG1hcmdpbjogNDBweCAwO1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG5cbiNzd2l0Y2gtc2Vjb25kYXJ5LWZpbHRlcnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXZlbnQtc2VhcmNoLWJhciB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5ldmVudC1zZWFyY2gtYmFyIC5tYWluLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG59XG4uZXZlbnQtc2VhcmNoLWJhciBbZm9yPWV2ZW50LXNlYXJjaC10ZXJtXSB7XG4gIGZsZXg6IDEgMCAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ldmVudC1zZWFyY2gtYmFyICNldmVudC1zZWFyY2gtdGVybSB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTI7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5ldmVudC1zZWFyY2gtYmFyICNldmVudC1zZWFyY2gtdGVybSB7XG4gICAgZmxleDogMCAwIDYwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cbi5ldmVudC1zZWFyY2gtYmFyICNldmVudC1zZWFyY2gge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlMjEyMjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlMjEyMjtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmV2ZW50LXNlYXJjaC1iYXIgI2V2ZW50LXNlYXJjaCB7XG4gICAgZmxleDogMCAwIGNhbGMoNDAlIC0gMC41cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIHdpZHRoOiBjYWxjKDQwJSAtIDAuNXJlbSk7XG4gIH1cbn1cbi5ldmVudC1zZWFyY2gtYmFyIC5zZWNvbmRhcnktc2VhcmNoLW9wdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMC41cmVtIDAgMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMXMgbGluZWFyO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLnNlY29uZGFyeS1zZWFyY2gtb3B0aW9ucy5pcy1hY3RpdmUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZXZlbnQtc2VhcmNoLWJhciAuZXZlbnQtY2F0ZWdvcmllcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLmV2ZW50LWNhdGVnb3JpZXMgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbn1cbi5ldmVudC1zZWFyY2gtYmFyIC5ldmVudC1jYXRlZ29yaWVzIGxhYmVsIHtcbiAgbWFyZ2luOiAwIDFyZW0gMCAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uZXZlbnQtc2VhcmNoLWJhciAuZXZlbnQtY2F0ZWdvcmllcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmV2ZW50LXNlYXJjaC1iYXIgLmV2ZW50LWNhdGVnb3JpZXMge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uZXZlbnQtc2VhcmNoLWJhciAuZXZlbnQtY2F0ZWdvcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cbi5ldmVudC1zZWFyY2gtYmFyIC5vcHRpb25hbC1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFyZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAyO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLm9wdGlvbmFsLWhlYWRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gIHotaW5kZXg6IC0yO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLm9wdGlvbmFsLWhlYWRlciBzcGFuIHtcbiAgcGFkZGluZzogMCA0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG4uZXZlbnQtc2VhcmNoLWJhciAub3B0aW9uYWwtc2VhcmNoLWl0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4uZXZlbnQtc2VhcmNoLWJhciAub3B0aW9uYWwtc2VhcmNoLWl0ZW06bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLm9wdGlvbmFsLXNlYXJjaC1pdGVtIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ldmVudC1zZWFyY2gtYmFyIC5vcHRpb25hbC1zZWFyY2gtaXRlbSBpbnB1dFt0eXBlPXRleHRdIHtcbiAgcGFkZGluZzogNHB4O1xuICB3aWR0aDogODBweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UyO1xufVxuLmV2ZW50LXNlYXJjaC1iYXIgLm9wdGlvbmFsLXNlYXJjaC1pdGVtIHNlbGVjdCB7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHotaW5kZXg6IDIgIWltcG9ydGFudDtcbn1cblxuLnVpLWRhdGVwaWNrZXItcHJldixcbi51aS1kYXRlcGlja2VyLW5leHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2RlMjEyMjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udWktZGF0ZXBpY2tlci10aXRsZSB7XG4gIGNsZWFyOiBib3RoO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktZGF0ZXBpY2tlci10b2RheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIyLCAzMywgMzQsIDAuMTUpO1xufVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZTIxMjI7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnVpLWRhdGVwaWNrZXItdW5zZWxlY3RhYmxlLFxuLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG9wYWNpdHk6IDAuMjU7XG59XG5cbi50eXBlLXRyaWJlX2V2ZW50cyAuZXZlbnQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMC43NXJlbTtcbn1cblxuLnRyaWJlLWV2ZW50cy1saXN0LXNlcGFyYXRvciB+IGRpdi50eXBlLXRyaWJlX2V2ZW50czpudGgtb2YtdHlwZShldmVuKSAuZXZlbnQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG5cbi50cmliZS1ldmVudHMtbGlzdC1zZXBhcmF0b3IgfiBkaXYudHlwZS10cmliZV9ldmVudHMuZmVhdHVyZWQtZXZlbnQ6bnRoLW9mLXR5cGUoZXZlbikgLmV2ZW50LXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOTg4O1xufVxuXG4udHlwZS10cmliZV9ldmVudHMuZmVhdHVyZWQtZXZlbnQgLmV2ZW50LXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZjk5O1xufVxuXG4udHlwZS10cmliZV9ldmVudHMuZm90b3NjaGlmZiAuZXZlbnQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDIuNzUsIDI1MS41NywgMjU1KTtcbn1cblxuLnR5cGUtdHJpYmVfZXZlbnRzLmV2ZW4uZmVhdHVyZWQtZXZlbnQgLmV2ZW50LXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOTg4O1xufVxuXG4udHlwZS10cmliZV9ldmVudHMuZXZlbi5mb3Rvc2NoaWZmIC5ldmVudC13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZjhmZjtcbn1cblxuLmV2ZW50LWRhdGUtcGxhY2Uge1xuICBvcmRlcjogMTtcbiAgZmxleDogMCAwIDQwJTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmV2ZW50LWRhdGUtcGxhY2UgLnRyaWJlLWV2ZW50LXNjaGVkdWxlLWRldGFpbHMge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmV2ZW50LWRhdGUtcGxhY2UgLmV2ZW50LWxvY2F0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzdFN0U4Mztcbn1cbi5mZWF0dXJlZC1ldmVudCAuZXZlbnQtZGF0ZS1wbGFjZSAuZXZlbnQtbG9jYXRpb24ge1xuICBjb2xvcjogI2FhMjtcbn1cbi5mb3Rvc2NoaWZmIC5ldmVudC1kYXRlLXBsYWNlIC5ldmVudC1sb2NhdGlvbiB7XG4gIGNvbG9yOiAjMjI3YWFhO1xufVxuLmV2ZW50LWRhdGUtcGxhY2UgLmFkZGl0aW9uYWwtaW5mb3Mge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ub25saW5lLWV2ZW50IHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2RlMjEyMjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlMjEyMjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMC41ZW0gMDtcbiAgcGFkZGluZzogMC4xZW0gMC42ZW07XG59XG5cbi5ldmVudC1pbmZvIHtcbiAgb3JkZXI6IDI7XG4gIGZsZXg6IDAgMCA2MCU7XG59XG4uZXZlbnQtaW5mbyAudHJpYmUtZXZlbnRzLWxpc3QtZXZlbnQtdGl0bGUge1xuICBtYXJnaW46IDAgMCAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cblxuLmV2ZW50LXZlbnVlLFxuLmV2ZW50LW9yZ2FuaXplcixcbi5lbnRyeSAuZXZlbnQtdmVudWUsXG4uZW50cnkgLmV2ZW50LW9yZ2FuaXplciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjN0U3RTgzO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLmZlYXR1cmVkLWV2ZW50IC5ldmVudC12ZW51ZSxcbi5mZWF0dXJlZC1ldmVudCAuZXZlbnQtb3JnYW5pemVyLFxuLmZlYXR1cmVkLWV2ZW50IC5lbnRyeSAuZXZlbnQtdmVudWUsXG4uZmVhdHVyZWQtZXZlbnQgLmVudHJ5IC5ldmVudC1vcmdhbml6ZXIge1xuICBjb2xvcjogI2FhMjtcbn1cbi5mb3Rvc2NoaWZmIC5ldmVudC12ZW51ZSxcbi5mb3Rvc2NoaWZmIC5ldmVudC1vcmdhbml6ZXIsXG4uZm90b3NjaGlmZiAuZW50cnkgLmV2ZW50LXZlbnVlLFxuLmZvdG9zY2hpZmYgLmVudHJ5IC5ldmVudC1vcmdhbml6ZXIge1xuICBjb2xvcjogIzIyN2FhYTtcbn1cbi5ldmVudC12ZW51ZS5leHRlcm5hbC1saW5rLFxuLmV2ZW50LW9yZ2FuaXplci5leHRlcm5hbC1saW5rLFxuLmVudHJ5IC5ldmVudC12ZW51ZS5leHRlcm5hbC1saW5rLFxuLmVudHJ5IC5ldmVudC1vcmdhbml6ZXIuZXh0ZXJuYWwtbGluayB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1leHRlcm5hbC1saW5rLWdyZXkuc3ZnKSBuby1yZXBlYXQgcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuOWVtIDAuOWVtO1xufVxuLmZlYXR1cmVkLWV2ZW50IC5ldmVudC12ZW51ZS5leHRlcm5hbC1saW5rLFxuLmZlYXR1cmVkLWV2ZW50IC5ldmVudC1vcmdhbml6ZXIuZXh0ZXJuYWwtbGluayxcbi5mZWF0dXJlZC1ldmVudCAuZW50cnkgLmV2ZW50LXZlbnVlLmV4dGVybmFsLWxpbmssXG4uZmVhdHVyZWQtZXZlbnQgLmVudHJ5IC5ldmVudC1vcmdhbml6ZXIuZXh0ZXJuYWwtbGluayB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1leHRlcm5hbC1saW5rLXllbGxvdy5zdmcpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMC45ZW0gMC45ZW07XG59XG4uZm90b3NjaGlmZiAuZXZlbnQtdmVudWUuZXh0ZXJuYWwtbGluayxcbi5mb3Rvc2NoaWZmIC5ldmVudC1vcmdhbml6ZXIuZXh0ZXJuYWwtbGluayxcbi5mb3Rvc2NoaWZmIC5lbnRyeSAuZXZlbnQtdmVudWUuZXh0ZXJuYWwtbGluayxcbi5mb3Rvc2NoaWZmIC5lbnRyeSAuZXZlbnQtb3JnYW5pemVyLmV4dGVybmFsLWxpbmsge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tZXh0ZXJuYWwtbGluay1ibHVlLnN2Zykgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjllbSAwLjllbTtcbn1cblxuLmV2ZW50LXZlbnVlLWFkZHJlc3Mge1xuICBjb2xvcjogIzdFN0U4Mztcbn1cbi5mZWF0dXJlZC1ldmVudCAuZXZlbnQtdmVudWUtYWRkcmVzcyB7XG4gIGNvbG9yOiAjYWEyO1xufVxuLmZvdG9zY2hpZmYgLmV2ZW50LXZlbnVlLWFkZHJlc3Mge1xuICBjb2xvcjogIzIyN2FhYTtcbn1cblxuLmVudHJ5IC50cmliZS1ldmVudHMtbGlzdC1ldmVudC1kZXNjcmlwdGlvbiBwIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLmVudHJ5IC50cmliZS1ldmVudHMtbGlzdC1ldmVudC1kZXNjcmlwdGlvbiBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50eXBlLXRyaWJlX2V2ZW50cyBhOmhvdmVyIC5sb2NhdGlvbiB7XG4gIGNvbG9yOiByZ2IoMjMxLjksIDk5LjYsIDEwMC4zKTtcbiAgY29sb3I6IHJnYigxNzcuNiwgMjYuNCwgMjcuMik7XG59XG5cbi50eXBlLXRyaWJlX2V2ZW50cyBhOmhvdmVyIC5tb3JlLWxpbmsge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC41cmVtKTtcbn1cblxuLnRyaWJlLWFkZHJlc3Mge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRyaWJlLWV2ZW50cy1nbWFwIHtcbiAgY29sb3I6ICNkZTIxMjI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4udHJpYmUtZXZlbnRzLWljYWwudHJpYmUtZXZlbnRzLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDdweCAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmVkaXQtZXZlbnQtbGluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogM3B4IDVweDtcbiAgdG9wOiAwLjg3NXJlbTtcbiAgcmlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZkZmRmO1xufVxuXG4uZXZlbnQtY2F0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHBhZGRpbmc6IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICNhOWE5YWYgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5mZWF0dXJlZC1ldmVudCAuZXZlbnQtY2F0IHtcbiAgY29sb3I6ICNhYTIgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNzAsIDE3MCwgMzQsIDAuMik7XG59XG5cbi5mb3Rvc2hpZmYgLmV2ZW50LWNhdCB7XG4gIGNvbG9yOiAjMjI3YWFhICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDEyMiwgMTcwLCAwLjIpO1xufVxuXG4vKipcbiAqIFNpdGUgRm9vdGVyXG4gKi9cbi5zaXRlLWZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmMzMztcbiAgY29sb3I6ICNkZmRmZGY7XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIHotaW5kZXg6IDEyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGlkZS1sZWFkZXJib2FyZCAuc2l0ZS1mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnNpdGUtZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuLnNpdGUtZm9vdGVyIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLnNpdGUtZm9vdGVyIGE6aG92ZXIsIC5zaXRlLWZvb3RlciBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qKlxuICogQWR2ZXJ0aXNpbmcgQmFubmVyc1xuICovXG4vKipcbiogTmV3IGFkc1xuKi9cbltjbGFzc149Zm90b2ludGVybi1dIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuW2NsYXNzXj1mb3RvaW50ZXJuLV0gaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuW2NsYXNzXj1mb3RvaW50ZXJuLV0gPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5mb3RvaW50ZXJuLWFkbGFiZWwge1xuICBwYWRkaW5nOiA0cHggNXB4IDNweCA1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjYmJiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICB6LWluZGV4OiAyO1xufVxuXG4uZm90b2ludGVybi1sZWFkZXJib2FyZC0xIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmZvdG9pbnRlcm4tcmVjdGFuZ2xlLTEge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYXJ0aWNsZXMgLmZvdG9pbnRlcm4tcmVjdGFuZ2xlLTEge1xuICBvcmRlcjogMTA7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG59XG5cbi5mb3RvaW50ZXJuLXJlY3RhbmdsZS0yIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuXG5baWRePWRpdi1ncHQtYWRdIHtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uYWQtc3BvbnNvcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hZC1zcG9uc29ycyAuYWQtaW5uZXI6YmVmb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb250ZW50OiBcIlNwb25zb3JlblwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5maXhlZC1zcG9uc29ycyAuYWQtc3BvbnNvcnMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNTBweDtcbiAgei1pbmRleDogLTE7XG59XG4uYWQtc3BvbnNvcnMgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLmFkLXNwb25zb3JiYW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMHJlbTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQyMHB4KSB7XG4gIC5hZC1zcG9uc29yYmFubmVyIHtcbiAgICBwYWRkaW5nOiAxLjJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5hZC1zcG9uc29yYmFubmVyIHtcbiAgICBwYWRkaW5nOiAxLjZyZW07XG4gIH1cbn1cblxuLmFkLXNwb25zb3JiYW5uZXItaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMTYxNjFkO1xufVxuXG4uYWQtdG9wLWxlYWRlcmJvYXJkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgei1pbmRleDogMjA7XG59XG4uaGlkZS1sZWFkZXJib2FyZCAuYWQtdG9wLWxlYWRlcmJvYXJkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmFkLXRvcC1sZWFkZXJib2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5oaWRlLWxlYWRlcmJvYXJkIC5hZC10b3AtbGVhZGVyYm9hcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbmJvZHkuZml4ZWQtbmF2IC5hZC10b3AtbGVhZGVyYm9hcmQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uYWQtdG9wLWxlYWRlcmJvYXJkIC5hZC1pbm5lciB7XG4gIHBhZGRpbmc6IDVweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDczOHB4KSB7XG4gIC5hZC10b3AtbGVhZGVyYm9hcmQgLmFkLWlubmVyIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICB9XG59XG4uYWQtdG9wLWxlYWRlcmJvYXJkIC5hZC1pbm5lcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmFkLXRvcC1sZWFkZXJib2FyZCAuYWQtaW5uZXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmhpZGUtYWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTdweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE5cHg7XG4gIHRleHQtaW5kZW50OiAtMTAwMDBlbTtcbiAgYmFja2dyb3VuZDogd2hpdGUgdXJsKC4uL2ltYWdlcy9pY29uLWNsb3NlLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5oaWRlLWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5hZC1zcG9uc29yLXRoYW5rcyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uYWQtc3BvbnNvci10aGFua3MgLmFkLXNwb25zb3ItdGhhbmtzLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHggMTBweCAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjMmMyYzMzO1xuICBjb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAuYWQtc3BvbnNvci10aGFua3MgLmFkLXNwb25zb3ItdGhhbmtzLWlubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGhlaWdodDogOTBweDtcbiAgfVxufVxuLmFkLXNwb25zb3ItdGhhbmtzIC5icmFuZC1sb2dvIHtcbiAgbWF4LXdpZHRoOiAxNjBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmFkLXNwb25zb3ItdGhhbmtzIC5wb3NzaWJsZSB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5hZC1zcG9uc29yLXRoYW5rcyAucG9zc2libGUge1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgfVxufVxuLmFkLXNwb25zb3ItdGhhbmtzIC50aGFua3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hZC1yZWN0YW5nbGUge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmFkLXJlY3RhbmdsZSAjcmVjdGFuZ2xlLTEge1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNpdGUtY29udGVudC1wYWdlIC5hZC1yZWN0YW5nbGUge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG4uc2l0ZS1jb250ZW50LWVycm9yIC5hZC1yZWN0YW5nbGUsIC5zaXRlLWNvbnRlbnQtc2VhcmNoIC5lcnJvciAuYWQtcmVjdGFuZ2xlIHtcbiAgbWFyZ2luOiA1MHB4IDA7XG59XG5cbi8qKlxuICogUmVzcG9uc2l2ZSBpZnJhbWUgYWRzIChIVE1MNSBhZHMpXG4gKi9cbi5hZC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmFkLWNvbnRhaW5lcl9faWZyYW1lIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xufVxuXG4uYWQtY29udGFpbmVyLS1sZWFkZXJib2FyZCB7XG4gIHdpZHRoOiA3MjhweDtcbiAgaGVpZ2h0OiA5MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzI4cHgpIHtcbiAgLmFkLWNvbnRhaW5lci0tbGVhZGVyYm9hcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMTIuMzYyNjM3MzYyNiU7XG4gIH1cbn1cblxuLmFkLWNvbnRhaW5lci0tcmVjdGFuZ2xlIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzAwcHgpIHtcbiAgLmFkLWNvbnRhaW5lci0tcmVjdGFuZ2xlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5hZC1jb250YWluZXItLWJpbGxib2FyZCB7XG4gIHdpZHRoOiA5NzBweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3MHB4KSB7XG4gIC5hZC1jb250YWluZXItLWJpbGxib2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAyNS43NzMxOTU4NzYzJTtcbiAgfVxufVxuXG4uYWQtY29udGFpbmVyLS1za3lzY3JhcGVyIHtcbiAgd2lkdGg6IDE2MHB4O1xuICBoZWlnaHQ6IDYwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTYwcHgpIHtcbiAgLmFkLWNvbnRhaW5lci0tc2t5c2NyYXBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAzNzUlO1xuICB9XG59XG5cbi8qKlxuICogU3BvbnNvciBzbGlkZXJcbiAqL1xuLmFkLXNwb25zb3JzID4gW2lkXj1mb3RvaW50ZXJuLV0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNwb25zb3Itc2xpZGVyIHtcbiAgd2lkdGg6IDIwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zcG9uc29yLXNsaWRlciB7XG4gICAgbWF4LWhlaWdodDogMjIwcHg7XG4gIH1cbn1cblxuLnNwb25zb3Itc2xpZGVyLXdyYXAgW2NsYXNzXj1mb3RvaW50ZXJuLV0ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5vdC1mb3VuZCB7XG4gIHBhZGRpbmc6IDQwcHggMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5leHRlcm5hbC1saW5rIHtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tZXh0ZXJuYWwtbGluay5zdmcpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMC45ZW0gMC45ZW07XG59XG5cbltjbGFzc149Zm90b2ludGVybi1dIC5leHRlcm5hbC1saW5rLFxuLmFkIC5leHRlcm5hbC1saW5rIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogSHVzdGxlIGZpeGVzICovXG4uaHVzdGxlLW1vZGFsLW1jX2NoZWNrYm94IHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi8qKlxuICogQm94emlsbGEgbmV3c2xldHRlciBzaWdudXBcbiAqL1xuLmJveHppbGxhLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBjb2xvcjogI2FkYjViNztcbn1cbi5ib3h6aWxsYS1jb250YWluZXIgLmJveHppbGxhIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uYm94emlsbGEtY29udGFpbmVyIGEge1xuICBjb2xvcjogI2RlMjEyMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYm94emlsbGEtY29udGFpbmVyIHAge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xufVxuLmJveHppbGxhLWNvbnRhaW5lciBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmJveHppbGxhLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUyMTIyO1xuICBib3JkZXI6IG5vbmU7XG59XG4uYm94emlsbGEtY29udGFpbmVyIC5uZXdzbGV0dGVyLWhlYWRsaW5lIHtcbiAgbWFyZ2luOiAwIDAgMC41cmVtO1xuICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uYm94emlsbGEtY29udGFpbmVyIC5uZXdzbGV0dGVyLWZyZXF1ZW5jeS1oZWFkbGluZSB7XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgcGFkZGluZzogMCAxLjVyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5ib3h6aWxsYS1jb250YWluZXIgLm5ld3NsZXR0ZXItZW1haWwge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNjNiM2Y7XG59XG4uYm94emlsbGEtY29udGFpbmVyIC5uZXdzbGV0dGVyLWVtYWlsIGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IC0xcHg7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG59XG4uYm94emlsbGEtY29udGFpbmVyIC5uZXdzbGV0dGVyLWVtYWlsIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDJyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNjE2MWQ7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNScgaGVpZ2h0PScxNScgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2FhYWFhYScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0nc3F1YXJlJyBzdHJva2UtbGluZWpvaW49J2FyY3MnJTNlJTNjcGF0aCBkPSdNNCA0aDE2YzEuMSAwIDIgLjkgMiAydjEyYzAgMS4xLS45IDItMiAySDRjLTEuMSAwLTItLjktMi0yVjZjMC0xLjEuOS0yIDItMnonJTNlJTNjL3BhdGglM2UlM2Nwb2x5bGluZSBwb2ludHM9JzIyLDYgMTIsMTMgMiw2JyUzZSUzYy9wb2x5bGluZSUzZSUzYy9zdmclM2VcIikgbm8tcmVwZWF0IGxlZnQgMC41cmVtIGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xufVxuLmJveHppbGxhLWNvbnRhaW5lciAubmV3c2xldHRlci1mcmVxdWVuY3kgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJveHppbGxhLWNvbnRhaW5lciAubmV3c2xldHRlci1mcmVxdWVuY3kgbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbn1cbi5ib3h6aWxsYS1jb250YWluZXIgLm5ld3NsZXR0ZXItZnJlcXVlbmN5IGxhYmVsIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5ib3h6aWxsYS1jb250YWluZXIgLm5ld3NsZXR0ZXItZnJlcXVlbmN5IGxhYmVsIHNwYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC41cmVtIDAgMDtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xufVxuLmJveHppbGxhLWNvbnRhaW5lciAubmV3c2xldHRlci1mcmVxdWVuY3kgbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogd2hpdGUgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzE1JyBoZWlnaHQ9JzE1JyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGUyMTIyJyBzdHJva2Utd2lkdGg9JzMnIHN0cm9rZS1saW5lY2FwPSdzcXVhcmUnIHN0cm9rZS1saW5lam9pbj0nYXJjcyclM2UlM2Nwb2x5bGluZSBwb2ludHM9JzIwIDYgOSAxNyA0IDEyJyUzZSUzYy9wb2x5bGluZSUzZSUzYy9zdmclM2VcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG59XG4uYm94emlsbGEtY29udGFpbmVyIC5ib3h6aWxsYS1jbG9zZS1pY29uIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uZW50cnkgLmJhbm5lci11cGRhdGUtZm9ybS1oaW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cbi5lbnRyeSAuYmFubmVyLXVwZGF0ZS1mb3JtLWhpbnQgcCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uYmFubmVyLXVwZGF0ZS1mb3JtIHtcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cbi5iYW5uZXItdXBkYXRlLWZvcm0gbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmJhbm5lci11cGRhdGUtZm9ybSBpbnB1dFt0eXBlPXVybF0ge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJhbm5lci11cGRhdGUtZm9ybSBpbnB1dFt0eXBlPWZpbGVdIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4uYmFubmVyLXVwZGF0ZS1mb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMC4yZW0gMC41ZW0gMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNik7XG59XG5cbi5iYW5uZXItdXBkYXRlLW5vZmljYXRpb24ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uYmFubmVyLXVwZGF0ZS1ub2ZpY2F0aW9uLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgY29sb3I6IHdoaXRlO1xufVxuLmJhbm5lci11cGRhdGUtbm9maWNhdGlvbi5mYWlsdXJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlMjEyMjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubG9nb3V0LWxpbmsge1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDAgMnJlbTtcbn1cblxuLyoqXG4gKiBIYWNrc1xuICpcbiAqIFV0aWxpdGllcyBhbmQgaGVscGVyIGNsYXNzZXMgd2l0aCBhYmlsaXR5IHRvIG92ZXJyaWRlXG4gKiBhbnl0aGluZyB3aGljaCBnb2VzIGJlZm9yZSBpbiB0aGUgdHJpYW5nbGUuXG4gKiBlLmcuIGEgXCJoaWRlXCIgaGVscGVyIGNsYXNzXG4gKi9cbi8qKlxuICogSGFja3NcbiAqXG4gKiBVdGlsaXRpZXMgYW5kIGhlbHBlciBjbGFzc2VzIHdpdGggYWJpbGl0eSB0byBvdmVycmlkZVxuICogYW55dGhpbmcgd2hpY2ggZ29lcyBiZWZvcmUgaW4gdGhlIHRyaWFuZ2xlLlxuICogZS5nLiBhIFwiaGlkZVwiIGhlbHBlciBjbGFzc1xuICovXG4vKipcbiAqIEFsaWduIFRleHRcbiAqXG4gKi9cbi5hbGlnbmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmFsaWducmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG50ZFtiZ2NvbG9yPVwiI0ZGQ0M5OVwiXSwgdGRbYmdjb2xvcj1cIiNGRkNDQ0NcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyYzMzICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG50ZFtiZ2NvbG9yPVwiI0ZGRkY5OVwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGOTkgIWltcG9ydGFudDtcbn1cblxuLmVudHJ5IHA6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiogVGVtcG9yYXJ5IFwiU3VwZXJzcGVjaWFsXCIgUmVjdGFuZ2xlIGZpeGVzIGZvciBOaWtvbiAqL1xuLmFydGljbGVzIC5hZC1zcG9uc29yLXRoYW5rcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5hcnRpY2xlcyAuYWQtc3BvbnNvci10aGFua3Mge1xuICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gIH1cbn1cblxuLmZvdG9pbnRlcm4tcmVjdGFuZ2xlLTMge1xuICBtYXJnaW46IDIwcHggMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2lkZWJhciAuZm90b2ludGVybi1yZWN0YW5nbGUtMyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaWRlYmFyIC5mb3RvaW50ZXJuLXJlY3RhbmdsZS0zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnNpdGUtY29udGVudC1pbmRleCAuYXJ0aWNsZXMgLmZvdG9pbnRlcm4tcmVjdGFuZ2xlLTMge1xuICBvcmRlcjogMzA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zaXRlLWNvbnRlbnQtaW5kZXggLmFydGljbGVzIC5mb3RvaW50ZXJuLXJlY3RhbmdsZS0zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5kb25hdGlvbi1ib3gge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKipcbiAqIE5pdm8gTGlnaHRib3hcbiAqXG4gKiBPcGVuIGltYWdlIGxpbmtzIGluIGEgbGlnaHRib3ggaW5zdGVhZCBvZiBhIG5ldyB0YWIuXG4gKi9cbi8qIVxuICogTml2byBMaWdodGJveCB2MS4zLjFcbiAqIGh0dHA6Ly9kZXY3c3R1ZGlvcy5jb20vbml2by1saWdodGJveFxuICpcbiAqIENvcHlyaWdodCAyMDEzLCBEZXY3c3R1ZGlvc1xuICogRnJlZSB0byB1c2UgYW5kIGFidXNlIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG4gKi9cbi5uaXZvLWxpZ2h0Ym94LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LW92ZXJsYXkubml2by1saWdodGJveC1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm5pdm8tbGlnaHRib3gtd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMCU7XG4gIGJvdHRvbTogMTAlO1xuICBsZWZ0OiAxMCU7XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubml2by1saWdodGJveC10aXRsZS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubml2by1saWdodGJveC1uYXYge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubml2by1saWdodGJveC1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbn1cblxuLm5pdm8tbGlnaHRib3gtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xufVxuXG4ubml2by1saWdodGJveC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyJTtcbiAgcmlnaHQ6IDIlO1xufVxuXG4ubml2by1saWdodGJveC1pbWFnZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5pdm8tbGlnaHRib3gtaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubml2by1saWdodGJveC1jb250ZW50IGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWlubGluZSxcbi5uaXZvLWxpZ2h0Ym94LWFqYXgge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTMwODgwMSAqL1xufVxuXG4ubml2by1saWdodGJveC1lcnJvciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4ICMwMDA7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWVycm9yIHAge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiBFZmZlY3RzXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5uaXZvLWxpZ2h0Ym94LW5vdG91Y2ggLm5pdm8tbGlnaHRib3gtZWZmZWN0LWZhZGUsXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWRlU2NhbGUsXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZUxlZnQsXG4ubml2by1saWdodGJveC1ub3RvdWNoIC5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZVJpZ2h0LFxuLm5pdm8tbGlnaHRib3gtbm90b3VjaCAubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVVcCxcbi5uaXZvLWxpZ2h0Ym94LW5vdG91Y2ggLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlRG93bixcbi5uaXZvLWxpZ2h0Ym94LW5vdG91Y2ggLm5pdm8tbGlnaHRib3gtZWZmZWN0LWZhbGwge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cblxuLyogZmFkZVNjYWxlICovXG4ubml2by1saWdodGJveC1lZmZlY3QtZmFkZVNjYWxlIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWRlU2NhbGUubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi8qIHNsaWRlTGVmdCAvIHNsaWRlUmlnaHQgLyBzbGlkZVVwIC8gc2xpZGVEb3duICovXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVMZWZ0IC5uaXZvLWxpZ2h0Ym94LXdyYXAsXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVSaWdodCAubml2by1saWdodGJveC13cmFwLFxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlVXAgLm5pdm8tbGlnaHRib3gtd3JhcCxcbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24gLm5pdm8tbGlnaHRib3gtd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZUxlZnQgLm5pdm8tbGlnaHRib3gtd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMCUpO1xufVxuXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVSaWdodCAubml2by1saWdodGJveC13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKTtcbn1cblxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlTGVmdC5uaXZvLWxpZ2h0Ym94LW9wZW4gLm5pdm8tbGlnaHRib3gtd3JhcCxcbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZVJpZ2h0Lm5pdm8tbGlnaHRib3gtb3BlbiAubml2by1saWdodGJveC13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1zbGlkZURvd24gLm5pdm8tbGlnaHRib3gtd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xufVxuXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVVcCAubml2by1saWdodGJveC13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAlKTtcbn1cblxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LXNsaWRlVXAubml2by1saWdodGJveC1vcGVuIC5uaXZvLWxpZ2h0Ym94LXdyYXAsXG4ubml2by1saWdodGJveC1lZmZlY3Qtc2xpZGVEb3duLm5pdm8tbGlnaHRib3gtb3BlbiAubml2by1saWdodGJveC13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qIGZhbGwgKi9cbi5uaXZvLWxpZ2h0Ym94LWJvZHktZWZmZWN0LWZhbGwgLm5pdm8tbGlnaHRib3gtZWZmZWN0LWZhbGwge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gIC1tb3otcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbn1cblxuLm5pdm8tbGlnaHRib3gtZWZmZWN0LWZhbGwgLm5pdm8tbGlnaHRib3gtd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigzMDBweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDMwMHB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigzMDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigzMDBweCk7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LWVmZmVjdC1mYWxsLm5pdm8tbGlnaHRib3gtb3BlbiAubml2by1saWdodGJveC13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbi8qXG4gKiBOaXZvIExpZ2h0Ym94IERlZmF1bHQgVGhlbWUgdjEuMFxuICogaHR0cDovL2RldjdzdHVkaW9zLmNvbS9uaXZvLWxpZ2h0Ym94XG4gKlxuICogQ29weXJpZ2h0IDIwMTMsIERldjdzdHVkaW9zXG4gKiBGcmVlIHRvIHVzZSBhbmQgYWJ1c2UgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHBcbiAqL1xuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdC5uaXZvLWxpZ2h0Ym94LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtY29udGVudC5uaXZvLWxpZ2h0Ym94LWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25pdm8vbG9hZGluZy5naWYpIG5vLXJlcGVhdCA1MCUgNTAlO1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LW5hdiB7XG4gIHRvcDogMTAlO1xuICB3aWR0aDogOCU7XG4gIGhlaWdodDogODAlO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LW5hdjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9uaXZvL3ByZXYucG5nKTtcbiAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbml2by9uZXh0LnBuZyk7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbml2by9jbG9zZS5wbmcpIG5vLXJlcGVhdCA1cHggNXB4O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgcGFkZGluZzogNXB4O1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LXRpdGxlLXdyYXAge1xuICBib3R0b206IC03JTtcbn1cblxuLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC10aXRsZSB7XG4gIGZvbnQ6IDE0cHgvMjBweCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDdweCAxNXB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWltYWdlIGltZyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWFqYXgsXG4ubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWlubGluZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4zKSwgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIuNi8yKSwgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS4zKSwgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksIChtaW4tcmVzb2x1dGlvbjogMS4zZHBweCkge1xuICAubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LWNvbnRlbnQubml2by1saWdodGJveC1sb2FkaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL25pdm8vbG9hZGluZ0AyeC5naWYpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzJweCAzMnB4O1xuICB9XG4gIC5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtcHJldiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9uaXZvL3ByZXZAMngucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQ4cHggNDhweDtcbiAgfVxuICAubml2by1saWdodGJveC10aGVtZS1kZWZhdWx0IC5uaXZvLWxpZ2h0Ym94LW5leHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbml2by9uZXh0QDJ4LnBuZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA0OHB4IDQ4cHg7XG4gIH1cbiAgLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCAubml2by1saWdodGJveC1jbG9zZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9uaXZvL2Nsb3NlQDJ4LnBuZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7XG4gIH1cbn0iXX0= */