@charset "UTF-8";
/*!
	Theme Name: Yao Yao Theme
	Theme URI:
	Description: This is the theme created for Yao Yao
	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*/
/* 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, .slick-dots li button:before {
  transition: all 0.3s ease-in-out;
}

/* Flexbox
 --------------------------------------------- */
.floating-whatsapp-button, .lr-layout .inline-wrap, .lr-layout .content-page .entry-content, .content-page .lr-layout .entry-content, .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%EF%B9%96.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: "Cabin", sans-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: 400;
  color: #2c7072;
  line-height: 1.2;
  margin: 0 0 2rem;
}

h1 {
  font-size: 5rem;
  font-family: "Lilita One", cursive;
}

h2 {
  font-size: 3.6rem;
  font-family: "Lilita One", cursive;
}

h3 {
  font-size: 2.4rem;
  font-family: "Lilita One", cursive;
}

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: #4ab6ba;
}
a:hover {
  text-decoration: underline;
  color: #3a9497;
}

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
 --------------------------------------------- */
.post-single .has-post-thumbnail .entry-header a,
.post-single .has-post-thumbnail .entry-header p {
  color: #fff;
}
.post-single .has-post-thumbnail .entry-header h1,
.post-single .has-post-thumbnail .entry-header h2,
.post-single .has-post-thumbnail .entry-header h3,
.post-single .has-post-thumbnail .entry-header h4,
.post-single .has-post-thumbnail .entry-header h5,
.post-single .has-post-thumbnail .entry-header h6 {
  color: #fff;
}
.post-single .has-post-thumbnail .entry-header 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);
}

/* Wave */
@keyframes wave {
  0% {
    transform: translateX(100px);
  }
  50% {
    transform: translateX(50px) translateY(10px);
  }
  100% {
    transition: translateX(100px);
  }
}
@keyframes wave2 {
  0% {
    transform: translateX(-100px);
  }
  50% {
    transform: translateX(-50px) translateY(0px);
  }
  100% {
    transition: translateX(-100px);
  }
}
@keyframes bounce {
  0% {
    transform: translateY(0px) scale(1);
  }
  50% {
    transform: translateY(-20px) scale(1.02);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}
@keyframes tilt {
  0% {
    transform: translateY(0px) scale(1) rotate(0deg);
  }
  50% {
    transform: translateY(-20px) scale(1.02) rotate(5deg);
  }
  100% {
    transform: translateY(0px) scale(1) rotate(0deg);
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes flip {
  0% {
    transform: scaleX(-1);
  }
  50% {
    transform: scaleX(0);
  }
  100% {
    transform: scaleX(-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;
  background-color: #6fc5c8;
}

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

.site-header + * {
  margin-top: 80px;
}

/* 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;
}
.header-widget-area a:hover,
.header-widget-area button:hover, .menu-toggle:hover {
  color: #6fc5c8;
}

/* 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;
  background-color: #41a6aa;
  background-color: #f3f2ed;
  padding: 0 30px;
  top: 0;
  width: 100%;
}
.site-header > .wrap {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  /* Structure */
}
.site-header > .wrap > *.pre-header {
  flex: 0 0 100%;
}
.site-header > .wrap > *.title-area {
  flex: 2 1 0;
}
@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: 120px;
  order: 2;
  margin: 10px auto 0;
  padding: 15px 20px 25px;
  background-color: #6fc5c8;
  aspect-ratio: 1;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #aadadc, 0 0 0 6px #41a6aa;
  overflow: hidden;
  transition: 0.3s;
}
.title-area img {
  transition: 0.3s;
}
@media only screen and (min-width: 960px) {
  .title-area {
    order: 0;
    margin: 10px 20px -50px 20px;
  }
}
.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: #6fc5c8;
  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: relative;
  z-index: 1000;
  overflow: hidden;
  padding: 0;
  order: 4;
  margin: 0;
  font-size: 0;
  text-align: right;
}
.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: #6fc5c8;
}
.sub-menu-toggle.activated:before {
  transform: rotate(180deg);
  color: #94d4d6;
}

/* Header Menu
 --------------------------------------------- */
.menu-primary > li:focus a:after, .menu-primary > li:hover a:after {
  opacity: 1;
  max-height: 30px;
}

/* Header Menu Structure */
.nav-primary {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 109px;
  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;
    margin-right: 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: rgb(250, 250, 250);
  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 .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;
    flex: 1 1 0;
  }
}
.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 #6fc5c8;
  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 > a {
  background-color: #6fc5c8;
  color: #fff;
  margin: 0 10px;
}
@media only screen and (min-width: 960px) {
  .menu-primary .sub-menu .menu-item:hover {
    background-color: #6fc5c8;
  }
  .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-family: "Lilita One", cursive;
  font-weight: 400;
  color: #3a9497;
  font-size: 1.6rem;
}
@media only screen and (min-width: 960px) {
  .menu-primary a {
    height: 100%;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
}
.menu-primary a:hover {
  text-decoration: none;
}
.menu-primary a:after {
  content: "";
  position: absolute;
  left: calc(50% - 10px);
  bottom: 0px;
  width: 20px;
  height: 20px;
  background: url("../../../static/bearface.svg") no-repeat center/contain;
  transition: 0.3s;
  max-height: 0px;
  opacity: 0;
}
.menu-primary a i {
  font-weight: 400;
}
.menu-primary > li > a {
  padding: 20px 26px;
}
.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: #6fc5c8;
  }
}

/* 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: #9e1c25;
}
@media only screen and (max-width: 670px) {
  .pre-header a span {
    display: none;
  }
}

.site-header.header-scroll {
  border-radius: 0 0 30px 30px;
}
.site-header.header-scroll .title-area {
  margin: 5px 20px -10px 20px;
  width: 60px;
  aspect-ratio: 1;
  height: -webkit-fill-available;
  padding: 46px 0 0 0;
}
.site-header.header-scroll .title-area img {
  transform: scale(1.9);
}

/* 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 {
  position: relative;
  background: url("../../../static/stacked-waves.svg") no-repeat center/cover;
  width: 100%;
  padding: 60px 5% 180px;
  border-radius: 100% 500px 0 0;
}
@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;
  align-items: center;
}
@media only screen and (min-width: 960px) {
  .footer-widgets .wrap {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
  }
  .footer-widgets .wrap > * {
    margin-right: 30px;
  }
  .footer-widgets .wrap > *:last-child {
    margin-right: 0;
  }
}
.footer-widgets .widget-title {
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  font-size: 1.6rem;
  border-bottom: 1px solid #6fc5c8;
  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: row nowrap;
  margin: 20px 0;
}
.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: 6px 12px;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 400;
  font-family: "Lilita One", cursive;
  text-align: center;
  line-height: 1.2;
}
.footer-widgets .menu li a i {
  font-size: 16px;
}

.footer-widgets-1 img {
  max-width: 120px;
  width: 120px;
  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 .menu-item {
    width: auto;
  }
  .site-header #menu-social-media-menu {
    display: none;
  }
}

/* Site Footer
 --------------------------------------------- */
.site-footer {
  position: relative;
  background-color: #2c7072;
  color: hsl(34deg, 54%, 97%);
  line-height: 1.5;
  padding: 15px 5% 5px;
}
.site-footer:before {
  content: "";
  width: 100%;
  aspect-ratio: 1280/140;
  display: block;
  position: absolute;
  height: 200px;
  top: -198px;
  left: 0;
  z-index: 2;
  background: url("../../../static/bearqueue.png") repeat-x bottom/100% auto;
  animation: wave2 2s linear infinite;
}
.site-footer:after {
  content: "";
  width: 100%;
  aspect-ratio: 1280/140;
  display: block;
  position: absolute;
  height: 200px;
  top: -220px;
  left: 0px;
  z-index: 1;
  background: url("../../../static/bearqueue.png") repeat-x bottom/100% auto;
  animation: wave 2s linear infinite;
}
.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("http://localhost/yaoyao/static/background-pattern.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;
  cursor: pointer;
  padding: 0.9em 1.2em;
  font-size: 1.3rem;
}
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;
  cursor: pointer;
  padding: 0.6em 0.9em;
  font-size: 1.2rem;
}
.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;
  cursor: pointer;
  padding: 1.2em;
  font-size: 1.4rem;
}
.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: #4ab6ba;
  color: #fff;
  border-radius: 3px;
}
form input[type=submit]:hover, .btn-1:hover {
  color: #fff;
  background-color: #338285;
}
form input[type=submit]:active, .btn-1:active {
  transform: translateY(3px);
}
.btn-1-secondary {
  background-color: hsl(0deg, 0%, 60%);
  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%, 90%);
  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: #689447;
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-success:hover {
  color: #fff;
  background-color: #44602e;
}
.btn-1-success:active {
  transform: translateY(3px);
}
.btn-1-info {
  background-color: #369;
  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: #f7e720;
  color: #484303;
  border-radius: 3px;
}
.btn-1-warning:hover {
  color: #fff;
  background-color: #c3b507;
}
.btn-1-warning:active {
  transform: translateY(3px);
}
.btn-1-danger {
  background-color: #9e1c25;
  color: hsl(0deg, 0%, 100%);
  border-radius: 3px;
}
.btn-1-danger:hover {
  color: #fff;
  background-color: #5d1016;
}
.btn-1-danger:active {
  transform: translateY(3px);
}

/* Outline Button - btn-2
   --------------------------------------------- */
.btn-2 {
  background-color: transparent;
  color: #6fc5c8;
  border: 2px solid #94d4d6;
  border-radius: 5px;
  text-transform: none;
}
.btn-2:hover {
  background-color: #6fc5c8;
  border-color: #6fc5c8;
  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: #41a6aa;
}

/* Button Icon Text - .btn-icon-text
   --------------------------------------------- */
.btn-icon-text {
  display: flex;
  align-items: center;
  border-radius: 3px;
  background-color: #41a6aa;
  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 #60d3d7;
  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 #689447;
  border-left: solid 4px #689447;
}

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: #6fc5c8;
  font-family: "Cabin", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 10px;
}

/* 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 #6fc5c8;
  width: 50px;
}

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

/* 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: "Lilita One", cursive;
  color: hsl(34deg, 54%, 97%);
}
.post-archive .archive-description img, .entry-header img,
.regular-banner img {
  opacity: 0.8;
}

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

@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: #fff;
    flex-direction: column;
  }
}
@media only screen and (min-width: 670px) {
  .hero-slide {
    height: 70vh;
  }
}
@media only screen and (min-width: 960px) {
  .hero-slide {
    max-height: 56.25vw;
    height: 100vh;
  }
}
.hero-slide figcaption {
  position: relative;
  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 5%;
    text-align: center;
    align-items: center;
    width: auto;
    margin: 0;
    background-color: #fff;
  }
  .hero-slide figcaption:before {
    position: absolute;
    content: "";
    left: 0;
    top: -99px;
    width: 100%;
    height: 100px;
    background: linear-gradient(to top, hsl(255deg, 100%, 100%) 0%, hsla(255deg, 100%, 100%, 0) 100%);
  }
  .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: #338285;
  font-weight: 700;
}
.hero-slide figcaption h4 {
  font-family: "Indie Flower", cursive;
  font-size: 1.3rem;
  color: #4ab6ba;
  font-weight: 700;
  margin-bottom: 0;
}
.hero-slide img {
  position: relative;
}
@media only screen and (max-width: 670px) {
  .hero-slide img {
    height: 90vw;
  }
}
.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 5%;
}
@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%;
}

/* Default Blocks */
.inline-wrap, .content-page .entry-content {
  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, .lr-layout:nth-of-type(even) .content-page .entry-content, .content-page .lr-layout:nth-of-type(even) .entry-content {
    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, .lr-layout .content-page .entry-content, .content-page .lr-layout .entry-content {
  position: relative;
  display: flex;
  flex-flow: row wrap;
}
.lr-layout .inline-wrap > *, .lr-layout .content-page .entry-content > *, .content-page .lr-layout .entry-content > * {
  width: 100%;
  margin-bottom: 0px;
}
@media only screen and (min-width: 670px) {
  .lr-layout .inline-wrap > *, .lr-layout .content-page .entry-content > *, .content-page .lr-layout .entry-content > * {
    width: calc((100% - (0px * (2 - 1))) / 2);
    margin-right: 0px;
  }
  .lr-layout .inline-wrap > *:nth-child(2n), .lr-layout .content-page .entry-content > *:nth-child(2n), .content-page .lr-layout .entry-content > *: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: white;
    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: #6fc5c8;
  padding: 60px 5% 50px;
}
@media only screen and (min-width: 960px) {
  .attribute-highlights {
    padding: 60px 10% 50px;
  }
}
.attribute-highlights .inline-wrap, .attribute-highlights .content-page .entry-content, .content-page .attribute-highlights .entry-content {
  display: flex;
  flex-flow: row wrap;
}
.attribute-highlights .inline-wrap > *, .attribute-highlights .content-page .entry-content > *, .content-page .attribute-highlights .entry-content > * {
  width: 100%;
  margin-bottom: 25px;
}
@media only screen and (min-width: 670px) {
  .attribute-highlights .inline-wrap > *, .attribute-highlights .content-page .entry-content > *, .content-page .attribute-highlights .entry-content > * {
    width: calc((100% - (25px * (4 - 1))) / 4);
    margin-right: 25px;
  }
  .attribute-highlights .inline-wrap > *:nth-child(4n), .attribute-highlights .content-page .entry-content > *:nth-child(4n), .content-page .attribute-highlights .entry-content > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 670px) {
  .attribute-highlights .inline-wrap > *, .attribute-highlights .content-page .entry-content > *, .content-page .attribute-highlights .entry-content > * {
    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: #f0e0cc;
}
.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: #4ab6ba;
  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: #6fc5c8;
  border-left: 3px solid #3a9497;
}
.library-gallery .single-product-feature:not(.active) figcaption:hover h3 {
  color: #fff;
}
.library-gallery .single-product-feature:not(.active) h3 {
  margin: 0;
  font-family: "Cabin", sans-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: #6fc5c8;
}
.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: hsl(34deg, 54%, 97%);
  z-index: -1;
  border-top: 1px solid #f0e0cc;
  border-bottom: 1px solid #f0e0cc;
}

.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: #6fc5c8;
}
.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: #6fc5c8;
  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: #3a9497;
}
@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: #6fc5c8;
}

/* Social Media Feed */
.sm-section {
  position: relative;
  z-index: 0;
}

.sm-display {
  display: flex;
  justify-content: center;
  gap: 30px;
}
.sm-display figure {
  position: relative;
  width: 250px;
  aspect-ratio: 1;
  z-index: 0;
  transition: 0.3s;
  top: 0;
}
.sm-display figure:hover {
  top: -10px;
}
.sm-display figure:hover img {
  box-shadow: 0 8px 0 3px hsl(182deg, 45%, 46%);
}
.sm-display figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  transition: 0.3s;
  box-shadow: 0 6px 0 4px hsla(182deg, 45%, 46%, 0.5);
  border-radius: 50%;
}

/* Main Feature */
.main-feature {
  position: relative;
  z-index: 0;
  padding-bottom: 50px;
  background-color: #fff8ec;
}
.main-feature:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/main-feature-bg.jpeg") no-repeat center/cover;
  z-index: -2;
}
@media only screen and (min-width: 960px) {
  .main-feature:before {
    background-attachment: fixed;
  }
}
.main-feature:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/dots-background.png") repeat-x bottom/1000px;
  opacity: 1;
  z-index: -1;
  filter: invert(1);
}
@media only screen and (min-width: 960px) {
  .main-feature:after {
    background-attachment: fixed;
  }
}

.main-feature-single {
  position: relative;
  padding: 80px;
  min-height: 90vh;
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  align-items: center;
}
.main-feature-single figcaption {
  position: relative;
  z-index: 5;
}
.main-feature-single h1 {
  color: #6fc5c8;
  font-size: 45px;
  text-shadow: 1px 1px 0px #338285;
  line-height: 1;
}
.main-feature-single h1 bdi {
  font-size: 42px;
}
.main-feature-single figure {
  z-index: 3;
  border-radius: 50%;
  box-shadow: 0 8px 0 6px hsla(182deg, 45%, 46%, 0.5);
  box-shadow: 0 8px 0 6px hsla(38deg, 20%, 20%, 0.5);
}
.main-feature-single img {
  width: 600px;
  animation: rotate 120s linear infinite;
}
.main-feature-single .speech-bubble {
  top: calc(50% - 200px);
  left: 5%;
  font-family: "Lilita One", cursive;
}
.main-feature-single .speech-bubble:before {
  content: "";
  position: absolute;
  height: 280px;
  top: 120px;
  right: -120px;
  z-index: -2;
  aspect-ratio: 300/260;
  background: url("../../../static/yoga.png") no-repeat center/contain;
}
.main-feature-single .speech-bubble-h-flip {
  left: auto;
  right: 5%;
  top: auto;
  bottom: 0;
}
.main-feature-single .speech-bubble-h-flip:before {
  content: none;
}
.main-feature-single .speech-bubble-2 {
  top: calc(50% - 200px);
  left: 5%;
}

.speech-bubble {
  position: absolute;
  z-index: 0;
  aspect-ratio: 493/327;
  display: flex;
  justify-content: center;
  align-items: center;
}
.speech-bubble:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/speech-bubble.png") no-repeat center/contain;
  z-index: -1;
}
.speech-bubble p {
  position: relative;
  font-family: "Lilita One", cursive;
  font-size: 20px;
  color: #2c7072;
  padding: 20px 30px;
  max-width: 250px;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 0;
}

.speech-bubble-h-flip:after {
  transform: scale(-1);
}

.speech-bubble-2 {
  position: absolute;
  z-index: 0;
  aspect-ratio: 435/407;
  display: flex;
  justify-content: center;
  align-items: center;
}
.speech-bubble-2:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url("../../../static/speech-bubble-2.png") no-repeat center/contain;
  z-index: -1;
}
.speech-bubble-2 p {
  position: relative;
  font-family: "Lilita One", cursive;
  font-size: 20px;
  color: #2c7072;
  padding: 20px 40px;
  max-width: 250px;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 0;
  transform: rotate(-10deg);
}

/* USP section */
.usp-section {
  position: relative;
  z-index: 0;
  background-color: #6fc5c8;
}
.usp-section:before {
  content: "";
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0;
  height: 100px;
  background: url("../../../static/waves-opacity-cream.svg") no-repeat top/contain;
  z-index: -1;
}
.usp-section:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -2;
  background: url("../../../static/shutterstock_1106484377.jpg") no-repeat center/cover;
  opacity: 0.2;
}
@media only screen and (min-width: 960px) {
  .usp-section:after {
    background-attachment: fixed;
  }
}
.usp-section .inline-wrap, .usp-section .content-page .entry-content, .content-page .usp-section .entry-content {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
  gap: 80px;
  margin-block: 60px;
}
.usp-section .inline-wrap:before, .usp-section .content-page .entry-content:before, .content-page .usp-section .entry-content:before {
  content: "";
  position: absolute;
  left: -50px;
  top: 20%;
  width: 250px;
  height: 250px;
  background: url("../../../static/planet.png") no-repeat center/contain;
  animation: tilt 2s ease-in-out infinite;
}
.usp-section .inline-wrap:after, .usp-section .content-page .entry-content:after, .content-page .usp-section .entry-content:after {
  content: "";
  position: absolute;
  right: -50px;
  top: auto;
  bottom: 10%;
  width: 250px;
  height: 250px;
  background: url("../../../static/conductor.png") no-repeat center/contain;
  animation: bounce 2s ease-in-out infinite;
}
.usp-section figure[class^=usp] {
  position: relative;
  width: 800px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}
.usp-section figure[class^=usp] img {
  width: 50%;
  aspect-ratio: 4/3;
  border-radius: 30px;
  object-fit: cover;
}
.usp-section figure[class^=usp] figcaption {
  position: relative;
  z-index: 0;
  padding: 40px 20px 40px 40px;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.usp-section figure[class^=usp] figcaption:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
}
.usp-section figure[class^=usp] figcaption:after {
  content: "";
  background: url("data: image/svg+xml; base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIyLjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxNzIgMTQ2LjIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDE3MiAxNDYuMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGRkY7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTIwLjMsMjEuMmMxMi43LDcuNSwyNi4zLDE0LDM2LjYsMjUuM3MxNy4yLDI3LjQsMTQuNSw0MS44cy0xNC45LDI3LTI3LjQsMzYuOWMtMTIuNSw5LjgtMjUuMiwxNy0zOC41LDE5LjYKCWMtMTMuMiwyLjctMjcsMS00MC4zLTIuOGMtMTMuMi0zLjgtMjUuOS05LjctMzguNC0xOC43Yy0xMi42LTkuMS0yNS0yMS4yLTI2LjYtMzQuN2MtMS41LTEzLjUsNy43LTI4LjQsMTUuNi00My4xCglDMjMuNiwzMC43LDMwLDE2LDQxLjMsNy45YzExLjItOC4xLDI3LjMtOS43LDQxLjEtNi4yUzEwNy43LDEzLjcsMTIwLjMsMjEuMnoiLz4KPC9zdmc+Cg==") no-repeat center/contain;
  filter: drop-shadow(5px 10px 0px #3a9497);
}
.usp-section figure[class^=usp] figcaption p {
  font-family: "Lilita One", cursive;
  font-size: 3rem;
  color: #2c7072;
  line-height: 1.2;
  text-align: center;
}
.usp-section figure[class^=usp]:nth-child(even) {
  margin-left: 80px;
}
.usp-section figure[class^=usp]:nth-child(even) img {
  transform: rotate(-5deg) scale(1.3);
}
.usp-section figure[class^=usp]:nth-child(odd) {
  margin-left: -80px;
}
@media only screen and (min-width: 670px) {
  .usp-section figure[class^=usp]:nth-child(odd) {
    flex-flow: row-reverse;
  }
}
.usp-section figure[class^=usp]:nth-child(odd) img {
  transform: rotate(5deg) scale(1.3);
}
.usp-section p {
  margin-bottom: 0;
}
.usp-section .small-usp {
  text-align: center;
  background-color: hsl(34deg, 54%, 97%);
  font-weight: 700;
  padding: 20px 30px;
  border-radius: 20px;
  box-shadow: 0 6px 0 4px hsla(38deg, 20%, 20%, 0.5);
}
.usp-section .small-usp p:before {
  content: "";
  position: relative;
  margin-block: 5px;
  margin-right: 3px;
  height: 20px;
  top: 8px;
  aspect-ratio: 1;
  display: inline-block;
  background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IS0tIFVwbG9hZGVkIHRvOiBTVkcgUmVwbywgd3d3LnN2Z3JlcG8uY29tLCBHZW5lcmF0b3I6IFNWRyBSZXBvIE1peGVyIFRvb2xzIC0tPg0KPHN2ZyBmaWxsPSIjMDAwMDAwIiB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgMCAxOTIwIDE5MjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogICAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNTcuNTQyIDBIMTU2Mi40NlYxMTkuMTgxSDE5MjBWNTQyLjg2OEMxOTIwIDY1NS4yMzYgMTg3NS4zNiA3NjMuMDAzIDE3OTUuOTEgODQyLjQ2QzE3MzEuMTIgOTA3LjI0MiAxNjQ3LjUyIDk0OC44NzkgMTU1Ny45NSA5NjIuMDQ5QzE1NDQuNzggMTA1MS42MiAxNTAzLjE1IDExMzUuMjIgMTQzOC4zNiAxMjAwQzEzNjAuNDUgMTI3Ny45MSAxMjU1LjMyIDEzMjIuMzUgMTE0NS4zMyAxMzI0LjA1VjE0OTYuMzFDMTE0NS4zMyAxNTEwLjM4IDExNTAuOTEgMTUyMy44NyAxMTYwLjg2IDE1MzMuODFDMTE3MC44MSAxNTQzLjc2IDExODQuMyAxNTQ5LjM1IDExOTguMzYgMTU0OS4zNUMxMjYzLjMyIDE1NDkuMzUgMTMyNS42MSAxNTc1LjE1IDEzNzEuNTQgMTYyMS4wOEMxNDE3LjQ3IDE2NjcuMDEgMTQ0My4yOCAxNzI5LjMxIDE0NDMuMjggMTc5NC4yNlYxOTIwSDQ3Ni43MjNWMTc5NC4yNkM0NzYuNzIzIDE3MjkuMzEgNTAyLjUyOCAxNjY3LjAxIDU0OC40NTggMTYyMS4wOEM1OTQuMzg4IDE1NzUuMTUgNjU2LjY4MiAxNTQ5LjM1IDcyMS42MzkgMTU0OS4zNUM3MzUuNzA1IDE1NDkuMzUgNzQ5LjE5NSAxNTQzLjc2IDc1OS4xNCAxNTMzLjgxQzc2OS4wODYgMTUyMy44NyA3NzQuNjc0IDE1MTAuMzggNzc0LjY3NCAxNDk2LjMxVjEzMjQuMDVDNjY0LjY3NyAxMzIyLjM1IDU1OS41NDcgMTI3Ny45MSA0ODEuNjM3IDEyMDBDNDE2Ljg1NCAxMTM1LjIyIDM3NS4yMTggMTA1MS42MiAzNjIuMDQ4IDk2Mi4wNDlDMjcyLjQ3NyA5NDguODc5IDE4OC44NzcgOTA3LjI0MiAxMjQuMDk1IDg0Mi40NkM0NC42Mzc5IDc2My4wMDMgMCA2NTUuMjM2IDAgNTQyLjg2OFYxMTkuMTgxSDM1Ny41NDJWMFpNMzU3LjU0MiAyNTEuNDcxSDEzMi4yOVY1NDIuODY4QzEzMi4yOSA2MjAuMTUxIDE2Mi45OTEgNjk0LjI2OSAyMTcuNjM4IDc0OC45MTdDMjU2LjQxMiA3ODcuNjkgMzA0Ljk4OCA4MTQuNDA5IDM1Ny41NDIgODI2LjY1OVYyNTEuNDcxWk0xNTYyLjQ2IDgyNi42NTlWMjUxLjQ3MUgxNzg3LjcxVjU0Mi44NjhDMTc4Ny43MSA2MjAuMTUxIDE3NTcuMDEgNjk0LjI2OSAxNzAyLjM2IDc0OC45MTdDMTY2My41OSA3ODcuNjkgMTYxNS4wMSA4MTQuNDA5IDE1NjIuNDYgODI2LjY1OVpNOTU5LjE5OCAzMjBMMTAzNC41OSA1NjQuMjFIMTI4MEwxMDgxLjEgNzE1Ljc5TDExNTkuNyA5NjBMOTYwLjgwMSA4MDguNDIyTDc2MS45MDYgOTYwTDgzOC44OTggNzE0LjEwNEw2NDAgNTYyLjUyN0g4ODUuNDEzTDk1OS4xOTggMzIwWiIvPg0KPC9zdmc+") no-repeat center/contain;
}

/* Featured Dish */
.featured-dish-wrapper {
  position: relative;
  z-index: 0;
  background-color: #fff8ec;
}
.featured-dish-wrapper:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  height: 50%;
  background: url("../../../static/pattern.jpg") repeat center/300px;
  z-index: -1;
  opacity: 0.1;
  filter: saturate(0);
}
.featured-dish-wrapper:nth-child(even) figure {
  flex-flow: row-reverse;
}
.featured-dish-wrapper:nth-child(even) figure .speech-bubble {
  left: 0;
  right: auto;
}
.featured-dish-wrapper figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 0;
}
.featured-dish-wrapper figure .food-swiper {
  width: 50%;
  overflow: hidden;
  padding: 50px;
}
.featured-dish-wrapper figure .food-swiper img {
  padding: 0;
  height: auto;
  width: 80%;
}
.featured-dish-wrapper figure img {
  width: 50%;
  padding: 50px;
  animation: bounce 3s linear infinite;
  aspect-ratio: 1;
  object-fit: contain;
}
.featured-dish-wrapper figure figcaption {
  width: 50%;
  padding: 50px;
}
.featured-dish-wrapper figure figcaption h2 {
  color: #4ab6ba;
  font-size: 5rem;
  text-align: center;
}
.featured-dish-wrapper figure figcaption .speech-bubble {
  right: 0;
}
.featured-dish-wrapper p {
  text-align: center;
}
.featured-dish-wrapper ul {
  display: flex;
  gap: 10px;
  flex-flow: row wrap;
  justify-content: center;
}
.featured-dish-wrapper ul li {
  color: hsl(34deg, 54%, 97%);
  background-color: #3a9497;
  line-height: 1.2;
  border-radius: 5px;
  padding: 5px 8px;
  font-weight: 600;
}

.featured-dish-wrapper.duck:before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 50%;
  height: 50%;
  right: 0;
  background: url("../../../static/duck-bg.png") no-repeat bottom right/500px;
  z-index: -1;
  filter: saturate(0);
  opacity: 0.3;
}

.featured-dish-wrapper.rice:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 50%;
  right: 0;
  background: url("../../../static/ricefields.jpg") no-repeat center/cover;
  z-index: -1;
  filter: saturate(0);
  opacity: 0.1;
}

/* Contact Page */
.branch-section {
  position: relative;
  padding: 50px;
  background-color: #41a6aa;
  z-index: 0;
}
.branch-section:before {
  content: "";
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0;
  height: 100px;
  background: url("../../../static/waves-opacity-blue.svg") no-repeat top/contain;
  z-index: -1;
}
.branch-section:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -2;
  background: url("../../../static/shutterstock_1106484377.jpg") no-repeat center/cover;
  opacity: 0.2;
}
@media only screen and (min-width: 960px) {
  .branch-section:after {
    background-attachment: fixed;
  }
}

.branch-single {
  display: grid;
  gap: 30px;
}
@media only screen and (min-width: 670px) {
  .branch-single {
    grid-template-columns: 2fr 1fr;
    align-items: center;
  }
}
.branch-single figure img {
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 30px;
}

.branch-details {
  position: relative;
  z-index: 0;
  padding: 30px;
  text-align: center;
}
@media only screen and (min-width: 670px) {
  .branch-details {
    padding: 50px;
  }
}
.branch-details:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
}
.branch-details:after {
  content: "";
  background: url("data: image/svg+xml; base64,PHN2ZyBpZD0i5Zu+5bGCXzEiIGRhdGEtbmFtZT0i5Zu+5bGCIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE5OS45OCA0MzAuMjIiPjxkZWZzPjxzdHlsZT4uY2xzLTF7ZmlsbDojZmZmO308L3N0eWxlPjwvZGVmcz48dGl0bGU+QXJ0Ym9hcmQgMjE8L3RpdGxlPjxnIGlkPSJfR3JvdXBfIiBkYXRhLW5hbWU9IiZsdDtHcm91cCZndDsiPjxwYXRoIGlkPSJfUGF0aF8iIGRhdGEtbmFtZT0iJmx0O1BhdGgmZ3Q7IiBjbGFzcz0iY2xzLTEiIGQ9Ik0xMTcuNzMsMzUyLjQ5YTIxMi43MiwyMTIuNzIsMCwwLDAsMTUtMjAuODMsMTQuMzYsMTQuMzYsMCwwLDAsMS0xLjU5YzEtMS40OCwxLjg5LTMsMi43Ni00LjQ5LDIuNzYtNC42NSw1LjMxLTkuMzQsNy42MS0xNC4wOS40MS0uNzcuNzYtMS40OCwxLjEyLTIuMjVzLjc3LTEuNTMsMS4wNy0yLjNjMzEuOTEtMTcuNzYsNTMuNjYtNTMuMzUsNTMuNjYtOTQuNGExMTAuODEsMTEwLjgxLDAsMCwwLTE3LjMtNTkuODhjLTEuMTgtMi41LTIuMTUtNC41NS0yLjY2LTUuNzItMi40LTUuMjYtOS4xNC0yMC4yNy0xMi4yLTI5Ljc3YTU4OS41NSw1ODkuNTUsMCwwLDEtMTkuMzUtNzkuMjgsOC43Miw4LjcyLDAsMCwwLS42MS0yLjI1LDM3LjcxLDM3LjcxLDAsMCwxLTItNS4yNiw3LjM1LDcuMzUsMCwwLDEtLjE1LTIuNzYsNSw1LDAsMCwxLDEuNjktMy4wNmMxLjU4LTEuNDgsNi00LjgsNy4yNS04LjE3YTkuNjcsOS42NywwLDAsMC0uMTYtOC4wNywxNC4xNCwxNC4xNCwwLDAsMC0zLjQ3LTQuNzlDMTQ3LjcuNzIsMTQzLjkyLS42NiwxMzkuNTMuMzFhMTMuNDQsMTMuNDQsMCwwLDAtNi4xNywzLjE2Yy0xLjY5LDEuNDMtMy4yNywyLjkxLTQuOTEsNC4zOS0xLjEyLDEtMi4yNCwyLjA1LTMuNDcsM2E1Ljg0LDUuODQsMCwwLDEtNS43MiwxLjI3Yy0uNTYtLjE1LTEuMTctLjMtMS43My0uNTEtMS43OS0uNzEtMy41OC0xLjQ4LTUuNDEtMi4xNGEzMy44LDMzLjgsMCwwLDAtMjQuMjUsMGMtMS43OS42Ni0zLjU4LDEuNDMtNS4zNywyLjE0YTE2LDE2LDAsMCwxLTEuNzguNTFBNS44NCw1Ljg0LDAsMCwxLDc1LDEwLjg4Yy0xLjE3LTEtMi4zLTItMy40Ny0zLTEuNjQtMS40OC0zLjIyLTMtNC44NS00LjM5QTEzLjc4LDEzLjc4LDAsMCwwLDYwLjUuMzFDNTYuMDYtLjY2LDUyLjI4LjcyLDQ5LDMuNTNhMTMuNjQsMTMuNjQsMCwwLDAtMy41Miw0Ljc5LDkuNjQsOS42NCwwLDAsMC0uMSw4LjA3YzEuMjIsMy4zNyw1LjYxLDYuNjksNy4yNSw4LjE3YTUuNTgsNS41OCwwLDAsMSwxLjY4LDMuMDYsOC41OSw4LjU5LDAsMCwxLS4yLDIuNzYsMzMuMjEsMzMuMjEsMCwwLDEtMS45NCw1LjI2LDExLjM0LDExLjM0LDAsMCwwLS42MiwyLjI1LDU5NC4zMSw1OTQuMzEsMCwwLDEtMTkuMyw3OS4yOGMtMy4wNiw5LjUtOS44NSwyNC41MS0xMi4yLDI5Ljc3LS41MSwxLjE3LTEuNTMsMy4yMi0yLjcsNS43MkExMTAuNzQsMTEwLjc0LDAsMCwwLDAsMjEyLjU0YzAsNDEsMjEuNzUsNzYuNTksNTMuNjEsOTQuNC4zLjcyLjY2LDEuMzgsMSwyLjFzLjgyLDEuNjgsMS4yMiwyLjVjMi4zLDQuNzUsNC44NSw5LjM5LDcuNjEsMTQsMS4yMywyLDIuNDUsNCwzLjczLDYuMDhhMjEyLjcyLDIxMi43MiwwLDAsMCwxNSwyMC44M2MxLjIyLDEuNDgsMy4wNiwzLjUyLDUsNS43N3EtMzQuNTMsMzQuNTMtNjkuNjksNjkuNThhNjYuMyw2Ni4zLDAsMCwwLDMzLjYuNDFjMjQuMTUtNiw0MC0yMS41NCw0OS00Ni4yNSw2LjMzLDE4LjMzLDE2LjY0LDMxLjU1LDMyLjM3LDQwczMyLjYyLDEwLDQ5LjkzLDUuOTNsLTY5LjY0LTY5LjhDMTE0Ljc3LDM1NiwxMTYuNTYsMzUzLjkyLDExNy43MywzNTIuNDlaIi8+PC9nPjwvc3ZnPg==") no-repeat center/contain;
  filter: drop-shadow(10px 15px 0px #3a9497);
  transform: scale(1.2);
}
.branch-details p {
  line-height: 1.2;
}

/* Content Page */
.content-page main.content {
  position: relative;
  z-index: 0;
}
.content-page main.content:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  height: 70%;
  background: url("../../../static/pattern.jpg") repeat center/300px;
  z-index: -1;
  opacity: 0.2;
}
.content-page .entry-content {
  border-radius: 30px;
  background-color: #fff;
  max-width: 960px;
  padding-top: 50px;
  padding-bottom: 500px;
  margin-bottom: -450px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJhYnN0cmFjdHMvX3BsYWNlaG9sZGVycy5zY3NzIiwidmVuZG9ycy9fc2xpY2suc2NzcyIsInZlbmRvcnMvX3NsaWNrLXRoZW1lLnNjc3MiLCJ2ZW5kb3JzL19mZWF0aGVybGlnaHQuc2NzcyIsImZvbnRzL251Y2xlby5zY3NzIiwiZm9udHMvX3ZhcmlhYmxlcy5zY3NzIiwiZm9udHMvX21peGlucy5zY3NzIiwiZm9udHMvaWNvbnMuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19kZWZhdWx0cy5zY3NzIiwiYmFzZS9fYW5pbWF0aW9ucy5zY3NzIiwibGF5b3V0L19ncmlkLnNjc3MiLCJsYXlvdXQvX2dzLXN0cnVjdHVyZS1sYXlvdXQuc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJsYXlvdXQvX3NpZGViYXIuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19ncmFwaGljcy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fd2lkZ2V0LnNjc3MiLCJjb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9fbGlzdC1wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL190aXRsZS1kaXZpZGVyLnNjc3MiLCJjb21wb25lbnRzL19vYmplY3RzLnNjc3MiLCJjb21wb25lbnRzL19iYW5uZXJzLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLXNsaWRlci5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2tzLnNjc3MiLCJwYWdlcy9fcG9zdC1hcmNoaXZlLnNjc3MiLCJwYWdlcy9fcG9zdC1zaW5nbGUuc2NzcyIsInRoZW1lcy9raG9vemguc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBp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QTtFQUlFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTtBQUNBO0VBQ0E7QUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBR0E7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUE7RUFDRTtBQUNBO0VBQ0E7QUFDQTs7O0FBRUY7QUFBQTtBQUVBO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFBQTtBQUdBO0VBQ0U7OztBQUVGO0FBQUE7QUFFQTtBQUFBO0FBQUE7QUFHQTtFQUNFOzs7QUFFRjtBQUFBO0FBQUE7QUFHQTtFQUNFOzs7QUFFRjtBQUFBO0FBRUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7OztBQzdURjtBQUFBO0FBRUE7RUFDRTtBQUNBO0VBQ0E7RUFDQTtFQUNBOztBWFdBO0VXaEJGO0lBT0k7Ozs7QUFHSjtBQUNBO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0EsYVpmVTtFWWdCVjtFQUNBO0VBQ0EsYVpmVTtFWWdCVjtFQUNEO0VBQ0E7OztBQUdEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFRRTs7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdG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Q0E7RUFDQTtFQUNBO0VBQ0E7RStCZ25CRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7OztBQUlKO0FBRUU7RUFFRTtFQUNBOztBQUVBO0VBQ0U7RS9CM29CSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UrQnlvQkk7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFFRTtFQUNBO0VBQ0EsVy9COXNCWTtFK0JndEJaO0VBQ0E7RUFDQSIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcblx0VGhlbWUgTmFtZTogWWFvIFlhbyBUaGVtZVxuXHRUaGVtZSBVUkk6XG5cdERlc2NyaXB0aW9uOiBUaGlzIGlzIHRoZSB0aGVtZSBjcmVhdGVkIGZvciBZYW8gWWFvXG5cdEF1dGhvcjogS2hvb3poXG5cdEF1dGhvciBVUkk6XG5cblx0VmVyc2lvbjogMS4wLjBcblxuXHRUYWdzOiBvbmUtY29sdW1uLCB0d28tY29sdW1ucywgbGVmdC1zaWRlYmFyLCByaWdodC1zaWRlYmFyLCBhY2Nlc3NpYmlsaXR5LXJlYWR5LCBjdXN0b20tY29sb3JzLCBjdXN0b20tbG9nbywgY3VzdG9tLW1lbnUsIGZlYXR1cmVkLWltYWdlcywgZm9vdGVyLXdpZGdldHMsIGZ1bGwtd2lkdGgtdGVtcGxhdGUsIHJ0bC1sYW5ndWFnZS1zdXBwb3J0LCBzdGlja3ktcG9zdCwgdGhlbWUtb3B0aW9ucywgdGhyZWFkZWQtY29tbWVudHMsIHRyYW5zbGF0aW9uLXJlYWR5XG5cblx0VGVtcGxhdGU6IGdlbmVzaXNcblxuXHRMaWNlbnNlOiBHUEwtMi4wK1xuXHRMaWNlbnNlIFVSSTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbFxuKi9cbi8qIFRhYmxlIG9mIENvbnRlbnRzXG5zYXNzL1xufFxufC0gYWJzdHJhY3RzL1xufCAgIHwtIF92YXJpYWJsZXMuc2NzcyAgICAjIFNhc3MgVmFyaWFibGVzXG58ICAgfC0gX2Z1bmN0aW9ucy5zY3NzICAgICMgU2FzcyBGdW5jdGlvbnNcbnwgICB8LSBfbWl4aW5zLnNjc3MgICAgICAgIyBTYXNzIE1peGluc1xufCAgIHwtIF9wbGFjZWhvbGRlcnMuc2NzcyAjIFNhc3MgUGxhY2Vob2xkZXJzXG58XG58LSBmb250cy9cbnwgICB8LSBfbnVjbGVvLnNjc3MgICAgICAgIyBJY29uIFBhY2tcbnxcbnzigJMgYmFzZS9cbnwgICB8LSBfcmVzZXQuc2NzcyAgICAgICAgIyBSZXNldC9ub3JtYWxpemVcbnwgICB8LSBfdHlwb2dyYXBoeS5zY3NzICAgIyBUeXBvZ3JhcGh5IHJ1bGVzXG58ICAgfC0gX2RlZmF1bHRzLnNjc3MgICAgICMgR2VuZXNpcyBEZWZhdWx0c1xufCAgIHwtIF9hbmltYXRpb25zLnNjc3MgICAjIEFuaW1hdGlvbnNcbnxcbnzigJMgY29tcG9uZW50cy9cbnwgICB8LSBfZ3JhcGhpY3Muc2NzcyAgICAgICAgICAgICMgR3JhcGhpY3NcbnwgICB8LSBfYnV0dG9ucy5zY3NzICAgICAgICAgICAgICMgQnV0dG9uc1xufCAgIHwtIF93aWRnZXQuc2NzcyAgICAgICAgICAgICAgIyBHZW5lc2lzIERlZmF1bHQgV2lkZ2V0IGFuZCBQbHVnaW5zXG58ICAgfC0gX2Zvcm1zLnNjc3MgICAgICAgICAgICAgICAjIEZvcm1zXG58ICAgfC0gX2xpc3QtcGFnaW5hdGlvbi5zY3NzICAgICAjIExpc3QgYW5kIHBhZ2luYXRpb25cbnwgICB8LSAtdGl0bGUtZGl2aWRlci5zY3NzICAgICAgICMgVGl0bGUgYW5kIGRpdmlkZXJzXG58ICAgfC0gX29iamVjdHMuc2NzcyAgICAgICAgICAgICAjIEN1c3RvbWlzZWQgb2JqZWN0c1xufCAgIHwtIF9iYW5uZXJzLnNjc3MgICAgICAgICAgICAgIyBCYW5uZXJzXG58ICAgfC0gX2hlcm8tc2xpZGVyLnNjc3MgICAgICAgICAjIEhlcm8gU2xpZGVyXG58ICAgfC0gX2Jsb2Nrcy5zY3NzICAgICAgICAgICAgICAjIEJsb2Nrc1xufFxufOKAkyBsYXlvdXQvXG58ICAgfC0gX2dyaWQuc2NzcyAgICAgICAgICMgR3JpZFxufCAgIHwtIF9ncy1zdHJ1Y3R1cmUtbGF5b3V0LnNjc3MgIyBHZW5lc2lzIGRlZmF1bHQgc3RydWN0dXJlIGFuZCBsYXlvdXRcbnwgICB8LSBfaGVhZGVyLnNjc3MgICAgICAgIyBIZWFkZXJcbnwgICB8LSBfc2lkZWJhci5zY3NzICAgICAgIyBTaWRlYmFyXG58ICAgfC0gX2Zvb3Rlci5zY3NzICAgICAgICMgRm9vdGVyXG58XG584oCTIHBhZ2VzL1xufCAgIHwtIF9wb3N0LWFyY2hpdmUuc2NzcyAgICAgICAgIyBQb3N0IGFyY2hpdmUgc3R5bGVzXG58ICAgfC0gX3Bvc3Qtc2luZ2xlLnNjc3MgICAgICAgICAjIFNpbmdsZSBQb3N0IFN0eWxlc1xufFxufOKAkyB0aGVtZXMvXG58ICAgfC0gX2tob296aC5zY3NzICAgICAgICMgRGVmYXVsdCB0aGVtZVxufCAgIHwtIF93b29jb21tZXJjZS5zY3NzICAjIFdvb2NvbW1lcmNlIFN0eWxlc1xufFxufOKAkyB2ZW5kb3JzL1xufCAgIHwtIF9zbGljay5zY3NzICAgICAgICAjIFNsaWNrIFNsaWRlclxufCAgIHwtIF9zbGljay10aGVtZS5zY3NzICAjIFNsaWNrIFNsaWRlciBUaGVtZVxufCAgIHwtIF9mZWF0aGVybGlnaHQuc2NzcyAjIEZlYXRoZXJsaWdodCBHYWxsZXJ5XG58XG58LSBtYWluLnNjc3MgICAgICAgICAgICAgICMgTWFpbiBTYXNzIGZpbGVcbiovXG5cbkBpbXBvcnQgJ2Fic3RyYWN0cy92YXJpYWJsZXMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucyc7XG5AaW1wb3J0ICdhYnN0cmFjdHMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJ2Fic3RyYWN0cy9wbGFjZWhvbGRlcnMnO1xuXG5AaW1wb3J0ICd2ZW5kb3JzL3NsaWNrJztcbkBpbXBvcnQgJ3ZlbmRvcnMvc2xpY2stdGhlbWUnO1xuQGltcG9ydCAndmVuZG9ycy9mZWF0aGVybGlnaHQnO1xuXG5AaW1wb3J0ICdmb250cy9udWNsZW8nO1xuXG5AaW1wb3J0ICdiYXNlL3Jlc2V0JztcbkBpbXBvcnQgJ2Jhc2UvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdiYXNlL2RlZmF1bHRzJztcbkBpbXBvcnQgJ2Jhc2UvYW5pbWF0aW9ucyc7XG5cbkBpbXBvcnQgJ2xheW91dC9ncmlkJztcbkBpbXBvcnQgJ2xheW91dC9ncy1zdHJ1Y3R1cmUtbGF5b3V0JztcbkBpbXBvcnQgJ2xheW91dC9oZWFkZXInO1xuQGltcG9ydCAnbGF5b3V0L3NpZGViYXInO1xuQGltcG9ydCAnbGF5b3V0L2Zvb3Rlcic7XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ3JhcGhpY3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2lkZ2V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9saXN0LXBhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1kaXZpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2JqZWN0cyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Jhbm5lcnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9oZXJvLXNsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Jsb2Nrcyc7XG5cbkBpbXBvcnQgJ3BhZ2VzL3Bvc3QtYXJjaGl2ZSc7XG5AaW1wb3J0ICdwYWdlcy9wb3N0LXNpbmdsZSc7XG4vLyBAaW1wb3J0ICdwYWdlcy9jb250YWN0JztcblxuQGltcG9ydCAndGhlbWVzL2tob296aCc7XG4vLyBAaW1wb3J0ICd0aGVtZXMvd29vY29tbWVyY2UnO1xuIiwiLyogVmFyaWFibGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCb2R5IFRleHQgU3R5bGVzICovXG4kYmFzZS1mb250LXNpemU6IDEuNnJlbTtcbiRzdWJ0aXRsZS1mb250OiAnSW5kaWUgRmxvd2VyJyxjdXJzaXZlO1xuJHRpdGxlLWZvbnQ6ICdMaWxpdGEgT25lJyxjdXJzaXZlO1xuJG1haW4tZm9udDogJ0NhYmluJywgc2Fucy1zZXJpZjtcbi8qIEZvbnQgV2VpZ2h0ICovXG4kZm9udC1saWdodDogMjAwO1xuJGZvbnQtbm9ybTogNDAwO1xuJGZvbnQtYm9sZDogNzAwO1xuLyogQ29sb3JzICovXG4kbWFpbi1jb2xvcjogIzZmYzVjODtcbiRsaWdodC1jb2xvcjogI2FhZGFkYztcbiRvZmYtd2hpdGU6IGhzbCgzNCwgNTQlLCA5NyUpO1xuJHJlZDogIzllMWMyNTtcbiRvcmFuZ2U6ICNmZjViMzY7XG4kZ3JlZW46ICM2ODk0NDc7XG4kYmx1ZTogIzM2OTtcbiR5ZWxsb3c6ICNmN2U3MjA7XG4kZ3JleTogaHNsKDAsMCUsNTAlKTsgLy9pbnB1dHMgdGhhdCBhcmUgbm90IHN1Ym1pdCBhbmQgYnV0dG9uXG4vKiBFdGMuICovXG4kaW5wdXQtZmllbGRzOiAnaW5wdXQ6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKSc7XG4vKiBCYWNrZ3JvdW5kIHBhdHRlcm4gaW1hZ2UgbGluayovXG4kcGF0dGVybi0xLWxpbms6IHVybChcIi4uLy4uLy4uL3N0YXRpYy9iYWNrZ3JvdW5kLXBhdHRlcm4uanBnXCIpO1xuIiwiLyogTWl4aW5zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBNZWRpYSBRdWVyaWVzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kdGFibGV0LXdpZHRoOiA2NzBweDtcbiRkZXNrdG9wLXdpZHRoOiA5NjBweDtcbiRkZXNrdG9wLXhsLXdpZHRoOiAxNDAwcHg7XG5AbWl4aW4gbW9iaWxlIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyR0YWJsZXQtd2lkdGh9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiB0YWJsZXQge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHRhYmxldC13aWR0aH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIGRlc2t0b3Age1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGRlc2t0b3Atd2lkdGh9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBkZXNrdG9wLXhsIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyRkZXNrdG9wLXhsLXdpZHRofSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4vKiBDb250YWluZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBjb250YWluZXIoJHBhZGRpbmcsICRiZywgJGJvcmRlci1yYWRpdXMsICRib3JkZXIpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcgKCRwYWRkaW5nIC8gMik7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgfVxufVxuLyogSW1hZ2UgQXNwZWN0IFJhdGlvXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gPGZpZ3VyZT4gLy8gQXBwbHkgaW1hZ2UgcmF0aW8gdG8gZmlndXJlXG4gICA8aW1nIHNyYz1cIlwiLz5cbiA8L2ZpZ3VyZT5cbiovXG5AbWl4aW4gaW1nLXJhdGlvKCR3aWR0aCwgJHAtdG9wKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgcGFkZGluZy10b3A6ICRwLXRvcDtcblxuICA+IGltZyB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG4vKiBBYnNvbHV0ZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4vKiBHcmFkaWVudCBGYWRlXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gZ3JhZGllbnQtZmFkZSgkaCwkcywkbCwkZGlyZWN0aW9uKSB7XG4gIEBpZiAkZGlyZWN0aW9uID09IGJvdHRvbSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgaHNsYSgkaCwkcywkbCwxKSAwJSxoc2xhKCRoLCRzLCRsLDApIDEwMCUpO1xuICB9IEBlbHNlXG4gIGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIGhzbGEoJGgsJHMsJGwsMSkgMCUsaHNsYSgkaCwkcywkbCwwKSAxMDAlKTtcbiAgfSBAZWxzZVxuICBpZiAkZGlyZWN0aW9uID09IHRvcCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgaHNsYSgkaCwkcywkbCwxKSAwJSxoc2xhKCRoLCRzLCRsLDApIDEwMCUpO1xuICB9IEBlbHNlXG4gIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgaHNsYSgkaCwkcywkbCwxKSAwJSxoc2xhKCRoLCRzLCRsLDApIDEwMCUpO1xuICB9XG59XG4vKiBCYWRnZSAvIFRhZyBsYWJlbFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIHRhZy1sYWJlbCgkYmcsICRzaXplKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgQGlmICRzaXplID09IHNtYWxsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogM3B4IDhweDtcbiAgfVxuICBAaWYgJHNpemUgPT0gbWVkaXVtIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gIH1cbiAgQGlmICRzaXplID09IGxhcmdlIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcGFkZGluZzogMTJweCAyNHB4O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgfVxufVxuLyogSWNvbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVpY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxZW0vMSAnYmFzZWljb24nO1xuICBzcGVhazogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbkBtaXhpbiBpY29uKCR0eXBlKSB7XG4gIEBleHRlbmQgJWljb247XG4gIGNvbnRlbnQ6ICR0eXBlO1xufVxuLyogQ2lyY2xlIE9iamVjdFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNpcmNsZS1vYmplY3QoJGRpYW1ldGVyLCAkYmctY29sb3IsICRmb250LXNpemUpIHtcbiAgQGV4dGVuZCAlZmxleGJveC1jLWM7XG4gIHdpZHRoOiAkZGlhbWV0ZXI7XG4gIGhlaWdodDogJGRpYW1ldGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICY6aG92ZXIsXG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLyogVGh1bWJuYWlsIENhcmRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjxhcnRpY2xlIGNsYXNzPVwidGh1bWJuYWlsLWNhcmRcIj5cbiAgPGZpZ3VyZT5cbiAgICA8aW1nIHNyYz1cIlwiPlxuICA8L2ZpZ3VyZT5cbiAgPGRpdiBjbGFzcz1cImNhcHRpb25cIj5cbiAgICA8aDQ+PC9oND5cbiAgICA8cD48L3A+XG4gICAgPGEgaHJlZj1cIiNcIj48L2E+XG4gIDwvZGl2PlxuPC9hcnRpY2xlPlxuICovXG5AbWl4aW4gdGh1bWJuYWlsLWNhcmQoJHRodW1iVywgJHRodW1iSCwgJGNhcHRpb24tcG9zLCAkcGFkZGluZykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIEBpZiAkY2FwdGlvbi1wb3MgPT0gYm90dG9tIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgICAuY2FwdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cblxuICA+IGZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgaW1nLXJhdGlvKCR0aHVtYlcsICR0aHVtYkgpO1xuICB9XG5cbiAgLmNhcHRpb24ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG59XG4vKiBMaW5lIEJvcmRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGxpbmUtYm9yZGVyKCR3aWR0aCwgJGNvbG9yLCAkZGlyZWN0aW9uLCAkc3BhY2UpIHtcbiAgYm9yZGVyLSN7JGRpcmVjdGlvbn06ICR3aWR0aCBzb2xpZCAkY29sb3I7XG4gIHBhZGRpbmctI3skZGlyZWN0aW9ufTogJHNwYWNlO1xuICBtYXJnaW4tI3skZGlyZWN0aW9ufTogJHNwYWNlO1xufVxuLyogQ2hpbGQgTWFyZ2luXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY2hpbGQtbWFyZ2luKCRkaXJlY3Rpb24sICRzcGFjZSwgJHNlbGVjdG9yOiBudWxsKSB7XG4gIEBpZiAkc2VsZWN0b3IgPT0gbnVsbCB7XG4gICAgPiAqIHtcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAkc3BhY2U7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICRzcGFjZTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKiBDbGVhciBGaXhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNsZWFyZml4KCkge1xuICAqem9vbTogMTtcblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuJWNsZWFyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsIi8qIEZ1bmN0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuIiwiLyogUGxhY2Vob2xkZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBXaGl0ZSBHcmFkaWVudFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiV3aGl0ZS1ncmFkaWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAxO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMCwwJSwxMDAlLHRvcCk7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxufVxuLyogVHJhbnNpdGlvbnNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiV0cmFuc2l0aW9uLWR1cmF0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4vKiBGbGV4Ym94XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lZmxleGJveC1jLWMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiOyAvLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vanMvcGx1Z2lucy9zbGljay9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vanMvcGx1Z2lucy9zbGljay9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogI2RkZCAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcbiAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gIH1cbn1cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gIH1cbn1cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxpc3Qge1xuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgfVxufVxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuLyogQXJyb3dzICovXG4uc2xpY2stbmV4dCxcbi5zbGljay1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAyO1xuXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgfVxuICB9XG5cbiAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAxNXB4O1xuXG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogLTM1cHg7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMTVweDtcblxuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgfVxuICB9XG59XG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIEBleHRlbmQgJXRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBGZWF0aGVybGlnaHQg4oCTIHVsdHJhIHNsaW0galF1ZXJ5IGxpZ2h0Ym94XG4gKiBWZXJzaW9uIDEuNy4xMyAtIGh0dHA6Ly9ub2VsYm9zcy5naXRodWIuaW8vZmVhdGhlcmxpZ2h0L1xuICpcbiAqIENvcHlyaWdodCAyMDE4LCBOb8OrbCBSYW91bCBCb3NzYXJ0IChodHRwOi8vd3d3Lm5vZWxib3NzLmNvbSlcbiAqIE1JVCBMaWNlbnNlZC5cbioqL1xuXG5odG1sLndpdGgtZmVhdGhlcmxpZ2h0IHtcblx0LyogZGlzYWJsZSBnbG9iYWwgc2Nyb2xsaW5nIHdoZW4gZmVhdGhlcmxpZ2h0cyBhcmUgdmlzaWJsZSAqL1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmVhdGhlcmxpZ2h0IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHQvKiBkaW1lbnNpb25zOiBzcGFubmluZyB0aGUgYmFja2dyb3VuZCBmcm9tIGVkZ2UgdG8gZWRnZSAqL1xuXHRwb3NpdGlvbjpmaXhlZDtcblx0dG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwO1xuXHR6LWluZGV4OiAyMTQ3NDgzNjQ3OyAvKiB6LWluZGV4IG5lZWRzIHRvIGJlID49IGVsZW1lbnRzIG9uIHRoZSBzaXRlLiAqL1xuXG5cdC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgY29udGVudCAqL1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LyogaW5zdXJlcyB0aGF0IHRoZSA6OmJlZm9yZSBwc2V1ZG8gZWxlbWVudCBkb2Vzbid0IGZvcmNlIHdyYXAgd2l0aCBmaXhlZCB3aWR0aCBjb250ZW50OyAqL1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG5cdC8qIHN0eWxpbmcgKi9cblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRiYWNrZ3JvdW5kOiAjMzMzO1xuXHQvKiBJRTggXCJoYWNrXCIgZm9yIG5lc3RlZCBmZWF0aGVybGlnaHRzICovXG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi8qIHN1cHBvcnQgZm9yIG5lc3RlZCBmZWF0aGVybGlnaHRzLiBEb2VzIG5vdCB3b3JrIGluIElFOCAodXNlIEpTIHRvIGZpeCkgKi9cbi5mZWF0aGVybGlnaHQ6bGFzdC1vZi10eXBlIHtcblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuXG4uZmVhdGhlcmxpZ2h0OmJlZm9yZSB7XG5cdC8qIHBvc2l0aW9uOiB0cmljayB0byBjZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5ICovXG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGhlaWdodDogMTAwJTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuXHQvKiBtYWtlIGNvbnRlbnQgY29udGFpbmVyIGZvciBwb3NpdGlvbmVkIGVsZW1lbnRzIChjbG9zZSBidXR0b24pICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQvKiBwb3NpdGlvbjogY2VudGVyaW5nIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsICovXG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHQvKiBkaW1lbnNpb25zOiBjdXQgb2ZmIGltYWdlcyAqL1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogMjVweCAyNXB4IDA7XG5cdGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0LyogZGltZW5zaW9uczogaGFuZGxpbmcgbGFyZ2UgY29udGVudCAqL1xuXHRtYXJnaW4tbGVmdDogNSU7XG5cdG1hcmdpbi1yaWdodDogNSU7XG5cdG1heC1oZWlnaHQ6IDk1JTtcblxuXHQvKiBzdHlsaW5nICovXG5cdC8vIGJhY2tncm91bmQ6ICNmZmY7XG5cdGN1cnNvcjogYXV0bztcblxuXHQvKiByZXNldCB3aGl0ZS1zcGFjZSB3cmFwcGluZyAqL1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4vKiBjb250YWlucyB0aGUgY29udGVudCAqL1xuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWlubmVyIHtcblx0LyogbWFrZSBzdXJlIGl0cyB2aXNpYmxlICovXG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBkb24ndCBzaG93IHRoZXNlIHRob3VnaCAqL1xuLmZlYXRoZXJsaWdodCBzY3JpcHQuZmVhdGhlcmxpZ2h0LWlubmVyLFxuLmZlYXRoZXJsaWdodCBsaW5rLmZlYXRoZXJsaWdodC1pbm5lcixcbi5mZWF0aGVybGlnaHQgc3R5bGUuZmVhdGhlcmxpZ2h0LWlubmVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb24ge1xuXHQvKiBwb3NpdGlvbjogY2VudGVyaW5nIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsICovXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogOTk5OTtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblxuXHQvKiBkaW1lbnNpb25zOiAyNXB4IHggMjVweCAqL1xuXHRsaW5lLWhlaWdodDogMjVweDtcblx0d2lkdGg6IDI1cHg7XG5cdGhlaWdodDogMjVweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXG5cdC8qIHN0eWxpbmcgKi9cblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcblx0YmFja2dyb3VuZDogI2ZmZjsgLyogU2V0IHRoZSBiYWNrZ3JvdW5kIGluIGNhc2UgaXQgb3ZlcmxhcHMgdGhlIGNvbnRlbnQgKi9cblx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuXHRjb2xvcjogIzAwMDtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKiBTZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjA3NzM0MS9ob3ctdG8tcmVzZXQtYWxsLWRlZmF1bHQtc3R5bGVzLW9mLXRoZS1odG1sNS1idXR0b24tZWxlbWVudCAqL1xuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb246Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1pbWFnZSB7XG5cdC8qIHN0eWxpbmcgKi9cblx0d2lkdGg6IDEwMCU7XG59XG5cblxuLmZlYXRoZXJsaWdodC1pZnJhbWUgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcblx0LyogcmVtb3ZlZCB0aGUgYm9yZGVyIGZvciBpbWFnZSBjcm9waW5nIHNpbmNlIGlmcmFtZSBpcyBlZGdlIHRvIGVkZ2UgKi9cblx0Ym9yZGVyLWJvdHRvbTogMDtcblx0cGFkZGluZzogMDtcblx0LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uZmVhdGhlcmxpZ2h0IGlmcmFtZSB7XG5cdC8qIHN0eWxpbmcgKi9cblx0Ym9yZGVyOiBub25lO1xufVxuXG4uZmVhdGhlcmxpZ2h0ICogeyAvKiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZWxib3NzL2ZlYXRoZXJsaWdodC9pc3N1ZXMvNDIgKi9cblx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIGhhbmRsaW5nIHBob25lcyBhbmQgc21hbGwgc2NyZWVucyAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcblx0LmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuXHRcdC8qIGRpbWVuc2lvbnM6IG1heGltaXplIGxpZ2h0Ym94IHdpdGggZm9yIHNtYWxsIHNjcmVlbnMgKi9cblx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0bWF4LWhlaWdodDogOTglO1xuXG5cdFx0cGFkZGluZzogMTBweCAxMHB4IDA7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0fVxufVxuXG4vKiBoaWRlIG5vbiBmZWF0aGVybGlnaHQgaXRlbXMgd2hlbiBwcmludGluZyAqL1xuQG1lZGlhIHByaW50IHtcblx0aHRtbC53aXRoLWZlYXRoZXJsaWdodCA+ICogPiA6bm90KC5mZWF0aGVybGlnaHQpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5iYXNlaWNvbiBXZWIgRm9udFxuR2VuZXJhdGVkIHVzaW5nIG51Y2xlb2FwcC5jb21cblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnYmFzZWljb24nO1xuICBzcmM6IHVybCgnI3skaWNvbi1mb250LXBhdGh9L2Jhc2VpY29uLmVvdCcpO1xuICBzcmM6IHVybCgnI3skaWNvbi1mb250LXBhdGh9L2Jhc2VpY29uLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JGljb24tZm9udC1wYXRofS9iYXNlaWNvbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJyN7JGljb24tZm9udC1wYXRofS9iYXNlaWNvbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRpY29uLWZvbnQtcGF0aH0vYmFzZWljb24udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnI3skaWNvbi1mb250LXBhdGh9L2Jhc2VpY29uLnN2ZycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0YmFzZSBjbGFzcyBkZWZpbml0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDFlbS8xICdiYXNlaWNvbic7XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBjaGFuZ2UgaWNvbiBzaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogcmVsYXRpdmUgdW5pdHMgKi9cbi5pY29uLXNtIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbi5pY29uLWxnIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cbi8qIGFic29sdXRlIHVuaXRzICovXG4uaWNvbi0xNiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cbi5pY29uLTMyIHtcbiAgZm9udC1zaXplOiAzMnB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgYWRkIGEgc3F1YXJlL2NpcmNsZSBiYWNrZ3JvdW5kXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLWJnLXNxdWFyZSxcbi5pY29uLWJnLWNpcmNsZSB7XG4gIHBhZGRpbmc6IDAuMzVlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLmljb24tYmctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB1c2UgaWNvbnMgYXMgbGlzdCBpdGVtIG1hcmtlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuXG4gID4gbGkgPiAuaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkaWNvbi1saS1tYXJnaW4tcmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgc3Bpbm5pbmcgaWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1pcy1zcGlubmluZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBpY29uLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICAtbW96LWFuaW1hdGlvbjogaWNvbi1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBpY29uLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaWNvbi1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgaWNvbi1zcGluIHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGljb24tc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIHJvdGF0ZWQvZmxpcHBlZCBpY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLXJvdGF0ZS05MCAge1xuXHRAaW5jbHVkZSBpY29uLXJvdGF0ZSg5MGRlZywgMSk7XG59XG5cbi5pY29uLXJvdGF0ZS0xODAge1xuXHRAaW5jbHVkZSBpY29uLXJvdGF0ZSgxODBkZWcsIDIpO1xufVxuXG4uaWNvbi1yb3RhdGUtMjcwIHtcblx0QGluY2x1ZGUgaWNvbi1yb3RhdGUoMjcwZGVnLCAzKTtcbn1cblxuLmljb24tZmxpcC15IHtcblx0QGluY2x1ZGUgaWNvbi1mbGlwKC0xLCAxLCAwKTtcbn1cbi5pY29uLWZsaXAteCB7XG5cdEBpbmNsdWRlIGljb24tZmxpcCgxLCAtMSwgMik7XG59XG5cbkBpbXBvcnQgXCJpY29uc1wiO1xuIiwiJGljb24tZm9udC1wYXRoOiAgICAgICAgXCJmb250c1wiICFkZWZhdWx0O1xuJGljb24tYmFja2dyb3VuZC1jb2xvcjogI2VlZSAhZGVmYXVsdDtcbiRpY29uLWxpLW1hcmdpbi1yaWdodDogIDAuNGVtICFkZWZhdWx0O1xuIiwiQG1peGluIGljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gaWNvbi1mbGlwKCRob3JpeiwgJHZlcnQsICRyb3RhdGlvbikge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdGljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBmdW5jdGlvbiB1bmljb2RlKCRzdHIpIHtcbiAgQHJldHVybiB1bnF1b3RlKFwiXFxcIlxcXFwjeyRzdHJ9XFxcIlwiKTtcbn1cblxuJGljb24tYWNjb3VudDogdW5pY29kZShlYTAxKTtcbiRpY29uLWJhZy0wOTogdW5pY29kZShlYTAyKTtcbiRpY29uLWNoZWNrZWQtc3ltYm9sOiB1bmljb2RlKGVhMDMpO1xuJGljb24tZmFjZWJvb2stMTogdW5pY29kZShlYTA0KTtcbiRpY29uLWZhY2Vib29rLWNpcmNsZTogdW5pY29kZShlYTA1KTtcbiRpY29uLWZhY2Vib29rOiB1bmljb2RlKGVhMDYpO1xuJGljb24tZmF4OiB1bmljb2RlKGVhMDcpO1xuJGljb24taWNfYWNjZXNzX3RpbWVfNDhweDogdW5pY29kZShlYTA4KTtcbiRpY29uLWljX2Fycm93X2JhY2tfMzZweDogdW5pY29kZShlYTA5KTtcbiRpY29uLWljX2Nsb3NlXzQ4cHg6IHVuaWNvZGUoZWEwYSk7XG4kaWNvbi1pY19tYWlsX291dGxpbmVfNDhweDogdW5pY29kZShlYTBiKTtcbiRpY29uLWluc3RhZ3JhbTogdW5pY29kZShlYTBjKTtcbiRpY29uLWxvY2s6IHVuaWNvZGUoZWEwZCk7XG4kaWNvbi1waG9uZS0yLTI6IHVuaWNvZGUoZWEwZSk7XG4kaWNvbi1waG9uZS0yOiB1bmljb2RlKGVhMGYpO1xuJGljb24tcGluOiB1bmljb2RlKGVhMTApO1xuJGljb24tcGxhY2Vob2xkZXI6IHVuaWNvZGUoZWExMSk7XG4kaWNvbi1wbHVzOiB1bmljb2RlKGVhMTIpO1xuJGljb24tc2hvcHBpbmctY2FydDogdW5pY29kZShlYTEzKTtcbiRpY29uLXNpbmdsZS0wMTogdW5pY29kZShlYTE0KTtcbiRpY29uLXN0YXI6IHVuaWNvZGUoZWExNSk7XG4kaWNvbi13aGF0c2FwcC1sb2dvOiB1bmljb2RlKGVhMTYpO1xuJGljb24teW91dHViZTogdW5pY29kZShlYTE3KTtcbiRpY29uLXpvb20tMjogdW5pY29kZShlYTE4KTtcblxuLmljb24tYWNjb3VudDo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tYWNjb3VudDtcbn1cblxuLmljb24tYmFnLTA5OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1iYWctMDk7XG59XG5cbi5pY29uLWNoZWNrZWQtc3ltYm9sOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1jaGVja2VkLXN5bWJvbDtcbn1cblxuLmljb24tZmFjZWJvb2stMTo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tZmFjZWJvb2stMTtcbn1cblxuLmljb24tZmFjZWJvb2stY2lyY2xlOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1mYWNlYm9vay1jaXJjbGU7XG59XG5cbi5pY29uLWZhY2Vib29rOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1mYWNlYm9vaztcbn1cblxuLmljb24tZmF4OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1mYXg7XG59XG5cbi5pY29uLWljX2FjY2Vzc190aW1lXzQ4cHg6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLWljX2FjY2Vzc190aW1lXzQ4cHg7XG59XG5cbi5pY29uLWljX2Fycm93X2JhY2tfMzZweDo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24taWNfYXJyb3dfYmFja18zNnB4O1xufVxuXG4uaWNvbi1pY19jbG9zZV80OHB4OjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1pY19jbG9zZV80OHB4O1xufVxuXG4uaWNvbi1pY19tYWlsX291dGxpbmVfNDhweDo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24taWNfbWFpbF9vdXRsaW5lXzQ4cHg7XG59XG5cbi5pY29uLWluc3RhZ3JhbTo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24taW5zdGFncmFtO1xufVxuXG4uaWNvbi1sb2NrOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1sb2NrO1xufVxuXG4uaWNvbi1waG9uZS0yLTI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXBob25lLTItMjtcbn1cblxuLmljb24tcGhvbmUtMjo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tcGhvbmUtMjtcbn1cblxuLmljb24tcGluOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1waW47XG59XG5cbi5pY29uLXBsYWNlaG9sZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1wbGFjZWhvbGRlcjtcbn1cblxuLmljb24tcGx1czo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tcGx1cztcbn1cblxuLmljb24tc2hvcHBpbmctY2FydDo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tc2hvcHBpbmctY2FydDtcbn1cblxuLmljb24tc2luZ2xlLTAxOjpiZWZvcmUge1xuICBjb250ZW50OiAkaWNvbi1zaW5nbGUtMDE7XG59XG5cbi5pY29uLXN0YXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXN0YXI7XG59XG5cbi5pY29uLXdoYXRzYXBwLWxvZ286OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXdoYXRzYXBwLWxvZ287XG59XG5cbi5pY29uLXlvdXR1YmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICRpY29uLXlvdXR1YmU7XG59XG5cbi5pY29uLXpvb20tMjo6YmVmb3JlIHtcbiAgY29udGVudDogJGljb24tem9vbS0yO1xufVxuXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSxcbmJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nLFxuYnV0dG9uOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbn1cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIEJveCBTaXppbmdcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjo6YWZ0ZXIsXG4qOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuIiwiLyogVHlwb2dyYXBoaWNhbCBFbGVtZW50c1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNTYlO1xuICAvKiAxMHB4IGJyb3dzZXIgZGVmYXVsdCAqL1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGZvbnQtc2l6ZTogNjIuNSU7XG4gIH1cbn1cbi8qIENocm9tZSBmaXggKi9cbmJvZHkgPiBkaXYge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM1NTU7XG4gIGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1O1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuYnV0dG9uLFxuaW5wdXQ6Zm9jdXMsXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbnRleHRhcmVhOmZvY3VzLFxuLmJ1dHRvbixcbi5nYWxsZXJ5IGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG5vbCxcbnVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5saSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuaHIge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbn1cblxuYmxvY2txdW90ZSxcbmNpdGUsXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBjb2xvcjogIzMzMztcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMzBweDtcbn1cblxuYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMUNcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IC0yMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEwcHg7XG59XG4vKiBIZWFkaW5nc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LW5vcm07XG4gIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDMwJSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMCAwIDJyZW07XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiA1cmVtO1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAzLjZyZW07XG4gIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udDtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMjAlKTtcbiAgfVxufVxuXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4yO1xuICBjb2xvcjogaHNsKDAsMCUsNjAlKTtcbn1cbi8qIFRleHRcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbnAge1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMTtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWZvbnQtc2l6ZSArIDAuODtcbiAgbWFyZ2luOiAwIDAgMTVweDtcblxuICAmLngtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC40O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKyAwLjI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuLyogRGFyayB0aGVtZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWRhcmstdGhlbWUge1xuICBhLFxuICBwIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgaHIge1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgfVxufVxuLy8gLmRhcmstdGhlbWUge1xuLy8gICBAZXh0ZW5kICVkYXJrLXRoZW1lO1xuLy8gfVxuXG4lYmxvZy10eXBvZ3JhcGh5IHtcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gIH1cblxuICBsaSxcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKyAwLjE7XG4gICAgfVxuICB9XG59XG4iLCIvKiBEZWZhdWx0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogT2JqZWN0c1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwLWNhcHRpb24sXG5lbWJlZCxcbmlmcmFtZSxcbmltZyxcbm9iamVjdCxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIEdhbGxlcnlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nYWxsZXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpbWcge1xuICAgIGhlaWdodDogYXV0bztcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuLyogVGFibGVzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMjtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG59XG5cbnRkLFxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG50ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBwYWRkaW5nOiA2cHg7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LW5vcm07XG4gIHBhZGRpbmc6IDAgNnB4O1xufVxuLyogU2NyZWVuIFJlYWRlciBUZXh0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2NyZWVuLXJlYWRlci1zaG9ydGN1dCxcbi5zY3JlZW4tcmVhZGVyLXRleHQsXG4uc2NyZWVuLXJlYWRlci10ZXh0IHNwYW4ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNjcmVlbi1yZWFkZXItc2hvcnRjdXQ6Zm9jdXMsXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLm1vcmUtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi8qIEltYWdlIHJlbGVhc2VcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pbWFnZS1yZWxlYXNlIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICBtYXJnaW4tcmlnaHQ6IC01MHZ3O1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyogVmVydGljYWwgYWxpZ24gY29sdW1uIG9iamVjdHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi52ZXJ0aWNhbC1jZW50ZXIge1xuICAud3AtYmxvY2stY29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuIiwiLyogQW5pbWF0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJWFuaW1hdGlvbi1iYXNpYy1oaWRlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qIGZhZGUgaW4gdG9wICovXG4uaGlkZGVuIHtcbiAgQGV4dGVuZCAlYW5pbWF0aW9uLWJhc2ljLWhpZGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbn1cblxuLnNob3duIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG59XG5cbi8qIGZhZGUgaW4gcmlnaHQgKi9cbi5mYWRlLXJpZ2h0LWJlZm9yZSB7XG4gIEBleHRlbmQgJWFuaW1hdGlvbi1iYXNpYy1oaWRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xufVxuXG4uZmFkZS1yaWdodCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xufVxuXG4vKiBmYWRlIGluIGxlZnQgKi9cbi5mYWRlLWxlZnQtYmVmb3JlIHtcbiAgQGV4dGVuZCAlYW5pbWF0aW9uLWJhc2ljLWhpZGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbn1cblxuLmZhZGUtbGVmdCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xufVxuXG4vKiBmYWRlIGluIHNjYWxlICovXG4uZmFkZS1zY2FsZS1iZWZvcmUge1xuICBAZXh0ZW5kICVhbmltYXRpb24tYmFzaWMtaGlkZTtcbiAgdHJhbnNmb3JtOiBzY2FsZSguOSk7XG59XG5cbi5mYWRlLXNjYWxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLyogV2F2ZSAqL1xuQGtleWZyYW1lcyB3YXZlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDBweCk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KSB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNsYXRlWCgxMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB3YXZlMiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MHB4KSB0cmFuc2xhdGVZKDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2xhdGVYKC0xMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoMS4wMik7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRpbHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMSkgcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDEuMDIpIHJvdGF0ZSg1ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gIH1cbn0iLCIvKiBHcmlkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDb2x1bW4gTWl4aW5cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBjb2x1bW5zKCRzcGFjZSwgJGNvbHM6IDIsICRtb2JpbGUtY29sOiAxKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgPiAqIHtcbiAgICBAaWYgJG1vYmlsZS1jb2wgPT0gMSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG4gICAgQGlmICRtb2JpbGUtY29sID09IDIge1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAoI3skc3BhY2V9IC8gMiAqICgjeyRtb2JpbGUtY29sfSAtIDEpKSkgLyAjeyRtb2JpbGUtY29sfSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZSAvIDI7XG4gICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UgLyAyO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAoI3skc3BhY2V9ICogKCN7JGNvbHN9IC0gMSkpKSAvICN7JGNvbHN9KTtcbiAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlO1xuXG4gICAgICAmOm50aC1jaGlsZCgjeyRjb2xzfW4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4lY29sLTEge1xuICBwYWRkaW5nOiAwIDUlO1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5jb2xzLTIge1xuICBAaW5jbHVkZSBjb2x1bW5zKDMwcHgsIDIpO1xufVxuXG4uY29scy0zIHtcbiAgQGluY2x1ZGUgY29sdW1ucygzMHB4LCAzKTtcbn1cbi8qIENvbHVtbiBMYXlvdXRzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY29sdW1uLWxheW91dCgkY29sLTEsICRjb2wtMiwgJGNvbC0zOm51bGwpIHtcbiAgQGlmICRjb2wtMyA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgPiAqOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGZsZXg6ICRjb2wtMSAxIDA7XG4gICAgICB9XG5cbiAgICAgID4gKjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbGV4OiAkY29sLTIgMSAwO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgID4gKjpudGgtY2hpbGQoMSkge1xuICAgICAgICBmbGV4OiAkY29sLTEgMSAwO1xuICAgICAgfVxuXG4gICAgICA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZmxleDogJGNvbC0yIDEgMDtcbiAgICAgIH1cblxuICAgICAgPiAqOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIGZsZXg6ICRjb2wtMyAxIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50d28tb25lIHtcbiAgQGluY2x1ZGUgY29sdW1uLWxheW91dCgyLCAxKTtcbn1cbi8qIFdyYXBwZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiV3cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDUwcHggNSU7XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIHBhZGRpbmc6IDgwcHggMTAlO1xuICB9XG5cbiAgJi1zbWFsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCA1JTtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMTAlO1xuICAgIH1cbiAgfVxuXG4gICYtbGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDgwcHggNSU7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiAxMjBweCAxMCU7XG4gICAgfVxuICB9XG5cbiAgJi1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgfVxuICB9XG59XG5cbnNlY3Rpb24ud3JhcHBlciB7XG4gIEBleHRlbmQgJXdyYXBwZXI7XG5cbiAgJi1zbWFsbCB7XG4gICAgQGV4dGVuZCAld3JhcHBlci1zbWFsbDtcbiAgfVxuXG4gICYtbGFyZ2Uge1xuICAgIEBleHRlbmQgJXdyYXBwZXItbGFyZ2U7XG4gIH1cblxuICAmLWZ1bGwge1xuICAgIEBleHRlbmQgJXdyYXBwZXItZnVsbDtcbiAgfVxufVxuIiwiLyogR2VuZXNpcyBTdHJ1Y3R1cmUgYW5kIExheW91dFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIENvbnRhaW5lclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtY29udGFpbmVyIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xufVxuXG5tYWluLmNvbnRlbnQge1xuICBmbGV4OiAxIDEgMTAwJTtcbn1cblxuLnNpdGUtaGVhZGVyICsgKiB7XG4gIG1hcmdpbi10b3A6ODBweDtcbn1cbi8qIENvbW1vbiBDbGFzc2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIEdlbmVzaXNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hZnRlci1lbnRyeSxcbi5hcmNoaXZlLWRlc2NyaXB0aW9uLFxuLmF1dGhvci1ib3gge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uYWZ0ZXItZW50cnkge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG59XG5cbi5hZnRlci1lbnRyeSAud2lkZ2V0Omxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5icmVhZGNydW1iIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uYXJjaGl2ZS1kZXNjcmlwdGlvbiBwOmxhc3QtY2hpbGQsXG4uYXV0aG9yLWJveCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogU2VhcmNoIEZvcm1cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWFyY2gtZm9ybSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lbnRyeS1jb250ZW50IC5zZWFyY2gtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wb3N0LXBhc3N3b3JkLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLndpZGdldF9zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuLyogVGl0bGVzXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktdGl0bGUgYSxcbi5zaWRlYmFyIC53aWRnZXQtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53aWRnZXQtdGl0bGUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi8qIFdvcmRQcmVzc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmEuYWxpZ25jZW50ZXIgaW1nIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuXG5hLmFsaWdubm9uZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFsaWdubGVmdCB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYWxpZ25yaWdodCB7XG5cdGZsb2F0OiByaWdodDtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbmEuYWxpZ25sZWZ0LFxuYS5hbGlnbm5vbmUsXG5hLmFsaWducmlnaHQge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmltZy5jZW50ZXJlZCxcbi5hbGlnbmNlbnRlcixcbi5zaW5ndWxhci1pbWFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDAgYXV0byAzMHB4O1xufVxuXG5pbWcuYWxpZ25ub25lLFxuLmFsaWdubm9uZSB7XG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbmEuYWxpZ25sZWZ0LFxuaW1nLmFsaWdubGVmdCxcbi53cC1jYXB0aW9uLmFsaWdubGVmdCB7XG5cdG1hcmdpbjogMCAyMHB4IDIwcHggMDtcbn1cblxuYS5hbGlnbnJpZ2h0LFxuaW1nLmFsaWducmlnaHQsXG4ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0IHtcblx0bWFyZ2luOiAwIDAgMjBweCAyMHB4O1xufVxuXG4uZ2FsbGVyeS1jYXB0aW9uLFxuLndwLWNhcHRpb24tdGV4dCB7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0bWFyZ2luLXRvcDogMC41ZW07XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lbnRyeS1jb250ZW50IHAud3AtY2FwdGlvbi10ZXh0IHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWF1ZGlvLXNob3J0Y29kZSxcbi5lbnRyeS1jb250ZW50IC53cC1wbGF5bGlzdCxcbi5lbnRyeS1jb250ZW50IC53cC12aWRlbyB7XG5cdG1hcmdpbjogMCAwIDMwcHg7XG59XG4iLCIvLyAubWVudS1pdGVtLS1oaWdobGlnaHRcbi8qIEhlYWRlciBCdXR0b25zXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4laGVhZGVyLWJ1dHRvbnMge1xuICBAaW5jbHVkZSBjaXJjbGUtb2JqZWN0KDQwcHgsIGhzbGEoMCwgMCUsIDAlLCAwKSwgMTdweCk7XG4gIGNvbG9yOiBoc2woMCwgMCUsIDQwJSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gIH1cbn1cblxuLyogU2tpcCBMaW5rc1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmdlbmVzaXMtc2tpcC1saW5rIHtcbiAgbWFyZ2luOiAwO1xuXG4gIC5za2lwLWxpbmstaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIGxpIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuXG4vKiBTaXRlIEhlYWRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMTUlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjJlZDtcbiAgLy8gYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgcGFkZGluZzogMCAzMHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4ud3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAvKiBTdHJ1Y3R1cmUgKi9cbiAgICA+KiB7XG4gICAgICAmLnByZS1oZWFkZXIge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIH1cblxuICAgICAgJi50aXRsZS1hcmVhIHtcbiAgICAgICAgZmxleDogMiAxIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5oZWFkZXItd2lkZ2V0LWFyZWEge1xuICAgICAgICBmbGV4OiAxIDEgMDtcblxuICAgICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIFRpdGxlIEFyZWFcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aXRsZS1hcmVhIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBvcmRlcjogMjtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMDtcbiAgcGFkZGluZzogMTVweCAyMHB4IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRsaWdodC1jb2xvciwgMCAwIDAgNnB4IGRhcmtlbigkbWFpbi1jb2xvciwgMTUlKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogMC4zcztcblxuICBpbWcge1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gIH1cblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBvcmRlcjogMDtcbiAgICBtYXJnaW46IDEwcHggMjBweCAtNTBweCAyMHB4O1xuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLnNpdGUtZGVzY3JpcHRpb24sXG4ud3AtY3VzdG9tLWxvZ28gLnNpdGUtdGl0bGUge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLyogUmVzcG9uc2l2ZSBNZW51XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubWVudSAubWVudS1pdGVtOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLm1lbnUgLm1lbnUtaXRlbT5hOmZvY3VzK3VsLnN1Yi1tZW51LFxuLm1lbnUgLm1lbnUtaXRlbS5zZkhvdmVyPnVsLnN1Yi1tZW51IHtcbiAgbGVmdDogYXV0bztcbiAgb3BhY2l0eTogMTtcbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gIH1cbn1cblxuLyogTWVudSBUb2dnbGUgJiBTdWIgTWVudSBUb2dnbGUgKi9cbi5tZW51LXRvZ2dsZSxcbi5zdWItbWVudS10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjb2xvcjogJG1haW4tY29sb3I7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICB9XG59XG5cbi8qIE1lbnUgVG9nZ2xlICovXG4ubWVudS10b2dnbGUge1xuICBAZXh0ZW5kICVoZWFkZXItYnV0dG9ucztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBvcmRlcjogNDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuXG4gICYuYWN0aXZhdGVkOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMzM1XCI7XG4gIH1cbn1cblxuLyogU3ViIE1lbnUgVG9nZ2xlICovXG4uc3ViLW1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNXB4O1xuICB0b3A6IDE1cHg7XG4gIHotaW5kZXg6IDEwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgfVxuXG4gICYuYWN0aXZhdGVkOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICBjb2xvcjogbGlnaHRlbigkbWFpbi1jb2xvciwgMTAlKTtcbiAgfVxufVxuXG4vKiBIZWFkZXIgTWVudVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJW1haW4tbmF2LWludGVyYWN0IHtcblxuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiBoc2woMCwwJSw5NiUpO1xuICAgIC8vIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkbWFpbi1jb2xvcjtcbiAgfVxuXG4gIGEge1xuICAgICY6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIG1heC1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qIEhlYWRlciBNZW51IFN0cnVjdHVyZSAqL1xuLm5hdi1wcmltYXJ5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDEwOXB4O1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHotaW5kZXg6IDk5O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAud3JhcCB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8qIE1haW4gSGVhZGVyIE1lbnUgKi9cbi5tZW51LXByaW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUwLCAyNTAsIDI1MCwgMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLyogR2VuZXJpYyBsaSBzdHlsZSovXG4gIC5tZW51LWl0ZW0ge1xuICAgIEBleHRlbmQgJW1haW4tbWVudS1pdGVtO1xuICB9XG5cbiAgLyogR2VuZXJpYyBuYXYgbGluayBzdHlsZSAqL1xuICBhIHtcbiAgICBAZXh0ZW5kICVtYWluLW1lbnUtbGluaztcbiAgfVxuXG4gIC8qIEZpcnN0IGxldmVsIGxpICovXG4gID5saSB7XG4gICAgQGV4dGVuZCAlbWFpbi1tZW51LWl0ZW0tZmlyc3Q7XG5cbiAgICA+YSB7XG4gICAgICBAZXh0ZW5kICVtYWluLW1lbnUtbGluay1maXJzdDtcbiAgICB9XG4gIH1cblxuICAvKiBMZXZlbCAyIE1lbnUgKi9cbiAgLnN1Yi1tZW51IHtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2ZmZiwgNiUpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG1pbi13aWR0aDogMTgwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBsZWZ0OiA5OTk5cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDNweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4O1xuICAgIH1cblxuICAgIC8qIFNlY29uZCBsZXZlbCBsaSAqL1xuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgQGV4dGVuZCAlbWFpbi1tZW51LWl0ZW0tc2Vjb25kO1xuXG4gICAgICA+YSB7XG4gICAgICAgIEBleHRlbmQgJW1haW4tbWVudS1saW5rLXNlY29uZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogU3R5bGVzIGZvciBNYWluIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJW1haW4tbWVudS1pdGVtIHtcbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi1maXJzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgfVxuXG4gICAgLyogSWYgaGF2ZSBjaGlsZHJlbiAqL1xuICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAldHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRtYWluLWNvbG9yO1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC8qIElmIEhpZ2hsaWdodGVkICovXG4gICAgJi5tZW51LWl0ZW0tLWhpZ2hsaWdodCB7XG4gICAgICA+YSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBleHRlbmQgJW1haW4tbmF2LWludGVyYWN0O1xuICAgIH1cbiAgfVxuXG4gICYtc2Vjb25kIHtcbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcblxuICAgICAgICA+YSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuJW1haW4tbWVudS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbiAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMjAlKTtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBib3R0b206IDBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvYmVhcmZhY2Uuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIGkge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICB9XG5cbiAgJi1maXJzdCB7XG4gICAgcGFkZGluZzogMjBweCAyNnB4O1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7fVxuICB9XG5cbiAgJi1zZWNvbmQge1xuICAgIHBhZGRpbmc6IDE0cHggMTVweDtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBIZWFkZXIgV2lkZ2V0IEFyZWFcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5oZWFkZXItd2lkZ2V0LWFyZWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAxO1xuICBvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBvcmRlcjogMztcbiAgICBtYXJnaW46IDAgNSUgMCBhdXRvO1xuICB9XG5cbiAgLm1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLndpZGdldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaGVhZGVyLWJ1dHRvbnM7XG4gIH1cbn1cblxuLyogUHJlIEhlYWRlclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnByZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAzcHggMyU7XG5cbiAgPioge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBpIHtcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBmbGV4OiAxMSAxIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGZsZXg6IDIgMSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICRyZWQ7XG4gIH1cblxuICBhIHtcbiAgICBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlci5oZWFkZXItc2Nyb2xsIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDMwcHggMzBweDtcblxuICAudGl0bGUtYXJlYSB7XG4gICAgbWFyZ2luOiA1cHggMjBweCAtMTBweCAyMHB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICBoZWlnaHQ6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgcGFkZGluZzogNDZweCAwIDAgMDtcblxuICAgIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuOSk7XG4gICAgfVxuICB9XG59IiwiLyogU2lkZWJhclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpZGViYXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uc2lkZWJhciAud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLnNpZGViYXIgcCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4iLCIvKiBGb290ZXJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogRm9vdGVyIFdpZGdldHNcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5mb290ZXItd2lkZ2V0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvc3RhY2tlZC13YXZlcy5zdmcnKSBuby1yZXBlYXQgY2VudGVyIC8gY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2MHB4IDUlIDE4MHB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlIDUwMHB4IDAgMDtcblxuICBAaW5jbHVkZSBtb2JpbGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG5cbiAgJjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC53cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBAaW5jbHVkZSBjaGlsZC1tYXJnaW4oXCJyaWdodFwiLCAzMHB4KTtcbiAgICAgIG1heC13aWR0aDogJGRlc2t0b3Atd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cblxuICAud2lkZ2V0LXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICBAaW5jbHVkZSBsaW5lLWJvcmRlcigxcHgsICRtYWluLWNvbG9yLCBcImJvdHRvbVwiLCAxNXB4KTtcbiAgfVxuXG4gIC53aWRnZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuLmZvb3Rlci13aWRnZXQtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgcCB7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgQGV4dGVuZCBzbWFsbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOm50aC1jaGlsZCgxKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCgzKSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCg0KSB7XG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci13aWRnZXQtYXJlYSB1bFtpZCo9XCJzb2NpYWxcIl0ge1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5mb290ZXItd2lkZ2V0cyAubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LW5vcm07XG4gICAgICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci13aWRnZXRzLTEge1xuICBpbWcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBtYXJnaW46IDAgYXV0byAwIDA7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXItd2lkZ2V0cy00IHtcbiAgaW1nIHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgfVxuICB9XG59XG5cbi50ZXh0d2lkZ2V0PnAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZvb3Rlci13aWRnZXQtYXJlYTpsYXN0LWNoaWxkLFxuLmZvb3Rlci13aWRnZXRzIC53aWRnZXQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiNtZW51LXNvY2lhbC1tZWRpYS1tZW51IHtcbiAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC5zaXRlLWhlYWRlciAmIHtcbiAgICAgIC8vIHRvIGhpZGUgZGlzcGxheSBmcm9tIGhlYWRlclxuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLyogU2l0ZSBGb290ZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAzMCUpO1xuICBjb2xvcjogJG9mZi13aGl0ZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMTVweCA1JSA1cHg7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxMjgwLzE0MDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB0b3A6IC0xOThweDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvYmVhcnF1ZXVlLnBuZycpIHJlcGVhdC14IGJvdHRvbSAvIDEwMCUgYXV0bztcbiAgICBhbmltYXRpb246IHdhdmUyIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxMjgwLzE0MDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB0b3A6IC0yMjBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9iZWFycXVldWUucG5nJykgcmVwZWF0LXggYm90dG9tIC8gMTAwJSBhdXRvO1xuICAgIGFuaW1hdGlvbjogd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cblxuICA+LndyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID5wIHtcbiAgICAgIEBleHRlbmQgLnNtYWxsO1xuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIH1cbiAgfVxufSIsIi8qIEdyYXBoaWNzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTZWNvbmRhcnkgR3JhcGhpY1xuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJXNlY29uZGFyeS1ncmFwaGljIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBvcGFjaXR5OiAwLjE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgdG9wOiAxMHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjBkZWcpO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgfVxufVxuLy8gLnNlY29uZGFyeS1ncmFwaGljIHtcbi8vICAgQGV4dGVuZCAlc2Vjb25kYXJ5LWdyYXBoaWM7XG4vLyB9XG4vKiBCYWNrZ3JvdW5kIFBhdHRlcm5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWJnLXBhdHRlcm4ge1xuICBiYWNrZ3JvdW5kOiAkcGF0dGVybi0xLWxpbmsgcmVwZWF0IGNlbnRlcjtcbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxufVxuLyogR3JhcGhpYyBEaXZpZGVyIDFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWdyYXBoaWMtZGl2aWRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTIwcHg7XG4gIGxlZnQ6IDA7XG4gIC8vIGJhY2tncm91bmQ6ICRncmFwaGljLWRpdmlkZXItMS1saW5rIG5vLXJlcGVhdCBib3R0b20gLyAxMDJ2dyBhdXRvO1xufVxuXG4lZ3JhcGhpYy1kaXZpZGVyLXRvcCB7XG4gIEBleHRlbmQgJWdyYXBoaWMtZGl2aWRlcjtcbiAgdG9wOiAtMTE5cHg7XG59XG5cbiVncmFwaGljLWRpdmlkZXItYm90dG9tIHtcbiAgQGV4dGVuZCAlZ3JhcGhpYy1kaXZpZGVyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICBib3R0b206IC0xMTlweDtcbn1cbi8qIEdyYXBoaWMgRGl2aWRlciAyIC0gYnJ1c2hcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWdyYXBoaWMtZGl2aWRlci0tYnJ1c2gge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxlZnQ6IDA7XG4gIC8vIGJhY2tncm91bmQ6ICRncmFwaGljLWRpdmlkZXItMi1saW5rIG5vLXJlcGVhdCBib3R0b20gLyAxMDJ2dyBhdXRvO1xufVxuXG4lZ3JhcGhpYy1kaXZpZGVyLS1icnVzaC10b3Age1xuICBAZXh0ZW5kICVncmFwaGljLWRpdmlkZXItLWJydXNoO1xuICB0b3A6IC00OXB4O1xufVxuXG4lZ3JhcGhpYy1kaXZpZGVyLS1icnVzaC1ib3R0b20ge1xuICBAZXh0ZW5kICVncmFwaGljLWRpdmlkZXItLWJydXNoO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICBib3R0b206IC00OXB4O1xufVxuLyogRGl2aWRlciBhZnRlciB0aXRsZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lZGl2aWRlci1hZnRlci10aXRsZSB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRtYWluLWNvbG9yO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxufVxuIiwiLyogQnV0dG9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIGJ0bi0xXG4gYnRuLTJcbiBidG4taWNvbi10ZXh0XG4gKi9cbi8qIFN0cnVjdHVyZSBvZiBhIGJ1dHRvbiAqL1xuQG1peGluIGJ0bigkc2l6ZSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRvcDogMDtcbiAgYm9yZGVyOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgQGlmICRzaXplID09IHNtYWxsIHtcbiAgICBwYWRkaW5nOiAwLjZlbSAwLjllbTtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuNDtcbiAgfVxuICBAaWYgJHNpemUgPT0gbWVkaXVtIHtcbiAgICBwYWRkaW5nOiAwLjllbSAxLjJlbTtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMztcbiAgfVxuICBAaWYgJHNpemUgPT0gbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDEuMmVtO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplIC0gMC4yO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbiVidG4ge1xuICBAaW5jbHVkZSBidG4obWVkaXVtKTtcblxuICAmLXNtYWxsIHtcbiAgICBAaW5jbHVkZSBidG4oc21hbGwpO1xuICB9XG5cbiAgJi1sYXJnZSB7XG4gICAgQGluY2x1ZGUgYnRuKGxhcmdlKTtcbiAgfVxufVxuXG4uYnRuIHtcbiAgQGV4dGVuZCAlYnRuO1xuXG4gICYuYWxpZ24tYyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmLXNtYWxsIHtcbiAgICBAZXh0ZW5kICVidG4tc21hbGw7XG4gIH1cblxuICAmLWxhcmdlIHtcbiAgICBAZXh0ZW5kICVidG4tbGFyZ2U7XG4gIH1cbn1cblxuLyogU29saWQgQnV0dG9uIC0gYnRuLTFcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGJ0bi0xKCRiZy1jb2xvciwgJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmctY29sb3IsIDE1JSk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCk7XG4gIH1cbn1cblxuJWJ0bi0xIHtcbiAgQGluY2x1ZGUgYnRuLTEoZGFya2VuKCRtYWluLWNvbG9yLCAxMCUpLCAjZmZmKTtcblxuICAmLXNlY29uZGFyeSB7XG4gICAgQGluY2x1ZGUgYnRuLTEoaHNsKDAsMCUsNjAlKSwgaHNsKDAsMCUsMTAwJSkpO1xuICB9XG5cbiAgJi1saWdodCB7XG4gICAgQGluY2x1ZGUgYnRuLTEoaHNsKDAsMCUsOTAlKSwgaHNsKDAsMCUsNTAlKSk7XG4gIH1cblxuICAmLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIGJ0bi0xKCRncmVlbiwgaHNsKDAsMCUsMTAwJSkpO1xuICB9XG5cbiAgJi1pbmZvIHtcbiAgICBAaW5jbHVkZSBidG4tMSgkYmx1ZSwgaHNsKDAsMCUsMTAwJSkpO1xuICB9XG5cbiAgJi13YXJuaW5nIHtcbiAgICBAaW5jbHVkZSBidG4tMSgkeWVsbG93LCBkYXJrZW4oJHllbGxvdywgNDAlKSk7XG4gIH1cblxuICAmLWRhbmdlciB7XG4gICAgQGluY2x1ZGUgYnRuLTEoJHJlZCwgaHNsKDAsMCUsMTAwJSkpO1xuICB9XG59XG5cbi5idG4tMSB7XG4gIEBleHRlbmQgJWJ0bi0xO1xuXG4gICYtc2Vjb25kYXJ5IHtcbiAgICBAZXh0ZW5kICVidG4tMS1zZWNvbmRhcnk7XG4gIH1cblxuICAmLWxpZ2h0IHtcbiAgICBAZXh0ZW5kICVidG4tMS1saWdodDtcbiAgfVxuXG4gICYtc3VjY2VzcyB7XG4gICAgQGV4dGVuZCAlYnRuLTEtc3VjY2VzcztcbiAgfVxuXG4gICYtaW5mbyB7XG4gICAgQGV4dGVuZCAlYnRuLTEtaW5mbztcbiAgfVxuXG4gICYtd2FybmluZyB7XG4gICAgQGV4dGVuZCAlYnRuLTEtd2FybmluZztcbiAgfVxuXG4gICYtZGFuZ2VyIHtcbiAgICBAZXh0ZW5kICVidG4tMS1kYW5nZXI7XG4gIH1cbn1cblxuLyogT3V0bGluZSBCdXR0b24gLSBidG4tMlxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gYnRuLTIoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXI6IDJweCBzb2xpZCBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cblxuJWJ0bi0yIHtcbiAgQGluY2x1ZGUgYnRuLTIoJG1haW4tY29sb3IpO1xuXG4gICYtd2hpdGUge1xuICAgIEBpbmNsdWRlIGJ0bi0yKCNmZmYpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAxNSUpO1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLTIge1xuICBAZXh0ZW5kICVidG4tMjtcblxuICAmLXdoaXRlIHtcbiAgICBAZXh0ZW5kICVidG4tMi13aGl0ZTtcbiAgfVxufVxuXG4vKiBCdXR0b24gSWNvbiBUZXh0IC0gLmJ0bi1pY29uLXRleHRcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJWJ0bi1pY29uLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMTUlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiA2cHggMTJweDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIGkge1xuICAgIEBpbmNsdWRlIGNpcmNsZS1vYmplY3QoMzBweCwgaHNsYSgwLDAlLDEwMCUsMCksIDE4cHgpO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICB9XG59XG5cbi5idG4taWNvbi10ZXh0IHtcbiAgQGV4dGVuZCAlYnRuLWljb24tdGV4dDtcbn1cbiIsIi8qIEdlbmVzaXMgV2lkZ2V0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogV2lkZ2V0XG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLndpZGdldCBwOmxhc3QtY2hpbGQsXG4ud2lkZ2V0IHVsID4gbGk6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndpZGdldCB1bCA+IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLndpZGdldCB1bCA+IGxpOmxhc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IG9sID4gbGkge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0ZXh0LWluZGVudDogLTIwcHg7XG59XG5cbi53aWRnZXQgbGkgbGkge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndpZGdldF9jYWxlbmRhciB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRkLFxuLndpZGdldF9jYWxlbmRhciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qIEZvcm1zXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiogRm9ybSBFcnJvcnNcbiAqL1xuJWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogJHJlZCFpbXBvcnRhbnQ7XG59XG5cbiVpbnZhbGlkLWlucHV0IHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRyZWQhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZSFpbXBvcnRhbnQ7XG59XG4vKkNPTlRBQ1QgRk9STSovXG46Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4jeyRpbnB1dC1maWVsZHN9LFxudGV4dGFyZWEge1xuICBoZWlnaHQ6IDM4cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0QxRDFEMTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogIzU1NTtcblxuICBAaW5jbHVkZSBtb2JpbGUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG59XG4vKiBSZW1vdmVzIGF3a3dhcmQgZGVmYXVsdCBzdHlsZXMgb24gc29tZSBpbnB1dHMgZm9yIGlPUyAqL1xuI3skaW5wdXQtZmllbGRzfSxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbiN7JGlucHV0LWZpZWxkc30sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2JiYmJiYjtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHNhdHVyYXRlKCRtYWluLWNvbG9yLCAxNSUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuZm9ybSB7XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIH1cblxuICB0ZXh0YXJlYSB7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgIHBhZGRpbmc6IDAuNmVtIDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgQGV4dGVuZCAlYnRuO1xuICAgICAgQGV4dGVuZCAlYnRuLTE7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMWYxZjI7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgI2NjYztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qV1BDRjcgU1BFQ0lGSUMgRVJST1IgQU5EIEFQUFJPVkFMIE1FU1NBR0VTKi9cbi53cGNmNyB7XG4gIGZvcm0ge1xuICAgIC53cGNmNy1saXN0LWl0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC53cGNmNy1ub3QtdmFsaWQtdGlwIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGE0YTtcbiAgICAgIHBhZGRpbmc6IDAuMmVtIDAuNmVtO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gICAgICBib3JkZXI6IDAgc29saWQgI2NjNGE0YTtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGE0YTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAlZmxleGJveC1jLWM7XG4gICAgICAgIEBleHRlbmQgJWljb247XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxNXB4KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndwY2Y3LWFjY2VwdGFuY2UtbWlzc2luZyxcbiAgICAud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlYTBhXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndwY2Y3LW1haWwtc2VudC1vayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZWEwM1wiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyogU2VsZWN0IFJlc2V0XG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbnNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMTtcbiAgY29sb3I6ICM1NTU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHBhZGRpbmc6IDAuNmVtIDEuNGVtIDAuNWVtIDAuOGVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDAuM2VtO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVMtQVNDSUksJTNDc3ZnJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB3aWR0aCUzRCUyMjI5Mi40JTIyJTIwaGVpZ2h0JTNEJTIyMjkyLjQlMjIlM0UlM0NwYXRoJTIwZmlsbCUzRCUyMiUyMzAwN0NCMiUyMiUyMGQlM0QlMjJNMjg3JTIwNjkuNGExNy42JTIwMTcuNiUyMDAlMjAwJTIwMC0xMy01LjRIMTguNGMtNSUyMDAtOS4zJTIwMS44LTEyLjklMjA1LjRBMTcuNiUyMDE3LjYlMjAwJTIwMCUyMDAlMjAwJTIwODIuMmMwJTIwNSUyMDEuOCUyMDkuMyUyMDUuNCUyMDEyLjlsMTI4JTIwMTI3LjljMy42JTIwMy42JTIwNy44JTIwNS40JTIwMTIuOCUyMDUuNHM5LjItMS44JTIwMTIuOC01LjRMMjg3JTIwOTVjMy41LTMuNSUyMDUuNC03LjglMjA1LjQtMTIuOCUyMDAtNS0xLjktOS4yLTUuNS0xMi44eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjdlbSB0b3AgNTAlLCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMC42NWVtIGF1dG8sIDEwMCU7XG5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogIzg4ODtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2FhYTtcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4IDNweCByZ2JhKDU5LCAxNTMsIDI1MiwgLjcpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAtbW96LW1hYy1mb2N1c3Jpbmc7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICYgb3B0aW9uIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG4vKiBDaGVja2JveCBSZXNldFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgKyAqIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICA+ICoge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgJjphZnRlcixcbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBtaW4td2lkdGg6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGJvcmRlcjogc29saWQgMnB4ICNjY2M7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgM3B4ICM5OTk7XG4gICAgICBib3JkZXItbGVmdDogc29saWQgM3B4ICM5OTk7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICBAZXh0ZW5kICV0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIH1cbiAgfVxuXG4gICsgKjpob3ZlciB7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG5cbiAgJjpjaGVja2VkICsgKiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oI2ZmZiwgNSUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCNmZmYsIDUlKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKC44KTtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDRweCBsaWdodGVuKCRncmVlbiwgMCk7XG4gICAgICBib3JkZXItbGVmdDogc29saWQgNHB4IGxpZ2h0ZW4oJGdyZWVuLCAwKTtcbiAgICB9XG4gIH1cbn1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG4iLCIvKiBMaXN0IHN0eWxlXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4laXRlbS1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcblxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBtYXJnaW4tbGVmdDogMjRweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAvLyBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gIG9sLFxuICB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uaXRlbS1saXN0IHtcbiAgQGV4dGVuZCAlaXRlbS1saXN0O1xuXG4gID4gbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgfVxufVxuXG4ubnVtYmVyLWxpc3Qge1xuICBAZXh0ZW5kICVpdGVtLWxpc3Q7XG5cbiAgPiBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICB9XG59XG4vKiBFbnRyeSBNZXRhXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnktZm9vdGVyIC5lbnRyeS1tZXRhIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xufVxuXG4uZW50cnktY29tbWVudHMtbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMTRcIjtcbiAgbWFyZ2luOiAwIDZweCAwIDJweDtcbn1cbi8qIFBhZ2luYXRpb25cbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAZXh0ZW5kICVmbGV4Ym94LWMtYztcbiAgbWFyZ2luOiA2MHB4IDA7XG59XG5cbi5hZGphY2VudC1lbnRyeS1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6ICMzMzM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSBhOmZvY3VzLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSBhOmhvdmVyLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaS5hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGNvbG9yOiAjZmZmO1xufVxuIiwiLyogU2VjdGlvbiBUaXRsZVxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlY3Rpb24tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICYuYWxpZ24tYyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgaDQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJG1haW4tY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgLSAwLjI7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG4vKiBEaXZpZGVyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ociB7XG4gIGJvcmRlcjogMDtcbn1cblxuaHIuc21hbGwge1xuICBtYXJnaW46IDEwcHggMDtcbn1cblxuJWRpdmlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMTVweCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1haW4tY29sb3I7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG4uZGl2aWRlciB7XG4gIEBleHRlbmQgJWRpdmlkZXI7XG5cbiAgJi1jIHtcbiAgICBAZXh0ZW5kICVkaXZpZGVyO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuIiwiLyogSW1hZ2UgQ2FyZFxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPGZpZ3VyZSBjbGFzcz1cImltZy1jYXJkXCI+XG4gIDxpbWcgc3JjPVwiXCI+XG4gIDxmaWdjYXB0aW9uPjwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuKi9cbi5pbWctY2FyZCB7XG4gIEBleHRlbmQgJWltZy1jYXJkO1xufVxuXG4laW1nLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcblxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHotaW5kZXg6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgxMCwxMCUsMTAlLHRvcCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjg7XG4gIH1cblxuICBmaWdjYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS4xO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG4vKiBMb2dvIEdhbGxlcnlcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjxzZWN0aW9uIGNsYXNzPVwibG9nby1zaG93Y2FzZVwiPlxuICA8aGVhZGVyIGNsYXNzPVwic2VjdGlvbi10aXRsZSBhbGlnbi1jXCI+XG4gICAgPGgyPk91ciBDbGllbnRzPC9oMj5cbiAgICA8aHIgY2xhc3M9XCJkaXZpZGVyLWNcIj5cbiAgICA8cD5IZXJlIGFyZSBzb21lIG9mIG91ciBvdXIgY2xpZW50cy48L3A+XG4gIDwvaGVhZGVyPlxuXG4gIDxkaXYgY2xhc3M9XCJsb2dvLXNob3djYXNlLWdhbGxlcnlcIj5cbiAgICA8aW1nIHNyYz1cIi4uLy4uLy4uL3N0YXRpYy9sb2dvLTEuanBnXCI+XG4gIDwvZGl2PlxuPC9zZWN0aW9uPlxuKi9cbi5sb2dvLWZlYXR1cmUtZ2FsbGVyeSB7XG4gIEBleHRlbmQgJWxvZ28tZmVhdHVyZS1nYWxsZXJ5O1xufVxuXG4lbG9nby1mZWF0dXJlLWdhbGxlcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBleHRlbmQgJWZsZXhib3gtYy1jO1xuXG4gIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG4vKiBJbWFnZSBCYW5uZXJcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIDxzZWN0aW9uIGNsYXNzPVwiaW1hZ2UtYmFubmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBjb250YWluZXItbGVmdFwiPlxuICAgICAgPGgzPlRpdGxlPC9oMz5cbiAgICAgIDxwPkRlc2NyaXB0aW9uPC9wPlxuICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cImJ0biBidG4tM1wiPkxlYXJuIE1vcmU8L2E+XG4gICAgPC9kaXY+XG4gICAgPGltZyBzcmM9XCIvc3RhdGljL2FzZC5qcGdcIj5cbiAgPC9zZWN0aW9uPlxuXG4gICovXG4vLyAuaW1hZ2UtYmFubmVyIHtcbi8vICAgQGV4dGVuZCAlaW1hZ2UtYmFubmVyO1xuLy8gfVxuXG4laW1hZ2UtYmFubmVyIHtcbiAgQGV4dGVuZCAlYmFubmVyO1xuICBwYWRkaW5nOiAxMHB4O1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBwYWRkaW5nOiA2MHB4IDA7XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC44KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMCwwLDAsMC4xKTtcblxuICAgICYuY29udGFpbmVyLWxlZnQge1xuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JGRlc2t0b3Atd2lkdGh9ICogMC41KTtcbiAgICAgICAgbWF4LXdpZHRoOiAkZGVza3RvcC13aWR0aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoKDEwMCUgLSAjeyRkZXNrdG9wLXdpZHRofSkgLyAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRhaW5lci1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCgxMDAlIC0gI3skZGVza3RvcC13aWR0aH0pIC8gMik7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogQmFubmVyc1xuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4lYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbiAgcGFkZGluZzogNTBweCA1JTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG4vKiBSZWd1bGFyIEJhbm5lclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4lcmVndWxhci1iYW5uZXIge1xuICBAZXh0ZW5kICViYW5uZXI7XG4gIEBleHRlbmQgJWJnLXBhdHRlcm47XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgMTBweCk7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMjUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwIHtcbiAgICBAZXh0ZW5kICVjb2wtMTtcbiAgICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG4gICAgY29sb3I6ICRvZmYtd2hpdGU7XG4gIH1cblxuICBpbWcge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuXG4uZW50cnktaGVhZGVyLFxuLnJlZ3VsYXItYmFubmVyIHtcbiAgQGV4dGVuZCAlcmVndWxhci1iYW5uZXI7XG59XG4vKiBHaWFudCBCYW5uZXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiVnaWFudC1iYW5uZXIge1xuICBoZWlnaHQ6IDUwMHB4O1xuICBtYXgtaGVpZ2h0OiA3MjBweDtcbiAgQGV4dGVuZCAlYmFubmVyO1xuICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmgpO1xuICB9XG5cbiAgLmVudHJ5LXRpdGxlLFxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgei1pbmRleDogMDtcbiAgICB0ZXh0LXNoYWRvdzogM3B4IDNweCA2cHggcmdiYSgwLDAsMCwwLjYpO1xuXG4gICAgaDEsXG4gICAgaDIge1xuICAgICAgY29sb3I6IGhzbCgwLDAlLDEwMCUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAuZ2lhbnQtYmFubmVyIHtcbi8vICAgQGV4dGVuZCAlZ2lhbnQtYmFubmVyO1xuLy8gfVxuIiwiLyogSGVybyBTbGlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEdpYW50IEJhbm5lciBTbGlkZXIgKi9cbi5oZXJvLXNsaWRlciB7XG4gIEBleHRlbmQgJXRyYW5zaXRpb24tZHVyYXRpb247XG4gIEBleHRlbmQgJWJhbm5lcjtcbiAgLy8gdmlzaWJpbGl0eTogaGlkZGVuO1xuICAvLyBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IGF1dG87XG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgfVxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIG1heC1oZWlnaHQ6IDcyMHB4O1xuICB9XG59XG5cbi5oZXJvLXNsaWRlci0tc2hvcnQge1xuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLmhlcm8tc2xpZGUge1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB9XG4gIH1cbn1cbi8qIEdpYW50IEJhbm5lciBTbGlkZSAqL1xuLmhlcm8tc2xpZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgaGVpZ2h0OiA3MHZoO1xuICB9XG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdncgLyAxNiAqIDkpO1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbiAgLyogR2VuZXJpYyBGaWdjYXB0aW9uIFN0eWxlcyAqL1xuICBmaWdjYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHotaW5kZXg6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaHNsYSgxMDcsMjMlLDEwJSwwLjMpO1xuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDUlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIC8vIEdyYWRpZW50IEZhZGVcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IC05OXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgyNTUsMjU1JSwyNTUlLHRvcCk7XG4gICAgICB9XG5cbiAgICAgIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHghaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMztcbiAgICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDI1JSk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LWZhbWlseTogJHN1YnRpdGxlLWZvbnQ7XG4gICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAtIDAuMztcbiAgICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgIGhlaWdodDogOTB2dztcbiAgICB9XG4gIH1cbiAgLyogQ2FwdGlvbiBQb3NpdGlvbnMgKi9cbiAgJi0tbGVmdCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZS1sZWZ0LXJpZ2h0O1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tbGlnaHQ6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMjU1LDI1NSUsMjU1JSxyaWdodCk7XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1kYXJrOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDAsMCUsMCUscmlnaHQpO1xuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1maWdjYXB0aW9uLWxlZnQtcmlnaHQ7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBsZWZ0OiA1dnc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tcmlnaHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1ncmFkaWVudC1mYWRlLWxlZnQtcmlnaHQ7XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1saWdodDpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgyNTUsMjU1JSwyNTUlLGxlZnQpO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLDAlLDAlLGxlZnQpO1xuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1maWdjYXB0aW9uLWxlZnQtcmlnaHQ7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICByaWdodDogNXZ3O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tY2VudGVyIHtcbiAgICAmOmJlZm9yZSB7fVxuXG4gICAgJi5oZXJvLXNsaWRlLS1saWdodDpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgyNTUsMjU1JSwyNTUlLGJvdHRvbSk7XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1kYXJrOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDAsMCUsMCUsYm90dG9tKTtcbiAgICB9XG5cbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAyMHB4IDUlO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICYtLXRvcCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgQGV4dGVuZCAlaGVyby1zbGlkZS1ncmFkaWVudC1mYWRlLXRvcC1ib3R0b207XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1saWdodDpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgyNTUsMjU1JSwyNTUlLGJvdHRvbSk7XG4gICAgfVxuXG4gICAgJi5oZXJvLXNsaWRlLS1kYXJrOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mYWRlKDAsMCUsMCUsYm90dG9tKTtcbiAgICB9XG5cbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZmlnY2FwdGlvbi10b3AtYm90dG9tO1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGJvdHRvbTtcbiAgICB9XG4gIH1cblxuICAmLS1ib3R0b20ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZS10b3AtYm90dG9tO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tbGlnaHQ6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZhZGUoMjU1LDI1NSUsMjU1JSx0b3ApO1xuICAgIH1cblxuICAgICYuaGVyby1zbGlkZS0tZGFyazpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZmFkZSgwLDAlLDAlLHRvcCk7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBAZXh0ZW5kICVoZXJvLXNsaWRlLWZpZ2NhcHRpb24tdG9wLWJvdHRvbTtcbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLyogRGFyayBmb250IHN0eWxlcyAqL1xuICAmLS1kYXJrIGZpZ2NhcHRpb24ge1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAqIHtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggNHB4IHJnYmEoMCwwLDAsMC41KTtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIExlZnQgYW5kIHJpZ2h0IGZpZ2NhcHRpb24qL1xuJWhlcm8tc2xpZGUtZmlnY2FwdGlvbiB7XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgJi1sZWZ0LXJpZ2h0IHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuXG4gICAgJi10b3AtYm90dG9tIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDAgMjAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4laGVyby1zbGlkZS1ncmFkaWVudC1mYWRlIHtcbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XG4gIG9wYWNpdHk6IDAuNTtcblxuICAmLWxlZnQtcmlnaHQge1xuICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAmLXRvcC1ib3R0b20ge1xuICAgIEBleHRlbmQgJWhlcm8tc2xpZGUtZ3JhZGllbnQtZmFkZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTAlO1xuICB9XG59XG4iLCIvKiBEZWZhdWx0IEJsb2NrcyAqL1xuLmlubGluZS13cmFwIHtcbiAgbWF4LXdpZHRoOiAkZGVza3RvcC14bC13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgNSU7XG59XG5cbi5hbGlnbmNlbnRlciAuc2VjdGlvbi10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBociB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8qIEltYWdlIEdhbGxlcnkgKi9cbi5pbWFnZS1nYWxsZXJ5LXNlY3Rpb24ge1xuICBwYWRkaW5nOiA1MHB4IDUlO1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgfVxufVxuXG4uaW1hZ2UtZ2FsbGVyeS1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBwYWRkaW5nOiAzcHg7XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gIH1cblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG4vKiBMUiBMYXlvdXQgKi9cbi5sci1sYXlvdXQge1xuICAvLyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi8uLi9zdGF0aWMvYmFja2dyb3VuZC5qcGdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDAwcHg7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxuXG4gICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgLmlubGluZS13cmFwIHtcbiAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwO1xuICAgICAgfVxuXG4gICAgICBmaWd1cmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbmxpbmUtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBleHRlbmQgJWZsZXhib3gtYy1jO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMHB4LCAyKTtcbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDA7XG4gICAgaGVpZ2h0OiA5MHZ3O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGhlaWdodDogNzB2aDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGhlaWdodDogNTB2dztcbiAgICAgIG1heC1oZWlnaHQ6IDcwdmg7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRvZmYtd2hpdGUsIDMlKTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB3aWR0aDogY2FsYygyNXZ3KTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogY2FsYyg1MHZ3ICsgNjBweCk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZmVhdHVyZS1hY3RpdmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBtYXgtd2lkdGg6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMzBweCA1JTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDEwMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2Vjb25kYXJ5LWdyYXBoaWMtMCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDAuMztcbiAgd2lkdGg6IDI1dnc7XG4gIGhlaWdodDogMjV2dztcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTIuNXZ3KTtcbiAgdG9wOiBjYWxjKDUwJSAtIDEyLjV2dyk7XG59XG5cbi8qIEVjb21tZXJjZSBIaWdobGlnaHRzICovXG4uYXR0cmlidXRlLWhpZ2hsaWdodHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgcGFkZGluZzogNjBweCA1JSA1MHB4O1xuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIHBhZGRpbmc6IDYwcHggMTAlIDUwcHg7XG4gIH1cblxuICAuaW5saW5lLXdyYXAge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMjVweCwgNCk7XG5cbiAgICA+KiB7XG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pY29uLWNhcmQge1xuICAgIGltZyB7XG4gICAgICBmaWx0ZXI6IHNhdHVyYXRlKDApIGludmVydCgxKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi8qIEZvb2QgTWVudSAqL1xuLmRpc2gtbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRvZmYtd2hpdGUsIDEwJSk7XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDEgNDUlO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgNXB4KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cblxuICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kaXNoLXRpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC1ib2xkO1xuXG4gIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC1ub3JtO1xuICB9XG59XG5cblxuLyogUHJvZHVjdCBGZWF0dXJlICovXG4ubGlicmFyeS1nYWxsZXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICB9XG5cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmUge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgYm90dG9tOiAtMzAwcHg7XG4gICAgfVxuICB9XG5cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmUuYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID5pbWcge1xuICAgICAgdHJhbnNpdGlvbjogMC42cztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiAwLjZzO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogaHNsYSgwLCAwJSwgMCUsIDAuNSk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDUwcHg7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBTdGF0ZSB3aGVuIG5vdCBhY3RpdmUgKi9cbiAgLnNpbmdsZS1wcm9kdWN0LWZlYXR1cmU6bm90KC5hY3RpdmUpIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbCgwLCAwJSwgOTUlKTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2woMCwgMCUsIDg1JSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBoc2woMCwgMCUsIDg1JSk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBkYXJrZW4oJG1haW4tY29sb3IsIDIwJSk7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjdyZW07XG5cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKiBDb250YWN0IDEgKi9cbi5jb250YWN0LTEge1xuICBtYXJnaW46IDgwcHggMDtcbn1cblxuLmNvbnRhY3QtZGV0YWlscy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZ2FwOiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiA4MHB4IDA7XG5cbiAgLmNvbnRhY3QtZGV0YWlsIHtcbiAgICBmbGV4OiAxIDEgMjAwcHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuXG4gICAgaSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICAgIH1cblxuICAgIC5jb250YWN0LWRldGFpbC1jYXB0aW9uIHtcbiAgICAgIGIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhY3QtMV9tYXBlbWJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiA1MHB4IDAgMTUwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogNzUlO1xuICAgIGJvdHRvbTogLTI1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLXdoaXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oJG9mZi13aGl0ZSwgMTAlKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRvZmYtd2hpdGUsIDEwJSk7XG5cbiAgICBAZXh0ZW5kIC5pbWFnZS1yZWxlYXNlO1xuICB9XG59IiwiLnBvc3QtYXJjaGl2ZSB7XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgNTBweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAuYXJjaGl2ZS1kZXNjcmlwdGlvbiB7XG4gICAgQGV4dGVuZCAlcmVndWxhci1iYW5uZXI7XG4gIH1cblxuICAucG9zdC1lbnRyeS1saXN0IHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMyAxIDA7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtZW50cnktbGlzdCB7XG4gIEBpbmNsdWRlIGNoaWxkLW1hcmdpbignYm90dG9tJywgMzBweCk7XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoMTVweCwgMik7XG4gICAgQGluY2x1ZGUgY29sdW1uLWxheW91dCgyLCAzKTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gIHAge1xuICAgIEBleHRlbmQgLnNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cblxuICAuY2F0ZWdvcnktbGluayB7XG4gICAgQGV4dGVuZCAlYnRuLXNtYWxsO1xuICAgIEBleHRlbmQgJWJ0bi0xLWxpZ2h0O1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gIH1cblxuICAuZW50cnktY29udGVudF9fdGh1bWJuYWlsLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxNzBweDtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxufVxuIiwiLyogU3RydWN0dXJlIG9mIHNpbmdsZSBwb3N0Ki9cbi5wb3N0LXNpbmdsZSB7XG4gIC5lbnRyeSB7XG4gICAgQGluY2x1ZGUgY2hpbGQtbWFyZ2luKCdib3R0b20nLCA1MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAuaGFzLXBvc3QtdGh1bWJuYWlsIC5lbnRyeS1oZWFkZXIge1xuICAgIEBleHRlbmQgJWRhcmstdGhlbWU7XG4gICAgYmFja2dyb3VuZDogJG1haW4tY29sb3I7XG5cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMyAxIDA7XG4gICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICB9XG4gIH1cbn1cbi8qIFByaW1hcnkgc2lkZWJhciBvbmx5ICovXG4uc2lkZWJhci1wcmltYXJ5IHtcbiAgLndpZGdldC10aXRsZSB7XG4gICAgQGluY2x1ZGUgbGluZS1ib3JkZXIoNHB4LCBoc2woMCwwJSw4NSUpLCAnYm90dG9tJywgMTBweCk7XG4gIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICAuZW50cnktbWV0YSB7XG4gICAgQGV4dGVuZCAuc21hbGw7XG4gICAgY29sb3I6IGhzbCgwLDAlLDcwJSk7XG4gIH1cbn1cbi8qIFNpbmdsZSBQYWdlIENvbnRlbnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ucG9zdC1zaW5nbGUge1xuICAuZW50cnktY29udGVudCB7XG4gICAgQGV4dGVuZCAlYmxvZy10eXBvZ3JhcGh5O1xuXG4gICAgPiB1bCB7XG4gICAgICBAZXh0ZW5kIC5pdGVtLWxpc3Q7XG4gICAgfVxuXG4gICAgPiBvbCB7XG4gICAgICBAZXh0ZW5kIC5udW1iZXItbGlzdDtcbiAgICB9XG4gIH1cbiAgLy9cbiAgLy8gLmNvbW1lbnQtcmVzcG9uZCB7XG4gIC8vICAgcGFkZGluZzogMCA1JTtcbiAgLy8gfVxufVxuIiwiLyogRWNvbW1lcmNlIEhpZ2hsaWdodHMgKi9cbi5lY29tbWVyY2UtaGlnaGxpZ2h0cyB7XG4gIEBpbmNsdWRlIGNvbHVtbnMoMTVweCwgNCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xuICBwYWRkaW5nOiA2MHB4IDUlIDUwcHg7XG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgcGFkZGluZzogNjBweCAxMCUgNTBweDtcbiAgfVxuXG4gID4qIHtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuaWNvbi1jYXJkIHtcbiAgICBpbWcge1xuICAgICAgZmlsdGVyOiBzYXR1cmF0ZSgwKSBpbnZlcnQoMSk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4uaWNvbi1jYXJkIHtcbiAgQGluY2x1ZGUgdGh1bWJuYWlsLWNhcmQoMTAwJSwgNDBweCwgcmlnaHQsIDEwcHgpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgfVxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHt9XG4gIH1cblxuICBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDIwJSk7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLyogRmxvYXRpbmcgYnV0dG9uICovXG4uZmxvYXRpbmctd2hhdHNhcHAtYnV0dG9uIHtcbiAgQGluY2x1ZGUgY2lyY2xlLW9iamVjdCg0NnB4LCAjMjVkMzY2LCAyM3B4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBmb250LXdlaWdodDogJGZvbnQtbm9ybTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGJvdHRvbTogMTBweDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7XG59XG5cbi8qIFN3aXBlciBCdXR0b24gKi9cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgY29sb3I6ICRtYWluLWNvbG9yO1xufVxuXG5cbi8qIFNvY2lhbCBNZWRpYSBGZWVkICovXG4uc20tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcblxuICAvLyAmOmJlZm9yZSB7XG4gIC8vICAgY29udGVudDogXCJcIjtcbiAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vICAgbGVmdDogLTUwcHg7XG4gIC8vICAgdG9wOiAwO1xuICAvLyAgIHdpZHRoOiAyNTBweDtcbiAgLy8gICBoZWlnaHQ6IDI1MHB4O1xuICAvLyAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3BsYW5ldC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcbiAgLy8gICBhbmltYXRpb246IHRpbHQgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIC8vIH1cblxuICAvLyAmOmFmdGVyIHtcbiAgLy8gICBjb250ZW50OiBcIlwiO1xuICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gICByaWdodDogLTUwcHg7XG4gIC8vICAgdG9wOiBhdXRvO1xuICAvLyAgIGJvdHRvbTogMDtcbiAgLy8gICB3aWR0aDogMjUwcHg7XG4gIC8vICAgaGVpZ2h0OiAyNTBweDtcbiAgLy8gICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9iYWxsZXQucG5nJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gIC8vICAgYW5pbWF0aW9uOiBib3VuY2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIC8vIH1cbn1cblxuLnNtLWRpc3BsYXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAzMHB4O1xuXG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIHRvcDogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgdG9wOiAtMTBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMCAzcHggaHNsYSgxODIsIDQ1JSwgNDYlLCAxKTtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDAgNHB4IGhzbGEoMTgyLCA0NSUsIDQ2JSwgMC41KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cbn1cblxuLyogTWFpbiBGZWF0dXJlICovXG4ubWFpbi1mZWF0dXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjhlYztcbiAgLy8gYmFja2dyb3VuZDogJG1haW4tY29sb3IgdXJsKCcuLi8uLi8uLi9zdGF0aWMvY2lyY2xlLXNjYXR0ZXIuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIC8vIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3BhdHRlcm4uanBnJykgcmVwZWF0IGNlbnRlciAvIDMwMHB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL21haW4tZmVhdHVyZS1iZy5qcGVnJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyO1xuXG4gICAgLy8gZmlsdGVyOiBzYXR1cmF0ZSgwKTtcbiAgICAvLyBvcGFjaXR5OiAwLjE7XG4gICAgei1pbmRleDogLTI7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9kb3RzLWJhY2tncm91bmQucG5nJykgcmVwZWF0LXggYm90dG9tIC8gMTAwMHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogLTE7XG4gICAgZmlsdGVyOiBpbnZlcnQoMSk7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi5tYWluLWZlYXR1cmUtc2luZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4MHB4O1xuICBtaW4taGVpZ2h0OiA5MHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGZpZ2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgaDEge1xuICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyB6LWluZGV4OiAwO1xuICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcbiAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMHB4IGRhcmtlbigkbWFpbi1jb2xvciwgMjUlKTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIC8vICY6YWZ0ZXIge1xuICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgIHdpZHRoOiA0MDBweDtcbiAgICAvLyAgIGhlaWdodDogNDAwcHg7XG4gICAgLy8gICBsZWZ0OiAwO1xuICAgIC8vICAgdG9wOiAwO1xuICAgIC8vICAgYmFja2dyb3VuZDogdXJsKC4uLy4uLy4uL3N0YXRpYy9zcGVlY2gtYnViYmxlLTIucG5nKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgLy8gICB6LWluZGV4OiAtMTtcbiAgICAvLyB9XG5cbiAgICBiZGkge1xuICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgIH1cbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMCA2cHggaHNsYSgxODIsIDQ1JSwgNDYlLCAwLjUpO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDAgNnB4IGhzbGEoMzhkZWcsIDIwJSwgMjAlLCAwLjUpO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgYW5pbWF0aW9uOiByb3RhdGUgMTIwcyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cblxuICAuc3BlZWNoLWJ1YmJsZSB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDIwMHB4KTtcbiAgICBsZWZ0OiA1JTtcbiAgICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAyODBweDtcbiAgICAgIHRvcDogMTIwcHg7XG4gICAgICByaWdodDogLTEyMHB4O1xuICAgICAgei1pbmRleDogLTI7XG4gICAgICBhc3BlY3QtcmF0aW86IDMwMC8yNjA7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy95b2dhLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gIC5zcGVlY2gtYnViYmxlLWgtZmxpcCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogNSU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnNwZWVjaC1idWJibGUtMiB7XG4gICAgLy8gdG9wOiAxMDBweDtcbiAgICAvLyByaWdodDogNTBweDtcblxuICAgIHRvcDogY2FsYyg1MCUgLSAyMDBweCk7XG4gICAgbGVmdDogNSU7XG5cbiAgfVxufVxuXG4uc3BlZWNoLWJ1YmJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgYXNwZWN0LXJhdGlvOiA0OTMvMzI3O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3NwZWVjaC1idWJibGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICBwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAzMCUpO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxufVxuXG4uc3BlZWNoLWJ1YmJsZS1oLWZsaXAge1xuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKTtcbiAgfVxufVxuXG4uc3BlZWNoLWJ1YmJsZS0yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAwO1xuICBhc3BlY3QtcmF0aW86IDQzNS80MDc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvc3BlZWNoLWJ1YmJsZS0yLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6IGRhcmtlbigkbWFpbi1jb2xvciwgMzAlKTtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cbn1cblxuLyogVVNQIHNlY3Rpb24gKi9cbi51c3Atc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XG5cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3dhdmVzLW9wYWNpdHktY3JlYW0uc3ZnJykgbm8tcmVwZWF0IHRvcCAvIGNvbnRhaW47XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0yO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3NodXR0ZXJzdG9ja18xMTA2NDg0Mzc3LmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjI7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICB9XG5cbiAgLmlubGluZS13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogODBweDtcbiAgICBtYXJnaW4tYmxvY2s6IDYwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTUwcHg7XG4gICAgICB0b3A6IDIwJTtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9wbGFuZXQucG5nJykgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgICBhbmltYXRpb246IHRpbHQgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAxMCU7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9zdGF0aWMvY29uZHVjdG9yLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgICAgYW5pbWF0aW9uOiBib3VuY2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgfVxuICB9XG5cbiAgZmlndXJlW2NsYXNzXj1cInVzcFwiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA4MDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA1MHB4O1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIC8vIGJveC1zaGFkb3c6IDAgNnB4IDAgNHB4IGhzbGEoMzgsIDIwJSwgMjAlLCAwLjUpO1xuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweCA0MHB4IDQwcHg7XG4gICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOiBpbWFnZS9zdmcreG1sOyBiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0S1BDRXRMU0JIWlc1bGNtRjBiM0k2SUVGa2IySmxJRWxzYkhWemRISmhkRzl5SURJeUxqQXVNU3dnVTFaSElFVjRjRzl5ZENCUWJIVm5MVWx1SUM0Z1UxWkhJRlpsY25OcGIyNDZJRFl1TURBZ1FuVnBiR1FnTUNrZ0lDMHRQZ284YzNabklIWmxjbk5wYjI0OUlqRXVNU0lnYVdROUlreGhlV1Z5WHpFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhnOUlqQndlQ0lnZVQwaU1IQjRJZ29KSUhacFpYZENiM2c5SWpBZ01DQXhOeklnTVRRMkxqSWlJSE4wZVd4bFBTSmxibUZpYkdVdFltRmphMmR5YjNWdVpEcHVaWGNnTUNBd0lERTNNaUF4TkRZdU1qc2lJSGh0YkRwemNHRmpaVDBpY0hKbGMyVnlkbVVpUGdvOGMzUjViR1VnZEhsd1pUMGlkR1Y0ZEM5amMzTWlQZ29KTG5OME1IdG1hV3hzT2lOR1JrWkdSa1k3ZlFvOEwzTjBlV3hsUGdvOGNHRjBhQ0JqYkdGemN6MGljM1F3SWlCa1BTSk5NVEl3TGpNc01qRXVNbU14TWk0M0xEY3VOU3d5Tmk0ekxERTBMRE0yTGpZc01qVXVNM014Tnk0eUxESTNMalFzTVRRdU5TdzBNUzQ0Y3kweE5DNDVMREkzTFRJM0xqUXNNell1T1dNdE1USXVOU3c1TGpndE1qVXVNaXd4Tnkwek9DNDFMREU1TGpZS0NXTXRNVE11TWl3eUxqY3RNamNzTVMwME1DNHpMVEl1T0dNdE1UTXVNaTB6TGpndE1qVXVPUzA1TGpjdE16Z3VOQzB4T0M0M1l5MHhNaTQyTFRrdU1TMHlOUzB5TVM0eUxUSTJMall0TXpRdU4yTXRNUzQxTFRFekxqVXNOeTQzTFRJNExqUXNNVFV1TmkwME15NHhDZ2xETWpNdU5pd3pNQzQzTERNd0xERTJMRFF4TGpNc055NDVZekV4TGpJdE9DNHhMREkzTGpNdE9TNDNMRFF4TGpFdE5pNHlVekV3Tnk0M0xERXpMamNzTVRJd0xqTXNNakV1TW5vaUx6NEtQQzl6ZG1jK0NnPT0nKSBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcbiAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdyg1cHggMTBweCAwcHggZGFya2VuKCRtYWluLWNvbG9yLCAyMCUpKTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udDtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICBjb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAzMCUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKSBzY2FsZSgxLjMpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IC04MHB4O1xuXG4gICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKSBzY2FsZSgxLjMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc21hbGwtdXNwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBib3gtc2hhZG93OiAwIDZweCAwIDRweCBoc2xhKDM4LCAyMCUsIDIwJSwgMC41KTtcblxuICAgIHAge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ibG9jazogNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpZFhSbUxUZ2lQejQ4SVMwdElGVndiRzloWkdWa0lIUnZPaUJUVmtjZ1VtVndieXdnZDNkM0xuTjJaM0psY0c4dVkyOXRMQ0JIWlc1bGNtRjBiM0k2SUZOV1J5QlNaWEJ2SUUxcGVHVnlJRlJ2YjJ4eklDMHRQZzBLUEhOMlp5Qm1hV3hzUFNJak1EQXdNREF3SWlCM2FXUjBhRDBpT0RBd2NIZ2lJR2hsYVdkb2REMGlPREF3Y0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T1RJd0lERTVNakFpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrRFFvZ0lDQWdQSEJoZEdnZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmpiR2x3TFhKMWJHVTlJbVYyWlc1dlpHUWlJR1E5SWswek5UY3VOVFF5SURCSU1UVTJNaTQwTmxZeE1Ua3VNVGd4U0RFNU1qQldOVFF5TGpnMk9FTXhPVEl3SURZMU5TNHlNellnTVRnM05TNHpOaUEzTmpNdU1EQXpJREUzT1RVdU9URWdPRFF5TGpRMlF6RTNNekV1TVRJZ09UQTNMakkwTWlBeE5qUTNMalV5SURrME9DNDROemtnTVRVMU55NDVOU0E1TmpJdU1EUTVRekUxTkRRdU56Z2dNVEExTVM0Mk1pQXhOVEF6TGpFMUlERXhNelV1TWpJZ01UUXpPQzR6TmlBeE1qQXdRekV6TmpBdU5EVWdNVEkzTnk0NU1TQXhNalUxTGpNeUlERXpNakl1TXpVZ01URTBOUzR6TXlBeE16STBMakExVmpFME9UWXVNekZETVRFME5TNHpNeUF4TlRFd0xqTTRJREV4TlRBdU9URWdNVFV5TXk0NE55QXhNVFl3TGpnMklERTFNek11T0RGRE1URTNNQzQ0TVNBeE5UUXpMamMySURFeE9EUXVNeUF4TlRRNUxqTTFJREV4T1RndU16WWdNVFUwT1M0ek5VTXhNall6TGpNeUlERTFORGt1TXpVZ01UTXlOUzQyTVNBeE5UYzFMakUxSURFek56RXVOVFFnTVRZeU1TNHdPRU14TkRFM0xqUTNJREUyTmpjdU1ERWdNVFEwTXk0eU9DQXhOekk1TGpNeElERTBORE11TWpnZ01UYzVOQzR5TmxZeE9USXdTRFEzTmk0M01qTldNVGM1TkM0eU5rTTBOell1TnpJeklERTNNamt1TXpFZ05UQXlMalV5T0NBeE5qWTNMakF4SURVME9DNDBOVGdnTVRZeU1TNHdPRU0xT1RRdU16ZzRJREUxTnpVdU1UVWdOalUyTGpZNE1pQXhOVFE1TGpNMUlEY3lNUzQyTXprZ01UVTBPUzR6TlVNM016VXVOekExSURFMU5Ea3VNelVnTnpRNUxqRTVOU0F4TlRRekxqYzJJRGMxT1M0eE5DQXhOVE16TGpneFF6YzJPUzR3T0RZZ01UVXlNeTQ0TnlBM056UXVOamMwSURFMU1UQXVNemdnTnpjMExqWTNOQ0F4TkRrMkxqTXhWakV6TWpRdU1EVkROalkwTGpZM055QXhNekl5TGpNMUlEVTFPUzQxTkRjZ01USTNOeTQ1TVNBME9ERXVOak0zSURFeU1EQkROREUyTGpnMU5DQXhNVE0xTGpJeUlETTNOUzR5TVRnZ01UQTFNUzQyTWlBek5qSXVNRFE0SURrMk1pNHdORGxETWpjeUxqUTNOeUE1TkRndU9EYzVJREU0T0M0NE56Y2dPVEEzTGpJME1pQXhNalF1TURrMUlEZzBNaTQwTmtNME5DNDJNemM1SURjMk15NHdNRE1nTUNBMk5UVXVNak0ySURBZ05UUXlMamcyT0ZZeE1Ua3VNVGd4U0RNMU55NDFOREpXTUZwTk16VTNMalUwTWlBeU5URXVORGN4U0RFek1pNHlPVlkxTkRJdU9EWTRRekV6TWk0eU9TQTJNakF1TVRVeElERTJNaTQ1T1RFZ05qazBMakkyT1NBeU1UY3VOak00SURjME9DNDVNVGRETWpVMkxqUXhNaUEzT0RjdU5qa2dNekEwTGprNE9DQTRNVFF1TkRBNUlETTFOeTQxTkRJZ09ESTJMalkxT1ZZeU5URXVORGN4V2sweE5UWXlMalEySURneU5pNDJOVGxXTWpVeExqUTNNVWd4TnpnM0xqY3hWalUwTWk0NE5qaERNVGM0Tnk0M01TQTJNakF1TVRVeElERTNOVGN1TURFZ05qazBMakkyT1NBeE56QXlMak0ySURjME9DNDVNVGRETVRZMk15NDFPU0EzT0RjdU5qa2dNVFl4TlM0d01TQTRNVFF1TkRBNUlERTFOakl1TkRZZ09ESTJMalkxT1ZwTk9UVTVMakU1T0NBek1qQk1NVEF6TkM0MU9TQTFOalF1TWpGSU1USTRNRXd4TURneExqRWdOekUxTGpjNVRERXhOVGt1TnlBNU5qQk1PVFl3TGpnd01TQTRNRGd1TkRJeVREYzJNUzQ1TURZZ09UWXdURGd6T0M0NE9UZ2dOekUwTGpFd05FdzJOREFnTlRZeUxqVXlOMGc0T0RVdU5ERXpURGsxT1M0eE9UZ2dNekl3V2lJdlBnMEtQQzl6ZG1jKycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8qIEZlYXR1cmVkIERpc2ggKi9cbi5mZWF0dXJlZC1kaXNoLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY4ZWM7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9wYXR0ZXJuLmpwZycpIHJlcGVhdCBjZW50ZXIgLyAzMDBweDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjE7XG4gICAgZmlsdGVyOiBzYXR1cmF0ZSgwKTtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBmaWd1cmUge1xuICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZTtcblxuXG4gICAgICAuc3BlZWNoLWJ1YmJsZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB6LWluZGV4OiAwO1xuXG4gICAgLmZvb2Qtc3dpcGVyIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogNTBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgIGFuaW1hdGlvbjogYm91bmNlIDNzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogNTBweDtcblxuICAgICAgaDIge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAxMCUpO1xuICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgIC8vIHRleHQtc2hhZG93OiAxcHggMnB4IDBweCBkYXJrZW4oJG1haW4tY29sb3IsIDIwJSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLnNwZWVjaC1idWJibGUge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEwcHg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGxpIHtcbiAgICAgIGNvbG9yOiAkb2ZmLXdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAyMCUpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgfVxuICB9XG59XG5cbi5mZWF0dXJlZC1kaXNoLXdyYXBwZXIuZHVjayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9kdWNrLWJnLnBuZycpIG5vLXJlcGVhdCBib3R0b20gcmlnaHQvIDUwMHB4O1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGZpbHRlcjogc2F0dXJhdGUoMCk7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG59XG5cbi5mZWF0dXJlZC1kaXNoLXdyYXBwZXIucmljZSB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9yaWNlZmllbGRzLmpwZycpIG5vLXJlcGVhdCBjZW50ZXIvIGNvdmVyO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGZpbHRlcjogc2F0dXJhdGUoMCk7XG4gICAgb3BhY2l0eTogMC4xO1xuICB9XG59XG5cbi8qIENvbnRhY3QgUGFnZSAqL1xuLmJyYW5jaC1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDE1JSk7XG4gIHotaW5kZXg6IDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy93YXZlcy1vcGFjaXR5LWJsdWUuc3ZnJykgbm8tcmVwZWF0IHRvcCAvIGNvbnRhaW47XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0yO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vc3RhdGljL3NodXR0ZXJzdG9ja18xMTA2NDg0Mzc3LmpwZycpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjI7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi5icmFuY2gtc2luZ2xlIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAzMHB4O1xuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBmaWd1cmUge1xuXG4gICAgaW1nIHtcbiAgICAgIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICB9XG4gIH1cbn1cblxuLmJyYW5jaC1kZXRhaWxzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBwYWRkaW5nOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICBwYWRkaW5nOiA1MHB4O1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOiBpbWFnZS9zdmcreG1sOyBiYXNlNjQsUEhOMlp5QnBaRDBpNVp1KzViR0NYekVpSUdSaGRHRXRibUZ0WlQwaTVadSs1YkdDSURFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2RtbGxkMEp2ZUQwaU1DQXdJREU1T1M0NU9DQTBNekF1TWpJaVBqeGtaV1p6UGp4emRIbHNaVDR1WTJ4ekxURjdabWxzYkRvalptWm1PMzA4TDNOMGVXeGxQand2WkdWbWN6NDhkR2wwYkdVK1FYSjBZbTloY21RZ01qRThMM1JwZEd4bFBqeG5JR2xrUFNKZlIzSnZkWEJmSWlCa1lYUmhMVzVoYldVOUlpWnNkRHRIY205MWNDWm5kRHNpUGp4d1lYUm9JR2xrUFNKZlVHRjBhRjhpSUdSaGRHRXRibUZ0WlQwaUpteDBPMUJoZEdnbVozUTdJaUJqYkdGemN6MGlZMnh6TFRFaUlHUTlJazB4TVRjdU56TXNNelV5TGpRNVlUSXhNaTQzTWl3eU1USXVOeklzTUN3d0xEQXNNVFV0TWpBdU9ETXNNVFF1TXpZc01UUXVNellzTUN3d0xEQXNNUzB4TGpVNVl6RXRNUzQwT0N3eExqZzVMVE1zTWk0M05pMDBMalE1TERJdU56WXROQzQyTlN3MUxqTXhMVGt1TXpRc055NDJNUzB4TkM0d09TNDBNUzB1TnpjdU56WXRNUzQwT0N3eExqRXlMVEl1TWpWekxqYzNMVEV1TlRNc01TNHdOeTB5TGpOak16RXVPVEV0TVRjdU56WXNOVE11TmpZdE5UTXVNelVzTlRNdU5qWXRPVFF1TkdFeE1UQXVPREVzTVRFd0xqZ3hMREFzTUN3d0xURTNMak10TlRrdU9EaGpMVEV1TVRndE1pNDFMVEl1TVRVdE5DNDFOUzB5TGpZMkxUVXVOekl0TWk0MExUVXVNall0T1M0eE5DMHlNQzR5TnkweE1pNHlMVEk1TGpjM1lUVTRPUzQxTlN3MU9Ea3VOVFVzTUN3d0xERXRNVGt1TXpVdE56a3VNamdzT0M0M01pdzRMamN5TERBc01Dd3dMUzQyTVMweUxqSTFMRE0zTGpjeExETTNMamN4TERBc01Dd3hMVEl0TlM0eU5pdzNMak0xTERjdU16VXNNQ3d3TERFdExqRTFMVEl1TnpZc05TdzFMREFzTUN3eExERXVOamt0TXk0d05tTXhMalU0TFRFdU5EZ3NOaTAwTGpnc055NHlOUzA0TGpFM1lUa3VOamNzT1M0Mk55d3dMREFzTUMwdU1UWXRPQzR3Tnl3eE5DNHhOQ3d4TkM0eE5Dd3dMREFzTUMwekxqUTNMVFF1TnpsRE1UUTNMamN1TnpJc01UUXpMamt5TFM0Mk5pd3hNemt1TlRNdU16RmhNVE11TkRRc01UTXVORFFzTUN3d0xEQXROaTR4Tnl3ekxqRTJZeTB4TGpZNUxERXVORE10TXk0eU55d3lMamt4TFRRdU9URXNOQzR6T1MweExqRXlMREV0TWk0eU5Dd3lMakExTFRNdU5EY3NNMkUxTGpnMExEVXVPRFFzTUN3d0xERXROUzQzTWl3eExqSTNZeTB1TlRZdExqRTFMVEV1TVRjdExqTXRNUzQzTXkwdU5URXRNUzQzT1MwdU56RXRNeTQxT0MweExqUTRMVFV1TkRFdE1pNHhOR0V6TXk0NExETXpMamdzTUN3d0xEQXRNalF1TWpVc01HTXRNUzQzT1M0Mk5pMHpMalU0TERFdU5ETXROUzR6Tnl3eUxqRTBZVEUyTERFMkxEQXNNQ3d4TFRFdU56Z3VOVEZCTlM0NE5DdzFMamcwTERBc01Dd3hMRGMxTERFd0xqZzRZeTB4TGpFM0xURXRNaTR6TFRJdE15NDBOeTB6TFRFdU5qUXRNUzQwT0MwekxqSXlMVE10TkM0NE5TMDBMak01UVRFekxqYzRMREV6TGpjNExEQXNNQ3d3TERZd0xqVXVNekZETlRZdU1EWXRMalkyTERVeUxqSTRMamN5TERRNUxETXVOVE5oTVRNdU5qUXNNVE11TmpRc01Dd3dMREF0TXk0MU1pdzBMamM1TERrdU5qUXNPUzQyTkN3d0xEQXNNQzB1TVN3NExqQTNZekV1TWpJc015NHpOeXcxTGpZeExEWXVOamtzTnk0eU5TdzRMakUzWVRVdU5UZ3NOUzQxT0N3d0xEQXNNU3d4TGpZNExETXVNRFlzT0M0MU9TdzRMalU1TERBc01Dd3hMUzR5TERJdU56WXNNek11TWpFc016TXVNakVzTUN3d0xERXRNUzQ1TkN3MUxqSTJMREV4TGpNMExERXhMak0wTERBc01Dd3dMUzQyTWl3eUxqSTFMRFU1TkM0ek1TdzFPVFF1TXpFc01Dd3dMREV0TVRrdU15dzNPUzR5T0dNdE15NHdOaXc1TGpVdE9TNDROU3d5TkM0MU1TMHhNaTR5TERJNUxqYzNMUzQxTVN3eExqRTNMVEV1TlRNc015NHlNaTB5TGpjc05TNDNNa0V4TVRBdU56UXNNVEV3TGpjMExEQXNNQ3d3TERBc01qRXlMalUwWXpBc05ERXNNakV1TnpVc056WXVOVGtzTlRNdU5qRXNPVFF1TkM0ekxqY3lMalkyTERFdU16Z3NNU3d5TGpGekxqZ3lMREV1Tmpnc01TNHlNaXd5TGpWak1pNHpMRFF1TnpVc05DNDROU3c1TGpNNUxEY3VOakVzTVRRc01TNHlNeXd5TERJdU5EVXNOQ3d6TGpjekxEWXVNRGhoTWpFeUxqY3lMREl4TWk0M01pd3dMREFzTUN3eE5Td3lNQzQ0TTJNeExqSXlMREV1TkRnc015NHdOaXd6TGpVeUxEVXNOUzQzTjNFdE16UXVOVE1zTXpRdU5UTXROamt1Tmprc05qa3VOVGhoTmpZdU15dzJOaTR6TERBc01Dd3dMRE16TGpZdU5ERmpNalF1TVRVdE5pdzBNQzB5TVM0MU5DdzBPUzAwTmk0eU5TdzJMak16TERFNExqTXpMREUyTGpZMExETXhMalUxTERNeUxqTTNMRFF3Y3pNeUxqWXlMREV3TERRNUxqa3pMRFV1T1ROc0xUWTVMalkwTFRZNUxqaERNVEUwTGpjM0xETTFOaXd4TVRZdU5UWXNNelV6TGpreUxERXhOeTQzTXl3ek5USXVORGxhSWk4K1BDOW5Qand2YzNablBnPT0nKSBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDEwcHggMTVweCAwcHggZGFya2VuKCRtYWluLWNvbG9yLCAyMCUpKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi8qIENvbnRlbnQgUGFnZSAqL1xuLmNvbnRlbnQtcGFnZSB7XG4gIG1haW4uY29udGVudCB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiA3MCU7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL3N0YXRpYy9wYXR0ZXJuLmpwZycpIHJlcGVhdCBjZW50ZXIgLyAzMDBweDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgb3BhY2l0eTogMC4yO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBAZXh0ZW5kIC5pbmxpbmUtd3JhcDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWF4LXdpZHRoOiAkZGVza3RvcC13aWR0aDtcblxuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtNDUwcHg7XG5cbiAgfVxufSJdfQ== */
