@charset "UTF-8";
/*!
	Theme Name: Sanchos Theme
	Theme URI:
	Description: This is the theme created for Sanchos
	Author: Khoozh
	Author URI:

	Version: 1.0.0

	Tags: one-column, two-columns, left-sidebar, right-sidebar, accessibility-ready, custom-colors, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready

	Template: genesis

	License: GPL-2.0+
	License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/* Table of Contents
sass/
|
|- abstracts/
|   |- _variables.scss    # Sass Variables
|   |- _functions.scss    # Sass Functions
|   |- _mixins.scss       # Sass Mixins
|   |- _placeholders.scss # Sass Placeholders
|
|- fonts/
|   |- _nucleo.scss       # Icon Pack
|
|– base/
|   |- _reset.scss        # Reset/normalize
|   |- _typography.scss   # Typography rules
|   |- _defaults.scss     # Genesis Defaults
|   |- _animations.scss   # Animations
|
|– components/
|   |- _graphics.scss            # Graphics
|   |- _buttons.scss             # Buttons
|   |- _widget.scss              # Genesis Default Widget and Plugins
|   |- _forms.scss               # Forms
|   |- _list-pagination.scss     # List and pagination
|   |- -title-divider.scss       # Title and dividers
|   |- _objects.scss             # Customised objects
|   |- _banners.scss             # Banners
|   |- _hero-slider.scss         # Hero Slider
|   |- _blocks.scss              # Blocks
|
|– layout/
|   |- _grid.scss         # Grid
|   |- _gs-structure-layout.scss # Genesis default structure and layout
|   |- _header.scss       # Header
|   |- _sidebar.scss      # Sidebar
|   |- _footer.scss       # Footer
|
|– pages/
|   |- _post-archive.scss        # Post archive styles
|   |- _post-single.scss         # Single Post Styles
|
|– themes/
|   |- _khoozh.scss       # Default theme
|   |- _woocommerce.scss  # Woocommerce Styles
|
|– vendors/
|   |- _slick.scss        # Slick Slider
|   |- _slick-theme.scss  # Slick Slider Theme
|   |- _featherlight.scss # Featherlight Gallery
|
|- main.scss              # Main Sass file
*/
/* Variables
 ============================================= */
/* Body Text Styles */
/* Font Weight */
/* Colors */
/* Etc. */
/* Background pattern image link*/
/* @font-face {
  font-family: "felt_tip_womanregular";
  src: url("../../../fonts/felt_tip_woman-webfont.woff2") format("woff2"), url("../../../fonts/felt_tip_woman-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
} */

@import url('https://fonts.googleapis.com/css2?family=Road+Rage&display=swap');

/* Mixins
 ============================================= */
/* Media Queries
 --------------------------------------------- */
/* Container
 --------------------------------------------- */
/* Image Aspect Ratio
 ---------------------------------------------
 <figure> // Apply image ratio to figure
   <img src=""/>
 </figure>
*/
/* Absolute
 --------------------------------------------- */
/* Gradient Fade
 --------------------------------------------- */
/* Badge / Tag label
 --------------------------------------------- */
/* Icons
 --------------------------------------------- */
.wpcf7 form .wpcf7-response-output:before {
  display: inline-block;
  font: normal normal normal 1em/1 "baseicon";
  speak: none;
  text-transform: none;
  /* Better Font Rendering */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Circle Object
 --------------------------------------------- */
/* Thumbnail Card
 ---------------------------------------------
<article class="thumbnail-card">
  <figure>
    <img src="">
  </figure>
  <div class="caption">
    <h4></h4>
    <p></p>
    <a href="#"></a>
  </div>
</article>
 */
/* Line Border
 --------------------------------------------- */
/* Child Margin
 --------------------------------------------- */
/* Clear Fix
--------------------------------------------- */
/* Functions
 ============================================= */
/* Placeholders
 ============================================= */
/* White Gradient
  --------------------------------------------- */
/* Transitions
 --------------------------------------------- */
.hero-slider, input[type=checkbox] + *:after, .menu-primary > li.menu-item-has-children:before, .site-header, .slick-dots li button:before {
  transition: all 0.3s ease-in-out;
}

/* Flexbox
 --------------------------------------------- */
.floating-whatsapp-button, .lr-layout .inline-wrap, .logo-feature-gallery, .pagination, .wpcf7 form .wpcf7-response-output:before, .btn-icon-text i, .header-widget-area a,
.header-widget-area button, .menu-toggle {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: flex;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./js/plugins/slick/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./js/plugins/slick/fonts/slick.eot");
  src: url("./js/plugins/slick/fonts/slick.eot?#iefix") format("embedded-opentype"), url("./js/plugins/slick/fonts/slick.woff") format("woff"), url("./js/plugins/slick/fonts/slick.ttf") format("truetype"), url("./js/plugins/slick/fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-next,
.slick-prev {
  position: absolute;
  display: block;
  height: 30px;
  width: 30px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  z-index: 2;
}
.slick-next:focus, .slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-next:focus:before, .slick-next:hover:before,
.slick-prev:focus:before,
.slick-prev:hover:before {
  opacity: 1;
}
.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
  opacity: 0.25;
}
.slick-next:before,
.slick-prev:before {
  font-family: "slick";
  font-size: 30px;
  line-height: 1;
  color: #ddd;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: 15px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -35px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: 15px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:focus, .slick-dots li button:hover {
  outline: none;
}
.slick-dots li button:focus:before, .slick-dots li button:hover:before {
  opacity: 1;
  font-size: 18px;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

/**
 * Featherlight – ultra slim jQuery lightbox
 * Version 1.7.13 - http://noelboss.github.io/featherlight/
 *
 * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
html.with-featherlight {
  /* disable global scrolling when featherlights are visible */
  overflow: hidden;
}

.featherlight {
  display: none;
  /* dimensions: spanning the background from edge to edge */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2147483647; /* z-index needs to be >= elements on the site. */
  /* position: centering content */
  text-align: center;
  /* insures that the ::before pseudo element doesn't force wrap with fixed width content; */
  white-space: nowrap;
  /* styling */
  cursor: pointer;
  background: #333;
  /* IE8 "hack" for nested featherlights */
  background: rgba(0, 0, 0, 0);
}

/* support for nested featherlights. Does not work in IE8 (use JS to fix) */
.featherlight:last-of-type {
  background: rgba(0, 0, 0, 0.8);
}

.featherlight:before {
  /* position: trick to center content vertically */
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.featherlight .featherlight-content {
  /* make content container for positioned elements (close button) */
  position: relative;
  /* position: centering vertical and horizontal */
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  /* dimensions: cut off images */
  overflow: auto;
  padding: 25px 25px 0;
  border-bottom: 25px solid transparent;
  /* dimensions: handling large content */
  margin-left: 5%;
  margin-right: 5%;
  max-height: 95%;
  /* styling */
  cursor: auto;
  /* reset white-space wrapping */
  white-space: normal;
}

/* contains the content */
.featherlight .featherlight-inner {
  /* make sure its visible */
  display: block;
}

/* don't show these though */
.featherlight script.featherlight-inner,
.featherlight link.featherlight-inner,
.featherlight style.featherlight-inner {
  display: none;
}

.featherlight .featherlight-close-icon {
  /* position: centering vertical and horizontal */
  position: absolute;
  z-index: 9999;
  top: 0;
  right: 0;
  /* dimensions: 25px x 25px */
  line-height: 25px;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  /* styling */
  cursor: pointer;
  text-align: center;
  font-family: Arial, sans-serif;
  background: #fff; /* Set the background in case it overlaps the content */
  background: rgba(255, 255, 255, 0.3);
  color: #000;
  border: none;
  padding: 0;
}

/* See http://stackoverflow.com/questions/16077341/how-to-reset-all-default-styles-of-the-html5-button-element */
.featherlight .featherlight-close-icon::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.featherlight .featherlight-image {
  /* styling */
  width: 100%;
}

.featherlight-iframe .featherlight-content {
  /* removed the border for image croping since iframe is edge to edge */
  border-bottom: 0;
  padding: 0;
  -webkit-overflow-scrolling: touch;
}

.featherlight iframe {
  /* styling */
  border: none;
}

.featherlight * { /* See https://github.com/noelboss/featherlight/issues/42 */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* handling phones and small screens */
@media only screen and (max-width: 1024px) {
  .featherlight .featherlight-content {
    /* dimensions: maximize lightbox with for small screens */
    margin-left: 0;
    margin-right: 0;
    max-height: 98%;
    padding: 10px 10px 0;
    border-bottom: 10px solid transparent;
  }
}
/* hide non featherlight items when printing */
@media print {
  html.with-featherlight > * > :not(.featherlight) {
    display: none;
  }
}
/* --------------------------------

baseicon Web Font
Generated using nucleoapp.com

-------------------------------- */
@font-face {
  font-family: "baseicon";
  src: url("fonts/baseicon.eot");
  src: url("fonts/baseicon.eot") format("embedded-opentype"), url("fonts/baseicon.woff2") format("woff2"), url("fonts/baseicon.woff") format("woff"), url("fonts/baseicon.ttf") format("truetype"), url("fonts/baseicon.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
/*------------------------
	base class definition
-------------------------*/
.icon {
  display: inline-block;
  font: normal normal normal 1em/1 "baseicon";
  speak: none;
  text-transform: none;
  /* Better Font Rendering */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*------------------------
  change icon size
-------------------------*/
/* relative units */
.icon-sm {
  font-size: 0.8em;
}

.icon-lg {
  font-size: 1.2em;
}

/* absolute units */
.icon-16 {
  font-size: 16px;
}

.icon-32 {
  font-size: 32px;
}

/*----------------------------------
  add a square/circle background
-----------------------------------*/
.icon-bg-square,
.icon-bg-circle {
  padding: 0.35em;
  background-color: #eee;
}

.icon-bg-circle {
  border-radius: 50%;
}

/*------------------------------------
  use icons as list item markers
-------------------------------------*/
.icon-ul {
  padding-left: 0;
  list-style-type: none;
}
.icon-ul > li {
  display: flex;
  align-items: flex-start;
  line-height: 1.4;
}
.icon-ul > li > .icon {
  margin-right: 0.4em;
  line-height: inherit;
}

/*------------------------
  spinning icons
-------------------------*/
.icon-is-spinning {
  -webkit-animation: icon-spin 2s infinite linear;
  -moz-animation: icon-spin 2s infinite linear;
  animation: icon-spin 2s infinite linear;
}

@-webkit-keyframes icon-spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@-moz-keyframes icon-spin {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(360deg);
  }
}
@keyframes icon-spin {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*------------------------
  rotated/flipped icons
-------------------------*/
.icon-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

.icon-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.icon-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg);
}

.icon-flip-y {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

.icon-flip-x {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: scale(1, -1);
  -moz-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  -o-transform: scale(1, -1);
  transform: scale(1, -1);
}

/*------------------------
	icons
-------------------------*/
.icon-account::before {
  content: "\ea01";
}

.icon-bag-09::before {
  content: "\ea02";
}

.icon-checked-symbol::before {
  content: "\ea03";
}

.icon-facebook-1::before {
  content: "\ea04";
}

.icon-facebook-circle::before {
  content: "\ea05";
}

.icon-facebook::before {
  content: "\ea06";
}

.icon-fax::before {
  content: "\ea07";
}

.icon-ic_access_time_48px::before {
  content: "\ea08";
}

.icon-ic_arrow_back_36px::before {
  content: "\ea09";
}

.icon-ic_close_48px::before {
  content: "\ea0a";
}

.icon-ic_mail_outline_48px::before {
  content: "\ea0b";
}

.icon-instagram::before {
  content: "\ea0c";
}

.icon-lock::before {
  content: "\ea0d";
}

.icon-phone-2-2::before {
  content: "\ea0e";
}

.icon-phone-2::before {
  content: "\ea0f";
}

.icon-pin::before {
  content: "\ea10";
}

.icon-placeholder::before {
  content: "\ea11";
}

.icon-plus::before {
  content: "\ea12";
}

.icon-shopping-cart::before {
  content: "\ea13";
}

.icon-single-01::before {
  content: "\ea14";
}

.icon-star::before {
  content: "\ea15";
}

.icon-whatsapp-logo::before {
  content: "\ea16";
}

.icon-youtube::before {
  content: "\ea17";
}

.icon-zoom-2::before {
  content: "\ea18";
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: 700;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small, .footer-widget-area p {
  font-size: 80%;
  line-height: 1.3;
  display: inline-block;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

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

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
  border: 0;
  cursor: pointer;
  background-color: transparent;
}

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

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

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

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

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

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

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

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

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

/* Box Sizing
 --------------------------------------------- */
html {
  box-sizing: border-box;
}

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

/* Typographical Elements
 --------------------------------------------- */
html {
  font-size: 56%;
  /* 10px browser default */
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}
@media only screen and (min-width: 960px) {
  html {
    font-size: 62.5%;
  }
}

/* Chrome fix */
body > div {
  font-size: 14px;
  font-size: 1.4rem;
}

body {
  background-color: #fff;
  color: #555;
  font-family: "Arvo", serif;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.625;
  margin: 0;
  overflow-x: hidden;
}

button,
input:focus,
input[type=button],
input[type=reset],
input[type=submit],
textarea:focus,
.button,
.gallery img {
  transition: all 0.2s ease-in-out;
}

ol,
ul {
  margin: 0;
  padding: 0;
}

li {
  list-style-type: none;
}

hr {
  border: 0;
  border-collapse: collapse;
  border-top: 1px solid #eee;
  clear: both;
  margin: 30px 0;
}

b,
strong {
  font-weight: 700;
}

blockquote,
cite,
em,
i {
  font-style: italic;
}

mark {
  background: #ddd;
  color: #333;
}

blockquote {
  margin: 30px;
}

blockquote::before {
  content: "“";
  display: block;
  font-size: 30px;
  font-size: 3rem;
  height: 0;
  left: -20px;
  position: relative;
  top: -10px;
}

/* Headings
 --------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  color: hsl(0deg, 0%, 10%);
  line-height: 1.2;
  margin: 0 0 2rem;
}

h1 {
  font-size: 6rem;
  font-family: "Road Rage", sans-serif;
}

h2 {
  font-size: 5rem;
  font-family: "Road Rage", sans-serif;
}

h3 {
  font-size: 4rem;
  font-family: "Road Rage", sans-serif;
}

h4 {
  font-size: 1.8rem;
  font-weight: 400;
}

h5 {
  font-size: 1.6rem;
}

h6 {
  font-size: 1.3rem;
}

a {
  text-decoration: none;
  font-weight: 700;
  color: black;
}
a:hover {
  text-decoration: underline;
  color: black;
}

label {
  font-size: 1.4rem;
  color: hsl(0deg, 0%, 60%);
}

/* Text
 --------------------------------------------- */
p {
  font-size: 1.5rem;
  line-height: 2.4rem;
  margin: 0 0 15px;
}
p.x-small {
  font-size: 1.2rem;
  line-height: 1.2;
}
p.small, .entry-content p.entry-meta, .post-entry-list p, .site-footer > .wrap > p {
  font-size: 1.4rem;
  line-height: 1.2;
}
p.large {
  font-size: 1.8rem;
  line-height: 1.5;
}

/* Dark theme
 --------------------------------------------- */
.single-page .content a, .promotion-page .content a, .contact-details-wrapper-1 a, .interior-section .interior-content a, .menu-section a, .homepage-promotions-feature a, .ig-feature-gallery-wrapper a, .post-single .has-post-thumbnail .entry-header a, .entry-header a,
.regular-banner a,
.single-page .content p,
.promotion-page .content p,
.contact-details-wrapper-1 p,
.interior-section .interior-content p,
.menu-section p,
.homepage-promotions-feature p,
.ig-feature-gallery-wrapper p,
.post-single .has-post-thumbnail .entry-header p,
.entry-header p,
.regular-banner p {
  color: #fff;
}
.single-page .content h1, .promotion-page .content h1, .contact-details-wrapper-1 h1, .interior-section .interior-content h1, .menu-section h1, .homepage-promotions-feature h1, .ig-feature-gallery-wrapper h1, .post-single .has-post-thumbnail .entry-header h1, .entry-header h1,
.regular-banner h1,
.single-page .content h2,
.promotion-page .content h2,
.contact-details-wrapper-1 h2,
.interior-section .interior-content h2,
.menu-section h2,
.homepage-promotions-feature h2,
.ig-feature-gallery-wrapper h2,
.post-single .has-post-thumbnail .entry-header h2,
.entry-header h2,
.regular-banner h2,
.single-page .content h3,
.promotion-page .content h3,
.contact-details-wrapper-1 h3,
.interior-section .interior-content h3,
.menu-section h3,
.homepage-promotions-feature h3,
.ig-feature-gallery-wrapper h3,
.post-single .has-post-thumbnail .entry-header h3,
.entry-header h3,
.regular-banner h3,
.single-page .content h4,
.promotion-page .content h4,
.contact-details-wrapper-1 h4,
.interior-section .interior-content h4,
.menu-section h4,
.homepage-promotions-feature h4,
.ig-feature-gallery-wrapper h4,
.post-single .has-post-thumbnail .entry-header h4,
.entry-header h4,
.regular-banner h4,
.single-page .content h5,
.promotion-page .content h5,
.contact-details-wrapper-1 h5,
.interior-section .interior-content h5,
.menu-section h5,
.homepage-promotions-feature h5,
.ig-feature-gallery-wrapper h5,
.post-single .has-post-thumbnail .entry-header h5,
.entry-header h5,
.regular-banner h5,
.single-page .content h6,
.promotion-page .content h6,
.contact-details-wrapper-1 h6,
.interior-section .interior-content h6,
.menu-section h6,
.homepage-promotions-feature h6,
.ig-feature-gallery-wrapper h6,
.post-single .has-post-thumbnail .entry-header h6,
.entry-header h6,
.regular-banner h6 {
  color: #fff;
}
.single-page .content hr, .promotion-page .content hr, .contact-details-wrapper-1 hr, .interior-section .interior-content hr, .menu-section hr, .homepage-promotions-feature hr, .ig-feature-gallery-wrapper hr, .post-single .has-post-thumbnail .entry-header hr, .entry-header hr,
.regular-banner hr {
  border-color: #fff;
}

.post-single .entry-content h2,
.post-single .entry-content h3,
.post-single .entry-content h4,
.post-single .entry-content h5,
.post-single .entry-content h6 {
  line-height: 1.5;
  margin-top: 4rem;
}
.post-single .entry-content li,
.post-single .entry-content p {
  margin-bottom: 1.2em;
  line-height: 2;
  text-align: justify;
}
@media only screen and (max-width: 670px) {
  .post-single .entry-content li,
.post-single .entry-content p {
    font-size: 1.7rem;
  }
}

/* Defaults
 ============================================= */
/* Objects
 --------------------------------------------- */
.wp-caption,
embed,
iframe,
img,
object,
video {
  max-width: 100%;
}

img {
  height: auto;
  vertical-align: top;
}

figure {
  margin: 0;
}

/* Gallery
 --------------------------------------------- */
.gallery {
  overflow: hidden;
}
.gallery img {
  height: auto;
}
.gallery img:focus, .gallery img:hover {
  outline: none;
}

/* Tables
 --------------------------------------------- */
table {
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 2;
  margin-bottom: 40px;
  width: 100%;
}

tbody {
  border-bottom: 1px solid #eee;
}

td,
th {
  text-align: left;
}
td:first-child,
th:first-child {
  padding-left: 0;
}

td {
  border-top: 1px solid #eee;
  padding: 6px;
}

th {
  font-weight: 400;
  padding: 0 6px;
}

/* Screen Reader Text
 --------------------------------------------- */
.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-shortcut:focus,
.screen-reader-text:focus {
  background: #fff;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #333;
  display: block;
  font-size: 1em;
  font-weight: 700;
  height: auto;
  padding: 15px 23px 14px;
  text-decoration: none;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

.more-link {
  position: relative;
}

/* Image release
 --------------------------------------------- */
.image-release, .contact-1_mapembed:after {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  max-width: none;
  display: block;
}

/* Vertical align column objects
 --------------------------------------------- */
.vertical-center .wp-block-column {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}

/* Animations
 ============================================= */
.fade-scale-before, .fade-left-before, .fade-right-before, .hidden {
  transition: all 0.5s ease-in-out;
  opacity: 0;
}

/* fade in top */
.hidden {
  transform: translateY(30px);
}

.shown {
  opacity: 1;
  transform: translateY(0px);
}

/* fade in right */
.fade-right-before {
  transform: translateX(-30px);
}

.fade-right {
  opacity: 1;
  transform: translateX(0px);
}

/* fade in left */
.fade-left-before {
  transform: translateX(30px);
}

.fade-left {
  opacity: 1;
  transform: translateX(0px);
}

/* fade in scale */
.fade-scale-before {
  transform: scale(0.9);
}

.fade-scale {
  opacity: 1;
  transform: scale(1);
}

/* Grid
 ============================================= */
/* Column Mixin
 --------------------------------------------- */
.post-archive .archive-description p, .entry-header p,
.regular-banner p {
  padding: 0 5%;
}
@media only screen and (min-width: 960px) {
  .post-archive .archive-description p, .entry-header p,
.regular-banner p {
    padding: 0;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
}

.cols-2 {
  display: flex;
  flex-flow: row wrap;
}
.cols-2 > * {
  width: 100%;
  margin-bottom: 30px;
}
@media only screen and (min-width: 670px) {
  .cols-2 > * {
    width: calc((100% - (30px * (2 - 1))) / 2);
    margin-right: 30px;
  }
  .cols-2 > *:nth-child(2n) {
    margin-right: 0;
  }
}

.cols-3 {
  display: flex;
  flex-flow: row wrap;
}
.cols-3 > * {
  width: 100%;
  margin-bottom: 30px;
}
@media only screen and (min-width: 670px) {
  .cols-3 > * {
    width: calc((100% - (30px * (3 - 1))) / 3);
    margin-right: 30px;
  }
  .cols-3 > *:nth-child(3n) {
    margin-right: 0;
  }
}

/* Column Layouts
 --------------------------------------------- */
@media only screen and (min-width: 670px) {
  .two-one > *:nth-child(1) {
    flex: 2 1 0;
  }
  .two-one > *:nth-child(2) {
    flex: 1 1 0;
  }
}

/* Wrapper
 --------------------------------------------- */
section.wrapper {
  width: 100%;
  padding: 50px 5%;
}
@media only screen and (min-width: 960px) {
  section.wrapper {
    padding: 80px 10%;
  }
}
section.wrapper-small {
  width: 100%;
  padding: 15px 5%;
}
@media only screen and (min-width: 960px) {
  section.wrapper-small {
    padding: 30px 10%;
  }
}
section.wrapper-large {
  width: 100%;
  padding: 80px 5%;
}
@media only screen and (min-width: 960px) {
  section.wrapper-large {
    padding: 120px 10%;
  }
}
section.wrapper-full {
  width: 100%;
  padding: 50px 0;
}
@media only screen and (min-width: 960px) {
  section.wrapper-full {
    padding: 80px 0;
  }
}

/* Genesis Structure and Layout
  ============================================== */
/* Site Container
 --------------------------------------------- */
.site-container {
  word-wrap: break-word;
  overflow: hidden;
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
  min-height: 100vh;
}

main.content {
  flex: 1 1 100%;
}

@media only screen and (max-width: 670px) {
  .site-header + * {
    margin-top: 67px;
  }
}

/* Common Classes
------------------------------------------------------------------------------------------ */
/* Genesis
 --------------------------------------------- */
.after-entry,
.archive-description,
.author-box {
  margin-bottom: 40px;
}

.after-entry {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  padding: 20px 30px;
}

.after-entry .widget:last-of-type {
  margin-bottom: 0;
}

.breadcrumb {
  border-bottom: 1px solid #eee;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 40px;
  padding-bottom: 10px;
}

.archive-description p:last-child,
.author-box p:last-child {
  margin-bottom: 0;
}

/* Search Form
 --------------------------------------------- */
.search-form {
  overflow: hidden;
}

.entry-content .search-form {
  margin-bottom: 40px;
  width: 50%;
}

.post-password-form input[type=submit],
.search-form input[type=submit] {
  margin-top: 10px;
}

.widget_search input[type=submit] {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* Titles
 --------------------------------------------- */
.entry-title a,
.sidebar .widget-title a {
  color: #333;
  text-decoration: none;
}

.widget-title {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

/* WordPress
--------------------------------------------- */
a.aligncenter img {
  display: block;
  margin: 0 auto;
}

a.alignnone {
  display: inline-block;
}

.alignleft {
  float: left;
  text-align: left;
}

.alignright {
  float: right;
  text-align: right;
}

a.alignleft,
a.alignnone,
a.alignright {
  max-width: 100%;
}

img.centered,
.aligncenter,
.singular-image {
  display: block;
  margin: 0 auto 30px;
}

img.alignnone,
.alignnone {
  margin-bottom: 15px;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
  margin: 0 20px 20px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
  margin: 0 0 20px 20px;
}

.gallery-caption,
.wp-caption-text {
  font-size: 14px;
  font-weight: 600;
  margin-top: 0.5em;
  margin-bottom: 1em;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
}

.entry-content p.wp-caption-text {
  margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
  margin: 0 0 30px;
}

/* Header Buttons
 --------------------------------------------- */
.header-widget-area a,
.header-widget-area button, .menu-toggle {
  width: 40px;
  height: 40px;
  background-color: hsla(0deg, 0%, 0%, 0);
  border-radius: 50%;
  font-size: 17px;
  color: hsl(0deg, 0%, 40%);
  font-weight: 400;
  line-height: 1;
}
.header-widget-area a:hover,
.header-widget-area button:hover, .menu-toggle:hover,
.menu-toggle a:hover {
  text-decoration: none;
}
/* Skip Links
 --------------------------------------------- */
.genesis-skip-link {
  margin: 0;
}
.genesis-skip-link .skip-link-hidden {
  display: none;
  visibility: hidden;
}
.genesis-skip-link li {
  height: 0;
  list-style: none;
  width: 0;
}

/* Site Header
 --------------------------------------------- */
.site-header {
  position: fixed;
  z-index: 999;
  top: 0;
  width: 100%;
  background-color: #fff;
  padding: 0px 5%;
}
@media only screen and (min-width: 960px) {
  .site-header {
    background-color: transparent;
    padding: 0px 3%;
  }
}
@media only screen and (min-width: 1400px) {
  .site-header {
    padding: 0px 5%;
  }
}
.site-header > .wrap {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  /* Structure */
}
.site-header > .wrap > *.pre-header {
  flex: 0 0 100%;
}
@media only screen and (min-width: 960px) {
  .site-header > .wrap > *.title-area {
    flex: 0 0 auto;
  }
}
.site-header > .wrap > *.header-widget-area {
  flex: 1 1 0;
}
@media only screen and (min-width: 960px) {
  .site-header > .wrap > *.header-widget-area {
    flex: 0 0 auto;
  }
}
.site-header > .wrap > *.menu-toggle {
  flex: 1 1 0;
}

/* Title Area
 --------------------------------------------- */
.title-area {
  width: 150px;
  padding: 12px 0 8px;
  order: 2;
  margin: 0 auto;
}
@media only screen and (min-width: 960px) {
  .title-area {
    order: 0;
    margin: 0;
  }
}
.title-area a {
  display: block;
  margin: 0 auto;
}

.site-description,
.wp-custom-logo .site-title {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

/* Responsive Menu
 --------------------------------------------- */
.menu .menu-item:focus {
  position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
  left: auto;
  opacity: 1;
}

.genesis-responsive-menu {
  position: relative;
  display: none;
}
@media only screen and (min-width: 960px) {
  .genesis-responsive-menu {
    display: inherit;
  }
}

/* Menu Toggle & Sub Menu Toggle */
.menu-toggle,
.sub-menu-toggle {
  background-color: transparent;
  border-width: 0;
  color: #000;
  display: block;
  margin: 0 auto;
  overflow: hidden;
  text-align: center;
  visibility: visible;
}
@media only screen and (min-width: 960px) {
  .menu-toggle,
.sub-menu-toggle {
    display: none;
    visibility: hidden;
  }
}
.menu-toggle:focus, .menu-toggle:hover,
.sub-menu-toggle:focus,
.sub-menu-toggle:hover {
  background-color: transparent;
  border-width: 0;
}

/* Menu Toggle */
.menu-toggle {
  position: absolute;
  z-index: 1000;
  overflow: hidden;
  padding: 0;
  order: 4;
  margin: 0;
  font-size: 0;
  text-align: right;
  right: 0;
}
.menu-toggle::before {
  position: relative;
  text-rendering: auto;
  margin-right: 20px;
}
.menu-toggle.activated::before {
  content: "\f335";
}

/* Sub Menu Toggle */
.sub-menu-toggle {
  position: absolute;
  right: 5px;
  top: 15px;
  z-index: 100;
  text-align: center;
}
.sub-menu-toggle:before {
  display: inline-block;
  text-rendering: auto;
  transform: rotate(0);
  transition: transform 0.25s ease-in-out;
  color: hsl(0deg, 0%, 10%);
}
.sub-menu-toggle.activated:before {
  transform: rotate(180deg);
  color: #333333;
}

/* Header Menu
 --------------------------------------------- */
@media only screen and (min-width: 960px) {
  .menu-primary > li:not(.menu-item--highlight):focus a:after, .menu-primary > li:not(.menu-item--highlight):hover a:after {
    bottom: 15px;
    opacity: 1;
  }
}

/* Header Menu Structure */
.nav-primary {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 67px;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 99;
  overflow-y: scroll;
  display: none;
}
@media only screen and (min-width: 960px) {
  .nav-primary {
    position: relative;
    top: 0;
    height: auto;
    width: auto;
    background-color: transparent;
    display: flex;
    flex-flow: row wrap;
    align-self: stretch;
    overflow-y: visible;
    margin-left: auto;
  }
}
@media only screen and (min-width: 960px) {
  .nav-primary .wrap {
    height: 100%;
  }
}

/* Main Header Menu */
.menu-primary {
  display: flex;
  flex-flow: row wrap;
  position: relative;
  line-height: 1;
  height: 100%;
  background-color: hsl(0deg, 0%, 95%);
  box-shadow: inset 0 0 20px 0 rgba(0, 0, 0, 0.1);
  /* Generic li style*/
  /* Generic nav link style */
  /* First level li */
  /* Level 2 Menu */
}
@media only screen and (max-width: 670px) {
  .menu-primary {
    justify-content: center;
  }
}
@media only screen and (min-width: 960px) {
  .menu-primary {
    background-color: transparent;
    box-shadow: none;
  }
}
.menu-primary > li > a:after {
  content: "";
  position: absolute;
  width: 50px;
  height: 10px;
  left: calc(50% - 25px);
  bottom: 0px;
  opacity: 0;
  transition: 0.3s;
  background: url("../../../static/graphic-divider.svg") no-repeat center/contain;
}
.menu-primary .sub-menu {
  z-index: 99;
  box-shadow: inset 0 0 8px 0 rgba(0, 0, 0, 0.15);
  background-color: #f0f0f0;
  display: none;
  /* Second level li */
}
@media only screen and (min-width: 960px) {
  .menu-primary .sub-menu {
    position: absolute;
    min-width: 180px;
    width: auto;
    opacity: 0;
    left: 9999px;
    background-color: #fff;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.1);
    border-radius: 0 0 8px 8px;
  }
}
/* Styles for Main Navigation
--------------------------------------------- */
@media only screen and (min-width: 960px) {
  .menu-primary .menu-item {
    border: 0;
  }
}
.menu-primary > li {
  position: relative;
  width: 100%;
  /* If have children */
  /* If Highlighted */
}
@media only screen and (min-width: 960px) {
  .menu-primary > li {
    display: block;
    height: 100%;
    width: auto;
  }
}
.menu-primary > li.menu-item-has-children:before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 7px solid hsl(0deg, 0%, 10%);
  left: calc(50% - 10px);
  opacity: 0;
  bottom: 0;
}
.menu-primary > li.menu-item-has-children:hover:before {
  opacity: 1;
}
.menu-primary > li.menu-item--highlight {
  padding: 12px 0px 12px 0;
}
.menu-primary > li.menu-item--highlight > a {
  position: relative;
  z-index: 0;
  background-color: hsl(0deg, 0%, 10%);
  color: #fff;
  margin: 0 10px;
  border-radius: 8px;
  transition: 0.3s;
  padding: 14px;
  padding: 12px;
  overflow: hidden;
}
.menu-primary > li.menu-item--highlight > a:after {
  content: "";
  height: 100%;
  width: 0px;
  position: absolute;
  left: 0%;
  transform: translateX(-50%) skew(-10deg);
  top: 0;
  z-index: -1;
  background: hsl(0deg, 0%, 90%);
  opacity: 0;
}
.menu-primary > li.menu-item--highlight:hover {
  border-bottom: 0;
}
.menu-primary > li.menu-item--highlight:hover a {
  background: black;
  transform: scale(1.05);
  color: #000;
}
.menu-primary > li.menu-item--highlight:hover a:after {
  left: 50%;
  width: 120%;
  opacity: 1;
}
@media only screen and (min-width: 960px) {
  .menu-primary .sub-menu .menu-item:hover {
    background-color: hsl(0deg, 0%, 10%);
  }
  .menu-primary .sub-menu .menu-item:hover > a {
    color: #fff;
  }
}

.menu-primary a {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  font-weight: 700;
  font-family: "Road Rage", sans-serif;
  color: hsl(0deg, 0%, 10%);
  text-transform: uppercase;
  font-size: 1.9rem;
}
@media only screen and (min-width: 960px) {
  .menu-primary a {
    height: 100%;
    text-align: left;
    align-items: center;
    justify-content: flex-start;
  }
}
.menu-primary a:hover {
  text-decoration: none;
}
.menu-primary a i {
  font-weight: 400;
}
.menu-primary > li > a {
  padding: 20px 16px;
}
@media only screen and (min-width: 960px) {
  .menu-primary > li > a {
    padding: 20px 14px;
  }
}
.menu-primary .sub-menu .menu-item > a {
  padding: 14px 15px;
}
@media only screen and (min-width: 960px) {
  .menu-primary .sub-menu .menu-item > a {
    font-size: 14px;
  }
  .menu-primary .sub-menu .menu-item > a:hover {
    color: #fff;
    background-color: hsl(0deg, 0%, 10%);
  }
}

/* Header Widget Area
 --------------------------------------------- */
.header-widget-area {
  display: flex;
  flex-flow: row nowrap;
  position: relative;
  z-index: 101;
  order: 0;
}
@media only screen and (min-width: 960px) {
  .header-widget-area {
    order: 3;
    margin: 0 5% 0 auto;
  }
}
.header-widget-area .menu {
  display: flex;
  flex-flow: row wrap;
}
.header-widget-area .menu li {
  margin-bottom: 0;
}
.header-widget-area .widget {
  margin-bottom: 0;
}
/* Pre Header
 --------------------------------------------- */
.pre-header {
  position: relative;
  font-size: 10px;
  display: flex;
  justify-content: space-between;
  background-color: #f7f7f7;
  padding: 3px 3%;
}
.pre-header > * {
  margin-bottom: 0;
}
.pre-header > * i {
  margin: 0 3px;
  font-weight: 700;
}
.pre-header > *:nth-child(odd) {
  flex: 1 1 0;
  display: flex;
  line-height: 2;
  align-items: center;
}
.pre-header > *:nth-child(even) {
  flex: 11 1 0;
  text-align: center;
}
@media only screen and (min-width: 670px) {
  .pre-header > *:nth-child(even) {
    flex: 2 1 0;
  }
}
.pre-header > *:last-child {
  text-align: right;
  justify-content: flex-end;
}
.pre-header p {
  color: #e93550;
}
@media only screen and (max-width: 670px) {
  .pre-header a span {
    display: none;
  }
}

.site-header.header-scroll {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  background-color: #fff;
}

@media only screen and (min-width: 960px) {
  .site-header:not(.header-scroll) .title-area {
    filter: saturate(0) brightness(0) invert(1);
  }
}
@media only screen and (min-width: 960px) {
  .site-header:not(.header-scroll) .menu-primary > li > a {
    color: #fff;
  }
}
@media only screen and (min-width: 960px) {
  .site-header:not(.header-scroll) .menu-primary .menu-item--highlight:hover > a {
    color: #000;
  }
}

/* Sidebar
 --------------------------------------------- */
.sidebar {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
}

.sidebar .widget {
  margin-bottom: 50px;
}

.sidebar p {
  margin-bottom: 20px;
}

/* Footer
  ============================================== */
/* Footer Widgets
 --------------------------------------------- */
.footer-widgets {
  background: #fff;
  width: 100%;
  padding: 60px 5%;
}
@media only screen and (max-width: 670px) {
  .footer-widgets {
    text-align: center;
  }
}
.footer-widgets:after {
  opacity: 1;
}
.footer-widgets .wrap {
  display: flex;
  flex-flow: column nowrap;
}
@media only screen and (min-width: 960px) {
  .footer-widgets .wrap {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
  }
  .footer-widgets .wrap > * {
    margin-right: 30px;
  }
  .footer-widgets .wrap > *:last-child {
    margin-right: 0;
  }
}
.footer-widgets .widget-title {
  font-family: "Arvo", serif;
  font-weight: 700;
  font-size: 1.6rem;
  border-bottom: 1px solid hsl(0deg, 0%, 10%);
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.footer-widgets .widget {
  margin-bottom: 20px;
}

.footer-widget-area {
  margin-bottom: 20px;
}
.footer-widget-area p {
  color: #555;
}
@media only screen and (min-width: 960px) {
  .footer-widget-area {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 960px) {
  .footer-widget-area:nth-child(1) {
    flex: 1 1 0;
  }
}
@media only screen and (min-width: 960px) {
  .footer-widget-area:nth-child(2) {
    flex: 1 1 0;
  }
}
@media only screen and (min-width: 960px) {
  .footer-widget-area:nth-child(3) {
    flex: 1 1 0;
  }
}
@media only screen and (min-width: 960px) {
  .footer-widget-area:nth-child(4) {
    flex: 1 1 0;
  }
}

.footer-widget-area ul[id*=social] {
  flex-flow: row wrap;
  justify-content: flex-start;
}

.footer-widgets .menu {
  display: flex;
  flex-flow: column nowrap;
}
.footer-widgets .menu li {
  width: 100%;
  margin-right: 10px;
}
@media only screen and (max-width: 670px) {
  .footer-widgets .menu li {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 670px) {
  .footer-widgets .menu li {
    width: auto;
  }
}
.footer-widgets .menu li a {
  display: block;
  padding: 3px 0;
  font-size: 1.3rem;
  color: hsl(0deg, 0%, 20%);
}
@media only screen and (min-width: 960px) {
  .footer-widgets .menu li a {
    padding: 0;
  }
}
.footer-widgets .menu li a i {
  font-size: 16px;
}

.footer-widgets-1 img {
  max-width: 150px;
  width: 150px;
  display: block;
  margin: 0 auto;
}
@media only screen and (min-width: 960px) {
  .footer-widgets-1 img {
    margin: 0 auto 0 0;
  }
}

.footer-widgets-4 img {
  width: 48px;
  margin-bottom: 6px;
}
.footer-widgets-4 img:not(:last-child) {
  margin-right: 6px;
}

.textwidget > p {
  display: block;
}

.footer-widget-area:last-child,
.footer-widgets .widget:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 670px) {
  #menu-social-media-menu {
    margin: 0 auto;
    justify-content: center;
  }
}
@media only screen and (max-width: 670px) {
  #menu-social-media-menu .menu-item {
    width: auto;
  }
  .site-header #menu-social-media-menu {
    display: none;
  }
}

/* Site Footer
 --------------------------------------------- */
.site-footer {
  background-color: black;
  color: #ffe8ce;
  line-height: 1.5;
  padding: 15px 5% 5px;
}
.site-footer > .wrap {
  display: flex;
  flex-flow: column nowrap;
  text-align: center;
}
.site-footer > .wrap > p {
  margin: 0 0 5px;
}

/* Graphics
 ============================================= */
/* Secondary Graphic
 --------------------------------------------- */
/* Background Pattern
--------------------------------------------- */
.post-archive .archive-description, .entry-header,
.regular-banner {
  background: url("../../../static/collage.jpg") repeat center;
}
@media only screen and (min-width: 960px) {
  .post-archive .archive-description, .entry-header,
.regular-banner {
    background-attachment: fixed;
  }
}

/* Graphic Divider 1
--------------------------------------------- */
/* Graphic Divider 2 - brush
--------------------------------------------- */
/* Divider after title
--------------------------------------------- */
/* Buttons
 =============================================
 btn-1
 btn-2
 btn-icon-text
 */
/* Structure of a button */
form input[type=submit], .btn {
  position: relative;
  display: inline-block;
  line-height: initial;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  border: 0;
  transition: all 0.15s ease-in-out;
  font-family: "Road Rage", sans-serif;
  cursor: pointer;
  padding: 0.8em 1.2em;
  font-size: 1.9rem;
}
form input[type=submit]:hover, .btn:hover {
  text-decoration: none;
}
.post-entry-list .category-link, .btn-small {
  position: relative;
  display: inline-block;
  line-height: initial;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  border: 0;
  transition: all 0.15s ease-in-out;
  font-family: "Road Rage", sans-serif;
  cursor: pointer;
  padding: 0.4em 0.6em;
  font-size: 1.6rem;
}
.post-entry-list .category-link:hover, .btn-small:hover {
  text-decoration: none;
}
.btn-large {
  position: relative;
  display: inline-block;
  line-height: initial;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  border: 0;
  transition: all 0.15s ease-in-out;
  font-family: "Road Rage", sans-serif;
  cursor: pointer;
  padding: 1.2em;
  font-size: 2.2rem;
}
.btn-large:hover {
  text-decoration: none;
}

.btn.align-c {
  margin: 0 auto;
  display: table;
}
/* Solid Button - btn-1
   --------------------------------------------- */
form input[type=submit], .btn-1 {
  background-color: hsl(0deg, 0%, 30%);
  color: #fff;
  border-radius: 3px;
}
form input[type=submit]:hover, .btn-1:hover {
  color: #fff;
  background-color: black;
}
form input[type=submit]:active, .btn-1:active {
  transform: translateY(3px);
}
.btn-1-secondary {
  background-color: hsl(0deg, 0%, 30%);
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-secondary:hover {
  color: #fff;
  background-color: #737373;
}
.btn-1-secondary:active {
  transform: translateY(3px);
}
.post-entry-list .category-link, .btn-1-light {
  background-color: hsl(0deg, 0%, 30%);
  color: hsl(0deg, 0%, 50%);
  border-radius: 3px;
}
.post-entry-list .category-link:hover, .btn-1-light:hover {
  color: #fff;
  background-color: #bfbfbf;
}
.post-entry-list .category-link:active, .btn-1-light:active {
  transform: translateY(3px);
}
.btn-1-success {
  background-color: hsl(0deg, 0%, 30%);
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-success:hover {
  color: #fff;
  background-color: #204d45;
}
.btn-1-success:active {
  transform: translateY(3px);
}
.btn-1-info {
  background-color: hsl(0deg, 0%, 30%);
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-info:hover {
  color: #fff;
  background-color: #204060;
}
.btn-1-info:active {
  transform: translateY(3px);
}
.btn-1-warning {
  background-color: hsl(0deg, 0%, 30%);
  color: #753e05;
  border-radius: 3px;
}
.btn-1-warning:hover {
  color: #fff;
  background-color: #f07e09;
}
.btn-1-warning:active {
  transform: translateY(3px);
}
.btn-1-danger {
  background-color: hsl(0deg, 0%, 30%);
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-danger:hover {
  color: #fff;
  background-color: #bd152e;
}
.btn-1-danger:active {
  transform: translateY(3px);
}

/* Outline Button - btn-2
   --------------------------------------------- */
.btn-2 {
  background-color: transparent;
  color: hsl(0deg, 0%, 10%);
  border: 2px solid #333333;
  border-radius: 5px;
  text-transform: none;
}
.btn-2:hover {
  background-color: hsl(0deg, 0%, 10%);
  border-color: hsl(0deg, 0%, 10%);
  color: #fff;
}
.btn-2-white {
  background-color: transparent;
  color: #fff;
  border: 2px solid white;
  border-radius: 5px;
  text-transform: none;
}
.btn-2-white:hover {
  background-color: #fff;
  border-color: #fff;
  color: #fff;
}
.btn-2-white:hover {
  color: black;
}

/* Button Icon Text - .btn-icon-text
   --------------------------------------------- */
.btn-icon-text {
  display: flex;
  align-items: center;
  border-radius: 3px;
  background-color: black;
  color: #fff;
  width: auto;
  padding: 6px 12px;
}
.btn-icon-text:hover {
  color: #fff;
}
.btn-icon-text i {
  width: 30px;
  height: 30px;
  background-color: hsla(0deg, 0%, 100%, 0);
  border-radius: 50%;
  font-size: 18px;
  margin-right: 5px;
  margin-left: -5px;
}
.btn-icon-text i:hover,
.btn-icon-text i a:hover {
  text-decoration: none;
}

/* Genesis Widgets
 ============================================= */
/* Widget
 --------------------------------------------- */
.widget {
  margin-bottom: 40px;
}

.widget p:last-child,
.widget ul > li:last-of-type {
  margin-bottom: 0;
}

.widget ul > li {
  margin-bottom: 10px;
}

.widget ul > li:last-of-type {
  padding-bottom: 0;
}

.widget ol > li {
  list-style-position: inside;
  list-style-type: decimal;
  padding-left: 20px;
  text-indent: -20px;
}

.widget li li {
  border: 0;
  margin: 0 0 0 30px;
  padding: 0;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
}

/* Forms
  ============================================== */
/*
 ** Form Errors
 */
/*CONTACT FORM*/
:focus {
  outline: 0;
}

::placeholder {
  opacity: 0.5;
}

input:not([type=submit]):not([type=file]),
textarea {
  height: 38px;
  width: 100%;
  padding: 6px 10px;
  background-color: #fff;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box;
  color: #555;
}
@media only screen and (max-width: 670px) {
  input:not([type=submit]):not([type=file]),
textarea {
    font-size: 16px;
    line-height: 1.5;
  }
}

/* Removes awkward default styles on some inputs for iOS */
input:not([type=submit]):not([type=file]),
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input:not([type=submit]):not([type=file]):focus, input:not([type=submit]):not([type=file]):hover,
select:focus,
select:hover,
textarea:focus,
textarea:hover {
  background-color: #eaeaea;
  border: 1px solid #bbbbbb;
  outline: 0;
}
input:not([type=submit]):not([type=file]):focus,
select:focus,
textarea:focus {
  box-shadow: 0 0 0 2px #1d1616;
  border: 1px solid white;
}

input[type=checkbox],
input[type=radio] {
  display: inline;
}

form p {
  margin-bottom: 20px;
}
form label {
  font-weight: 700;
}
form textarea {
  min-height: 80px;
}
form input[type=file] {
  padding: 0.6em 0;
  background-color: transparent;
  border: 0;
}
form input[type=submit] {
  width: 100%;
}
form input[type=submit]:disabled {
  background: #f1f1f2;
  box-shadow: 0 0 0 0 #ccc;
}
form input[type=submit]:disabled:hover {
  top: 0;
}

/*WPCF7 SPECIFIC ERROR AND APPROVAL MESSAGES*/
.wpcf7 form .wpcf7-list-item {
  margin: 0;
}
.wpcf7 form .wpcf7-not-valid-tip {
  color: #fff;
  background-color: #cc4a4a;
  padding: 0.2em 0.6em;
  font-size: 1.2rem;
  font-weight: 700;
  border-radius: 0 0 5px 5px;
  text-align: center;
}
.wpcf7 form .wpcf7-response-output {
  position: relative;
  margin: 10px 0;
  padding: 0.5em 1em;
  border: 0 solid #cc4a4a;
  font-size: 1.4rem;
  line-height: 2.2rem;
  color: #fff;
  background-color: #cc4a4a;
  border-radius: 5px;
  font-weight: 600;
}
.wpcf7 form .wpcf7-response-output:before {
  font-weight: 700;
  left: 5px;
  top: calc(50% - 15px);
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  background-color: rgba(255, 255, 255, 0.3);
}
.wpcf7 form .wpcf7-acceptance-missing,
.wpcf7 form .wpcf7-validation-errors {
  padding-left: 40px;
}
.wpcf7 form .wpcf7-acceptance-missing:before,
.wpcf7 form .wpcf7-validation-errors:before {
  content: "\ea0a";
}
.wpcf7 form .wpcf7-mail-sent-ok {
  padding-left: 40px;
  background-color: green;
}
.wpcf7 form .wpcf7-mail-sent-ok:before {
  content: "\ea03";
}

/* Select Reset
   --------------------------------------------- */
select {
  display: block;
  font-size: 1.5rem;
  color: #555;
  line-height: 1.3;
  padding: 0.6em 1.4em 0.5em 0.8em;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #ccc;
  border-radius: 0.3em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat, repeat;
  background-position: right 0.7em top 50%, 0 0;
  background-size: 0.65em auto, 100%;
}
select::-ms-expand {
  display: none;
}
select:hover {
  border-color: #888;
}
select:focus {
  border-color: #aaa;
  box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
  box-shadow: 0 0 0 3px -moz-mac-focusring;
  color: #222;
  outline: none;
}
select option {
  font-weight: normal;
}

/* Checkbox Reset
 --------------------------------------------- */
input[type=checkbox] {
  display: none;
  position: absolute;
  -webkit-appearance: none;
}
input[type=checkbox] + * {
  position: relative;
  line-height: 1.5;
  display: inline;
}
input[type=checkbox] + * > * {
  float: left;
}
input[type=checkbox] + *:after, input[type=checkbox] + *:before {
  pointer-events: none;
  content: "";
}
input[type=checkbox] + *:before {
  display: inline-flex;
  height: 16px;
  min-width: 16px;
  width: 16px;
  border: solid 2px #ccc;
  background: #fff;
  margin-right: 10px;
}
input[type=checkbox] + *:after {
  position: absolute;
  height: 11px;
  width: 22px;
  top: 0;
  left: 0;
  border-bottom: solid 3px #999;
  border-left: solid 3px #999;
  background: none;
  transform: rotate(-45deg) scale(0);
  transform-origin: center center;
}
input[type=checkbox] + *:hover {
  opacity: 0.8;
}
input[type=checkbox]:checked + *:before {
  border-color: #f2f2f2;
  background-color: #f2f2f2;
}
input[type=checkbox]:checked + *:after {
  opacity: 1;
  transform: rotate(-45deg) scale(0.8);
  border-bottom: solid 4px #378376;
  border-left: solid 4px #378376;
}

fieldset {
  padding: 0;
  border-width: 0;
}

/* List style
 --------------------------------------------- */
.number-list, .post-single .entry-content > ol, .item-list, .post-single .entry-content > ul {
  margin-bottom: 24px;
}
.number-list li, .post-single .entry-content > ol li, .item-list li, .post-single .entry-content > ul li {
  margin-bottom: 12px;
  margin-left: 24px;
}
.number-list ol, .post-single .entry-content > ol ol, .item-list ol, .post-single .entry-content > ul ol,
.number-list ul,
.post-single .entry-content > ol ul,
.item-list ul,
.post-single .entry-content > ul ul {
  margin-bottom: 0;
}

.item-list > li, .post-single .entry-content > ul > li {
  list-style-type: disc;
}

.number-list > li, .post-single .entry-content > ol > li {
  list-style-type: decimal;
}

/* Entry Meta
 --------------------------------------------- */
.entry-footer .entry-meta {
  border-top: 1px solid #eee;
  padding-top: 20px;
}

.entry-comments-link::before {
  content: "—";
  margin: 0 6px 0 2px;
}

/* Pagination
 --------------------------------------------- */
.pagination {
  position: relative;
  margin: 60px 0;
}

.adjacent-entry-pagination {
  margin-bottom: 0;
}

.archive-pagination li {
  display: inline;
}

.archive-pagination li a {
  background-color: #f5f5f5;
  color: #333;
  cursor: pointer;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 4px;
  padding: 8px 12px;
  text-decoration: none;
}

.archive-pagination li a:focus,
.archive-pagination li a:hover,
.archive-pagination li.active a {
  background-color: #333;
  color: #fff;
}

/* Section Title
 --------------------------------------------- */
.section-title {
  margin-bottom: 20px;
}
.section-title.align-c {
  text-align: center;
  margin: 0 auto;
}
.section-title h4 {
  position: relative;
  color: hsl(0deg, 0%, 10%);
  font-family: "Arvo", serif;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.section-title h1,
.section-title h2,
.section-title h3 {
  text-transform: uppercase;
}
.section-title.tilt {
  transform: skewX(0deg) skewY(-6deg);
  line-height: 0.9;
}
.section-title.large h2 {
  font-size: 50px;
}
.section-title.indent {
  margin-left: -100px;
}

/* Divider
 --------------------------------------------- */
hr {
  border: 0;
}

hr.small, .entry-content hr.entry-meta {
  margin: 10px 0;
}

.divider-c, .divider {
  position: relative;
  margin: 15px 0;
  border-top: 1px solid hsl(0deg, 0%, 10%);
  width: 50px;
}

.divider-c {
  margin-left: auto;
}

.divider-graphic {
  border-top: 0;
  margin-top: 20px;
  margin-bottom: 20px;
  margin-right: auto;
  height: 10px;
  background: url("../../../static/graphic-divider.svg") no-repeat center/contain;
}

/* Image Card
 ---------------------------------------------
<figure class="img-card">
  <img src="">
  <figcaption></figcaption>
</figure>
*/
.img-card {
  position: relative;
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-end;
  overflow: hidden;
  z-index: 0;
  background-color: #000;
}
.img-card:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100px;
  z-index: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(to top, hsl(10deg, 10%, 10%) 0%, hsla(10deg, 10%, 10%, 0) 100%);
}
.img-card:hover img {
  transform: scale(1.05);
  opacity: 1;
}
.img-card img {
  transition: all 0.8s ease-in-out;
  width: 100%;
  object-fit: cover;
  opacity: 0.8;
}
.img-card figcaption {
  position: absolute;
  padding: 15px 20px;
  font-size: 1.76rem;
  line-height: 1.2;
  color: #fff;
  text-transform: uppercase;
  width: 100%;
  z-index: 1;
}

/* Logo Gallery
 ---------------------------------------------
<section class="logo-showcase">
  <header class="section-title align-c">
    <h2>Our Clients</h2>
    <hr class="divider-c">
    <p>Here are some of our our clients.</p>
  </header>

  <div class="logo-showcase-gallery">
    <img src="../../../static/logo-1.jpg">
  </div>
</section>
*/
.logo-feature-gallery {
  position: relative;
}
.logo-feature-gallery img {
  object-fit: contain;
  padding: 20px;
}

/* Image Banner
  ==========================================
  <section class="image-banner">
    <div class="container container-left">
      <h3>Title</h3>
      <p>Description</p>
      <a href="#" class="btn btn-3">Learn More</a>
    </div>
    <img src="/static/asd.jpg">
  </section>

  */
/* Banners
  ============================================== */
.hero-slider, .post-archive .archive-description, .entry-header,
.regular-banner {
  position: relative;
  width: 100%;
  z-index: 0;
  padding: 50px 5%;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}
.hero-slider img, .post-archive .archive-description img, .entry-header img,
.regular-banner img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  object-fit: cover;
}

/* Regular Banner
   --------------------------------------------- */
.post-archive .archive-description, .entry-header,
.regular-banner {
  height: auto;
  min-height: 250px;
  text-align: center;
}
.post-archive .archive-description > *, .entry-header > *,
.regular-banner > * {
  margin-bottom: 10px;
}
.post-archive .archive-description > *:last-child, .entry-header > *:last-child,
.regular-banner > *:last-child {
  margin-bottom: 0;
}
.post-archive .archive-description p, .entry-header p,
.regular-banner p {
  font-family: "Road Rage", sans-serif;
}
.post-archive .archive-description img, .entry-header img,
.regular-banner img {
  opacity: 0.8;
}

@media only screen and (min-width: 670px) {
  .entry-header,
.regular-banner {
    padding-top: 120px;
  }
}

/* Giant Banner
 --------------------------------------------- */
/* Hero Slider
 ============================================= */
/* Giant Banner Slider */
.hero-slider {
  padding: 0;
  overflow: hidden;
  height: auto;
}
@media only screen and (min-width: 670px) {
  .hero-slider {
    max-height: 720px;
    height: 100vh;
  }
}

@media only screen and (min-width: 670px) {
  .hero-slider--short {
    max-height: 500px;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slider--short .hero-slide {
    height: 500px;
  }
}
@media only screen and (min-width: 960px) {
  .hero-slider--short .hero-slide {
    max-height: 500px;
    height: 100vh;
  }
}

/* Giant Banner Slide */
.hero-slide {
  position: relative;
  height: auto;
  width: 100%;
  /* Generic Figcaption Styles */
  /* Caption Positions */
  /* Dark font styles */
}
@media only screen and (max-width: 670px) {
  .hero-slide {
    background-color: #000;
    display: flex;
    flex-direction: column;
    background-image: none !important;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slide {
    min-height: 500px;
    background: #555 no-repeat center/cover;
    background-blend-mode: multiply;
  }
}
.hero-slide figcaption {
  position: absolute;
  height: auto;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: flex-start;
  z-index: 0;
  width: 100%;
  background-color: hsla(107deg, 23%, 10%, 0.3);
}
@media only screen and (max-width: 670px) {
  .hero-slide figcaption {
    padding: 20px 0%;
    text-align: center;
    align-items: center;
    margin: 0;
    background-color: hsla(0deg, 0%, 0%, 0.8);
    bottom: 0;
    overflow: hidden;
  }
  .hero-slide figcaption br {
    display: none;
  }
  .hero-slide figcaption p {
    margin-bottom: 10px !important;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slide figcaption {
    position: absolute;
  }
}
.hero-slide figcaption h2 {
  font-size: 4.8rem;
  color: black;
  font-weight: 700;
}
.hero-slide figcaption h4 {
  font-family: "Road Rage", sans-serif;
  font-size: 1.3rem;
  color: black;
  font-weight: 700;
  margin-bottom: 0;
}
.hero-slide img {
  position: relative;
}
@media only screen and (max-width: 670px) {
  .hero-slide img {
    height: 100vw;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slide img {
    object-fit: contain;
  }
}
.hero-slide--left:before {
  left: 0;
}
.hero-slide--left.hero-slide--light:before {
  background: linear-gradient(to right, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
}
.hero-slide--left.hero-slide--dark:before {
  background: linear-gradient(to right, hsl(0deg, 0%, 0%) 0%, hsla(0deg, 0%, 0%, 0) 100%);
}
@media only screen and (min-width: 670px) {
  .hero-slide--left figcaption {
    left: 5vw;
  }
}
@media only screen and (max-width: 670px) {
  .hero-slide--left img {
    object-position: right;
  }
}
.hero-slide--right:before {
  right: 0;
}
.hero-slide--right.hero-slide--light:before {
  background: linear-gradient(to left, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
}
.hero-slide--right.hero-slide--dark:before {
  background: linear-gradient(to left, hsl(0deg, 0%, 0%) 0%, hsla(0deg, 0%, 0%, 0) 100%);
}
@media only screen and (min-width: 670px) {
  .hero-slide--right figcaption {
    right: 5vw;
    text-align: right;
    align-items: flex-end;
  }
}
@media only screen and (max-width: 670px) {
  .hero-slide--right img {
    object-position: left;
  }
}
.hero-slide--center.hero-slide--light:before {
  background: linear-gradient(to bottom, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
}
.hero-slide--center.hero-slide--dark:before {
  background: linear-gradient(to bottom, hsl(0deg, 0%, 0%) 0%, hsla(0deg, 0%, 0%, 0) 100%);
}
.hero-slide--center figcaption {
  left: 0;
  text-align: center;
  align-items: center;
  justify-content: center;
  padding: 20px 0%;
}
@media only screen and (min-width: 670px) {
  .hero-slide--center figcaption {
    height: 100%;
    top: 0;
    padding: 0;
  }
}
.hero-slide--center img {
  object-position: center;
}
.hero-slide--top:before {
  top: 0;
}
.hero-slide--top.hero-slide--light:before {
  background: linear-gradient(to bottom, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
}
.hero-slide--top.hero-slide--dark:before {
  background: linear-gradient(to bottom, hsl(0deg, 0%, 0%) 0%, hsla(0deg, 0%, 0%, 0) 100%);
}
@media only screen and (min-width: 670px) {
  .hero-slide--top figcaption {
    top: 0;
  }
}
.hero-slide--top img {
  object-position: bottom;
}
.hero-slide--bottom:before {
  bottom: 0;
}
.hero-slide--bottom.hero-slide--light:before {
  background: linear-gradient(to top, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
}
.hero-slide--bottom.hero-slide--dark:before {
  background: linear-gradient(to top, hsl(0deg, 0%, 0%) 0%, hsla(0deg, 0%, 0%, 0) 100%);
}
@media only screen and (min-width: 670px) {
  .hero-slide--bottom figcaption {
    bottom: 0;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slide--dark figcaption * {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  }
  .hero-slide--dark figcaption h2 {
    color: #fff;
  }
  .hero-slide--dark figcaption h4 {
    color: #fff;
  }
  .hero-slide--dark figcaption p {
    color: #fff;
    font-weight: 700;
  }
}

/* Left and right figcaption*/
@media only screen and (min-width: 670px) {
  .hero-slide--left figcaption, .hero-slide--right figcaption {
    top: 50%;
    transform: translateY(-50%);
    width: 40%;
    max-width: 400px;
  }
  .hero-slide--top figcaption, .hero-slide--bottom figcaption {
    left: 0;
    height: 50%;
    padding: 0 20%;
    text-align: center;
    align-items: center;
    justify-content: center;
  }
}

.hero-slide--top:before, .hero-slide--bottom:before, .hero-slide--left:before, .hero-slide--right:before {
  position: absolute;
  mix-blend-mode: overlay;
  opacity: 0.5;
}
@media only screen and (min-width: 670px) {
  .hero-slide--top:before, .hero-slide--bottom:before, .hero-slide--left:before, .hero-slide--right:before {
    content: "";
  }
}
.hero-slide--left:before, .hero-slide--right:before {
  top: 0;
  width: 50%;
  height: 100%;
}
.hero-slide--top:before, .hero-slide--bottom:before {
  left: 0;
  width: 100%;
  height: 50%;
}

.hero-slide--center-special {
  position: relative;
  z-index: 0;
  background-color: black;
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-end;
}
.hero-slide--center-special:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -11;
}
@media only screen and (min-width: 960px) {
  .hero-slide--center-special:after {
    background-attachment: fixed;
  }
}
.hero-slide--center-special img {
  position: relative;
  top: auto;
  bottom: 0px;
  width: 90%;
  max-width: 800px;
  left: 50%;
  transform: translateX(-50%);
  height: auto;
  display: block;
  object-fit: contain;
}
@media only screen and (max-width: 670px) {
  .hero-slide--center-special img {
    height: 60vw;
    width: 120%;
  }
}
.hero-slide--center-special figcaption {
  position: relative;
  background: transparent;
  align-items: center;
  order: -1;
}
@media only screen and (max-width: 670px) {
  .hero-slide--center-special figcaption {
    background-color: transparent !important;
  }
}
.hero-slide--center-special figcaption:before {
  content: none;
}

/* Default Blocks */
.inline-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 5%;
}

.aligncenter .section-title {
  text-align: center;
}
.aligncenter .section-title hr {
  margin-left: auto;
  margin-right: auto;
}

/* Image Gallery */
.image-gallery-section {
  padding: 50px 5%;
}
@media only screen and (min-width: 670px) {
  .image-gallery-section {
    padding: 50px;
  }
}

.image-gallery-list {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  padding: 3px;
}
.image-gallery-list li {
  position: relative;
  flex: 1 1 0;
  height: 300px;
  min-width: 300px;
}
.image-gallery-list img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 3px;
  object-fit: cover;
}

/* LR Layout */
.lr-layout {
  width: 100%;
  min-height: 400px;
}
@media only screen and (min-width: 960px) {
  .lr-layout {
    background-attachment: fixed;
  }
}
@media only screen and (min-width: 960px) {
  .lr-layout:nth-of-type(even) .inline-wrap {
    flex-flow: row-reverse wrap;
  }
  .lr-layout:nth-of-type(even) figure:after {
    right: 0;
  }
  .lr-layout:nth-of-type(even) figure:before {
    right: 0;
  }
}
.lr-layout .inline-wrap {
  position: relative;
  display: flex;
  flex-flow: row wrap;
}
.lr-layout .inline-wrap > * {
  width: 100%;
  margin-bottom: 0px;
}
@media only screen and (min-width: 670px) {
  .lr-layout .inline-wrap > * {
    width: calc((100% - (0px * (2 - 1))) / 2);
    margin-right: 0px;
  }
  .lr-layout .inline-wrap > *:nth-child(2n) {
    margin-right: 0;
  }
}
.lr-layout figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  z-index: 0;
  height: 90vw;
}
@media only screen and (min-width: 670px) {
  .lr-layout figure {
    height: 70vh;
  }
}
@media only screen and (min-width: 960px) {
  .lr-layout figure {
    height: 50vw;
    max-height: 70vh;
    align-self: stretch;
  }
}
@media only screen and (min-width: 670px) {
  .lr-layout figure:after {
    content: "";
    position: absolute;
    background-color: #ffefdd;
    opacity: 0.7;
    width: 25vw;
    max-width: 50%;
    height: calc(50vw + 60px);
    z-index: -1;
  }
}
.lr-layout figure.feature-active:before {
  max-width: 0;
}
.lr-layout figure:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  transition: all 1s ease-in-out;
  background-color: #fff;
  z-index: 2;
  max-width: 100%;
}
.lr-layout figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  padding: 0;
}
@media only screen and (min-width: 960px) {
  .lr-layout figure img {
    padding: 60px;
  }
}
.lr-layout article {
  position: relative;
  padding: 30px 5%;
  width: 100%;
  z-index: 0;
}
@media only screen and (min-width: 670px) {
  .lr-layout article {
    width: 50%;
    text-align: center;
  }
}
@media only screen and (min-width: 960px) {
  .lr-layout article {
    padding: 50px 100px;
  }
}

.secondary-graphic-0 {
  position: absolute;
  z-index: -1;
  opacity: 0.3;
  width: 25vw;
  height: 25vw;
  object-fit: contain;
  object-position: center;
  left: calc(50% - 12.5vw);
  top: calc(50% - 12.5vw);
}

/* Ecommerce Highlights */
.attribute-highlights {
  background-color: hsl(0deg, 0%, 10%);
  padding: 60px 5% 50px;
}
@media only screen and (min-width: 960px) {
  .attribute-highlights {
    padding: 60px 10% 50px;
  }
}
.attribute-highlights .inline-wrap {
  display: flex;
  flex-flow: row wrap;
}
.attribute-highlights .inline-wrap > * {
  width: 100%;
  margin-bottom: 25px;
}
@media only screen and (min-width: 670px) {
  .attribute-highlights .inline-wrap > * {
    width: calc((100% - (25px * (4 - 1))) / 4);
    margin-right: 25px;
  }
  .attribute-highlights .inline-wrap > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 670px) {
  .attribute-highlights .inline-wrap > * {
    margin-bottom: 0;
  }
}
.attribute-highlights .icon-card img {
  filter: saturate(0) invert(1);
  opacity: 1;
}
.attribute-highlights .icon-card h4 {
  color: #fff;
}

/* Food Menu */
.dish-list {
  position: relative;
  max-width: 700px;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.dish-list:after {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  left: 50%;
  background-color: #ffd09b;
}
.dish-list article {
  position: relative;
  display: flex;
  flex: 0 1 45%;
  margin-bottom: 25px;
}
.dish-list article p {
  line-height: 1.4;
  font-size: 1.4rem;
  margin-bottom: 0;
}
.dish-list article p span {
  display: block;
}
.dish-list article:hover {
  color: black;
  cursor: pointer;
}
.dish-list article:hover figure {
  display: flex;
}
.dish-list article figure {
  display: none;
  position: absolute;
  width: 100%;
  top: calc(100% + 5px);
  left: 0;
  flex-flow: column nowrap;
  background-color: #fff;
  z-index: 10;
  border-radius: 10px;
  overflow: hidden;
}
.dish-list article figure img {
  width: 100%;
  max-height: 250px;
  object-fit: cover;
}
.dish-list article figure figcaption {
  padding: 10px;
}

.dish-title {
  width: 100%;
  padding-right: 20px;
  font-weight: 700;
}
.dish-title span {
  font-weight: 400;
}

/* Product Feature */
.library-gallery {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  margin-top: 50px;
  /* State when not active */
}
@media only screen and (min-width: 670px) {
  .library-gallery {
    flex-flow: row nowrap;
  }
}
.library-gallery .single-product-feature figcaption {
  bottom: -300px;
}
.library-gallery .single-product-feature.active {
  position: relative;
  height: 500px;
  width: 100%;
}
.library-gallery .single-product-feature.active > img {
  transition: 0.6s;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}
.library-gallery .single-product-feature.active figcaption {
  position: absolute;
  transition: 0.6s;
  width: 100%;
  bottom: 0;
  top: auto;
  z-index: 1;
  padding: 25px;
  color: #fff;
  background: hsla(0deg, 0%, 0%, 0.5);
  margin: 0;
  text-align: left;
}
@media only screen and (min-width: 670px) {
  .library-gallery .single-product-feature.active figcaption {
    padding: 25px 50px;
  }
}
.library-gallery .single-product-feature.active figcaption h3 {
  color: #fff;
}
.library-gallery .single-product-feature.active figcaption p {
  transition: 0.3s;
  margin-bottom: 0;
  display: block;
}
.library-gallery .single-product-feature:not(.active) {
  align-items: stretch;
}
@media only screen and (max-width: 670px) {
  .library-gallery .single-product-feature:not(.active) {
    width: 100%;
  }
}
.library-gallery .single-product-feature:not(.active) img {
  max-width: 0;
  display: block;
}
.library-gallery .single-product-feature:not(.active) figcaption {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-end;
  background-color: hsl(0deg, 0%, 95%);
  bottom: auto;
  height: 100%;
  cursor: pointer;
  padding: 15px;
  margin: 0;
}
@media only screen and (max-width: 670px) {
  .library-gallery .single-product-feature:not(.active) figcaption {
    border-bottom: 1px solid hsl(0deg, 0%, 85%);
  }
}
@media only screen and (min-width: 670px) {
  .library-gallery .single-product-feature:not(.active) figcaption {
    padding: 30px 20px;
    border-left: 1px solid hsl(0deg, 0%, 85%);
  }
}
.library-gallery .single-product-feature:not(.active) figcaption:hover {
  background-color: hsl(0deg, 0%, 10%);
  border-left: 3px solid black;
}
.library-gallery .single-product-feature:not(.active) figcaption:hover h3 {
  color: #fff;
}
.library-gallery .single-product-feature:not(.active) h3 {
  margin: 0;
  font-family: "Arvo", serif;
  text-transform: uppercase;
  font-size: 1.7rem;
}
@media only screen and (min-width: 670px) {
  .library-gallery .single-product-feature:not(.active) h3 {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
  }
}
.library-gallery .single-product-feature:not(.active) p {
  display: none;
}

/* Contact 1 */
.contact-1 {
  margin: 80px 0;
}

.contact-details-wrapper {
  display: flex;
  flex-flow: row wrap;
  gap: 40px;
  justify-content: center;
  margin: 80px 0;
}
.contact-details-wrapper .contact-detail {
  flex: 1 1 200px;
  width: 200px;
  display: flex;
  gap: 10px;
}
.contact-details-wrapper .contact-detail i {
  color: #fff;
  min-width: 40px;
  width: 40px;
  height: 40px;
  font-size: 17px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: hsl(0deg, 0%, 10%);
}
.contact-details-wrapper .contact-detail .contact-detail-caption b {
  display: block;
}

.contact-1_mapembed {
  position: relative;
  margin: 50px 0 150px;
  display: block;
}
.contact-1_mapembed:after {
  content: "";
  position: absolute;
  height: 75%;
  bottom: -25%;
  background-color: #ffe8ce;
  z-index: -1;
  border-top: 1px solid #ffd09b;
  border-bottom: 1px solid #ffd09b;
}

.post-archive {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0 auto;
}
.post-archive > * {
  margin-bottom: 50px;
}
.post-archive > *:last-child {
  margin-bottom: 0;
}
.post-archive .post-entry-list {
  padding: 0 5%;
  width: 100%;
}
@media only screen and (min-width: 670px) {
  .post-archive .post-entry-list {
    padding: 0;
    flex: 3 1 0;
    margin-left: 5%;
    margin-right: 50px;
    max-width: 650px;
  }
}
.post-archive .sidebar {
  padding: 0 5%;
  width: 100%;
}
@media only screen and (min-width: 670px) {
  .post-archive .sidebar {
    padding: 0;
    flex: 1 1 0;
    margin-right: 5%;
    max-width: 280px;
  }
}

.post-entry-list > * {
  margin-bottom: 30px;
}
.post-entry-list > *:last-child {
  margin-bottom: 0;
}
.post-entry-list .entry-content {
  display: flex;
  flex-flow: row wrap;
}
.post-entry-list .entry-content > * {
  width: 100%;
  margin-bottom: 15px;
}
@media only screen and (min-width: 670px) {
  .post-entry-list .entry-content > * {
    width: calc((100% - (15px * (2 - 1))) / 2);
    margin-right: 15px;
  }
  .post-entry-list .entry-content > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 670px) {
  .post-entry-list .entry-content > *:nth-child(1) {
    flex: 2 1 0;
  }
  .post-entry-list .entry-content > *:nth-child(2) {
    flex: 3 1 0;
  }
}
.post-entry-list h3 {
  margin: 10px 0;
}
.post-entry-list p {
  line-height: 1.5;
}
.post-entry-list .category-link {
  padding: 2px 6px;
}
.post-entry-list .entry-content__thumbnail-link {
  position: relative;
  min-height: 170px;
}
.post-entry-list .entry-content__thumbnail-link img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
}

/* Structure of single post*/
.post-single .entry {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0 auto;
}
.post-single .entry > * {
  margin-bottom: 50px;
}
.post-single .entry > *:last-child {
  margin-bottom: 0;
}
.post-single .has-post-thumbnail .entry-header {
  background: hsl(0deg, 0%, 10%);
}
.post-single .has-post-thumbnail .entry-header img {
  opacity: 0.7;
  mix-blend-mode: multiply;
}
.post-single .entry-content {
  padding: 0 5%;
  width: 100%;
}
@media only screen and (min-width: 670px) {
  .post-single .entry-content {
    padding: 0;
    flex: 3 1 0;
    margin-left: 5%;
    margin-right: 50px;
    max-width: 650px;
  }
}
.post-single .sidebar {
  padding: 0 5%;
  width: 100%;
}
@media only screen and (min-width: 670px) {
  .post-single .sidebar {
    padding: 0;
    flex: 1 1 0;
    margin-right: 5%;
    max-width: 280px;
  }
}

/* Primary sidebar only */
.sidebar-primary .widget-title {
  border-bottom: 4px solid hsl(0deg, 0%, 85%);
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.entry-content .entry-meta {
  color: hsl(0deg, 0%, 70%);
}

/* Single Page Content
  ========================================== */
/* Ecommerce Highlights */
.ecommerce-highlights {
  display: flex;
  flex-flow: row wrap;
  background-color: hsl(0deg, 0%, 10%);
  padding: 60px 5% 50px;
}
.ecommerce-highlights > * {
  width: 100%;
  margin-bottom: 15px;
}
@media only screen and (min-width: 670px) {
  .ecommerce-highlights > * {
    width: calc((100% - (15px * (4 - 1))) / 4);
    margin-right: 15px;
  }
  .ecommerce-highlights > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 960px) {
  .ecommerce-highlights {
    padding: 60px 10% 50px;
  }
}
@media only screen and (min-width: 670px) {
  .ecommerce-highlights > * {
    margin-bottom: 0;
  }
}
.ecommerce-highlights .icon-card img {
  filter: saturate(0) invert(1);
  opacity: 1;
}
.ecommerce-highlights .icon-card h4 {
  color: #fff;
}

.icon-card {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
}
.icon-card > figure {
  position: relative;
  width: 100%;
  padding-top: 40px;
}
.icon-card > figure > img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
}
.icon-card .caption {
  flex: 1 1 0;
  position: relative;
  padding: 10px;
  background-color: #fff;
}
@media only screen and (min-width: 670px) {
  .icon-card {
    flex-flow: column nowrap;
  }
}
@media only screen and (min-width: 960px) {
  .icon-card {
    flex-flow: row wrap;
  }
}
.icon-card img {
  width: 40px;
  height: 40px;
  opacity: 0.6;
  margin-right: 10px;
}
.icon-card h4 {
  text-transform: uppercase;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0;
  color: black;
}
@media only screen and (min-width: 670px) {
  .icon-card h4 {
    text-align: center;
  }
}
@media only screen and (min-width: 960px) {
  .icon-card h4 {
    text-align: left;
  }
}
.icon-card .caption {
  background: transparent;
}

/* Floating button */
.floating-whatsapp-button {
  width: 46px;
  height: 46px;
  background-color: #25d366;
  border-radius: 50%;
  font-size: 23px;
  position: fixed;
  font-weight: 400;
  right: 10px;
  bottom: 10px;
  z-index: 9999999;
  color: #fff;
  text-align: center;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  line-height: 46px;
}
.floating-whatsapp-button:hover,
.floating-whatsapp-button a:hover {
  text-decoration: none;
}

/* Swiper Button */
.swiper-button-next,
.swiper-button-prev {
  color: #fff;
}

@media only screen and (min-width: 670px) {
  .hero-slide--center figcaption,
.hero-slide--center-special figcaption {
    background-color: hsla(107deg, 23%, 10%, 0);
    text-align: center;
  }
}
.hero-slide--center figcaption p,
.hero-slide--center-special figcaption p {
  color: #fff;
}
.hero-slide--center figcaption h2,
.hero-slide--center-special figcaption h2 {
  line-height: 0.8;
}
@media only screen and (max-width: 670px) {
  .hero-slide--center figcaption h2,
.hero-slide--center-special figcaption h2 {
    color: #fff;
  }
}
@media only screen and (min-width: 960px) {
  .hero-slide--center figcaption h2,
.hero-slide--center-special figcaption h2 {
    font-size: 7rem;
  }
}
@media only screen and (min-width: 1400px) {
  .hero-slide--center figcaption h2,
.hero-slide--center-special figcaption h2 {
    font-size: 8rem;
  }
}
.hero-slide--center figcaption h2 br,
.hero-slide--center-special figcaption h2 br {
  display: block;
}

/* Instagram Gallery */
.ig-feature-gallery-wrapper {
  position: relative;
  background: hsl(0deg, 0%, 80%);
  z-index: 0;
}
.ig-feature-gallery-wrapper:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 960px) {
  .ig-feature-gallery-wrapper:after {
    background-attachment: fixed;
  }
}

.ig-feature-gallery {
  position: relative;
}
.ig-feature-gallery img {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 10px;
}
@media only screen and (min-width: 670px) {
  .ig-feature-gallery img {
    width: 250px;
    height: 250px;
  }
}

/* About Section */
.about-section {
  position: relative;
  min-height: 500px;
}
.about-section figure {
  position: relative;
  width: 50%;
  height: 500px;
  overflow: hidden;
}
.about-section figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
}

.about-content {
  position: absolute;
  background-color: hsl(0deg, 0%, 10%);
  color: #fff;
  min-height: 500px;
  height: 100%;
  z-index: 2;
  width: 50%;
  right: 0;
  top: 0;
  left: auto;
  padding: 50px;
}
.about-content:after {
  content: "";
  z-index: -1;
  position: absolute;
  width: 130%;
  height: 100%;
  top: 0;
  left: -45px;
  background: url("../../../static/scene.svg") no-repeat center/cover;
  transform: skew(-10deg);
}
.about-content .section-title {
  width: auto;
  display: inline-block;
}
.about-content .section-title h2 {
  color: #e93550;
  margin-bottom: 0;
}
.about-content .section-title h4 {
  color: #378376;
  margin-bottom: 10px;
}
.about-content .section-title:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #f8a44e;
}

/* About section 2*/
.about-section-2 {
  position: relative;
  min-height: 500px;
  z-index: 0;
  background: url("../../../wp-content/uploads/Shopfront-Mockup.jpeg") no-repeat center/cover;
}
@media only screen and (min-width: 960px) {
  .about-section-2 {
    background-attachment: fixed;
  }
}
.about-section-2:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: hsla(0deg, 0%, 20%, 0.8);
}
.about-section-2 figure {
  position: relative;
  width: 50%;
  height: 500px;
  overflow: hidden;
}
.about-section-2 figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
}

.about-content-2 {
  position: relative;
  color: #fff;
  min-height: 500px;
  height: 100%;
  z-index: 2;
  top: 0;
  padding: 50px 5%;
}
@media only screen and (min-width: 670px) {
  .about-content-2 {
    position: relative;
    width: 50%;
    left: 25%;
    padding: 50px;
  }
}
.about-content-2 .section-title {
  width: auto;
  display: inline-block;
}
.about-content-2 .section-title h2 {
  color: #e93550;
  color: hsl(0deg, 0%, 100%);
  margin-bottom: 0;
}
.about-content-2 .section-title h4 {
  color: #378376;
  color: hsl(0deg, 0%, 100%);
  margin-bottom: 10px;
}

/* Promotions */
.homepage-promotions-feature {
  position: relative;
  background: hsl(0deg, 0%, 80%);
  z-index: 0;
}
.homepage-promotions-feature:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 960px) {
  .homepage-promotions-feature:after {
    background-attachment: fixed;
  }
}

.promotions-wrapper-inner {
  display: grid;
  gap: 30px;
  flex-flow: row wrap;
  margin-top: 30px;
}
@media only screen and (min-width: 670px) {
  .promotions-wrapper-inner {
    grid-template-columns: repeat(3, 1fr);
  }
}

.promotion {
  position: relative;
}
.promotion img {
  width: 100%;
  object-fit: cover;
  border-radius: 10px;
  aspect-ratio: 4/3;
}
.promotion .promotion__caption {
  margin-top: 20px;
}
.promotion .promotion__caption > * {
  margin-bottom: 10px;
}
.promotion .promotion__caption > *:last-child {
  margin-bottom: 0;
}

/* Menu Section */
.menu-section {
  background-color: black;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.menu-section:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -3;
}
@media only screen and (min-width: 960px) {
  .menu-section:after {
    background-attachment: fixed;
  }
}
.menu-section .inline-wrap {
  display: flex;
  gap: 30px;
  align-items: center;
  flex-flow: row wrap;
}
.menu-section .inline-wrap > * {
  flex: 1 1 100%;
}
@media only screen and (min-width: 670px) {
  .menu-section .inline-wrap > * {
    flex: 1 1 0;
  }
}
.menu-section .section-title {
  width: auto;
  display: inline-block;
}
.menu-section .section-title h2 {
  margin-bottom: 0;
  color: #e93550;
  color: hsl(0deg, 0%, 100%);
}
.menu-section .image-holder {
  position: relative;
  z-index: -1;
  display: flex;
  justify-content: center;
}
.menu-section .image-holder img {
  width: 250px;
  transform: scale(1.1);
}

.home-about-image--1 {
  transition: 0.1s ease-out;
  margin-top: 20px;
}
@media only screen and (min-width: 670px) {
  .home-about-image--1 {
    margin-top: 50px;
  }
}

.home-about-image--2 {
  transition: 0.1s ease-out;
  margin-top: -20px;
}
@media only screen and (min-width: 670px) {
  .home-about-image--2 {
    margin-top: -50px;
  }
}

/* SPECIAL BUTTON */
.btn-1 {
  overflow: hidden;
}
.btn-1:after {
  content: "";
  height: 100%;
  width: 0px;
  position: absolute;
  left: 0%;
  transform: translateX(-50%) skew(-10deg);
  top: 0;
  z-index: -1;
  background: hsl(0deg, 0%, 90%);
  opacity: 0;
  transition: 0.3s;
}
.btn-1:hover {
  background: black;
  transform: scale(1.05);
  color: #000 !important;
}
.btn-1:hover:after {
  left: 50%;
  width: 120%;
  opacity: 1;
}

/* Interior Page */
.interior-section {
  background-color: black;
  position: relative;
  z-index: 0;
  height: auto;
  overflow: hidden;
}
@media only screen and (min-width: 670px) {
  .interior-section {
    padding: 20px;
  }
}
.interior-section:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 960px) {
  .interior-section:after {
    background-attachment: fixed;
  }
}
.interior-section .inline-wrap {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
@media only screen and (max-width: 670px) {
  .interior-section .inline-wrap {
    flex-flow: row wrap;
    justify-content: center;
    padding-top: 20px;
  }
}
@media only screen and (min-width: 670px) {
  .interior-section .inline-wrap {
    gap: 40px;
  }
}
@media only screen and (min-width: 960px) {
  .interior-section .inline-wrap {
    gap: 80px;
  }
}
@media only screen and (min-width: 670px) {
  .interior-section .inline-wrap > * {
    flex: 1 1 0;
  }
}
.interior-section .interior-content {
  flex: 2 1 0;
  height: 500px;
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-start;
  justify-content: center;
}
@media only screen and (max-width: 670px) {
  .interior-section .interior-content {
    z-index: 2;
    background-color: hsla(0deg, 0%, 0%, 0.9);
    height: auto;
    padding: 30px;
    left: 0;
    bottom: 0;
    order: 2;
  }
}
.interior-section .intrior-images-column-1,
.interior-section .intrior-images-column-2 {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  gap: 10px;
  overflow: hidden;
  transition: 0.1s ease-out;
}
@media only screen and (max-width: 670px) {
  .interior-section .intrior-images-column-1,
.interior-section .intrior-images-column-2 {
    width: calc(50% - 20px);
  }
}
.interior-section .intrior-images-column-1 img,
.interior-section .intrior-images-column-2 img {
  width: 100%;
  height: 40vw;
  object-fit: cover;
  overflow: hidden;
  border-radius: 10px;
}
@media only screen and (min-width: 670px) {
  .interior-section .intrior-images-column-1 img,
.interior-section .intrior-images-column-2 img {
    width: 100%;
    height: 250px;
  }
}

.contact-details-wrapper-1 {
  padding: 60px 5%;
  position: relative;
  overflow: hidden;
  z-index: 0;
  margin: 0;
  background-color: black;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.contact-details-wrapper-1:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 670px) {
  .contact-details-wrapper-1 {
    padding: 100px 50px;
  }
}
.contact-details-wrapper-1:before {
  content: "";
  width: 400px;
  height: 400px;
  position: absolute;
  background: url("../../../static/radial.svg") no-repeat center/contain;
  z-index: -1;
  opacity: 0.1;
  left: -100px;
  top: calc(50% - 35vw);
  animation: rotating-animation 70s linear 0s infinite;
}
.contact-details-wrapper-1 aside > * {
  margin-bottom: 20px;
}
.contact-details-wrapper-1 aside > *:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 670px) {
  .contact-details-wrapper-1 aside {
    flex: 1 1 50%;
    width: 50%;
  }
}
.contact-details-wrapper-1 aside span {
  font-weight: 700;
}
.contact-details-wrapper-1 aside p i {
  color: #000;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #ffe8ce;
  margin-right: 5px;
}
.contact-details-wrapper-1 aside p i a {
  font-weight: 400;
}
.contact-details-wrapper-1 .inline-wrap {
  display: flex;
}
@media only screen and (max-width: 670px) {
  .contact-details-wrapper-1 .inline-wrap {
    gap: 30px;
  }
}
.contact-details-wrapper-1 .inline-wrap.cols-3 {
  gap: 0;
}
@media only screen and (max-width: 670px) {
  .contact-details-wrapper-1 .inline-wrap {
    flex-flow: column nowrap;
  }
}

@media only screen and (min-width: 670px) {
  .contact-details-form {
    padding: 0 60px;
    border-left: 1px solid #ffc482;
  }
}
.contact-details-form form label,
.contact-details-form form div,
.contact-details-form form p {
  color: #fff;
}

/* Homepage main section */
@keyframes rotating-animation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
hr.wp-block-separator {
  border-bottom: 0 !important;
}

.promotion-page .content {
  position: relative;
  background: hsl(0deg, 0%, 80%);
  z-index: 0;
}
.promotion-page .content:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 960px) {
  .promotion-page .content:after {
    background-attachment: fixed;
  }
}
.promotion-page .content .entry-content {
  margin: 50px auto;
  padding: 0 5%;
  max-width: 1400px;
}

/* Single Page */
.single-page .content {
  position: relative;
  background: hsl(0deg, 0%, 80%);
  z-index: 0;
}
.single-page .content:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/collage.jpg") no-repeat center/cover;
  opacity: 0.8;
  z-index: -1;
}
@media only screen and (min-width: 960px) {
  .single-page .content:after {
    background-attachment: fixed;
  }
}
.single-page .content .entry-content {
  margin: 50px auto;
  padding: 0 5%;
  max-width: 960px;
}
.single-page .content form label {
  color: #fff;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJhYnN0cmFjdHMvX3BsYWNlaG9sZGVycy5zY3NzIiwidmVuZG9ycy9fc2xpY2suc2NzcyIsInZlbmRvcnMvX3NsaWNrLXRoZW1lLnNjc3MiLCJ2ZW5kb3JzL19mZWF0aGVybGlnaHQuc2NzcyIsImZvbnRzL251Y2xlby5zY3NzIiwiZm9udHMvX3ZhcmlhYmxlcy5zY3NzIiwiZm9udHMvX21peGlucy5zY3NzIiwiZm9udHMvaWNvbnMuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19kZWZhdWx0cy5zY3NzIiwiYmFzZS9fYW5pbWF0aW9ucy5zY3NzIiwibGF5b3V0L19ncmlkLnNjc3MiLCJsYXlvdXQvX2dzLXN0cnVjdHVyZS1sYXlvdXQuc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJsYXlvdXQvX3NpZGViYXIuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19ncmFwaGljcy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fd2lkZ2V0LnNjc3MiLCJjb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9fbGlzdC1wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL190aXRsZS1kaXZpZGVyLnNjc3MiLCJjb21wb25lbnRzL19vYmplY3RzLnNjc3MiLCJjb21wb25lbnRzL19iYW5uZXJzLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLXNsaWRlci5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2tzLnNjc3MiLCJwYWdlcy9fcG9zdC1hcmNoaXZlLnNjc3MiLCJwYWdlcy9fcG9zdC1zaW5nbGUuc2NzcyIsInRoZW1lcy9raG9vemguc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBp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QUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7RUFJRTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7RUFDRTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFO0FBQ0E7RUFDQTtBQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtBQUFBO0VBRUU7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUE7RUFDRTtBQUNBO0VBQ0E7QUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7QUFJQTtFQUNFO0FBQ0E7RUFDQTtBQUNBOzs7QUFFRjtBQUFBO0FBRUE7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBRUY7QUFBQTtBQUVBO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFFQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7O0FDN1RGO0FBQUE7QUFFQTtFQUNFO0FBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FYV0E7RVdoQkY7SUFPSTs7OztBQUdKO0FBQ0E7RUFDRTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQSxhWmZVO0VZZ0JWO0VBQ0E7RUFDQSxhWmZVO0VZZ0JWO0VBQ0Q7RUFDQTs7O0FBR0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVFFOzs7QUFHRjtBQUFBO0VB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NHRCRTtFQUNBO0VBQ0E7O0EvQjN3QkY7RStCc3dCQTtJQVFJOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQSxXL0JseUJZOztBK0JxeUJkO0VBQ0UiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG5cdFRoZW1lIE5hbWU6IFNhbmNob3MgVGhlbWVcblx0VGhlbWUgVVJJOlxuXHREZXNjcmlwdGlvbjogVGhpcyBpcyB0aGUgdGhlbWUgY3JlYXRlZCBmb3IgU2FuY2hvc1xuXHRBdXRob3I6IEtob296aFxuXHRBdXRob3IgVVJJOlxuXG5cdFZlcnNpb246IDEuMC4wXG5cblx0VGFnczogb25lLWNvbHVtbiwgdHdvLWNvbHVtbnMsIGxlZnQtc2lkZWJhciwgcmlnaHQtc2lkZWJhciwgYWNjZXNzaWJpbGl0eS1yZWFkeSwgY3VzdG9tLWNvbG9ycywgY3VzdG9tLWxvZ28sIGN1c3RvbS1tZW51LCBmZWF0dXJlZC1pbWFnZXMsIGZvb3Rlci13aWRnZXRzLCBmdWxsLXdpZHRoLXRlbXBsYXRlLCBydGwtbGFuZ3VhZ2Utc3VwcG9ydCwgc3RpY2t5LXBvc3QsIHRoZW1lLW9wdGlvbnMsIHRocmVhZGVkLWNvbW1lbnRzLCB0cmFuc2xhdGlvbi1yZWFkeVxuXG5cdFRlbXBsYXRlOiBnZW5lc2lzXG5cblx0TGljZW5zZTogR1BMLTIuMCtcblx0TGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcbiovXG4vKiBUYWJsZSBvZiBDb250ZW50c1xuc2Fzcy9cbnxcbnwtIGFic3RyYWN0cy9cbnwgICB8LSBfdmFyaWFibGVzLnNjc3MgICAgIyBTYXNzIFZhcmlhYmxlc1xufCAgIHwtIF9mdW5jdGlvbnMuc2NzcyAgICAjIFNhc3MgRnVuY3Rpb25zXG58ICAgfC0gX21peGlucy5zY3NzICAgICAgICMgU2FzcyBNaXhpbnNcbnwgICB8LSBfcGxhY2Vob2xkZXJzLnNjc3MgIyBTYXNzIFBsYWNlaG9sZGVyc1xufFxufC0gZm9udHMvXG58ICAgfC0gX251Y2xlby5zY3NzICAgICAgICMgSWNvbiBQYWNrXG58XG584oCTIGJhc2UvXG58ICAgfC0gX3Jlc2V0LnNjc3MgICAgICAgICMgUmVzZXQvbm9ybWFsaXplXG58ICAgfC0gX3R5cG9ncmFwaHkuc2NzcyAgICMgVHlwb2dyYXBoeSBydWxlc1xufCAgIHwtIF9kZWZhdWx0cy5zY3NzICAgICAjIEdlbmVzaXMgRGVmYXVsdHNcbnwgICB8LSBfYW5pbWF0aW9ucy5zY3NzICAgIyBBbmltYXRpb25zXG58XG584oCTIGNvbXBvbmVudHMvXG58ICAgfC0gX2dyYXBoaWNzLnNjc3MgICAgICAgICAgICAjIEdyYXBoaWNzXG58ICAgfC0gX2J1dHRvbnMuc2NzcyAgICAgICAgICAgICAjIEJ1dHRvbnNcbnwgICB8LSBfd2lkZ2V0LnNjc3MgICAgICAgICAgICAgICMgR2VuZXNpcyBEZWZhdWx0IFdpZGdldCBhbmQgUGx1Z2luc1xufCAgIHwtIF9mb3Jtcy5zY3NzICAgICAgICAgICAgICAgIyBGb3Jtc1xufCAgIHwtIF9saXN0LXBhZ2luYXRpb24uc2NzcyAgICAgIyBMaXN0IGFuZCBwYWdpbmF0aW9uXG58ICAgfC0gLXRpdGxlLWRpdmlkZXIuc2NzcyAgICAgICAjIFRpdGxlIGFuZCBkaXZpZGVyc1xufCAgIHwtIF9vYmplY3RzLnNjc3MgICAgICAgICAgICAgIyBDdXN0b21pc2VkIG9iamVjdHNcbnwgICB8LSBfYmFubmVycy5zY3NzICAgICAgICAgICAgICMgQmFubmVyc1xufCAgIHwtIF9oZXJvLXNsaWRlci5zY3NzICAgICAgICAgIyBIZXJvIFNsaWRlclxufCAgIHwtIF9ibG9ja3Muc2NzcyAgICAgICAgICAgICAgIyBCbG9ja3NcbnxcbnzigJMgbGF5b3V0L1xufCAgIHwtIF9ncmlkLnNjc3MgICAgICAgICAjIEdyaWRcbnwgICB8LSBfZ3Mtc3RydWN0dXJlLWxheW91dC5zY3NzICMgR2VuZXNpcyBkZWZhdWx0IHN0cnVjdHVyZSBhbmQgbGF5b3V0XG58ICAgfC0gX2hlYWRlci5zY3NzICAgICAgICMgSGVhZGVyXG58ICAgfC0gX3NpZGViYXIuc2NzcyAgICAgICMgU2lkZWJhclxufCAgIHwtIF9mb290ZXIuc2NzcyAgICAgICAjIEZvb3RlclxufFxufOKAkyBwYWdlcy9cbnwgICB8LSBfcG9zdC1hcmNoaXZlLnNjc3MgICAgICAgICMgUG9zdCBhcmNoaXZlIHN0eWxlc1xufCAgIHwtIF9wb3N0LXNpbmdsZS5zY3NzICAgICAgICAgIyBTaW5nbGUgUG9zdCBTdHlsZXNcbnxcbnzigJMgdGhlbWVzL1xufCAgIHwtIF9raG9vemguc2NzcyAgICAgICAjIERlZmF1bHQgdGhlbWVcbnwgICB8LSBfd29vY29tbWVyY2Uuc2NzcyAgIyBXb29jb21tZXJjZSBTdHlsZXNcbnxcbnzigJMgdmVuZG9ycy9cbnwgICB8LSBfc2xpY2suc2NzcyAgICAgICAgIyBTbGljayBTbGlkZXJcbnwgICB8LSBfc2xpY2stdGhlbWUuc2NzcyAgIyBTbGljayBTbGlkZXIgVGhlbWVcbnwgICB8LSBfZmVhdGhlcmxpZ2h0LnNjc3MgIyBGZWF0aGVybGlnaHQgR2FsbGVyeVxufFxufC0gbWFpbi5zY3NzICAgICAgICAgICAgICAjIE1haW4gU2FzcyBmaWxlXG4qL1xuXG5AaW1wb3J0ICdhYnN0cmFjdHMvdmFyaWFibGVzJztcbkBpbXBvcnQgJ2Fic3RyYWN0cy9taXhpbnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdhYnN0cmFjdHMvcGxhY2Vob2xkZXJzJztcblxuQGltcG9ydCAndmVuZG9ycy9zbGljayc7XG5AaW1wb3J0ICd2ZW5kb3JzL3NsaWNrLXRoZW1lJztcbkBpbXBvcnQgJ3ZlbmRvcnMvZmVhdGhlcmxpZ2h0JztcblxuQGltcG9ydCAnZm9udHMvbnVjbGVvJztcblxuQGltcG9ydCAnYmFzZS9yZXNldCc7XG5AaW1wb3J0ICdiYXNlL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnYmFzZS9kZWZhdWx0cyc7XG5AaW1wb3J0ICdiYXNlL2FuaW1hdGlvbnMnO1xuXG5AaW1wb3J0ICdsYXlvdXQvZ3JpZCc7XG5AaW1wb3J0ICdsYXlvdXQvZ3Mtc3RydWN0dXJlLWxheW91dCc7XG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyJztcbkBpbXBvcnQgJ2xheW91dC9zaWRlYmFyJztcbkBpbXBvcnQgJ2xheW91dC9mb290ZXInO1xuXG5AaW1wb3J0ICdjb21wb25lbnRzL2dyYXBoaWNzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3dpZGdldCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGlzdC1wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtZGl2aWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29iamVjdHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9iYW5uZXJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVyby1zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9ibG9ja3MnO1xuXG5AaW1wb3J0ICdwYWdlcy9wb3N0LWFyY2hpdmUnO1xuQGltcG9ydCAncGFnZXMvcG9zdC1zaW5nbGUnO1xuLy8gQGltcG9ydCAncGFnZXMvY29udGFjdCc7XG5cbkBpbXBvcnQgJ3RoZW1lcy9raG9vemgnO1xuLy8gQGltcG9ydCAndGhlbWVzL3dvb2NvbW1lcmNlJztcbiIsIi8qIFZhcmlhYmxlc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogQm9keSBUZXh0IFN0eWxlcyAqL1xuJGJhc2UtZm9udC1zaXplOiAxLjZyZW07XG4kc3VidGl0bGUtZm9udDogJ2ZlbHRfdGlwX3dvbWFucmVndWxhcicsIHNhbnMtc2VyaWY7XG4kdGl0bGUtZm9udDogJ2ZlbHRfdGlwX3dvbWFucmVndWxhcicsIHNhbnMtc2VyaWY7XG4kbWFpbi1mb250OiAnQXJ2bycsIHNlcmlmO1xuLyogRm9udCBXZWlnaHQgKi9cbiRmb250LWxpZ2h0OiAyMDA7XG4kZm9udC1ub3JtOiA0MDA7XG4kZm9udC1ib2xkOiA3MDA7XG4vKiBDb2xvcnMgKi9cbiRtYWluLWNvbG9yOiBoc2woMCwgMCUsIDEwJSk7XG4kZGFyay1jb2xvcjogaHNsKDAsIDAlLCAxMCUpO1xuJGRhcmstY29sb3ItMjogIzA4MzE0YjtcbiRvZmYtd2hpdGU6ICNmZmU4Y2U7XG4kcmVkOiAjZTkzNTUwO1xuJG9yYW5nZTogI2ZmNWIzNjtcbiRncmVlbjogIzM3ODM3NjtcbiRibHVlOiAjMzY5O1xuJHllbGxvdzogI2Y4YTQ0ZTtcbiRncmV5OiBoc2woMCwgMCUsIDUwJSk7IC8vaW5wdXRzIHRoYXQgYXJlIG5vdCBzdWJtaXQgYW5kIGJ1dHRvblxuLyogRXRjLiAqL1xuJGlucHV0LWZpZWxkczogJ2lucHV0Om5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSknO1xuLyogQmFja2dyb3VuZCBwYXR0ZXJuIGltYWdlIGxpbmsqL1xuJHBhdHRlcm4tMS1saW5rOiB1cmwoXCIuLi8uLi8uLi9zdGF0aWMvY29sbGFnZS5qcGdcIik7XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnZmVsdF90aXBfd29tYW5yZWd1bGFyJztcbiAgICBzcmM6IHVybCgnLi4vLi4vLi4vZm9udHMvZmVsdF90aXBfd29tYW4td2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi8uLi8uLi9mb250cy9mZWx0X3RpcF93b21hbi13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn0iLCIvKiBNaXhpbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIE1lZGlhIFF1ZXJpZXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiR0YWJsZXQtd2lkdGg6IDY3MHB4O1xuJGRlc2t0b3Atd2lkdGg6IDk2MHB4O1xuJGRlc2t0b3AteGwtd2lkdGg6IDE0MDBweDtcbkBtaXhpbiBtb2JpbGUge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICN7JHRhYmxldC13aWR0aH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIHRhYmxldCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skdGFibGV0LXdpZHRofSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gZGVza3RvcCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skZGVza3RvcC13aWR0aH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIGRlc2t0b3AteGwge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGRlc2t0b3AteGwtd2lkdGh9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8qIENvbnRhaW5lclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNvbnRhaW5lcigkcGFkZGluZywgJGJnLCAkYm9yZGVyLXJhZGl1cywgJGJvcmRlcikge1xuICBwYWRkaW5nOiAkcGFkZGluZyAoJHBhZGRpbmcgLyAyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB9XG59XG4vKiBJbWFnZSBBc3BlY3QgUmF0aW9cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiA8ZmlndXJlPiAvLyBBcHBseSBpbWFnZSByYXRpbyB0byBmaWd1cmVcbiAgIDxpbWcgc3JjPVwiXCIvPlxuIDwvZmlndXJlPlxuKi9cbkBtaXhpbiBpbWctcmF0aW8oJHdpZHRoLCAkcC10b3ApIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHdpZHRoO1xuICBwYWRkaW5nLXRvcDogJHAtdG9wO1xuXG4gID4gaW1nIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cbi8qIEFic29sdXRlXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi8qIEdyYWRpZW50IEZhZGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBncmFkaWVudC1mYWRlKCRoLCRzLCRsLCRkaXJlY3Rpb24pIHtcbiAgQGlmICRkaXJlY3Rpb24gPT0gYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBoc2xhKCRoLCRzLCRsLDEpIDAlLGhzbGEoJGgsJHMsJGwsMCkgMTAwJSk7XG4gIH0gQGVsc2VcbiAgaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgaHNsYSgkaCwkcywkbCwxKSAwJSxoc2xhKCRoLCRzLCRsLDApIDEwMCUpO1xuICB9IEBlbHNlXG4gIGlmICRkaXJlY3Rpb24gPT0gdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBoc2xhKCRoLCRzLCRsLDEpIDAlLGhzbGEoJGgsJHMsJGwsMCkgMTAwJSk7XG4gIH0gQGVsc2VcbiAgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBoc2xhKCRoLCRzLCRsLDEpIDAlLGhzbGEoJGgsJHMsJGwsMCkgMTAwJSk7XG4gIH1cbn1cbi8qIEJhZGdlIC8gVGFnIGxhYmVsXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gdGFnLWxhYmVsKCRiZywgJHNpemUpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICBAaWYgJHNpemUgPT0gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiAzcHggOHB4O1xuICB9XG4gIEBpZiAkc2l6ZSA9PSBtZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgfVxuICBAaWYgJHNpemUgPT0gbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICB9XG59XG4vKiBJY29uc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDFlbS8xICdiYXNlaWNvbic7XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuQG1peGluIGljb24oJHR5cGUpIHtcbiAgQGV4dGVuZCAlaWNvbjtcbiAgY29udGVudDogJHR5cGU7XG59XG4vKiBDaXJjbGUgT2JqZWN0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY2lyY2xlLW9iamVjdCgkZGlhbWV0ZXIsICRiZy1jb2xvciwgJGZvbnQtc2l6ZSkge1xuICBAZXh0ZW5kICVmbGV4Ym94LWMtYztcbiAgd2lkdGg6ICRkaWFtZXRlcjtcbiAgaGVpZ2h0OiAkZGlhbWV0ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgJjpob3ZlcixcbiAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4vKiBUaHVtYm5haWwgQ2FyZFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPGFydGljbGUgY2xhc3M9XCJ0aHVtYm5haWwtY2FyZFwiPlxuICA8ZmlndXJlPlxuICAgIDxpbWcgc3JjPVwiXCI+XG4gIDwvZmlndXJlPlxuICA8ZGl2IGNsYXNzPVwiY2FwdGlvblwiPlxuICAgIDxoND48L2g0PlxuICAgIDxwPjwvcD5cbiAgICA8YSBocmVmPVwiI1wiPjwvYT5cbiAgPC9kaXY+XG48L2FydGljbGU+XG4gKi9cbkBtaXhpbiB0aHVtYm5haWwtY2FyZCgkdGh1bWJXLCAkdGh1bWJILCAkY2FwdGlvbi1wb3MsICRwYWRkaW5nKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgQGlmICRjYXB0aW9uLXBvcyA9PSBib3R0b20ge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAgIC5jYXB0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gID4gZmlndXJlIHtcbiAgICBAaW5jbHVkZSBpbWctcmF0aW8oJHRodW1iVywgJHRodW1iSCk7XG4gIH1cblxuICAuY2FwdGlvbiB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbn1cbi8qIExpbmUgQm9yZGVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gbGluZS1ib3JkZXIoJHdpZHRoLCAkY29sb3IsICRkaXJlY3Rpb24sICRzcGFjZSkge1xuICBib3JkZXItI3skZGlyZWN0aW9ufTogJHdpZHRoIHNvbGlkICRjb2xvcjtcbiAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAkc3BhY2U7XG4gIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAkc3BhY2U7XG59XG4vKiBDaGlsZCBNYXJnaW5cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBjaGlsZC1tYXJnaW4oJGRpcmVjdGlvbiwgJHNwYWNlLCAkc2VsZWN0b3I6IG51bGwpIHtcbiAgQGlmICRzZWxlY3RvciA9PSBudWxsIHtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICRzcGFjZTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogJHNwYWNlO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIENsZWFyIEZpeFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICp6b29tOiAxO1xuXG4gICY6OmFmdGVyLFxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4lY2xlYXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLyogRnVuY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4iLCIvKiBQbGFjZWhvbGRlcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFdoaXRlIEdyYWRpZW50XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJXdoaXRlLWdyYWRpZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IDE7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLDAlLDEwMCUsdG9wKTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG4vKiBUcmFuc2l0aW9uc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJXRyYW5zaXRpb24tZHVyYXRpb24ge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi8qIEZsZXhib3hcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVmbGV4Ym94LWMtYyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIERlZmF1bHQgVmFyaWFibGVzXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcbiRzbGljay1mb250LXBhdGg6IFwiLi9qcy9wbHVnaW5zL3NsaWNrL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9qcy9wbHVnaW5zL3NsaWNrL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiAjZGRkICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXDIxOTBcIiAhZGVmYXVsdDtcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiAxMnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xuICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcbiAgfVxufVxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcbiAgfVxufVxuLyogU2xpZGVyICovXG4uc2xpY2stbGlzdCB7XG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICB9XG59XG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG4vKiBBcnJvd3MgKi9cbi5zbGljay1uZXh0LFxuLnNsaWNrLXByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHotaW5kZXg6IDI7XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IDE1cHg7XG5cbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMzVweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAxNXB4O1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cbi8qIERvdHMgKi9cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBidXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgQGV4dGVuZCAldHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEZlYXRoZXJsaWdodCDigJMgdWx0cmEgc2xpbSBqUXVlcnkgbGlnaHRib3hcbiAqIFZlcnNpb24gMS43LjEzIC0gaHR0cDovL25vZWxib3NzLmdpdGh1Yi5pby9mZWF0aGVybGlnaHQvXG4gKlxuICogQ29weXJpZ2h0IDIwMTgsIE5vw6tsIFJhb3VsIEJvc3NhcnQgKGh0dHA6Ly93d3cubm9lbGJvc3MuY29tKVxuICogTUlUIExpY2Vuc2VkLlxuKiovXG5cbmh0bWwud2l0aC1mZWF0aGVybGlnaHQge1xuXHQvKiBkaXNhYmxlIGdsb2JhbCBzY3JvbGxpbmcgd2hlbiBmZWF0aGVybGlnaHRzIGFyZSB2aXNpYmxlICovXG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mZWF0aGVybGlnaHQge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdC8qIGRpbWVuc2lvbnM6IHNwYW5uaW5nIHRoZSBiYWNrZ3JvdW5kIGZyb20gZWRnZSB0byBlZGdlICovXG5cdHBvc2l0aW9uOmZpeGVkO1xuXHR0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG5cdHotaW5kZXg6IDIxNDc0ODM2NDc7IC8qIHotaW5kZXggbmVlZHMgdG8gYmUgPj0gZWxlbWVudHMgb24gdGhlIHNpdGUuICovXG5cblx0LyogcG9zaXRpb246IGNlbnRlcmluZyBjb250ZW50ICovXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQvKiBpbnN1cmVzIHRoYXQgdGhlIDo6YmVmb3JlIHBzZXVkbyBlbGVtZW50IGRvZXNuJ3QgZm9yY2Ugd3JhcCB3aXRoIGZpeGVkIHdpZHRoIGNvbnRlbnQ7ICovXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0Lyogc3R5bGluZyAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJhY2tncm91bmQ6ICMzMzM7XG5cdC8qIElFOCBcImhhY2tcIiBmb3IgbmVzdGVkIGZlYXRoZXJsaWdodHMgKi9cblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLyogc3VwcG9ydCBmb3IgbmVzdGVkIGZlYXRoZXJsaWdodHMuIERvZXMgbm90IHdvcmsgaW4gSUU4ICh1c2UgSlMgdG8gZml4KSAqL1xuLmZlYXRoZXJsaWdodDpsYXN0LW9mLXR5cGUge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi5mZWF0aGVybGlnaHQ6YmVmb3JlIHtcblx0LyogcG9zaXRpb246IHRyaWNrIHRvIGNlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgKi9cblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0aGVpZ2h0OiAxMDAlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG5cdC8qIG1ha2UgY29udGVudCBjb250YWluZXIgZm9yIHBvc2l0aW9uZWQgZWxlbWVudHMgKGNsb3NlIGJ1dHRvbikgKi9cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cblx0dGV4dC1hbGlnbjogbGVmdDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdC8qIGRpbWVuc2lvbnM6IGN1dCBvZmYgaW1hZ2VzICovXG5cdG92ZXJmbG93OiBhdXRvO1xuXHRwYWRkaW5nOiAyNXB4IDI1cHggMDtcblx0Ym9yZGVyLWJvdHRvbTogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuXHQvKiBkaW1lbnNpb25zOiBoYW5kbGluZyBsYXJnZSBjb250ZW50ICovXG5cdG1hcmdpbi1sZWZ0OiA1JTtcblx0bWFyZ2luLXJpZ2h0OiA1JTtcblx0bWF4LWhlaWdodDogOTUlO1xuXG5cdC8qIHN0eWxpbmcgKi9cblx0Ly8gYmFja2dyb3VuZDogI2ZmZjtcblx0Y3Vyc29yOiBhdXRvO1xuXG5cdC8qIHJlc2V0IHdoaXRlLXNwYWNlIHdyYXBwaW5nICovXG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qIGNvbnRhaW5zIHRoZSBjb250ZW50ICovXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtaW5uZXIge1xuXHQvKiBtYWtlIHN1cmUgaXRzIHZpc2libGUgKi9cblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIGRvbid0IHNob3cgdGhlc2UgdGhvdWdoICovXG4uZmVhdGhlcmxpZ2h0IHNjcmlwdC5mZWF0aGVybGlnaHQtaW5uZXIsXG4uZmVhdGhlcmxpZ2h0IGxpbmsuZmVhdGhlcmxpZ2h0LWlubmVyLFxuLmZlYXRoZXJsaWdodCBzdHlsZS5mZWF0aGVybGlnaHQtaW5uZXIge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbiB7XG5cdC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiA5OTk5O1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXG5cdC8qIGRpbWVuc2lvbnM6IDI1cHggeCAyNXB4ICovXG5cdGxpbmUtaGVpZ2h0OiAyNXB4O1xuXHR3aWR0aDogMjVweDtcblx0aGVpZ2h0OiAyNXB4O1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cblx0Lyogc3R5bGluZyAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Zm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuXHRiYWNrZ3JvdW5kOiAjZmZmOyAvKiBTZXQgdGhlIGJhY2tncm91bmQgaW4gY2FzZSBpdCBvdmVybGFwcyB0aGUgY29udGVudCAqL1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG5cdGNvbG9yOiAjMDAwO1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qIFNlZSBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2MDc3MzQxL2hvdy10by1yZXNldC1hbGwtZGVmYXVsdC1zdHlsZXMtb2YtdGhlLWh0bWw1LWJ1dHRvbi1lbGVtZW50ICovXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWltYWdlIHtcblx0Lyogc3R5bGluZyAqL1xuXHR3aWR0aDogMTAwJTtcbn1cblxuXG4uZmVhdGhlcmxpZ2h0LWlmcmFtZSAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuXHQvKiByZW1vdmVkIHRoZSBib3JkZXIgZm9yIGltYWdlIGNyb3Bpbmcgc2luY2UgaWZyYW1lIGlzIGVkZ2UgdG8gZWRnZSAqL1xuXHRib3JkZXItYm90dG9tOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5mZWF0aGVybGlnaHQgaWZyYW1lIHtcblx0Lyogc3R5bGluZyAqL1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi5mZWF0aGVybGlnaHQgKiB7IC8qIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbm9lbGJvc3MvZmVhdGhlcmxpZ2h0L2lzc3Vlcy80MiAqL1xuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogaGFuZGxpbmcgcGhvbmVzIGFuZCBzbWFsbCBzY3JlZW5zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuXHQuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG5cdFx0LyogZGltZW5zaW9uczogbWF4aW1pemUgbGlnaHRib3ggd2l0aCBmb3Igc21hbGwgc2NyZWVucyAqL1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXgtaGVpZ2h0OiA5OCU7XG5cblx0XHRwYWRkaW5nOiAxMHB4IDEwcHggMDtcblx0XHRib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHR9XG59XG5cbi8qIGhpZGUgbm9uIGZlYXRoZXJsaWdodCBpdGVtcyB3aGVuIHByaW50aW5nICovXG5AbWVkaWEgcHJpbnQge1xuXHRodG1sLndpdGgtZmVhdGhlcmxpZ2h0ID4gKiA+IDpub3QoLmZlYXRoZXJsaWdodCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmJhc2VpY29uIFdlYiBGb250XG5HZW5lcmF0ZWQgdXNpbmcgbnVjbGVvYXBwLmNvbVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdiYXNlaWNvbic7XG4gIHNyYzogdXJsKCcjeyRpY29uLWZvbnQtcGF0aH0vYmFzZWljb24uZW90Jyk7XG4gIHNyYzogdXJsKCcjeyRpY29uLWZvbnQtcGF0aH0vYmFzZWljb24uZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skaWNvbi1mb250LXBhdGh9L2Jhc2VpY29uLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnI3skaWNvbi1mb250LXBhdGh9L2Jhc2VpY29uLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJyN7JGljb24tZm9udC1wYXRofS9iYXNlaWNvbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRpY29uLWZvbnQtcGF0aH0vYmFzZWljb24uc3ZnJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRiYXNlIGNsYXNzIGRlZmluaXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMWVtLzEgJ2Jhc2VpY29uJztcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGNoYW5nZSBpY29uIHNpemVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiByZWxhdGl2ZSB1bml0cyAqL1xuLmljb24tc20ge1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuLmljb24tbGcge1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuLyogYWJzb2x1dGUgdW5pdHMgKi9cbi5pY29uLTE2IHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuLmljb24tMzIge1xuICBmb250LXNpemU6IDMycHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhZGQgYSBzcXVhcmUvY2lyY2xlIGJhY2tncm91bmRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24tYmctc3F1YXJlLFxuLmljb24tYmctY2lyY2xlIHtcbiAgcGFkZGluZzogMC4zNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi1iYWNrZ3JvdW5kLWNvbG9yO1xufVxuXG4uaWNvbi1iZy1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHVzZSBpY29ucyBhcyBsaXN0IGl0ZW0gbWFya2Vyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLXVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG5cbiAgPiBsaSA+IC5pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRpY29uLWxpLW1hcmdpbi1yaWdodDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBzcGlubmluZyBpY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLWlzLXNwaW5uaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGljb24tc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG4gIC1tb3otYW5pbWF0aW9uOiBpY29uLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IGljb24tc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBpY29uLXNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBpY29uLXNwaW4ge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgaWNvbi1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgcm90YXRlZC9mbGlwcGVkIGljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24tcm90YXRlLTkwICB7XG5cdEBpbmNsdWRlIGljb24tcm90YXRlKDkwZGVnLCAxKTtcbn1cblxuLmljb24tcm90YXRlLTE4MCB7XG5cdEBpbmNsdWRlIGljb24tcm90YXRlKDE4MGRlZywgMik7XG59XG5cbi5pY29uLXJvdGF0ZS0yNzAge1xuXHRAaW5jbHVkZSBpY29uLXJvdGF0ZSgyNzBkZWcsIDMpO1xufVxuXG4uaWNvbi1mbGlwLXkge1xuXHRAaW5jbHVkZSBpY29uLWZsaXAoLTEsIDEsIDApO1xufVxuLmljb24tZmxpcC14IHtcblx0QGluY2x1ZGUgaWNvbi1mbGlwKDEsIC0xLCAyKTtcbn1cblxuQGltcG9ydCBcImljb25zXCI7XG4iLCIkaWNvbi1mb250LXBhdGg6ICAgICAgICBcImZvbnRzXCIgIWRlZmF1bHQ7XG4kaWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJGljb24tbGktbWFyZ2luLXJpZ2h0OiAgMC40ZW0gIWRlZmF1bHQ7XG4iLCJAbWl4aW4gaWNvbi1yb3RhdGUoJGRlZ3JlZXMsICRyb3RhdGlvbikge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBpY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249I3skcm90YXRpb259KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAtbW96LXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAtby10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICB0cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0aWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZ1bmN0aW9uIHVuaWNvZGUoJHN0cikge1xuICBAcmV0dXJuIHVucXVvdGUoXCJcXFwiXFxcXCN7JHN0cn1cXFwiXCIpO1xufVxuXG4kaWNvbi1hY2NvdW50OiB1bmljb2RlKGVhMDEpO1xuJGljb24tYmFnLTA5OiB1bmljb2RlKGVhMDIpO1xuJGljb24tY2hlY2tlZC1zeW1ib2w6IHVuaWNvZGUoZWEwMyk7XG4kaWNvbi1mYWNlYm9vay0xOiB1bmljb2RlKGVhMDQpO1xuJGljb24tZmFjZWJvb2stY2lyY2xlOiB1bmljb2RlKGVhMDUpO1xuJGljb24tZmFjZWJvb2s6IHVuaWNvZGUoZWEwNik7XG4kaWNvbi1mYXg6IHVuaWNvZGUoZWEwNyk7XG4kaWNvbi1pY19hY2Nlc3NfdGltZV80OHB4OiB1bmljb2RlKGVhMDgpO1xuJGljb24taWNfYXJyb3dfYmFja18zNnB4OiB1bmljb2RlKGVhMDkpO1xuJGljb24taWNfY2xvc2VfNDhweDogdW5pY29kZShlYTBhKTtcbiRpY29uLWljX21haWxfb3V0bGluZV80OHB4OiB1bmljb2RlKGVhMGIpO1xuJGljb24taW5zdGFncmFtOiB1bmljb2RlKGVhMGMpO1xuJGljb24tbG9jazogdW5pY29kZShlYTBkKTtcbiRpY29uLXBob25lLTItMjogdW5pY29kZShlYTBlKTtcbiRpY29uLXBob25lLTI6IHVuaWNvZGUoZWEwZik7XG4kaWNvbi1waW46IHVuaWNvZGUoZWExMCk7XG4kaWNvbi1wbGFjZWhvbGRlcjogdW5pY29kZShlYTExKTtcbiRpY29uLXBsdXM6IHVuaWNvZGUoZWExMik7XG4kaWNvbi1zaG9wcGluZy1jYXJ0OiB1bmljb2RlKGVhMTMpO1xuJGljb24tc2luZ2xlLTAxOiB1bmljb2RlKGVhMTQpO1xuJGljb24tc3RhcjogdW5pY29kZShlYTE1KTtcbiRpY29uLXdoYXRzYXBwLWxvZ286IHVuaWNvZGUoZWExNik7XG4kaWNvbi15b3V0dWJlOiB1bmljb2RlKGVhMTcpO1xuJGljb24tem9vbS0yOiB1bmljb2RlKGVhMTgpO1xuXG4uaWNvbi1hY2NvdW50OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1hY2NvdW50O1xufVxuXG4uaWNvbi1iYWctMDk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWJhZy0wOTtcbn1cblxuLmljb24tY2hlY2tlZC1zeW1ib2w6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWNoZWNrZWQtc3ltYm9sO1xufVxuXG4uaWNvbi1mYWNlYm9vay0xOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1mYWNlYm9vay0xO1xufVxuXG4uaWNvbi1mYWNlYm9vay1jaXJjbGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWZhY2Vib29rLWNpcmNsZTtcbn1cblxuLmljb24tZmFjZWJvb2s6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWZhY2Vib29rO1xufVxuXG4uaWNvbi1mYXg6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWZheDtcbn1cblxuLmljb24taWNfYWNjZXNzX3RpbWVfNDhweDo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24taWNfYWNjZXNzX3RpbWVfNDhweDtcbn1cblxuLmljb24taWNfYXJyb3dfYmFja18zNnB4OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1pY19hcnJvd19iYWNrXzM2cHg7XG59XG5cbi5pY29uLWljX2Nsb3NlXzQ4cHg6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWljX2Nsb3NlXzQ4cHg7XG59XG5cbi5pY29uLWljX21haWxfb3V0bGluZV80OHB4OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1pY19tYWlsX291dGxpbmVfNDhweDtcbn1cblxuLmljb24taW5zdGFncmFtOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1pbnN0YWdyYW07XG59XG5cbi5pY29uLWxvY2s6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWxvY2s7XG59XG5cbi5pY29uLXBob25lLTItMjo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tcGhvbmUtMi0yO1xufVxuXG4uaWNvbi1waG9uZS0yOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1waG9uZS0yO1xufVxuXG4uaWNvbi1waW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXBpbjtcbn1cblxuLmljb24tcGxhY2Vob2xkZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXBsYWNlaG9sZGVyO1xufVxuXG4uaWNvbi1wbHVzOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1wbHVzO1xufVxuXG4uaWNvbi1zaG9wcGluZy1jYXJ0OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1zaG9wcGluZy1jYXJ0O1xufVxuXG4uaWNvbi1zaW5nbGUtMDE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXNpbmdsZS0wMTtcbn1cblxuLmljb24tc3Rhcjo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tc3Rhcjtcbn1cblxuLmljb24td2hhdHNhcHAtbG9nbzo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24td2hhdHNhcHAtbG9nbztcbn1cblxuLmljb24teW91dHViZTo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24teW91dHViZTtcbn1cblxuLmljb24tem9vbS0yOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi16b29tLTI7XG59XG5cbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdLFxuYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3JpbmcsXG5idXR0b246LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovXG59XG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xufVxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogQm94IFNpemluZ1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOjphZnRlcixcbio6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG4iLCIvKiBUeXBvZ3JhcGhpY2FsIEVsZW1lbnRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5odG1sIHtcbiAgZm9udC1zaXplOiA1NiU7XG4gIC8qIDEwcHggYnJvd3NlciBkZWZhdWx0ICovXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgZm9udC1zaXplOiA2Mi41JTtcbiAgfVxufVxuLyogQ2hyb21lIGZpeCAqL1xuYm9keSA+IGRpdiB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzU1NTtcbiAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICBsaW5lLWhlaWdodDogMS42MjU7XG5cdG1hcmdpbjogMDtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5idXR0b24sXG5pbnB1dDpmb2N1cyxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxudGV4dGFyZWE6Zm9jdXMsXG4uYnV0dG9uLFxuLmdhbGxlcnkgaW1nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbm9sLFxudWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5ociB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDMwcHggMDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xufVxuXG5ibG9ja3F1b3RlLFxuY2l0ZSxcbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAzMHB4O1xufVxuXG5ibG9ja3F1b3RlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjAxQ1wiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07XG4gIGhlaWdodDogMDtcbiAgbGVmdDogLTIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMTBweDtcbn1cbi8qIEhlYWRpbmdzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDAgMCAycmVtO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMjAlKTtcbiAgfVxufVxuXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4yO1xuICBjb2xvcjogaHNsKDAsMCUsNjAlKTtcbn1cbi8qIFRleHRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbnAge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMTtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWZvbnQtc2l6ZSArIDAuODtcbiAgbWFyZ2luOiAwIDAgMTVweDtcblxuICAmLngtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC40O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKyAwLjI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuLyogRGFyayB0aGVtZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWRhcmstdGhlbWUge1xuICBhLFxuICBwIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgaHIge1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgfVxufVxuLy8gLmRhcmstdGhlbWUge1xuLy8gICBAZXh0ZW5kICVkYXJrLXRoZW1lO1xuLy8gfVxuXG4lYmxvZy10eXBvZ3JhcGh5IHtcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gIH1cblxuICBsaSxcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKyAwLjE7XG4gICAgfVxuICB9XG59XG4iLCIvKiBEZWZhdWx0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogT2JqZWN0c1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwLWNhcHRpb24sXG5lbWJlZCxcbmlmcmFtZSxcbmltZyxcbm9iamVjdCxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIEdhbGxlcnlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nYWxsZXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpbWcge1xuICAgIGhlaWdodDogYXV0bztcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuLyogVGFibGVzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMjtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG59XG5cbnRkLFxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG50ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBwYWRkaW5nOiA2cHg7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LW5vcm07XG4gIHBhZGRpbmc6IDAgNnB4O1xufVxuLyogU2NyZWVuIFJlYWRlciBUZXh0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2NyZWVuLXJlYWRlci1zaG9ydGN1dCxcbi5zY3JlZW4tcmVhZGVyLXRleHQsXG4uc2NyZWVuLXJlYWRlci10ZXh0IHNwYW4ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNjcmVlbi1yZWFkZXItc2hvcnRjdXQ6Zm9jdXMsXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLm1vcmUtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi8qIEltYWdlIHJlbGVhc2VcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pbWFnZS1yZWxlYXNlIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICBtYXJnaW4tcmlnaHQ6IC01MHZ3O1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogVmVydGljYWwgYWxpZ24gY29sdW1uIG9iamVjdHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi52ZXJ0aWNhbC1jZW50ZXIge1xuICAud3AtYmxvY2stY29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuIiwiLyogQW5pbWF0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJWFuaW1hdGlvbi1iYXNpYy1oaWRlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IDA7XG59XG4vKiBmYWRlIGluIHRvcCAqL1xuLmhpZGRlbiB7XG4gIEBleHRlbmQgJWFuaW1hdGlvbi1iYXNpYy1oaWRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG59XG5cbi5zaG93biB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xufVxuLyogZmFkZSBpbiByaWdodCAqL1xuLmZhZGUtcmlnaHQtYmVmb3JlIHtcbiAgQGV4dGVuZCAlYW5pbWF0aW9uLWJhc2ljLWhpZGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG59XG5cbi5mYWRlLXJpZ2h0IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG59XG4vKiBmYWRlIGluIGxlZnQgKi9cbi5mYWRlLWxlZnQtYmVmb3JlIHtcbiAgQGV4dGVuZCAlYW5pbWF0aW9uLWJhc2ljLWhpZGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbn1cblxuLmZhZGUtbGVmdCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xufVxuLyogZmFkZSBpbiBzY2FsZSAqL1xuLmZhZGUtc2NhbGUtYmVmb3JlIHtcbiAgQGV4dGVuZCAlYW5pbWF0aW9uLWJhc2ljLWhpZGU7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjkpO1xufVxuXG4uZmFkZS1zY2FsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4iLCIvKiBHcmlkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDb2x1bW4gTWl4aW5cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBjb2x1bW5zKCRzcGFjZSwgJGNvbHM6IDIsICRtb2JpbGUtY29sOiAxKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgPiAqIHtcbiAgICBAaWYgJG1vYmlsZS1jb2wgPT0gMSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG4gICAgQGlmICRtb2JpbGUtY29sID09IDIge1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAoI3skc3BhY2V9IC8gMiAqICgjeyRtb2JpbGUtY29sfSAtIDEpKSkgLyAjeyRtb2JpbGUtY29sfSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZSAvIDI7XG4gICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UgLyAyO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAoI3skc3BhY2V9ICogKCN7JGNvbHN9IC0gMSkpKSAvICN7JGNvbHN9KTtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlO1xuXG4gICAgICAmOm50aC1jaGlsZCgjeyRjb2xzfW4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4lY29sLTEge1xuICBwYWRkaW5nOiAwIDUlO1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5jb2xzLTIge1xuICBAaW5jbHVkZSBjb2x1bW5zKDMwcHgsIDIpO1xufVxuXG4uY29scy0zIHtcbiAgQGluY2x1ZGUgY29sdW1ucygzMHB4LCAzKTtcbn1cbi8qIENvbHVtbiBMYXlvdXRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY29sdW1uLWxheW91dCgkY29sLTEsICRjb2wtMiwgJGNvbC0zOm51bGwpIHtcbiAgQGlmICRjb2wtMyA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgPiAqOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGZsZXg6ICRjb2wtMSAxIDA7XG4gICAgICB9XG5cbiAgICAgID4gKjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbGV4OiAkY29sLTIgMSAwO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgID4gKjpudGgtY2hpbGQoMSkge1xuICAgICAgICBmbGV4OiAkY29sLTEgMSAwO1xuICAgICAgfVxuXG4gICAgICA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZmxleDogJGNvbC0yIDEgMDtcbiAgICAgIH1cblxuICAgICAgPiAqOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIGZsZXg6ICRjb2wtMyAxIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50d28tb25lIHtcbiAgQGluY2x1ZGUgY29sdW1uLWxheW91dCgyLCAxKTtcbn1cbi8qIFdyYXBwZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiV3cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDUwcHggNSU7XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIHBhZGRpbmc6IDgwcHggMTAlO1xuICB9XG5cbiAgJi1zbWFsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCA1JTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMTAlO1xuICAgIH1cbiAgfVxuXG4gICYtbGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDgwcHggNSU7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiAxMjBweCAxMCU7XG4gICAgfVxuICB9XG5cbiAgJi1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgfVxuICB9XG59XG5cbnNlY3Rpb24ud3JhcHBlciB7XG4gIEBleHRlbmQgJXdyYXBwZXI7XG5cbiAgJi1zbWFsbCB7XG4gICAgQGV4dGVuZCAld3JhcHBlci1zbWFsbDtcbiAgfVxuXG4gICYtbGFyZ2Uge1xuICAgIEBleHRlbmQgJXdyYXBwZXItbGFyZ2U7XG4gIH1cblxuICAmLWZ1bGwge1xuICAgIEBleHRlbmQgJXdyYXBwZXItZnVsbDtcbiAgfVxufVxuIiwiLyogR2VuZXNpcyBTdHJ1Y3R1cmUgYW5kIExheW91dFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIENvbnRhaW5lclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtY29udGFpbmVyIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbm1haW4uY29udGVudCB7XG4gIGZsZXg6IDEgMSAxMDAlO1xufVxuXG4uc2l0ZS1oZWFkZXIgKyAqIHtcbiAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICBtYXJnaW4tdG9wOjY3cHg7XG4gIH1cbn1cbi8qIENvbW1vbiBDbGFzc2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEdlbmVzaXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hZnRlci1lbnRyeSxcbi5hcmNoaXZlLWRlc2NyaXB0aW9uLFxuLmF1dGhvci1ib3gge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uYWZ0ZXItZW50cnkge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG59XG5cbi5hZnRlci1lbnRyeSAud2lkZ2V0Omxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5icmVhZGNydW1iIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uYXJjaGl2ZS1kZXNjcmlwdGlvbiBwOmxhc3QtY2hpbGQsXG4uYXV0aG9yLWJveCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogU2VhcmNoIEZvcm1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWFyY2gtZm9ybSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lbnRyeS1jb250ZW50IC5zZWFyY2gtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wb3N0LXBhc3N3b3JkLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLndpZGdldF9zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuLyogVGl0bGVzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktdGl0bGUgYSxcbi5zaWRlYmFyIC53aWRnZXQtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53aWRnZXQtdGl0bGUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi8qIFdvcmRQcmVzc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmEuYWxpZ25jZW50ZXIgaW1nIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuXG5hLmFsaWdubm9uZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFsaWdubGVmdCB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYWxpZ25yaWdodCB7XG5cdGZsb2F0OiByaWdodDtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbmEuYWxpZ25sZWZ0LFxuYS5hbGlnbm5vbmUsXG5hLmFsaWducmlnaHQge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmltZy5jZW50ZXJlZCxcbi5hbGlnbmNlbnRlcixcbi5zaW5ndWxhci1pbWFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDAgYXV0byAzMHB4O1xufVxuXG5pbWcuYWxpZ25ub25lLFxuLmFsaWdubm9uZSB7XG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbmEuYWxpZ25sZWZ0LFxuaW1nLmFsaWdubGVmdCxcbi53cC1jYXB0aW9uLmFsaWdubGVmdCB7XG5cdG1hcmdpbjogMCAyMHB4IDIwcHggMDtcbn1cblxuYS5hbGlnbnJpZ2h0LFxuaW1nLmFsaWducmlnaHQsXG4ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0IHtcblx0bWFyZ2luOiAwIDAgMjBweCAyMHB4O1xufVxuXG4uZ2FsbGVyeS1jYXB0aW9uLFxuLndwLWNhcHRpb24tdGV4dCB7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0bWFyZ2luLXRvcDogMC41ZW07XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lbnRyeS1jb250ZW50IHAud3AtY2FwdGlvbi10ZXh0IHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWF1ZGlvLXNob3J0Y29kZSxcbi5lbnRyeS1jb250ZW50IC53cC1wbGF5bGlzdCxcbi5lbnRyeS1jb250ZW50IC53cC12aWRlbyB7XG5cdG1hcmdpbjogMCAwIDMwcHg7XG59XG4iLCIvLyAubWVudS1pdGVtLS1oaWdobGlnaHRcbi8qIEhlYWRlciBCdXR0b25zXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4laGVhZGVyLWJ1dHRvbnMge1xuICBAaW5jbHVkZSBjaXJjbGUtb2JqZWN0KDQwcHgsIGhzbGEoMCwgMCUsIDAlLCAwKSwgMTdweCk7XG4gIGNvbG9yOiBoc2woMCwgMCUsIDQwJSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAmOmhvdmVyIHtcbiAgICAvLyBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbn1cblxuLyogU2tpcCBMaW5rc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmdlbmVzaXMtc2tpcC1saW5rIHtcbiAgbWFyZ2luOiAwO1xuXG4gIC5za2lwLWxpbmstaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIGxpIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuXG4vKiBTaXRlIEhlYWRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtaGVhZGVyIHtcbiAgQGV4dGVuZCAldHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDBweCA1JTtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwcHggMyU7XG4gIH1cblxuICBAaW5jbHVkZSBkZXNrdG9wLXhsIHtcbiAgICBwYWRkaW5nOiAwcHggNSU7XG4gIH1cblxuICA+LndyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLyogU3RydWN0dXJlICovXG4gICAgPioge1xuICAgICAgJi5wcmUtaGVhZGVyIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICB9XG5cbiAgICAgICYudGl0bGUtYXJlYSB7XG4gICAgICAgIC8vIGZsZXg6IDIgMSAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaGVhZGVyLXdpZGdldC1hcmVhIHtcbiAgICAgICAgZmxleDogMSAxIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tZW51LXRvZ2dsZSB7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBUaXRsZSBBcmVhXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGl0bGUtYXJlYSB7XG4gIHdpZHRoOiAxNTBweDtcbiAgcGFkZGluZzogMTJweCAwIDhweDtcbiAgb3JkZXI6IDI7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIG9yZGVyOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi5zaXRlLWRlc2NyaXB0aW9uLFxuLndwLWN1c3RvbS1sb2dvIC5zaXRlLXRpdGxlIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi8qIFJlc3BvbnNpdmUgTWVudVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm1lbnUgLm1lbnUtaXRlbTpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5tZW51IC5tZW51LWl0ZW0+YTpmb2N1cyt1bC5zdWItbWVudSxcbi5tZW51IC5tZW51LWl0ZW0uc2ZIb3Zlcj51bC5zdWItbWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICB9XG59XG5cbi8qIE1lbnUgVG9nZ2xlICYgU3ViIE1lbnUgVG9nZ2xlICovXG4ubWVudS10b2dnbGUsXG4uc3ViLW1lbnUtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY29sb3I6ICMwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICB9XG59XG5cbi8qIE1lbnUgVG9nZ2xlICovXG4ubWVudS10b2dnbGUge1xuICBAZXh0ZW5kICVoZWFkZXItYnV0dG9ucztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBvcmRlcjogNDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICByaWdodDogMDtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIH1cblxuICAmLmFjdGl2YXRlZDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjMzNVwiO1xuICB9XG59XG5cbi8qIFN1YiBNZW51IFRvZ2dsZSAqL1xuLnN1Yi1tZW51LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiAxNXB4O1xuICB6LWluZGV4OiAxMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dDtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cblxuICAmLmFjdGl2YXRlZDpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJG1haW4tY29sb3IsIDEwJSk7XG4gIH1cbn1cblxuLyogSGVhZGVyIE1lbnVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVtYWluLW5hdi1pbnRlcmFjdCB7XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICY6bm90KC5tZW51LWl0ZW0tLWhpZ2hsaWdodCkge1xuICAgICAgYTphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cblxuICAgICAgLy8gYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGhzbCgwLDAlLDUwJSk7XG4gICAgfVxuICB9XG59XG5cbi8qIEhlYWRlciBNZW51IFN0cnVjdHVyZSAqL1xuLm5hdi1wcmltYXJ5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDY3cHg7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogOTk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLndyYXAge1xuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vKiBNYWluIEhlYWRlciBNZW51ICovXG4ubWVudS1wcmltYXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMCwgMCUsIDk1JSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLyogR2VuZXJpYyBsaSBzdHlsZSovXG4gIC5tZW51LWl0ZW0ge1xuICAgIEBleHRlbmQgJW1haW4tbWVudS1pdGVtO1xuICB9XG5cbiAgLyogR2VuZXJpYyBuYXYgbGluayBzdHlsZSAqL1xuICBhIHtcbiAgICBAZXh0ZW5kICVtYWluLW1lbnUtbGluaztcbiAgfVxuXG4gIC8qIEZpcnN0IGxldmVsIGxpICovXG4gID5saSB7XG4gICAgQGV4dGVuZCAlbWFpbi1tZW51LWl0ZW0tZmlyc3Q7XG5cbiAgICA+YSB7XG4gICAgICBAZXh0ZW5kICVtYWluLW1lbnUtbGluay1maXJzdDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL2dyYXBoaWMtZGl2aWRlci5zdmcnKSBuby1yZXBlYXQgY2VudGVyIC9jb250YWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIExldmVsIDIgTWVudSAqL1xuICAuc3ViLW1lbnUge1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjZmZmLCA2JSk7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWluLXdpZHRoOiAxODBweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGxlZnQ6IDk5OTlweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3gtc2hhZG93OiAwIDAgM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7XG4gICAgfVxuXG4gICAgLyogU2Vjb25kIGxldmVsIGxpICovXG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICBAZXh0ZW5kICVtYWluLW1lbnUtaXRlbS1zZWNvbmQ7XG5cbiAgICAgID5hIHtcbiAgICAgICAgQGV4dGVuZCAlbWFpbi1tZW51LWxpbmstc2Vjb25kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBTdHlsZXMgZm9yIE1haW4gTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lbWFpbi1tZW51LWl0ZW0ge1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLWZpcnN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLyogSWYgaGF2ZSBjaGlsZHJlbiAqL1xuICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAldHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRtYWluLWNvbG9yO1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC8qIElmIEhpZ2hsaWdodGVkICovXG4gICAgJi5tZW51LWl0ZW0tLWhpZ2hsaWdodCB7XG4gICAgICBwYWRkaW5nOiAxMnB4IDBweCAxMnB4IDA7XG5cbiAgICAgID5hIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNrZXcoLTEwZGVnKTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgLy8gYm9yZGVyLWxlZnQ6IDQ1cHggc29saWQgJHJlZDtcbiAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgICAgICAgIC8vIGJvcmRlci1yaWdodDogNDVweCBzb2xpZCAkZ3JlZW47XG4gICAgICAgICAgLy8gYm9yZGVyLWxlZnQ6IDQ1cHggc29saWQgaHNsKDAsIDAlLCAyMCUpO1xuICAgICAgICAgIC8vIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgNDAlKTtcbiAgICAgICAgICAvLyBib3JkZXItcmlnaHQ6IDQ1cHggc29saWQgaHNsKDAsIDAlLCA2MCUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgOTAlKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkbWFpbi1jb2xvciwgMTAlKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgIC8vIHRleHQtc2hhZG93OiAwcHggMHB4IDVweCBoc2woMCwgMCUsIDAlLCAwLjUpO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBleHRlbmQgJW1haW4tbmF2LWludGVyYWN0O1xuICAgIH1cbiAgfVxuXG4gICYtc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcblxuICAgICAgICA+YSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuJW1haW4tbWVudS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udDtcbiAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSArIDAuMztcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIGkge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICB9XG5cbiAgJi1maXJzdCB7XG4gICAgcGFkZGluZzogMjBweCAxNnB4O1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDE0cHg7XG4gICAgfVxuICB9XG5cbiAgJi1zZWNvbmQge1xuICAgIHBhZGRpbmc6IDE0cHggMTVweDtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBIZWFkZXIgV2lkZ2V0IEFyZWFcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5oZWFkZXItd2lkZ2V0LWFyZWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAxO1xuICBvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBvcmRlcjogMztcbiAgICBtYXJnaW46IDAgNSUgMCBhdXRvO1xuICB9XG5cbiAgLm1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLndpZGdldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaGVhZGVyLWJ1dHRvbnM7XG4gIH1cbn1cblxuLyogUHJlIEhlYWRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnByZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAzcHggMyU7XG5cbiAgPioge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBpIHtcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBmbGV4OiAxMSAxIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGZsZXg6IDIgMSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICRyZWQ7XG4gIH1cblxuICBhIHtcbiAgICBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlci5oZWFkZXItc2Nyb2xsIHtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxufVxuXG4uc2l0ZS1oZWFkZXI6bm90KC5oZWFkZXItc2Nyb2xsKSB7XG4gIC50aXRsZS1hcmVhIHtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGZpbHRlcjogc2F0dXJhdGUoMCkgYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtcHJpbWFyeSB7XG4gICAgPmxpPmEge1xuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWl0ZW0tLWhpZ2hsaWdodDpob3Zlcj5hIHtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKiBTaWRlYmFyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2lkZWJhciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5zaWRlYmFyIC53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4uc2lkZWJhciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbiIsIi8qIEZvb3RlclxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBGb290ZXIgV2lkZ2V0c1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci13aWRnZXRzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDYwcHggNSU7XG5cbiAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLndyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBAaW5jbHVkZSBjaGlsZC1tYXJnaW4oXCJyaWdodFwiLCAzMHB4KTtcbiAgICAgIG1heC13aWR0aDogJGRlc2t0b3Atd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cblxuICAud2lkZ2V0LXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICBAaW5jbHVkZSBsaW5lLWJvcmRlcigxcHgsICRtYWluLWNvbG9yLCBcImJvdHRvbVwiLCAxNXB4KTtcbiAgfVxuXG4gIC53aWRnZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuLmZvb3Rlci13aWRnZXQtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgcCB7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgQGV4dGVuZCBzbWFsbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOm50aC1jaGlsZCgxKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCgzKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCg0KSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci13aWRnZXQtYXJlYSB1bFtpZCo9XCJzb2NpYWxcIl0ge1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5mb290ZXItd2lkZ2V0cyAubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4zO1xuICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMjAlKTtcblxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXItd2lkZ2V0cy0xIHtcbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMCAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLXdpZGdldHMtNCB7XG4gIGltZyB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgIH1cbiAgfVxufVxuXG4udGV4dHdpZGdldD5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mb290ZXItd2lkZ2V0LWFyZWE6bGFzdC1jaGlsZCxcbi5mb290ZXItd2lkZ2V0cyAud2lkZ2V0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jbWVudS1zb2NpYWwtbWVkaWEtbWVudSB7XG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBtb2JpbGUge1xuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLnNpdGUtaGVhZGVyICYge1xuICAgICAgLy8gdG8gaGlkZSBkaXNwbGF5IGZyb20gaGVhZGVyXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKiBTaXRlIEZvb3RlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAzMCUpO1xuICBjb2xvcjogJG9mZi13aGl0ZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMTVweCA1JSA1cHg7XG5cbiAgPi53cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICA+cCB7XG4gICAgICBAZXh0ZW5kIC5zbWFsbDtcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICB9XG4gIH1cbn0iLCIvKiBHcmFwaGljc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogU2Vjb25kYXJ5IEdyYXBoaWNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVzZWNvbmRhcnktZ3JhcGhpYyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjIwZGVnKTtcbiAgICBib3R0b206IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gIH1cbn1cbi8vIC5zZWNvbmRhcnktZ3JhcGhpYyB7XG4vLyAgIEBleHRlbmQgJXNlY29uZGFyeS1ncmFwaGljO1xuLy8gfVxuLyogQmFja2dyb3VuZCBQYXR0ZXJuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiViZy1wYXR0ZXJuIHtcbiAgYmFja2dyb3VuZDogJHBhdHRlcm4tMS1saW5rIHJlcGVhdCBjZW50ZXI7XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIH1cbn1cbi8qIEdyYXBoaWMgRGl2aWRlciAxXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVncmFwaGljLWRpdmlkZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEyMHB4O1xuICBsZWZ0OiAwO1xuICAvLyBiYWNrZ3JvdW5kOiAkZ3JhcGhpYy1kaXZpZGVyLTEtbGluayBuby1yZXBlYXQgYm90dG9tIC8gMTAydncgYXV0bztcbn1cblxuJWdyYXBoaWMtZGl2aWRlci10b3Age1xuICBAZXh0ZW5kICVncmFwaGljLWRpdmlkZXI7XG4gIHRvcDogLTExOXB4O1xufVxuXG4lZ3JhcGhpYy1kaXZpZGVyLWJvdHRvbSB7XG4gIEBleHRlbmQgJWdyYXBoaWMtZGl2aWRlcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgYm90dG9tOiAtMTE5cHg7XG59XG4vKiBHcmFwaGljIERpdmlkZXIgMiAtIGJydXNoXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVncmFwaGljLWRpdmlkZXItLWJydXNoIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBsZWZ0OiAwO1xuICAvLyBiYWNrZ3JvdW5kOiAkZ3JhcGhpYy1kaXZpZGVyLTItbGluayBuby1yZXBlYXQgYm90dG9tIC8gMTAydncgYXV0bztcbn1cblxuJWdyYXBoaWMtZGl2aWRlci0tYnJ1c2gtdG9wIHtcbiAgQGV4dGVuZCAlZ3JhcGhpYy1kaXZpZGVyLS1icnVzaDtcbiAgdG9wOiAtNDlweDtcbn1cblxuJWdyYXBoaWMtZGl2aWRlci0tYnJ1c2gtYm90dG9tIHtcbiAgQGV4dGVuZCAlZ3JhcGhpYy1kaXZpZGVyLS1icnVzaDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgYm90dG9tOiAtNDlweDtcbn1cbi8qIERpdmlkZXIgYWZ0ZXIgdGl0bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWRpdmlkZXItYWZ0ZXItdGl0bGUge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkbWFpbi1jb2xvcjtcbiAgICB3aWR0aDogNTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbn1cbiIsIi8qIEJ1dHRvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBidG4tMVxuIGJ0bi0yXG4gYnRuLWljb24tdGV4dFxuICovXG4vKiBTdHJ1Y3R1cmUgb2YgYSBidXR0b24gKi9cbkBtaXhpbiBidG4oJHNpemUpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0b3A6IDA7XG4gIGJvcmRlcjogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBAaWYgJHNpemUgPT1zbWFsbCB7XG4gICAgcGFkZGluZzogMC40ZW0gMC42ZW07XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIH1cblxuICBAaWYgJHNpemUgPT1tZWRpdW0ge1xuICAgIHBhZGRpbmc6IDAuOGVtIDEuMmVtO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICsgMC4zO1xuICB9XG5cbiAgQGlmICRzaXplID09bGFyZ2Uge1xuICAgIHBhZGRpbmc6IDEuMmVtO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICsgMC42O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbiVidG4ge1xuICBAaW5jbHVkZSBidG4obWVkaXVtKTtcblxuICAmLXNtYWxsIHtcbiAgICBAaW5jbHVkZSBidG4oc21hbGwpO1xuICB9XG5cbiAgJi1sYXJnZSB7XG4gICAgQGluY2x1ZGUgYnRuKGxhcmdlKTtcbiAgfVxufVxuXG4uYnRuIHtcbiAgQGV4dGVuZCAlYnRuO1xuXG4gICYuYWxpZ24tYyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmLXNtYWxsIHtcbiAgICBAZXh0ZW5kICVidG4tc21hbGw7XG4gIH1cblxuICAmLWxhcmdlIHtcbiAgICBAZXh0ZW5kICVidG4tbGFyZ2U7XG4gIH1cbn1cblxuLyogU29saWQgQnV0dG9uIC0gYnRuLTFcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGJ0bi0xKCRiZy1jb2xvciwgJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGhzbCgwLCAwJSwgMzAlKTtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmctY29sb3IsIDE1JSk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCk7XG4gIH1cbn1cblxuJWJ0bi0xIHtcbiAgQGluY2x1ZGUgYnRuLTEoZGFya2VuKCRtYWluLWNvbG9yLCAwJSksICNmZmYpO1xuXG4gICYtc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBidG4tMShoc2woMCwgMCUsIDYwJSksIGhzbCgwLCAwJSwgMTAwJSkpO1xuICB9XG5cbiAgJi1saWdodCB7XG4gICAgQGluY2x1ZGUgYnRuLTEoaHNsKDAsIDAlLCA5MCUpLCBoc2woMCwgMCUsIDUwJSkpO1xuICB9XG5cbiAgJi1zdWNjZXNzIHtcbiAgICBAaW5jbHVkZSBidG4tMSgkZ3JlZW4sIGhzbCgwLCAwJSwgMTAwJSkpO1xuICB9XG5cbiAgJi1pbmZvIHtcbiAgICBAaW5jbHVkZSBidG4tMSgkYmx1ZSwgaHNsKDAsIDAlLCAxMDAlKSk7XG4gIH1cblxuICAmLXdhcm5pbmcge1xuICAgIEBpbmNsdWRlIGJ0bi0xKCR5ZWxsb3csIGRhcmtlbigkeWVsbG93LCA0MCUpKTtcbiAgfVxuXG4gICYtZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBidG4tMSgkcmVkLCBoc2woMCwgMCUsIDEwMCUpKTtcbiAgfVxufVxuXG4uYnRuLTEge1xuICBAZXh0ZW5kICVidG4tMTtcblxuICAmLXNlY29uZGFyeSB7XG4gICAgQGV4dGVuZCAlYnRuLTEtc2Vjb25kYXJ5O1xuICB9XG5cbiAgJi1saWdodCB7XG4gICAgQGV4dGVuZCAlYnRuLTEtbGlnaHQ7XG4gIH1cblxuICAmLXN1Y2Nlc3Mge1xuICAgIEBleHRlbmQgJWJ0bi0xLXN1Y2Nlc3M7XG4gIH1cblxuICAmLWluZm8ge1xuICAgIEBleHRlbmQgJWJ0bi0xLWluZm87XG4gIH1cblxuICAmLXdhcm5pbmcge1xuICAgIEBleHRlbmQgJWJ0bi0xLXdhcm5pbmc7XG4gIH1cblxuICAmLWRhbmdlciB7XG4gICAgQGV4dGVuZCAlYnRuLTEtZGFuZ2VyO1xuICB9XG59XG5cbi8qIE91dGxpbmUgQnV0dG9uIC0gYnRuLTJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGJ0bi0yKCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyOiAycHggc29saWQgbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbiVidG4tMiB7XG4gIEBpbmNsdWRlIGJ0bi0yKCRtYWluLWNvbG9yKTtcblxuICAmLXdoaXRlIHtcbiAgICBAaW5jbHVkZSBidG4tMigjZmZmKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMTUlKTtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0yIHtcbiAgQGV4dGVuZCAlYnRuLTI7XG5cbiAgJi13aGl0ZSB7XG4gICAgQGV4dGVuZCAlYnRuLTItd2hpdGU7XG4gIH1cbn1cblxuLyogQnV0dG9uIEljb24gVGV4dCAtIC5idG4taWNvbi10ZXh0XG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVidG4taWNvbi10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDE1JSk7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogNnB4IDEycHg7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICBpIHtcbiAgICBAaW5jbHVkZSBjaXJjbGUtb2JqZWN0KDMwcHgsIGhzbGEoMCwgMCUsIDEwMCUsIDApLCAxOHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgfVxufVxuXG4uYnRuLWljb24tdGV4dCB7XG4gIEBleHRlbmQgJWJ0bi1pY29uLXRleHQ7XG59IiwiLyogR2VuZXNpcyBXaWRnZXRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBXaWRnZXRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4ud2lkZ2V0IHA6bGFzdC1jaGlsZCxcbi53aWRnZXQgdWwgPiBsaTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IHVsID4gbGkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ud2lkZ2V0IHVsID4gbGk6bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi53aWRnZXQgb2wgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRleHQtaW5kZW50OiAtMjBweDtcbn1cblxuLndpZGdldCBsaSBsaSB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgdGQsXG4ud2lkZ2V0X2NhbGVuZGFyIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLyogRm9ybXNcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqKiBGb3JtIEVycm9yc1xuICovXG4laW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAkcmVkIWltcG9ydGFudDtcbn1cblxuJWludmFsaWQtaW5wdXQge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggJHJlZCFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlIWltcG9ydGFudDtcbn1cbi8qQ09OVEFDVCBGT1JNKi9cbjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbiN7JGlucHV0LWZpZWxkc30sXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogMzhweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDFEMUQxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjNTU1O1xuXG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbn1cbi8qIFJlbW92ZXMgYXdrd2FyZCBkZWZhdWx0IHN0eWxlcyBvbiBzb21lIGlucHV0cyBmb3IgaU9TICovXG4jeyRpbnB1dC1maWVsZHN9LFxudGV4dGFyZWEge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuI3skaW5wdXQtZmllbGRzfSxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYmJiYmJiO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggc2F0dXJhdGUoJG1haW4tY29sb3IsIDE1JSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG5mb3JtIHtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICB9XG5cbiAgaW5wdXQge1xuICAgICZbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgcGFkZGluZzogMC42ZW0gMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgICZbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBAZXh0ZW5kICVidG47XG4gICAgICBAZXh0ZW5kICVidG4tMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2YxZjFmMjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCAjY2NjO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLypXUENGNyBTUEVDSUZJQyBFUlJPUiBBTkQgQVBQUk9WQUwgTUVTU0FHRVMqL1xuLndwY2Y3IHtcbiAgZm9ybSB7XG4gICAgLndwY2Y3LWxpc3QtaXRlbSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YTRhO1xuICAgICAgcGFkZGluZzogMC4yZW0gMC42ZW07XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICAgIGJvcmRlcjogMCBzb2xpZCAjY2M0YTRhO1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4ycmVtO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YTRhO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kICVmbGV4Ym94LWMtYztcbiAgICAgICAgQGV4dGVuZCAlaWNvbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAud3BjZjctYWNjZXB0YW5jZS1taXNzaW5nLFxuICAgIC53cGNmNy12YWxpZGF0aW9uLWVycm9ycyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGVhMGFcIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAud3BjZjctbWFpbC1zZW50LW9rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlYTAzXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKiBTZWxlY3QgUmVzZXRcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4xO1xuICBjb2xvcjogIzU1NTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZzogMC42ZW0gMS40ZW0gMC41ZW0gMC44ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogMC4zZW07XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VUy1BU0NJSSwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHdpZHRoJTNEJTIyMjkyLjQlMjIlMjBoZWlnaHQlM0QlMjIyOTIuNCUyMiUzRSUzQ3BhdGglMjBmaWxsJTNEJTIyJTIzMDA3Q0IyJTIyJTIwZCUzRCUyMk0yODclMjA2OS40YTE3LjYlMjAxNy42JTIwMCUyMDAlMjAwLTEzLTUuNEgxOC40Yy01JTIwMC05LjMlMjAxLjgtMTIuOSUyMDUuNEExNy42JTIwMTcuNiUyMDAlMjAwJTIwMCUyMDAlMjA4Mi4yYzAlMjA1JTIwMS44JTIwOS4zJTIwNS40JTIwMTIuOWwxMjglMjAxMjcuOWMzLjYlMjAzLjYlMjA3LjglMjA1LjQlMjAxMi44JTIwNS40czkuMi0xLjglMjAxMi44LTUuNEwyODclMjA5NWMzLjUtMy41JTIwNS40LTcuOCUyMDUuNC0xMi44JTIwMC01LTEuOS05LjItNS41LTEyLjh6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCByZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuN2VtIHRvcCA1MCUsIDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjY1ZW0gYXV0bywgMTAwJTtcblxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODg4O1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWFhO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggM3B4IHJnYmEoNTksIDE1MywgMjUyLCAuNyk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IC1tb3otbWFjLWZvY3VzcmluZztcbiAgICBjb2xvcjogIzIyMjtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJiBvcHRpb24ge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cbi8qIENoZWNrYm94IFJlc2V0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICArICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgID4gKiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAmOmFmdGVyLFxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG1pbi13aWR0aDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAycHggI2NjYztcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggIzk5OTtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAzcHggIzk5OTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDApO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIEBleHRlbmQgJXRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgfVxuICB9XG5cbiAgKyAqOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gIH1cblxuICAmOmNoZWNrZWQgKyAqIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigjZmZmLCA1JSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2ZmZiwgNSUpO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgc2NhbGUoLjgpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgNHB4IGxpZ2h0ZW4oJGdyZWVuLCAwKTtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCA0cHggbGlnaHRlbigkZ3JlZW4sIDApO1xuICAgIH1cbiAgfVxufVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cbiIsIi8qIExpc3Qgc3R5bGVcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVpdGVtLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC8vIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgfVxuICB9XG5cbiAgb2wsXG4gIHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5pdGVtLWxpc3Qge1xuICBAZXh0ZW5kICVpdGVtLWxpc3Q7XG5cbiAgPiBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICB9XG59XG5cbi5udW1iZXItbGlzdCB7XG4gIEBleHRlbmQgJWl0ZW0tbGlzdDtcblxuICA+IGxpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIH1cbn1cbi8qIEVudHJ5IE1ldGFcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5lbnRyeS1mb290ZXIgLmVudHJ5LW1ldGEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZTtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbi5lbnRyeS1jb21tZW50cy1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjAxNFwiO1xuICBtYXJnaW46IDAgNnB4IDAgMnB4O1xufVxuLyogUGFnaW5hdGlvblxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBleHRlbmQgJWZsZXhib3gtYy1jO1xuICBtYXJnaW46IDYwcHggMDtcbn1cblxuLmFkamFjZW50LWVudHJ5LXBhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogIzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpIGE6Zm9jdXMsXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpIGE6aG92ZXIsXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpLmFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgY29sb3I6ICNmZmY7XG59XG4iLCIvKiBTZWN0aW9uIFRpdGxlXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2VjdGlvbi10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgJi5hbGlnbi1jIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICBoNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMjtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cblxuICBoMSxcbiAgaDIsXG4gIGgzIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgJi50aWx0IHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDBkZWcpIHNrZXdZKC02ZGVnKTtcbiAgICBsaW5lLWhlaWdodDogMC45O1xuICB9XG5cbiAgJi5sYXJnZSB7XG5cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgfVxuICB9XG5cbiAgJi5pbmRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTAwcHg7XG4gIH1cbn1cblxuLyogRGl2aWRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHIge1xuICBib3JkZXI6IDA7XG59XG5cbmhyLnNtYWxsIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbiVkaXZpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDE1cHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtYWluLWNvbG9yO1xuICB3aWR0aDogNTBweDtcbn1cblxuLmRpdmlkZXIge1xuICBAZXh0ZW5kICVkaXZpZGVyO1xuXG4gICYtYyB7XG4gICAgQGV4dGVuZCAlZGl2aWRlcjtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4uZGl2aWRlci1ncmFwaGljIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvZ3JhcGhpYy1kaXZpZGVyLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xufSIsIi8qIEltYWdlIENhcmRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjxmaWd1cmUgY2xhc3M9XCJpbWctY2FyZFwiPlxuICA8aW1nIHNyYz1cIlwiPlxuICA8ZmlnY2FwdGlvbj48L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cbiovXG4uaW1nLWNhcmQge1xuICBAZXh0ZW5kICVpbWctY2FyZDtcbn1cblxuJWltZy1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMTAsMTAlLDEwJSx0b3ApO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuMTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuLyogTG9nbyBHYWxsZXJ5XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG48c2VjdGlvbiBjbGFzcz1cImxvZ28tc2hvd2Nhc2VcIj5cbiAgPGhlYWRlciBjbGFzcz1cInNlY3Rpb24tdGl0bGUgYWxpZ24tY1wiPlxuICAgIDxoMj5PdXIgQ2xpZW50czwvaDI+XG4gICAgPGhyIGNsYXNzPVwiZGl2aWRlci1jXCI+XG4gICAgPHA+SGVyZSBhcmUgc29tZSBvZiBvdXIgb3VyIGNsaWVudHMuPC9wPlxuICA8L2hlYWRlcj5cblxuICA8ZGl2IGNsYXNzPVwibG9nby1zaG93Y2FzZS1nYWxsZXJ5XCI+XG4gICAgPGltZyBzcmM9XCIuLi8uLi8uLi9zdGF0aWMvbG9nby0xLmpwZ1wiPlxuICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiovXG4ubG9nby1mZWF0dXJlLWdhbGxlcnkge1xuICBAZXh0ZW5kICVsb2dvLWZlYXR1cmUtZ2FsbGVyeTtcbn1cblxuJWxvZ28tZmVhdHVyZS1nYWxsZXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAZXh0ZW5kICVmbGV4Ym94LWMtYztcblxuICBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuLyogSW1hZ2UgQmFubmVyXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICA8c2VjdGlvbiBjbGFzcz1cImltYWdlLWJhbm5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgY29udGFpbmVyLWxlZnRcIj5cbiAgICAgIDxoMz5UaXRsZTwvaDM+XG4gICAgICA8cD5EZXNjcmlwdGlvbjwvcD5cbiAgICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJidG4gYnRuLTNcIj5MZWFybiBNb3JlPC9hPlxuICAgIDwvZGl2PlxuICAgIDxpbWcgc3JjPVwiL3N0YXRpYy9hc2QuanBnXCI+XG4gIDwvc2VjdGlvbj5cblxuICAqL1xuLy8gLmltYWdlLWJhbm5lciB7XG4vLyAgIEBleHRlbmQgJWltYWdlLWJhbm5lcjtcbi8vIH1cblxuJWltYWdlLWJhbm5lciB7XG4gIEBleHRlbmQgJWJhbm5lcjtcbiAgcGFkZGluZzogMTBweDtcbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAmLmNvbnRhaW5lci1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICB3aWR0aDogY2FsYygjeyRkZXNrdG9wLXdpZHRofSAqIDAuNSk7XG4gICAgICAgIG1heC13aWR0aDogJGRlc2t0b3Atd2lkdGg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCgxMDAlIC0gI3skZGVza3RvcC13aWR0aH0pIC8gMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jb250YWluZXItcmlnaHQge1xuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygoMTAwJSAtICN7JGRlc2t0b3Atd2lkdGh9KSAvIDIpO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIEJhbm5lcnNcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG4gIHBhZGRpbmc6IDUwcHggNSU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgaW1nIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG4vKiBSZWd1bGFyIEJhbm5lclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lcmVndWxhci1iYW5uZXIge1xuICBAZXh0ZW5kICViYW5uZXI7XG4gIEBleHRlbmQgJWJnLXBhdHRlcm47XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgMTBweCk7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMjUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwIHtcbiAgICBAZXh0ZW5kICVjb2wtMTtcbiAgICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG4gIH1cblxuICBpbWcge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG4uZW50cnktaGVhZGVyLFxuLnJlZ3VsYXItYmFubmVyIHtcbiAgQGV4dGVuZCAlcmVndWxhci1iYW5uZXI7XG4gIEBleHRlbmQgJWRhcmstdGhlbWU7XG5cbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIH1cbn1cblxuLyogR2lhbnQgQmFubmVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lZ2lhbnQtYmFubmVyIHtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgbWF4LWhlaWdodDogNzIwcHg7XG4gIEBleHRlbmQgJWJhbm5lcjtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmgpO1xuICB9XG5cbiAgLmVudHJ5LXRpdGxlLFxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgei1pbmRleDogMDtcbiAgICB0ZXh0LXNoYWRvdzogM3B4IDNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuXG4gICAgaDEsXG4gICAgaDIge1xuICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMTAwJSk7XG4gICAgfVxuICB9XG59XG5cbi8vIC5naWFudC1iYW5uZXIge1xuLy8gICBAZXh0ZW5kICVnaWFudC1iYW5uZXI7XG4vLyB9IiwiLyogSGVybyBTbGlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEdpYW50IEJhbm5lciBTbGlkZXIgKi9cbi5oZXJvLXNsaWRlciB7XG4gIEBleHRlbmQgJXRyYW5zaXRpb24tZHVyYXRpb247XG4gIEBleHRlbmQgJWJhbm5lcjtcbiAgLy8gdmlzaWJpbGl0eTogaGlkZGVuO1xuICAvLyBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IGF1dG87XG5cbiAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAvLyBtYXgtaGVpZ2h0OiAxMDB2dztcbiAgfVxuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgbWF4LWhlaWdodDogNzIwcHg7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxufVxuXG4uaGVyby1zbGlkZXItLXNob3J0IHtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgfVxuXG4gIC5oZXJvLXNsaWRlIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB9XG4gIH1cbn1cblxuLyogR2lhbnQgQmFubmVyIFNsaWRlICovXG4uaGVyby1zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBtb2JpbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgYmFja2dyb3VuZDogIzU1NSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgfVxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIC8vIG1heC1oZWlnaHQ6IGNhbGMoMTAwdncgLyAxNiAqIDkpO1xuICAgIC8vIGhlaWdodDogMTAwdmg7XG4gIH1cblxuICAvKiBHZW5lcmljIEZpZ2NhcHRpb24gU3R5bGVzICovXG4gIGZpZ2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgei1pbmRleDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKDEwNywgMjMlLCAxMCUsIDAuMyk7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgcGFkZGluZzogMjBweCAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAvLyB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMCwgMCUsIDAlLCAwLjgpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8vIEdyYWRpZW50IEZhZGVcbiAgICAgIC8vICY6YmVmb3JlIHtcbiAgICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gICBjb250ZW50OiBcIlwiO1xuICAgICAgLy8gICBsZWZ0OiAwO1xuICAgICAgLy8gICB0b3A6IC05OXB4O1xuICAgICAgLy8gICB3aWR0aDogMTAwJTtcbiAgICAgIC8vICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIC8vICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLCAwJSwgMCUsIHRvcCk7XG4gICAgICAvLyB9XG5cbiAgICAgIC8vICY6YWZ0ZXIge1xuICAgICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAvLyAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAvLyAgIGxlZnQ6IDA7XG4gICAgICAvLyAgIGJvdHRvbTogLTk5cHg7XG4gICAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgICAgLy8gICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgLy8gICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDAsIDAlLCAwJSwgYm90dG9tKTtcbiAgICAgIC8vIH1cblxuICAgICAgLy8gJjphZnRlciB7XG4gICAgICAvLyAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAvLyAgICAgY29udGVudDogXCJcIjtcbiAgICAgIC8vICAgfVxuXG4gICAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vICAgd2lkdGg6MTAwJTtcbiAgICAgIC8vICAgaGVpZ2h0OjEwMHZ3O1xuICAgICAgLy8gICB0b3A6MDtcbiAgICAgIC8vICAgbGVmdDowO1xuICAgICAgLy8gICBiYWNrZ3JvdW5kOnZhcigtLW1iZy1pbWFnZSkgbm8tcmVwZWF0IGJvdHRvbSAvIGNvdmVyO1xuICAgICAgLy8gICB6LWluZGV4OiAtMTtcbiAgICAgIC8vICAgZmlsdGVyOmJsdXIoNXB4KTtcbiAgICAgIC8vICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHNjYWxlWSgtMSk7XG4gICAgICAvLyAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIC8vIH1cblxuICAgICAgYnIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAzO1xuICAgICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMjUlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkc3VidGl0bGUtZm9udDtcbiAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4zO1xuICAgICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMTAlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBoZWlnaHQ6IDEwMHZ3O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gIC8qIENhcHRpb24gUG9zaXRpb25zICovXG4gICYtLWxlZnQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBAZXh0ZW5kICVoZXJvLXNsaWRlLWdyYWRpZW50LWZhZGUtbGVmdC1yaWdodDtcbiAgICB9XG5cbiAgICAmLmhlcm8tc2xpZGUtLWxpZ2h0OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDI1NSwgMjU1JSwgMjU1JSwgcmlnaHQpO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLCAwJSwgMCUsIHJpZ2h0KTtcbiAgICB9XG5cbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZmlnY2FwdGlvbi1sZWZ0LXJpZ2h0O1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBsZWZ0OiA1dnc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tcmlnaHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1ncmFkaWVudC1mYWRlLWxlZnQtcmlnaHQ7XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1saWdodDpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgyNTUsIDI1NSUsIDI1NSUsIGxlZnQpO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLCAwJSwgMCUsIGxlZnQpO1xuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1maWdjYXB0aW9uLWxlZnQtcmlnaHQ7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHJpZ2h0OiA1dnc7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1jZW50ZXIge1xuICAgICY6YmVmb3JlIHt9XG5cbiAgICAmLmhlcm8tc2xpZGUtLWxpZ2h0OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDI1NSwgMjU1JSwgMjU1JSwgYm90dG9tKTtcbiAgICB9XG5cbiAgICAmLmhlcm8tc2xpZGUtLWRhcms6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMCwgMCUsIDAlLCBib3R0b20pO1xuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCU7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAmLS10b3Age1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZS10b3AtYm90dG9tO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tbGlnaHQ6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMjU1LCAyNTUlLCAyNTUlLCBib3R0b20pO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLCAwJSwgMCUsIGJvdHRvbSk7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBAZXh0ZW5kICVoZXJvLXNsaWRlLWZpZ2NhcHRpb24tdG9wLWJvdHRvbTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGJvdHRvbTtcbiAgICB9XG4gIH1cblxuICAmLS1ib3R0b20ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZS10b3AtYm90dG9tO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tbGlnaHQ6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMjU1LCAyNTUlLCAyNTUlLCB0b3ApO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLCAwJSwgMCUsIHRvcCk7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBAZXh0ZW5kICVoZXJvLXNsaWRlLWZpZ2NhcHRpb24tdG9wLWJvdHRvbTtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIERhcmsgZm9udCBzdHlsZXMgKi9cbiAgJi0tZGFyayBmaWdjYXB0aW9uIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgKiB7XG4gICAgICAgIHRleHQtc2hhZG93OiAycHggMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIExlZnQgYW5kIHJpZ2h0IGZpZ2NhcHRpb24qL1xuJWhlcm8tc2xpZGUtZmlnY2FwdGlvbiB7XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgJi1sZWZ0LXJpZ2h0IHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgJi10b3AtYm90dG9tIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDAgMjAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4laGVyby1zbGlkZS1ncmFkaWVudC1mYWRlIHtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTtcbiAgb3BhY2l0eTogMC41O1xuXG4gICYtbGVmdC1yaWdodCB7XG4gICAgQGV4dGVuZCAlaGVyby1zbGlkZS1ncmFkaWVudC1mYWRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gICYtdG9wLWJvdHRvbSB7XG4gICAgQGV4dGVuZCAlaGVyby1zbGlkZS1ncmFkaWVudC1mYWRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MCU7XG4gIH1cbn1cblxuXG4uaGVyby1zbGlkZS0tY2VudGVyLXNwZWNpYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZGFyay1jb2xvciwgMTAlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvY29sbGFnZS5qcGcnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHotaW5kZXg6IC0xMTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwcHg7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgaGVpZ2h0OiA2MHZ3O1xuICAgICAgd2lkdGg6IDEyMCU7XG4gICAgfVxuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3JkZXI6IC0xO1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn0iLCIvKiBEZWZhdWx0IEJsb2NrcyAqL1xuLmlubGluZS13cmFwIHtcbiAgbWF4LXdpZHRoOiAkZGVza3RvcC14bC13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgNSU7XG59XG5cbi5hbGlnbmNlbnRlciAuc2VjdGlvbi10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBociB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8qIEltYWdlIEdhbGxlcnkgKi9cbi5pbWFnZS1nYWxsZXJ5LXNlY3Rpb24ge1xuICBwYWRkaW5nOiA1MHB4IDUlO1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgfVxufVxuXG4uaW1hZ2UtZ2FsbGVyeS1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBwYWRkaW5nOiAzcHg7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gIH1cblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG4vKiBMUiBMYXlvdXQgKi9cbi5sci1sYXlvdXQge1xuICAvLyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi8uLi9zdGF0aWMvYmFja2dyb3VuZC5qcGdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDAwcHg7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxuXG4gICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgLmlubGluZS13cmFwIHtcbiAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwO1xuICAgICAgfVxuXG4gICAgICBmaWd1cmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbmxpbmUtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBleHRlbmQgJWZsZXhib3gtYy1jO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMHB4LCAyKTtcbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDA7XG4gICAgaGVpZ2h0OiA5MHZ3O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGhlaWdodDogNzB2aDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGhlaWdodDogNTB2dztcbiAgICAgIG1heC1oZWlnaHQ6IDcwdmg7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRvZmYtd2hpdGUsIDMlKTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB3aWR0aDogY2FsYygyNXZ3KTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogY2FsYyg1MHZ3ICsgNjBweCk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZmVhdHVyZS1hY3RpdmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBtYXgtd2lkdGg6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMzBweCA1JTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDEwMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2Vjb25kYXJ5LWdyYXBoaWMtMCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDAuMztcbiAgd2lkdGg6IDI1dnc7XG4gIGhlaWdodDogMjV2dztcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTIuNXZ3KTtcbiAgdG9wOiBjYWxjKDUwJSAtIDEyLjV2dyk7XG59XG5cbi8qIEVjb21tZXJjZSBIaWdobGlnaHRzICovXG4uYXR0cmlidXRlLWhpZ2hsaWdodHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgcGFkZGluZzogNjBweCA1JSA1MHB4O1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIHBhZGRpbmc6IDYwcHggMTAlIDUwcHg7XG4gIH1cblxuICAuaW5saW5lLXdyYXAge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMjVweCwgNCk7XG5cbiAgICA+KiB7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pY29uLWNhcmQge1xuICAgIGltZyB7XG4gICAgICBmaWx0ZXI6IHNhdHVyYXRlKDApIGludmVydCgxKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi8qIEZvb2QgTWVudSAqL1xuLmRpc2gtbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRvZmYtd2hpdGUsIDEwJSk7XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDEgNDUlO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgNXB4KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cblxuICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kaXNoLXRpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuXG4gIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICB9XG59XG5cblxuLyogUHJvZHVjdCBGZWF0dXJlICovXG4ubGlicmFyeS1nYWxsZXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICB9XG5cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmUge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgYm90dG9tOiAtMzAwcHg7XG4gICAgfVxuICB9XG5cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmUuYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID5pbWcge1xuICAgICAgdHJhbnNpdGlvbjogMC42cztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiAwLjZzO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogaHNsYSgwLCAwJSwgMCUsIDAuNSk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDUwcHg7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBTdGF0ZSB3aGVuIG5vdCBhY3RpdmUgKi9cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmU6bm90KC5hY3RpdmUpIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCgwLCAwJSwgOTUlKTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2woMCwgMCUsIDg1JSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBoc2woMCwgMCUsIDg1JSk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBkYXJrZW4oJG1haW4tY29sb3IsIDIwJSk7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKiBDb250YWN0IDEgKi9cbi5jb250YWN0LTEge1xuICBtYXJnaW46IDgwcHggMDtcbn1cblxuLmNvbnRhY3QtZGV0YWlscy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZ2FwOiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiA4MHB4IDA7XG5cbiAgLmNvbnRhY3QtZGV0YWlsIHtcbiAgICBmbGV4OiAxIDEgMjAwcHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuXG4gICAgaSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cblxuICAgIC5jb250YWN0LWRldGFpbC1jYXB0aW9uIHtcbiAgICAgIGIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhY3QtMV9tYXBlbWJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiA1MHB4IDAgMTUwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogNzUlO1xuICAgIGJvdHRvbTogLTI1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLXdoaXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oJG9mZi13aGl0ZSwgMTAlKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRvZmYtd2hpdGUsIDEwJSk7XG5cbiAgICBAZXh0ZW5kIC5pbWFnZS1yZWxlYXNlO1xuICB9XG59IiwiLnBvc3QtYXJjaGl2ZSB7XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgNTBweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAuYXJjaGl2ZS1kZXNjcmlwdGlvbiB7XG4gICAgQGV4dGVuZCAlcmVndWxhci1iYW5uZXI7XG4gIH1cblxuICAucG9zdC1lbnRyeS1saXN0IHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMyAxIDA7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtZW50cnktbGlzdCB7XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgMzBweCk7XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMTVweCwgMik7XG4gICAgQGluY2x1ZGUgY29sdW1uLWxheW91dCgyLCAzKTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gIHAge1xuICAgIEBleHRlbmQgLnNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cblxuICAuY2F0ZWdvcnktbGluayB7XG4gICAgQGV4dGVuZCAlYnRuLXNtYWxsO1xuICAgIEBleHRlbmQgJWJ0bi0xLWxpZ2h0O1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gIH1cblxuICAuZW50cnktY29udGVudF9fdGh1bWJuYWlsLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxNzBweDtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxufVxuIiwiLyogU3RydWN0dXJlIG9mIHNpbmdsZSBwb3N0Ki9cbi5wb3N0LXNpbmdsZSB7XG4gIC5lbnRyeSB7XG4gICAgQGluY2x1ZGUgY2hpbGQtbWFyZ2luKCdib3R0b20nLCA1MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAuaGFzLXBvc3QtdGh1bWJuYWlsIC5lbnRyeS1oZWFkZXIge1xuICAgIEBleHRlbmQgJWRhcmstdGhlbWU7XG4gICAgYmFja2dyb3VuZDogJG1haW4tY29sb3I7XG5cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMyAxIDA7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICB9XG4gIH1cbn1cbi8qIFByaW1hcnkgc2lkZWJhciBvbmx5ICovXG4uc2lkZWJhci1wcmltYXJ5IHtcbiAgLndpZGdldC10aXRsZSB7XG4gICAgQGluY2x1ZGUgbGluZS1ib3JkZXIoNHB4LCBoc2woMCwwJSw4NSUpLCAnYm90dG9tJywgMTBweCk7XG4gIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICAuZW50cnktbWV0YSB7XG4gICAgQGV4dGVuZCAuc21hbGw7XG4gICAgY29sb3I6IGhzbCgwLDAlLDcwJSk7XG4gIH1cbn1cbi8qIFNpbmdsZSBQYWdlIENvbnRlbnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ucG9zdC1zaW5nbGUge1xuICAuZW50cnktY29udGVudCB7XG4gICAgQGV4dGVuZCAlYmxvZy10eXBvZ3JhcGh5O1xuXG4gICAgPiB1bCB7XG4gICAgICBAZXh0ZW5kIC5pdGVtLWxpc3Q7XG4gICAgfVxuXG4gICAgPiBvbCB7XG4gICAgICBAZXh0ZW5kIC5udW1iZXItbGlzdDtcbiAgICB9XG4gIH1cbiAgLy9cbiAgLy8gLmNvbW1lbnQtcmVzcG9uZCB7XG4gIC8vICAgcGFkZGluZzogMCA1JTtcbiAgLy8gfVxufVxuIiwiLyogRWNvbW1lcmNlIEhpZ2hsaWdodHMgKi9cbi5lY29tbWVyY2UtaGlnaGxpZ2h0cyB7XG4gIEBpbmNsdWRlIGNvbHVtbnMoMTVweCwgNCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICBwYWRkaW5nOiA2MHB4IDUlIDUwcHg7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgcGFkZGluZzogNjBweCAxMCUgNTBweDtcbiAgfVxuXG4gID4qIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuaWNvbi1jYXJkIHtcbiAgICBpbWcge1xuICAgICAgZmlsdGVyOiBzYXR1cmF0ZSgwKSBpbnZlcnQoMSk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4uaWNvbi1jYXJkIHtcbiAgQGluY2x1ZGUgdGh1bWJuYWlsLWNhcmQoMTAwJSwgNDBweCwgcmlnaHQsIDEwcHgpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgfVxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHt9XG4gIH1cblxuICBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDIwJSk7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLyogRmxvYXRpbmcgYnV0dG9uICovXG4uZmxvYXRpbmctd2hhdHNhcHAtYnV0dG9uIHtcbiAgQGluY2x1ZGUgY2lyY2xlLW9iamVjdCg0NnB4LCAjMjVkMzY2LCAyM3B4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGJvdHRvbTogMTBweDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7XG59XG5cbi8qIFN3aXBlciBCdXR0b24gKi9cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiVyYWRpYWwtZ3JhcGhpYyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSByb3RhdGUoMTBkZWcpO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vLi4vc3RhdGljL3JhZGlhbC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgd2lkdGg6IDM1MHB4O1xuICAgIGhlaWdodDogMzUwcHg7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAxNzVweCk7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDE3NXB4KTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIGZpbHRlcjogc2F0dXJhdGUoMCk7XG4gIH1cbn1cblxuLmhlcm8tc2xpZGUtLWNlbnRlcixcbi5oZXJvLXNsaWRlLS1jZW50ZXItc3BlY2lhbCB7XG4gIGZpZ2NhcHRpb24ge1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMTA3ZGVnLCAyMyUsIDEwJSwgMCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAvLyBAZXh0ZW5kICVyYWRpYWwtZ3JhcGhpYztcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG5cbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICB9XG5cblxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogc2tld1goMGRlZykgc2tld1koLTZkZWcpO1xuICAgICAgICBmb250LXNpemU6IDdyZW07XG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AteGwge1xuICAgICAgICBmb250LXNpemU6IDhyZW07XG4gICAgICB9XG5cbiAgICAgIGJyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIEluc3RhZ3JhbSBHYWxsZXJ5ICovXG4uaWctZmVhdHVyZS1nYWxsZXJ5LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgODAlKTtcbiAgei1pbmRleDogMDtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL2NvbGxhZ2UuanBnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLmlnLWZlYXR1cmUtZ2FsbGVyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuXG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKiBBYm91dCBTZWN0aW9uICovXG4uYWJvdXQtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNTAwcHg7XG5cbiAgZmlndXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWNvbG9yO1xuICBjb2xvcjogI2ZmZjtcbiAgbWluLWhlaWdodDogNTAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgbGVmdDogYXV0bztcbiAgcGFkZGluZzogNTBweDtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTMwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IC00NXB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3NjZW5lLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTEwZGVnKTtcbiAgfVxuXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAvLyBwYWRkaW5nOiAxNnB4IDE2cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICB9XG4gIH1cbn1cblxuLyogQWJvdXQgc2VjdGlvbiAyKi9cbi5hYm91dC1zZWN0aW9uLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICB6LWluZGV4OiAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3dwLWNvbnRlbnQvdXBsb2Fkcy9TaG9wZnJvbnQtTW9ja3VwLmpwZWcnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaHNsYSgwLCAwJSwgMjAlLCAwLjgpO1xuICB9XG5cbiAgZmlndXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWNvbnRlbnQtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogNTBweCA1JTtcblxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGxlZnQ6IDI1JTtcbiAgICBwYWRkaW5nOiA1MHB4O1xuICB9XG5cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIC8vIHBhZGRpbmc6IDE2cHggMTZweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICAgIGNvbG9yOiBoc2woMCwgMCUsIDEwMCUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBjb2xvcjogJGdyZWVuO1xuICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMTAwJSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC8vICY6YWZ0ZXIge1xuICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgIHotaW5kZXg6IC0xO1xuICAgIC8vICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gICB0b3A6IDA7XG4gICAgLy8gICBsZWZ0OiAwO1xuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtd2hpdGU7XG4gICAgLy8gfVxuICB9XG59XG5cbi8qIFByb21vdGlvbnMgKi9cbi5ob21lcGFnZS1wcm9tb3Rpb25zLWZlYXR1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgODAlKTtcbiAgei1pbmRleDogMDtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL2NvbGxhZ2UuanBnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB6LWluZGV4OiAtMTtcblxuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvbW90aW9ucy13cmFwcGVyLWlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAzMHB4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuXG4ucHJvbW90aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgfVxuXG4gIC5wcm9tb3Rpb25fX2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgQGluY2x1ZGUgY2hpbGQtbWFyZ2luKCdib3R0b20nLCAxMHB4KTtcbiAgfVxufVxuXG4vKiBNZW51IFNlY3Rpb24gKi9cblxuLm1lbnUtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZGFyay1jb2xvciwgMTAlKTtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvY29sbGFnZS5qcGcnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHotaW5kZXg6IC0zO1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIH1cbiAgfVxuXG4gIC5pbmxpbmUtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDMwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gICAgPioge1xuICAgICAgZmxleDogMSAxIDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAvLyBwYWRkaW5nOiAxNnB4IDE2cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMTAwJSk7XG4gICAgfVxuXG4gICAgLy8gJjphZnRlciB7XG4gICAgLy8gICBjb250ZW50OiBcIlwiO1xuICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgei1pbmRleDogLTE7XG4gICAgLy8gICB3aWR0aDogMTAwJTtcbiAgICAvLyAgIGhlaWdodDogMTAwJTtcbiAgICAvLyAgIHRvcDogMDtcbiAgICAvLyAgIGxlZnQ6IDA7XG4gICAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTtcbiAgICAvLyB9XG4gIH1cblxuICAuaW1hZ2UtaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogLTE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgfVxuXG4gICAgLy8gJjphZnRlciB7XG4gICAgLy8gICBjb250ZW50OiBcIlwiO1xuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogaHNsYSgwLCAwJSwgMzAlLCAwLjUpO1xuICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgdG9wOiAwO1xuICAgIC8vICAgbGVmdDogMDtcbiAgICAvLyAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gICBoZWlnaHQ6IDMwMHB4O1xuICAgIC8vICAgdG9wOiBjYWxjKDUwJSAtIDE1MHB4KTtcbiAgICAvLyAgIHotaW5kZXg6IC0yO1xuICAgIC8vICAgY2xpcC1wYXRoOiBwb2x5Z29uKDIwJSAwJSwgODAlIDAlLCAxMDAlIDEwMCUsIDAlIDEwMCUpO1xuICAgIC8vIH1cbiAgfVxufVxuXG4uaG9tZS1hYm91dC1pbWFnZS0tMSB7XG4gIHRyYW5zaXRpb246IDAuMXMgZWFzZS1vdXQ7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gIH1cbn1cblxuLmhvbWUtYWJvdXQtaW1hZ2UtLTIge1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2Utb3V0O1xuICBtYXJnaW4tdG9wOiAtMjBweDtcblxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICB9XG59XG5cbi8qIFNQRUNJQUwgQlVUVE9OICovXG4uYnRuLTEge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBza2V3KC0xMGRlZyk7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC8vIGJvcmRlci1sZWZ0OiA0NXB4IHNvbGlkICRyZWQ7XG4gICAgLy8gYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAvLyBib3JkZXItcmlnaHQ6IDQ1cHggc29saWQgJGdyZWVuO1xuICAgIC8vIGJvcmRlci1sZWZ0OiAzZW0gc29saWQgaHNsKDAsIDAlLCAyMCUpO1xuICAgIC8vIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgNDAlKTtcbiAgICAvLyBib3JkZXItcmlnaHQ6IDNlbSBzb2xpZCBoc2woMCwgMCUsIDYwJSk7XG4gICAgYmFja2dyb3VuZDogaHNsKDAsIDAlLCA5MCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkbWFpbi1jb2xvciwgMTAlKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXG4gICAgLy8gdGV4dC1zaGFkb3c6IDBweCAwcHggNXB4IGhzbCgwLCAwJSwgMCUsIDAuNSk7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vKiBJbnRlcmlvciBQYWdlICovXG4uaW50ZXJpb3Itc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZGFyay1jb2xvciwgMTAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICAvLyBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgLy8gaGVpZ2h0OiAxMDB2aDtcbiAgICAvLyBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9jb2xsYWdlLmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICB9XG5cbiAgLmlubGluZS13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjBweDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgZ2FwOiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgZ2FwOiA4MHB4O1xuICAgIH1cblxuICAgID4qIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnRlcmlvci1jb250ZW50IHtcbiAgICBAZXh0ZW5kICVkYXJrLXRoZW1lO1xuICAgIGZsZXg6IDIgMSAwO1xuICAgIGhlaWdodDogNTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMCwgMCUsIDAlLCAwLjkpO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gIH1cblxuICAuaW50cmlvci1pbWFnZXMtY29sdW1uLTEge31cblxuICAuaW50cmlvci1pbWFnZXMtY29sdW1uLTIge31cblxuICAuaW50cmlvci1pbWFnZXMtY29sdW1uLTEsXG4gIC5pbnRyaW9yLWltYWdlcy1jb2x1bW4tMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBnYXA6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2Utb3V0O1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDB2dztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdC1kZXRhaWxzLXdyYXBwZXItMSB7XG4gIHBhZGRpbmc6IDYwcHggNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMDtcbiAgbWFyZ2luOiAwO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZGFyay1jb2xvciwgMTAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvY29sbGFnZS5qcGcnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nOiAxMDBweCA1MHB4O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uLy4uL3N0YXRpYy9yYWRpYWwuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICBsZWZ0OiAtMTAwcHg7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDM1dncpO1xuICAgIGFuaW1hdGlvbjogcm90YXRpbmctYW5pbWF0aW9uIDcwcyBsaW5lYXIgMHMgaW5maW5pdGU7XG4gIH1cblxuICBhc2lkZSB7XG4gICAgQGluY2x1ZGUgY2hpbGQtbWFyZ2luKFwiYm90dG9tXCIsIDIwcHgpO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gICAgfVxuXG5cbiAgICBwIGkge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTtcblxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbmxpbmUtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBnYXA6IDMwcHg7XG4gICAgfVxuXG4gICAgJi5jb2xzLTMge1xuICAgICAgZ2FwOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0LWRldGFpbHMtZm9ybSB7XG4gIC8vIGZsZXg6IDEgMSA3MCU7XG5cbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBkYXJrZW4oJG9mZi13aGl0ZSwgMTUlKTtcbiAgfVxuXG4gIGZvcm0ge1xuXG4gICAgbGFiZWwsXG4gICAgZGl2LFxuICAgIHAge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi8qIEhvbWVwYWdlIG1haW4gc2VjdGlvbiAqL1xuXG5Aa2V5ZnJhbWVzIHJvdGF0aW5nLWFuaW1hdGlvbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuaHIud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucHJvbW90aW9uLXBhZ2UgLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgODAlKTtcbiAgei1pbmRleDogMDtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL2NvbGxhZ2UuanBnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICB9XG4gIH1cblxuICAuZW50cnktY29udGVudCB7XG4gICAgbWFyZ2luOiA1MHB4IGF1dG87XG4gICAgcGFkZGluZzogMCA1JTtcbiAgICBtYXgtd2lkdGg6ICRkZXNrdG9wLXhsLXdpZHRoO1xuICB9XG59XG5cbi8qIFNpbmdsZSBQYWdlICovXG4uc2luZ2xlLXBhZ2UgLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgODAlKTtcbiAgei1pbmRleDogMDtcbiAgQGV4dGVuZCAlZGFyay10aGVtZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL2NvbGxhZ2UuanBnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICB9XG4gIH1cblxuICAuZW50cnktY29udGVudCB7XG4gICAgbWFyZ2luOiA1MHB4IGF1dG87XG4gICAgcGFkZGluZzogMCA1JTtcbiAgICBtYXgtd2lkdGg6ICRkZXNrdG9wLXdpZHRoO1xuICB9XG5cbiAgZm9ybSBsYWJlbCB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn0iXX0= */
