/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | 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;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

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

/**
 * 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 {
  font-size: 80%;
}

/**
 * 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.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

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

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

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

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
header.site-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  background: #efefef;
  padding: 0;
  position: relative;
  flex-wrap: wrap;
}
header.site-header .topbar {
  width: 100%;
  display: flex;
  align-items: center;
}
header.site-header div#content {
  width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 100%;
}
header.site-header .site-content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
header.site-header .site-content .site-branding {
  width: 15%;
  display: flex;
  justify-content: flex-start;
}
header.site-header .site-content .site-branding a {
  display: flex;
  align-items: center;
  height: 100%;
  z-index: 999;
}
header.site-header .site-content .site-branding a img {
  height: 100%;
  width: inherit;
  padding: 10px 0;
  object-fit: contain;
}
header.site-header .site-content .main-navigation {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  width: 70%;
}
header.site-header .site-content .main-header-menu {
  height: 100%;
}
header.site-header .site-content ul#primary-menu > li > a {
  height: 100%;
  display: inline-flex;
  align-items: center;
}
header.site-header .site-content .nav-shop {
  display: flex;
  flex-direction: row;
  width: 15%;
  justify-content: flex-end;
}
header.site-header .site-content .nav-shop > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 15%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
}
header.site-header .site-content .nav-shop > ul li {
  padding: 5px 10px;
  position: relative;
}
header.site-header .site-content .nav-shop > ul li a.cart-contents span.count {
  position: absolute;
  top: -2px;
  right: -2px;
  background: #000;
  height: 18px;
  width: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: #fff;
  font-size: 11px;
  line-height: 1;
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart {
  display: none;
  position: absolute;
  right: 0;
  width: 300px;
  padding: 20px;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__total.total {
  margin: 10px 0;
  padding: 10px 0;
  border-top: 1px solid #efefef;
  border-bottom: 1px solid #efefef;
  text-align: center;
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__buttons.buttons {
  margin: 0;
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__buttons.buttons a.button.wc-forward {
  display: none;
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__buttons.buttons a.button.checkout.wc-forward {
  display: block;
  padding: 10px;
  text-align: center;
}
header.site-header .site-content .nav-shop > ul .widget.woocommerce.widget_shopping_cart.open {
  display: flex;
  z-index: 9999;
}
header.site-header .site-content .nav-shop > ul .widget_shopping_cart_content {
  display: block;
  width: 100%;
}
header.site-header .site-content .nav-shop > ul .widget_shopping_cart_content p.woocommerce-mini-cart__empty-message {
  text-align: center;
  opacity: 0.3;
  font-weight: 500;
}
header.site-header .site-content .nav-shop > ul .widget_shopping_cart_content p.woocommerce-mini-cart__empty-message:before {
  font-family: "wetail-icons";
  content: ">";
  text-align: center;
  display: block;
  font-size: 44px;
}
header.site-header .site-content .nav-shop ul.woocommerce-mini-cart.cart_list.product_list_widget {
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 0;
  margin: 0;
}
header.site-header .site-content .nav-shop li.woocommerce-mini-cart-item.mini_cart_item {
  padding: 0 10px 0 0;
  margin: 0 0 10px 0;
  font-size: 14px;
}
header.site-header .site-content .nav-shop li.woocommerce-mini-cart-item.mini_cart_item a.remove.remove_from_cart_button {
  position: absolute;
  top: 0;
  right: 0;
  text-align: right;
  width: 19px;
}
header.site-header .site-content .nav-shop li.woocommerce-mini-cart-item.mini_cart_item a {
  display: block;
  width: 100%;
}
header.site-header .site-content .nav-shop li.woocommerce-mini-cart-item.mini_cart_item a img {
  max-width: 60px;
  float: left;
  margin-right: 10px;
}
header.site-header .main-search {
  width: 100%;
  padding: 10px 0 0 0;
  display: none;
}
header.site-header .main-search label.screen-reader-text {
  display: none;
}
header.site-header .main-search.open {
  display: flex;
  justify-content: center;
}
header.site-header .main-search input[type=search] {
  width: 100%;
  background: transparent;
  border-radius: 0;
  border: none;
  height: 60px;
  width: 100%;
  text-align: center;
}
header.site-header .main-search button[type=submit] {
  display: none;
}
header.site-header.open {
  position: fixed;
  z-index: 999;
  width: 100%;
}

.desktop {
  display: block;
}

.mobile {
  display: none;
}
/*--------------------------------------------------------------
# Site
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.post,
.page {
  margin: 0;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

div#content {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

body.page-template-default.fl-builder div#content.page,
body.single-fl-builder-template.fl-builder div#content.page {
  min-width: 100%;
  margin: 0 auto;
  padding: 0;
}

article.post .entry-meta {
  font-size: 12px;
}
article.post h1.entry-title,
article.post h2.entry-title {
  margin-bottom: 0;
}
article.post footer.entry-footer {
  font-size: 12px;
  border-top: 1px solid rgba(136, 136, 136, 0.3);
  border-bottom: 1px solid rgba(136, 136, 136, 0.3);
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon {
  padding: 20px;
}
footer#colophon ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
footer#colophon .columns {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 15px;
  padding-bottom: 15px;
}
footer#colophon .columns .column {
  padding: 0px 10px 0px 0;
}
footer#colophon .columns .column:last-child {
  padding-right: 0;
}
footer#colophon .columns .column.col-2 {
  width: 16.6%;
}
footer#colophon .columns .column.col-6 {
  width: 50%;
}
footer#colophon .columns.payments-logo .column {
  display: flex;
  flex-direction: row;
}
footer#colophon .columns.payments-logo .column .widget_media_image {
  margin: 0 20px 0 0;
}
footer#colophon .columns.payments-logo .column .widget_media_image img {
  max-height: 15px;
  width: auto;
}
footer#colophon .site-info {
  font-size: 12px;
  padding: 0px;
  text-align: center;
}
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: sans-serif;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

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

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff; /* Fallback for when there is no custom background color defined. */
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul, ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

img {
  height: auto; /* Make sure images are scaled correctly. */
  max-width: 100%; /* Adhere to container width. */
}

figure {
  margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

a, a:hover {
  text-decoration: none;
}

a:focus, button, input, select, password, textarea {
  outline: none;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

.hidden {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: none;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: none;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

input.input--subscribe-for-product-back-in-stock {
  height: 40px;
  margin-right: 20px;
  padding-left: 15px;
  padding-right: 15px;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: royalblue;
}
a:visited {
  color: purple;
}
a:hover, a:focus, a:active {
  color: midnightblue;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%;
}
.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: auto;
  z-index: 99999;
  visibility: hidden;
  opacity: 0;
}
.main-navigation ul ul ul {
  left: 100%;
  top: 0;
  visibility: hidden;
  opacity: 0;
}
.main-navigation ul ul li {
  min-width: 150px;
}
.main-navigation li {
  float: left;
  position: relative;
}
.main-navigation a {
  display: block;
  padding: 5px 10px;
  text-decoration: none;
}
/*** Mega menu ***/
/*** Mobile menu ***/
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

/*
@media screen and (min-width: 768px) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}
*/
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: flex;
  flex-wrap: wrap;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.post,
.page {
  margin: 0;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

div#content {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

body.page-template-default.fl-builder div#content.page,
body.single-fl-builder-template.fl-builder div#content.page {
  min-width: 100%;
  margin: 0 auto;
  padding: 0;
}

article.post .entry-meta {
  font-size: 12px;
}
article.post h1.entry-title,
article.post h2.entry-title {
  margin-bottom: 0;
}
article.post footer.entry-footer {
  font-size: 12px;
  border-top: 1px solid rgba(136, 136, 136, 0.3);
  border-bottom: 1px solid rgba(136, 136, 136, 0.3);
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-columns-2 .gallery-item {
  max-width: 50%;
}
.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
  max-width: 25%;
}
.gallery-columns-5 .gallery-item {
  max-width: 20%;
}
.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins support
--------------------------------------------------------------*/
.single-product .cwginstock-subscribe-form .row {
  width: 100%;
}
.single-product .cwginstock-subscribe-form .panel-primary > .panel-heading {
  padding: 0;
  line-height: 1em;
  color: #000;
  background: transparent;
  border-color: transparent;
}
.single-product .cwginstock-panel-heading h4 {
  margin: 0;
  color: #000;
  text-align: left !important;
  font-weight: normal;
}
.single-product .cwginstock-subscribe-form .panel-primary {
  border: none;
}
.single-product .cwginstock-subscribe-form .panel-body {
  padding: 10px 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.single-product .cwgstock_output {
  width: 100%;
}
.single-product .cwgstock_output .cwginstocksuccess {
  color: #000 !important;
}
.single-product .cwginstock-subscribe-form .col-md-12 {
  margin: 0;
  padding: 0 7px;
  display: flex;
}
.single-product input.cwgstock_email {
  height: 40px;
  padding: 10px;
  border-radius: 0;
}
.single-product input.cwgstock_button {
  height: 40px;
  border-radius: 0;
  border: none;
}
.single-product .form-group.center-block {
  width: 49%;
  display: flex;
  align-items: flex-start;
  margin-left: 0;
}

.variations .tawcvs-swatches {
  padding: 0;
  margin: 5px 0 10px;
}

.variations .tawcvs-swatches span.swatch {
  background: transparent;
  border-radius: 0;
  border: 1px solid #bfbfbf;
  width: auto;
  padding: 5px 10px;
  height: auto;
  min-width: 40px;
  min-height: 40px;
  margin: 0 5px 0 0;
  transition: 0.2s;
}

.variations .tawcvs-swatches span.swatch.selected,
.variations .tawcvs-swatches span.swatch:hover {
  border: 1px solid #000;
}

.variations option:disabled,
.variations .tawcvs-swatches span.swatch.out-of-stock {
  opacity: 0.5;
  position: relative;
}

.variations option:disabled::after,
.variations .tawcvs-swatches span.swatch.out-of-stock::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 1px;
  width: 150%;
  background-color: #BFBFBF;
  transform: translate(-50%, -50%) rotate(45deg);
}

.variations .tawcvs-swatches span.swatch:hover .swatch__tooltip {
  opacity: 0;
  visibility: hidden;
}

.main-navigation ul ul a[class*=menu-image] {
  width: auto;
  max-width: 100%;
}

body.logged-in [class*=columns-]:empty:before {
  content: "Products will appear here";
  text-align: center;
  display: block;
  border: 2px dashed #cacaca;
  padding: 40px;
  border-radius: 10px;
  color: #cacaca;
  font-weight: 900;
}

@media screen and (max-width: 48em) {
  .desktop {
    display: none;
  }
  .mobile {
    display: flex;
  }
  header.site-header .site-content {
    padding: 0 10px !important;
    /* OLD SPOT FOR MOBILE MENU */
  }
  header.site-header .site-content .site-branding {
    order: 2;
    width: 50%;
    justify-content: center;
  }
  header.site-header .site-content nav#site-navigation {
    order: 1;
    width: 25%;
    justify-content: flex-start;
  }
  header.site-header .site-content nav#site-navigation i, header.site-header .site-content nav#site-navigation button {
    padding: 5px 10px;
    font-size: 17px;
    min-width: 37px;
    background: none;
    border: none;
  }
  header.site-header .site-content nav#site-navigation .toggle-mobile-menu:before {
    font-family: "wetail-icons";
    content: "e";
  }
  header.site-header .site-content nav#site-navigation .toggle-mobile-menu.open:before {
    font-family: "wetail-icons";
    content: "q";
  }
  header.site-header .site-content .nav-shop {
    order: 3;
    width: 25%;
  }
  header.site-header .site-content .main-header-menu.open {
    left: 0;
    width: 100%;
    z-index: 10;
  }
  footer#colophon .columns {
    flex-direction: column;
  }
  footer#colophon .columns .column.col-2, footer#colophon .columns .column.col-6 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
    left: 100%;
    visibility: visible;
    opacity: 1;
  }
  .main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
    left: auto;
    visibility: visible;
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  ul#primary-menu {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  ul#primary-menu li.mega-menu { /* 1st level */
    position: initial;
  }
  ul#primary-menu li.mega-menu > ul.sub-menu {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    display: none;
    overflow: hidden;
    flex-direction: row;
    justify-content: center;
    width: 100%; /* The width is limited by the closesed parent relative element */
    left: 0;
    right: 0;
    top: 100%;
    flex-wrap: wrap;
    padding: 20px;
  }
  ul#primary-menu li.mega-menu > ul.sub-menu li.menu-item-has-children {
    display: flex;
    flex-direction: column;
    position: relative;
    margin-bottom: 20px;
  }
  ul#primary-menu li.mega-menu > ul.sub-menu li.menu-item-has-children ul.sub-menu {
    display: flex;
    position: relative;
    left: 0;
    flex-direction: column;
    top: 10px;
    box-shadow: none;
    visibility: visible;
    opacity: 1;
  }
  ul#primary-menu li.mega-menu:hover > ul.sub-menu {
    display: flex;
    z-index: 9999 !important;
    opacity: 1;
    visibility: visible;
  }
}

@media screen and (max-width: 768px) {
  header.site-header .site-content .main-header-menu {
    position: absolute;
    left: -100%;
    top: 100%;
    min-height: 100vh;
    transition: 0.5s;
    height: 1px;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu {
    display: flex;
    flex-direction: column;
    padding: 20px;
    overflow-y: scroll;
    min-height: 100%;
    height: 1px;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu > li.menu-item a {
    display: block;
    height: auto;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu ul.sub-menu {
    display: none;
    padding-left: 10px;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li {
    padding: 10px 0;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children {
    position: relative;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children:after {
    font-family: "wetail-icons";
    content: "a";
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px 20px;
    transform: rotate(0deg);
    transition: transform 0.3s;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children.open:after {
    transform: rotate(180deg);
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children ul.sub-menu {
    position: relative;
    padding: 0 0 0 20px;
    box-shadow: none;
    background: transparent;
    width: 100%;
    top: 0;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children ul.sub-menu li.menu-item-has-children ul.sub-menu {
    display: none;
    padding-left: 20px;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children ul.sub-menu li.menu-item-has-children > ul.sub-menu.visible {
    display: flex;
    left: 0;
    visibility: visible;
    opacity: 1;
  }
  header.site-header .site-content .main-header-menu ul#primary-menu li.menu-item-has-children > ul.sub-menu.visible {
    display: flex;
    flex-direction: column;
    visibility: visible;
    opacity: 1;
  }
  #wpadminbar.open {
    position: fixed;
  }
  /*
      nav.main-navigation ul#primary-menu li.menu-item-has-children {
          display: flex;
          flex-direction: column;

          &:after {
              font-family: 'wetail-icons';
              content: "\76";
              position: absolute;
              right: 0;
              top: 0;
              padding: 5px;
          }
          a {
              width: 100%;
          }
          ul.sub-menu {
              display: none;
              visibility: hidden;
              position: relative;
              height: 0;
              top: 0;
              left: 0;
              padding-left: 10px;
              box-shadow: none;
          }
          &:focus > ul.sub-menu,
          &:hover > ul.sub-menu {
              display: flex;
              visibility: visible;
              height: inherit;
          }
      }
  */
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJfbm9ybWFsaXplLnNjc3MiLCJzdHlsZS5jc3MiLCJvbGxlL19oZWFkZXIuc2NzcyIsInNpdGUvX3NpdGUuc2NzcyIsInNpdGUvcHJpbWFyeS9fcG9zdHMtYW5kLXBhZ2VzLnNjc3MiLCJzaXRlL3ByaW1hcnkvX2NvbW1lbnRzLnNjc3MiLCJvbGxlL19mb290ZXIuc2NzcyIsInR5cG9ncmFwaHkvX3R5cG9ncmFwaHkuc2NzcyIsInZhcmlhYmxlcy1zaXRlL19jb2xvcnMuc2NzcyIsInZhcmlhYmxlcy1zaXRlL190eXBvZ3JhcGh5LnNjc3MiLCJ0eXBvZ3JhcGh5L19oZWFkaW5ncy5zY3NzIiwidHlwb2dyYXBoeS9fY29weS5zY3NzIiwibWl4aW5zL19taXhpbnMtbWFzdGVyLnNjc3MiLCJlbGVtZW50cy9fZWxlbWVudHMuc2NzcyIsImVsZW1lbnRzL19saXN0cy5zY3NzIiwiZWxlbWVudHMvX3RhYmxlcy5zY3NzIiwiZm9ybXMvX2J1dHRvbnMuc2NzcyIsImZvcm1zL19maWVsZHMuc2NzcyIsIm5hdmlnYXRpb24vX25hdmlnYXRpb24uc2NzcyIsIm5hdmlnYXRpb24vX2xpbmtzLnNjc3MiLCJuYXZpZ2F0aW9uL19tZW51cy5zY3NzIiwibW9kdWxlcy9fYWNjZXNzaWJpbGl0eS5zY3NzIiwibW9kdWxlcy9fYWxpZ25tZW50cy5zY3NzIiwibW9kdWxlcy9fY2xlYXJpbmdzLnNjc3MiLCJzaXRlL3NlY29uZGFyeS9fd2lkZ2V0cy5zY3NzIiwibW9kdWxlcy9faW5maW5pdGUtc2Nyb2xsLnNjc3MiLCJtZWRpYS9fbWVkaWEuc2NzcyIsIm1lZGlhL19jYXB0aW9ucy5zY3NzIiwibWVkaWEvX2dhbGxlcmllcy5zY3NzIiwicGx1Z2lucy9faW5zdG9jay1ub3RpZmllci5zY3NzIiwicGx1Z2lucy9fdmFyaWF0aW9uLXN3YXRjaGVzLnNjc3MiLCJwbHVnaW5zL19tZW51LWltYWdlLnNjc3MiLCJwbHVnaW5zL19wcm9kdWN0LWFwcGVhci5zY3Nz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SUFDQSxTQUFBO0lBQ0EsaUJBQUE7SUFDQSxnQkFBQTtJQUNBLFdBQUE7RW5CbTZCSjtFbUJqNkJJO0lBQ0UsYUFBQTtJQUNBLHNCQUFBO0lBQ0EsYUFBQTtJQUNBLGtCQUFBO0lBQ0EsZ0JBQUE7SUFDQSxXQUFBO0VuQm02Qk47RW1CaDZCUTtJQUNFLGNBQUE7SUFDQSxZQUFBO0VuQms2QlY7RW1COTVCTTtJQUNFLGFBQUE7SUFDQSxrQkFBQTtFbkJnNkJSO0VtQjc1Qk07SUFDRSxlQUFBO0VuQis1QlI7RW1CNTVCTTtJQUNFLGtCQUFBO0VuQjg1QlI7RW1CNTVCUTtJQUNFLDJCQUFBO0lBQ0EsWUFBQTtJQUNBLGtCQUFBO0lBQ0EsUUFBQTtJQUNBLE1BQUE7SUFDQSxrQkFBQTtJQUNBLHVCQUFBO0lBQ0EsMEJBQUE7RW5CODVCVjtFbUIzNUJRO0lBQ0UseUJBQUE7RW5CNjVCVjtFbUIxNUJRO0lBQ0Usa0JBQUE7SUFDQSxtQkFBQTtJQUNBLGdCQUFBO0lBQ0EsdUJBQUE7SUFDQSxXQUFBO0lBQ0EsTUFBQTtFbkI0NUJWO0VtQjE1QlU7SUFDRSxhQUFBO0lBQ0Esa0JBQUE7RW5CNDVCWjtFbUJ6NUJVO0lBQ0UsYUFBQTtJQUNBLE9BQUE7SUFDQSxtQkFBQTtJQUNBLFVBQUE7RW5CMjVCWjtFbUJ0NUJRO0lBQ0UsYUFBQTtJQUNBLHNCQUFBO0lBQ0EsbUJBQUE7SUFDQSxVQUFBO0VuQnc1QlY7RW1CbDVCQTtJQUNFLGVBQUE7RW5CbzVCRjtFbUJsNUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FBQTtDYXhPRiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4+Pj4gVEFCTEUgT0YgQ09OVEVOVFM6XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuIyBUeXBvZ3JhcGh5XG4jIEVsZW1lbnRzXG4jIEZvcm1zXG4jIE5hdmlnYXRpb25cblx0IyMgTGlua3Ncblx0IyMgTWVudXNcbiMgQWNjZXNzaWJpbGl0eVxuIyBBbGlnbm1lbnRzXG4jIENsZWFyaW5nc1xuIyBXaWRnZXRzXG4jIENvbnRlbnRcblx0IyMgUG9zdHMgYW5kIHBhZ2VzXG5cdCMjIENvbW1lbnRzXG4jIEluZmluaXRlIHNjcm9sbFxuIyBNZWRpYVxuXHQjIyBDYXB0aW9uc1xuXHQjIyBHYWxsZXJpZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJ2YXJpYWJsZXMtc2l0ZS92YXJpYWJsZXMtc2l0ZVwiO1xuQGltcG9ydCBcIm1peGlucy9taXhpbnMtbWFzdGVyXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTm9ybWFsaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibm9ybWFsaXplXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwib2xsZS9oZWFkZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBTaXRlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2l0ZS9zaXRlXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwib2xsZS9mb290ZXJcIjtcblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5L3R5cG9ncmFwaHlcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImVsZW1lbnRzL2VsZW1lbnRzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgRm9ybXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJmb3Jtcy9mb3Jtc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJuYXZpZ2F0aW9uL25hdmlnYXRpb25cIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBBY2Nlc3NpYmlsaXR5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9hY2Nlc3NpYmlsaXR5XCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQWxpZ25tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1vZHVsZXMvYWxpZ25tZW50c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIENsZWFyaW5nc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1vZHVsZXMvY2xlYXJpbmdzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgV2lkZ2V0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInNpdGUvc2Vjb25kYXJ5L3dpZGdldHNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2l0ZS9zaXRlXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgSW5maW5pdGUgc2Nyb2xsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibW9kdWxlcy9pbmZpbml0ZS1zY3JvbGxcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBNZWRpYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1lZGlhL21lZGlhXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgUGx1Z2lucyBzdXBwb3J0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwicGx1Z2lucy9pbnN0b2NrLW5vdGlmaWVyXCI7XG5AaW1wb3J0IFwicGx1Z2lucy92YXJpYXRpb24tc3dhdGNoZXNcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL21lbnUtaW1hZ2VcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL3Byb2R1Y3QtYXBwZWFyXCI7XG5cblxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcblx0bWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuXHRmb250LXNpemU6IDJlbTtcblx0bWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG5cdGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG5cdGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcblx0dG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHRtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcblx0b3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG5cdHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICpcdFx0YGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuXHRkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMyAqL1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG5cdG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcblx0ZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuPj4+IFRBQkxFIE9GIENPTlRFTlRTOlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOb3JtYWxpemVcbiMgVHlwb2dyYXBoeVxuIyBFbGVtZW50c1xuIyBGb3Jtc1xuIyBOYXZpZ2F0aW9uXG5cdCMjIExpbmtzXG5cdCMjIE1lbnVzXG4jIEFjY2Vzc2liaWxpdHlcbiMgQWxpZ25tZW50c1xuIyBDbGVhcmluZ3NcbiMgV2lkZ2V0c1xuIyBDb250ZW50XG5cdCMjIFBvc3RzIGFuZCBwYWdlc1xuXHQjIyBDb21tZW50c1xuIyBJbmZpbml0ZSBzY3JvbGxcbiMgTWVkaWFcblx0IyMgQ2FwdGlvbnNcblx0IyMgR2FsbGVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKlx0XHRgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmhlYWRlci5zaXRlLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnRvcGJhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIGRpdiNjb250ZW50IHtcbiAgd2lkdGg6IDE0NDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5zaXRlLWJyYW5kaW5nIHtcbiAgd2lkdGg6IDE1JTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLnNpdGUtYnJhbmRpbmcgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLnNpdGUtYnJhbmRpbmcgYSBpbWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgd2lkdGg6IDcwJTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgdWwjcHJpbWFyeS1tZW51ID4gbGkgPiBhIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHdpZHRoOiAxNSU7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubmF2LXNob3AgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDE1JTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCA+IHVsIGxpIHtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCA+IHVsIGxpIGEuY2FydC1jb250ZW50cyBzcGFuLmNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIHJpZ2h0OiAtMnB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubmF2LXNob3AgPiB1bCAud2lkZ2V0Lndvb2NvbW1lcmNlLndpZGdldF9zaG9wcGluZ19jYXJ0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3gtc2hhZG93OiAwcHggNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubmF2LXNob3AgPiB1bCAud2lkZ2V0Lndvb2NvbW1lcmNlLndpZGdldF9zaG9wcGluZ19jYXJ0IHAud29vY29tbWVyY2UtbWluaS1jYXJ0X190b3RhbC50b3RhbCB7XG4gIG1hcmdpbjogMTBweCAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWZlZmVmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZWZlZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wID4gdWwgLndpZGdldC53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydCBwLndvb2NvbW1lcmNlLW1pbmktY2FydF9fYnV0dG9ucy5idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wID4gdWwgLndpZGdldC53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydCBwLndvb2NvbW1lcmNlLW1pbmktY2FydF9fYnV0dG9ucy5idXR0b25zIGEuYnV0dG9uLndjLWZvcndhcmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wID4gdWwgLndpZGdldC53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydCBwLndvb2NvbW1lcmNlLW1pbmktY2FydF9fYnV0dG9ucy5idXR0b25zIGEuYnV0dG9uLmNoZWNrb3V0LndjLWZvcndhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wID4gdWwgLndpZGdldC53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydC5vcGVuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgei1pbmRleDogOTk5OTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCA+IHVsIC53aWRnZXRfc2hvcHBpbmdfY2FydF9jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wID4gdWwgLndpZGdldF9zaG9wcGluZ19jYXJ0X2NvbnRlbnQgcC53b29jb21tZXJjZS1taW5pLWNhcnRfX2VtcHR5LW1lc3NhZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDAuMztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCA+IHVsIC53aWRnZXRfc2hvcHBpbmdfY2FydF9jb250ZW50IHAud29vY29tbWVyY2UtbWluaS1jYXJ0X19lbXB0eS1tZXNzYWdlOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIndldGFpbC1pY29uc1wiO1xuICBjb250ZW50OiBcIj5cIjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA0NHB4O1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wIHVsLndvb2NvbW1lcmNlLW1pbmktY2FydC5jYXJ0X2xpc3QucHJvZHVjdF9saXN0X3dpZGdldCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCBsaS53b29jb21tZXJjZS1taW5pLWNhcnQtaXRlbS5taW5pX2NhcnRfaXRlbSB7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDA7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wIGxpLndvb2NvbW1lcmNlLW1pbmktY2FydC1pdGVtLm1pbmlfY2FydF9pdGVtIGEucmVtb3ZlLnJlbW92ZV9mcm9tX2NhcnRfYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDE5cHg7XG59XG5oZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubmF2LXNob3AgbGkud29vY29tbWVyY2UtbWluaS1jYXJ0LWl0ZW0ubWluaV9jYXJ0X2l0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5uYXYtc2hvcCBsaS53b29jb21tZXJjZS1taW5pLWNhcnQtaXRlbS5taW5pX2NhcnRfaXRlbSBhIGltZyB7XG4gIG1heC13aWR0aDogNjBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1zZWFyY2gge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1zZWFyY2ggbGFiZWwuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1zZWFyY2gub3BlbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLXNlYXJjaCBpbnB1dFt0eXBlPXNlYXJjaF0ge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiA2MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLXNlYXJjaCBidXR0b25bdHlwZT1zdWJtaXRdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmhlYWRlci5zaXRlLWhlYWRlci5vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZGVza3RvcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhlbSkge1xuICAuZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubW9iaWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDEwcHggIWltcG9ydGFudDtcbiAgICAvKiBPTEQgU1BPVCBGT1IgTU9CSUxFIE1FTlUgKi9cbiAgfVxuICBoZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAuc2l0ZS1icmFuZGluZyB7XG4gICAgb3JkZXI6IDI7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICBoZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCBuYXYjc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgICBvcmRlcjogMTtcbiAgICB3aWR0aDogMjUlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICBoZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCBuYXYjc2l0ZS1uYXZpZ2F0aW9uIGksIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IG5hdiNzaXRlLW5hdmlnYXRpb24gYnV0dG9uIHtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbWluLXdpZHRoOiAzN3B4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IG5hdiNzaXRlLW5hdmlnYXRpb24gLnRvZ2dsZS1tb2JpbGUtbWVudTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIndldGFpbC1pY29uc1wiO1xuICAgIGNvbnRlbnQ6IFwiZVwiO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IG5hdiNzaXRlLW5hdmlnYXRpb24gLnRvZ2dsZS1tb2JpbGUtbWVudS5vcGVuOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwid2V0YWlsLWljb25zXCI7XG4gICAgY29udGVudDogXCJxXCI7XG4gIH1cbiAgaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm5hdi1zaG9wIHtcbiAgICBvcmRlcjogMztcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51Lm9wZW4ge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgU2l0ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgUG9zdHMgYW5kIHBhZ2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc3RpY2t5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wb3N0LFxuLnBhZ2Uge1xuICBtYXJnaW46IDA7XG59XG5cbi51cGRhdGVkOm5vdCgucHVibGlzaGVkKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wYWdlLWNvbnRlbnQsXG4uZW50cnktY29udGVudCxcbi5lbnRyeS1zdW1tYXJ5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucGFnZS1saW5rcyB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbn1cblxuZGl2I2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1kZWZhdWx0LmZsLWJ1aWxkZXIgZGl2I2NvbnRlbnQucGFnZSxcbmJvZHkuc2luZ2xlLWZsLWJ1aWxkZXItdGVtcGxhdGUuZmwtYnVpbGRlciBkaXYjY29udGVudC5wYWdlIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbn1cblxuYXJ0aWNsZS5wb3N0IC5lbnRyeS1tZXRhIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuYXJ0aWNsZS5wb3N0IGgxLmVudHJ5LXRpdGxlLFxuYXJ0aWNsZS5wb3N0IGgyLmVudHJ5LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmFydGljbGUucG9zdCBmb290ZXIuZW50cnktZm9vdGVyIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMzYsIDEzNiwgMTM2LCAwLjMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMzYsIDEzNiwgMTM2LCAwLjMpO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgQ29tbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jb21tZW50LWNvbnRlbnQgYSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLmJ5cG9zdGF1dGhvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEZvb3RlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuZm9vdGVyI2NvbG9waG9uIHtcbiAgcGFkZGluZzogMjBweDtcbn1cbmZvb3RlciNjb2xvcGhvbiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5mb290ZXIjY29sb3Bob24gLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cbmZvb3RlciNjb2xvcGhvbiAuY29sdW1ucyAuY29sdW1uIHtcbiAgcGFkZGluZzogMHB4IDEwcHggMHB4IDA7XG59XG5mb290ZXIjY29sb3Bob24gLmNvbHVtbnMgLmNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbmZvb3RlciNjb2xvcGhvbiAuY29sdW1ucyAuY29sdW1uLmNvbC0yIHtcbiAgd2lkdGg6IDE2LjYlO1xufVxuZm9vdGVyI2NvbG9waG9uIC5jb2x1bW5zIC5jb2x1bW4uY29sLTYge1xuICB3aWR0aDogNTAlO1xufVxuZm9vdGVyI2NvbG9waG9uIC5jb2x1bW5zLnBheW1lbnRzLWxvZ28gLmNvbHVtbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5mb290ZXIjY29sb3Bob24gLmNvbHVtbnMucGF5bWVudHMtbG9nbyAuY29sdW1uIC53aWRnZXRfbWVkaWFfaW1hZ2Uge1xuICBtYXJnaW46IDAgMjBweCAwIDA7XG59XG5mb290ZXIjY29sb3Bob24gLmNvbHVtbnMucGF5bWVudHMtbG9nbyAuY29sdW1uIC53aWRnZXRfbWVkaWFfaW1hZ2UgaW1nIHtcbiAgbWF4LWhlaWdodDogMTVweDtcbiAgd2lkdGg6IGF1dG87XG59XG5mb290ZXIjY29sb3Bob24gLnNpdGUtaW5mbyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgZm9vdGVyI2NvbG9waG9uIC5jb2x1bW5zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIGZvb3RlciNjb2xvcGhvbiAuY29sdW1ucyAuY29sdW1uLmNvbC0yLCBmb290ZXIjY29sb3Bob24gLmNvbHVtbnMgLmNvbHVtbi5jb2wtNiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgVHlwb2dyYXBoeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYm9keSxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiAjNDA0MDQwO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbmRmbiwgY2l0ZSwgZW0sIGkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMS41ZW07XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbn1cblxucHJlIHtcbiAgYmFja2dyb3VuZDogI2VlZTtcbiAgZm9udC1mYW1pbHk6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIG1hcmdpbi1ib3R0b206IDEuNmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAxLjZlbTtcbn1cblxuY29kZSwga2JkLCB0dCwgdmFyIHtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbywgQ29uc29sYXMsIFwiQW5kYWxlIE1vbm9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuYWJiciwgYWNyb255bSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzY2NjtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5tYXJrLCBpbnMge1xuICBiYWNrZ3JvdW5kOiAjZmZmOWMwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmJpZyB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIgeyAvKiBJbmhlcml0IGJveC1zaXppbmcgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY2hhbmdlIHRoZSBwcm9wZXJ0eSBmb3IgY29tcG9uZW50cyB0aGF0IGxldmVyYWdlIG90aGVyIGJlaGF2aW9yOyBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyAvKiBGYWxsYmFjayBmb3Igd2hlbiB0aGVyZSBpcyBubyBjdXN0b20gYmFja2dyb3VuZCBjb2xvciBkZWZpbmVkLiAqL1xufVxuXG5ociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG51bCwgb2wge1xuICBtYXJnaW46IDAgMCAxLjVlbSAzZW07XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5saSA+IHVsLFxubGkgPiBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW46IDAgMS41ZW0gMS41ZW07XG59XG5cbmltZyB7XG4gIGhlaWdodDogYXV0bzsgLyogTWFrZSBzdXJlIGltYWdlcyBhcmUgc2NhbGVkIGNvcnJlY3RseS4gKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiBBZGhlcmUgdG8gY29udGFpbmVyIHdpZHRoLiAqL1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSAwOyAvKiBFeHRyYSB3aWRlIGltYWdlcyB3aXRoaW4gZmlndXJlIHRhZ3MgZG9uJ3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYS4gKi9cbn1cblxuYSwgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTpmb2N1cywgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCBwYXNzd29yZCwgdGV4dGFyZWEge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG50YWJsZSB7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBGb3Jtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYnV0dG9uLFxuaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1yZXNldF0sXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjICNjY2MgI2JiYjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDAuNmVtIDFlbSAwLjRlbTtcbn1cbmJ1dHRvbjpob3ZlcixcbmlucHV0W3R5cGU9YnV0dG9uXTpob3ZlcixcbmlucHV0W3R5cGU9cmVzZXRdOmhvdmVyLFxuaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiBub25lO1xufVxuYnV0dG9uOmFjdGl2ZSwgYnV0dG9uOmZvY3VzLFxuaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZSxcbmlucHV0W3R5cGU9YnV0dG9uXTpmb2N1cyxcbmlucHV0W3R5cGU9cmVzZXRdOmFjdGl2ZSxcbmlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbmlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT11cmxdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5pbnB1dFt0eXBlPXNlYXJjaF0sXG5pbnB1dFt0eXBlPW51bWJlcl0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXJhbmdlXSxcbmlucHV0W3R5cGU9ZGF0ZV0sXG5pbnB1dFt0eXBlPW1vbnRoXSxcbmlucHV0W3R5cGU9d2Vla10sXG5pbnB1dFt0eXBlPXRpbWVdLFxuaW5wdXRbdHlwZT1kYXRldGltZV0sXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbmlucHV0W3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuICBjb2xvcjogIzY2NjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiAzcHg7XG59XG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9c2VhcmNoXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9dGVsXTpmb2N1cyxcbmlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzLFxuaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyxcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzLFxuaW5wdXRbdHlwZT13ZWVrXTpmb2N1cyxcbmlucHV0W3R5cGU9dGltZV06Zm9jdXMsXG5pbnB1dFt0eXBlPWRhdGV0aW1lXTpmb2N1cyxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmZvY3VzLFxuaW5wdXRbdHlwZT1jb2xvcl06Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIGNvbG9yOiAjMTExO1xufVxuXG5zZWxlY3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xufVxuXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dC5pbnB1dC0tc3Vic2NyaWJlLWZvci1wcm9kdWN0LWJhY2staW4tc3RvY2sge1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5hIHtcbiAgY29sb3I6IHJveWFsYmx1ZTtcbn1cbmE6dmlzaXRlZCB7XG4gIGNvbG9yOiBwdXJwbGU7XG59XG5hOmhvdmVyLCBhOmZvY3VzLCBhOmFjdGl2ZSB7XG4gIGNvbG9yOiBtaWRuaWdodGJsdWU7XG59XG5hOmZvY3VzIHtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5hOmhvdmVyLCBhOmFjdGl2ZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIE1lbnVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubWFpbi1uYXZpZ2F0aW9uIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubWFpbi1uYXZpZ2F0aW9uIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ubWFpbi1uYXZpZ2F0aW9uIHVsIHVsIHtcbiAgYm94LXNoYWRvdzogMCAzcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xufVxuLm1haW4tbmF2aWdhdGlvbiB1bCB1bCB1bCB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xufVxuLm1haW4tbmF2aWdhdGlvbiB1bCB1bCBsaSB7XG4gIG1pbi13aWR0aDogMTUwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2aWdhdGlvbiB1bCB1bCBsaTpob3ZlciA+IHVsLCAubWFpbi1uYXZpZ2F0aW9uIHVsIHVsIGxpLmZvY3VzID4gdWwge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2aWdhdGlvbiB1bCBsaTpob3ZlciA+IHVsLFxuLm1haW4tbmF2aWdhdGlvbiB1bCBsaS5mb2N1cyA+IHVsIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLm1haW4tbmF2aWdhdGlvbiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubWFpbi1uYXZpZ2F0aW9uIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi8qKiogTWVnYSBtZW51ICoqKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIHVsI3ByaW1hcnktbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIHVsI3ByaW1hcnktbWVudSBsaS5tZWdhLW1lbnUgeyAvKiAxc3QgbGV2ZWwgKi9cbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgfVxuICB1bCNwcmltYXJ5LW1lbnUgbGkubWVnYS1tZW51ID4gdWwuc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgLyogVGhlIHdpZHRoIGlzIGxpbWl0ZWQgYnkgdGhlIGNsb3Nlc2VkIHBhcmVudCByZWxhdGl2ZSBlbGVtZW50ICovXG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgdWwjcHJpbWFyeS1tZW51IGxpLm1lZ2EtbWVudSA+IHVsLnN1Yi1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICB1bCNwcmltYXJ5LW1lbnUgbGkubWVnYS1tZW51ID4gdWwuc3ViLW1lbnUgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHRvcDogMTBweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB1bCNwcmltYXJ5LW1lbnUgbGkubWVnYS1tZW51OmhvdmVyID4gdWwuc3ViLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuLyoqKiBNb2JpbGUgbWVudSAqKiovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubWFpbi1oZWFkZXItbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIHRvcDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgIGhlaWdodDogMXB4O1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gIH1cbiAgaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm1haW4taGVhZGVyLW1lbnUgdWwjcHJpbWFyeS1tZW51ID4gbGkubWVudS1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBoZWFkZXIuc2l0ZS1oZWFkZXIgLnNpdGUtY29udGVudCAubWFpbi1oZWFkZXItbWVudSB1bCNwcmltYXJ5LW1lbnUgdWwuc3ViLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaSB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm1haW4taGVhZGVyLW1lbnUgdWwjcHJpbWFyeS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIndldGFpbC1pY29uc1wiO1xuICAgIGNvbnRlbnQ6IFwiYVwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLm9wZW46YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQgLm1haW4taGVhZGVyLW1lbnUgdWwjcHJpbWFyeS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwuc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLnN1Yi1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwuc3ViLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLnN1Yi1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5zdWItbWVudS52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGxlZnQ6IDA7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IC5tYWluLWhlYWRlci1tZW51IHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwuc3ViLW1lbnUudmlzaWJsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAjd3BhZG1pbmJhci5vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgLypcbiAgICAgIG5hdi5tYWluLW5hdmlnYXRpb24gdWwjcHJpbWFyeS1tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ3dldGFpbC1pY29ucyc7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFw3NlwiO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmZvY3VzID4gdWwuc3ViLW1lbnUsXG4gICAgICAgICAgJjpob3ZlciA+IHVsLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgKi9cbn1cbi8qIFNtYWxsIG1lbnUuICovXG4ubWVudS10b2dnbGUsXG4ubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWQgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5tZW51LXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuKi9cbi5zaXRlLW1haW4gLmNvbW1lbnQtbmF2aWdhdGlvbixcbi5zaXRlLW1haW4gLnBvc3RzLW5hdmlnYXRpb24sXG4uc2l0ZS1tYWluIC5wb3N0LW5hdmlnYXRpb24ge1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyxcbi5wb3N0cy1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMsXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbn1cbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1uZXh0LFxuLnBvc3RzLW5hdmlnYXRpb24gLm5hdi1uZXh0LFxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LW5leHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogNTAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEFjY2Vzc2liaWxpdHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xufVxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogbm9uZTtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG59XG5cbi8qIERvIG5vdCBzaG93IHRoZSBvdXRsaW5lIG9uIHRoZSBza2lwIGxpbmsgdGFyZ2V0LiAqL1xuI2NvbnRlbnRbdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQWxpZ25tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFsaWdubGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIENsZWFyaW5nc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNsZWFyOmJlZm9yZSxcbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmJlZm9yZSxcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDpiZWZvcmUsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmJlZm9yZSxcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWNvbnRlbnQ6YmVmb3JlLFxuLnNpdGUtY29udGVudDphZnRlcixcbi5zaXRlLWZvb3RlcjpiZWZvcmUsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luOiAwIDAgMS41ZW07XG4gIC8qIE1ha2Ugc3VyZSBzZWxlY3QgZWxlbWVudHMgZml0IGluIHdpZGdldHMuICovXG59XG4ud2lkZ2V0IHNlbGVjdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBQb3N0cyBhbmQgcGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zdGlja3kge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBvc3QsXG4ucGFnZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnVwZGF0ZWQ6bm90KC5wdWJsaXNoZWQpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtY29udGVudCxcbi5lbnRyeS1jb250ZW50LFxuLmVudHJ5LXN1bW1hcnkge1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWxpbmtzIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5kaXYjY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLWRlZmF1bHQuZmwtYnVpbGRlciBkaXYjY29udGVudC5wYWdlLFxuYm9keS5zaW5nbGUtZmwtYnVpbGRlci10ZW1wbGF0ZS5mbC1idWlsZGVyIGRpdiNjb250ZW50LnBhZ2Uge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xufVxuXG5hcnRpY2xlLnBvc3QgLmVudHJ5LW1ldGEge1xuICBmb250LXNpemU6IDEycHg7XG59XG5hcnRpY2xlLnBvc3QgaDEuZW50cnktdGl0bGUsXG5hcnRpY2xlLnBvc3QgaDIuZW50cnktdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuYXJ0aWNsZS5wb3N0IGZvb3Rlci5lbnRyeS1mb290ZXIge1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDEzNiwgMTM2LCAxMzYsIDAuMyk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEzNiwgMTM2LCAxMzYsIDAuMyk7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbW1lbnQtY29udGVudCBhIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4uYnlwb3N0YXV0aG9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgSW5maW5pdGUgc2Nyb2xsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBHbG9iYWxseSBoaWRkZW4gZWxlbWVudHMgd2hlbiBJbmZpbml0ZSBTY3JvbGwgaXMgc3VwcG9ydGVkIGFuZCBpbiB1c2UuICovXG4uaW5maW5pdGUtc2Nyb2xsIC5wb3N0cy1uYXZpZ2F0aW9uLFxuLmluZmluaXRlLXNjcm9sbC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIgeyAvKiBUaGVtZSBGb290ZXIgKHdoZW4gc2V0IHRvIHNjcm9sbGluZykgKi9cbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogV2hlbiBJbmZpbml0ZSBTY3JvbGwgaGFzIHJlYWNoZWQgaXRzIGVuZCB3ZSBuZWVkIHRvIHJlLWRpc3BsYXkgZWxlbWVudHMgdGhhdCB3ZXJlIGhpZGRlbiAodmlhIC5uZXZlcmVuZGluZykgYmVmb3JlLiAqL1xuLmluZmluaXR5LWVuZC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBNZWRpYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBhZ2UtY29udGVudCAud3Atc21pbGV5LFxuLmVudHJ5LWNvbnRlbnQgLndwLXNtaWxleSxcbi5jb21tZW50LWNvbnRlbnQgLndwLXNtaWxleSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyogTWFrZSBzdXJlIGVtYmVkcyBhbmQgaWZyYW1lcyBmaXQgdGhlaXIgY29udGFpbmVycy4gKi9cbmVtYmVkLFxuaWZyYW1lLFxub2JqZWN0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBNYWtlIHN1cmUgbG9nbyBsaW5rIHdyYXBzIGFyb3VuZCBsb2dvIGltYWdlLiAqL1xuLmN1c3RvbS1sb2dvLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIENhcHRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud3AtY2FwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4ud3AtY2FwdGlvbiBpbWdbY2xhc3MqPXdwLWltYWdlLV0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW46IDAuODA3NWVtIDA7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIEdhbGxlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmdhbGxlcnkge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLmdhbGxlcnktaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtMiAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMzMuMzMlO1xufVxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTYuNjYlO1xufVxuLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDE0LjI4JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtOCAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMi41JTtcbn1cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMS4xMSU7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBQbHVnaW5zIHN1cHBvcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zaW5nbGUtcHJvZHVjdCAuY3dnaW5zdG9jay1zdWJzY3JpYmUtZm9ybSAucm93IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2luZ2xlLXByb2R1Y3QgLmN3Z2luc3RvY2stc3Vic2NyaWJlLWZvcm0gLnBhbmVsLXByaW1hcnkgPiAucGFuZWwtaGVhZGluZyB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zaW5nbGUtcHJvZHVjdCAuY3dnaW5zdG9jay1wYW5lbC1oZWFkaW5nIGg0IHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLnNpbmdsZS1wcm9kdWN0IC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5wYW5lbC1wcmltYXJ5IHtcbiAgYm9yZGVyOiBub25lO1xufVxuLnNpbmdsZS1wcm9kdWN0IC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5wYW5lbC1ib2R5IHtcbiAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zaW5nbGUtcHJvZHVjdCAuY3dnc3RvY2tfb3V0cHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2luZ2xlLXByb2R1Y3QgLmN3Z3N0b2NrX291dHB1dCAuY3dnaW5zdG9ja3N1Y2Nlc3Mge1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuLnNpbmdsZS1wcm9kdWN0IC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5jb2wtbWQtMTIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgN3B4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLnNpbmdsZS1wcm9kdWN0IGlucHV0LmN3Z3N0b2NrX2VtYWlsIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLnNpbmdsZS1wcm9kdWN0IGlucHV0LmN3Z3N0b2NrX2J1dHRvbiB7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuLnNpbmdsZS1wcm9kdWN0IC5mb3JtLWdyb3VwLmNlbnRlci1ibG9jayB7XG4gIHdpZHRoOiA0OSU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnZhcmlhdGlvbnMgLnRhd2N2cy1zd2F0Y2hlcyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogNXB4IDAgMTBweDtcbn1cblxuLnZhcmlhdGlvbnMgLnRhd2N2cy1zd2F0Y2hlcyBzcGFuLnN3YXRjaCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmZiZmJmO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLXdpZHRoOiA0MHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgdHJhbnNpdGlvbjogMC4ycztcbn1cblxuLnZhcmlhdGlvbnMgLnRhd2N2cy1zd2F0Y2hlcyBzcGFuLnN3YXRjaC5zZWxlY3RlZCxcbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2g6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xufVxuXG4udmFyaWF0aW9ucyBvcHRpb246ZGlzYWJsZWQsXG4udmFyaWF0aW9ucyAudGF3Y3ZzLXN3YXRjaGVzIHNwYW4uc3dhdGNoLm91dC1vZi1zdG9jayB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udmFyaWF0aW9ucyBvcHRpb246ZGlzYWJsZWQ6OmFmdGVyLFxuLnZhcmlhdGlvbnMgLnRhd2N2cy1zd2F0Y2hlcyBzcGFuLnN3YXRjaC5vdXQtb2Ytc3RvY2s6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDE1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRkJGQkY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG59XG5cbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2g6aG92ZXIgLnN3YXRjaF9fdG9vbHRpcCB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm1haW4tbmF2aWdhdGlvbiB1bCB1bCBhW2NsYXNzKj1tZW51LWltYWdlXSB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmJvZHkubG9nZ2VkLWluIFtjbGFzcyo9Y29sdW1ucy1dOmVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiUHJvZHVjdHMgd2lsbCBhcHBlYXIgaGVyZVwiO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDJweCBkYXNoZWQgI2NhY2FjYTtcbiAgcGFkZGluZzogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgY29sb3I6ICNjYWNhY2E7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59IiwiaGVhZGVyLnNpdGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cblx0LnRvcGJhciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG5cbiAgICBkaXYjY29udGVudCB7XG5cdCAgICB3aWR0aDogMTQ0MHB4O1xuXHQgICAgbWFyZ2luOiAwIGF1dG87XG5cdCAgICBwYWRkaW5nOiAwIDIwcHg7XG5cdCAgICBtYXgtd2lkdGg6IDEwMCU7XG5cdH1cblxuXG5cdC5zaXRlLWNvbnRlbnQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdCAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXHQgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHQgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0ICAgIGZsZXgtd3JhcDogd3JhcDtcblxuXHQgICAgLnNpdGUtYnJhbmRpbmcge1xuXHRcdCAgICB3aWR0aDogMTUlO1xuXHRcdCAgICBkaXNwbGF5OiBmbGV4O1xuXHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHQgICAgYSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0ei1pbmRleDogOTk5O1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHQgICAgd2lkdGg6IGluaGVyaXQ7XG5cdFx0XHRcdCAgICBwYWRkaW5nOiAxMHB4IDA7XG5cdFx0XHRcdCAgICBvYmplY3QtZml0OiBjb250YWluO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm1haW4tbmF2aWdhdGlvbiB7XG5cdFx0ICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdCAgICBmb250LXNpemU6IDE0cHg7XG5cdFx0ICAgIHdpZHRoOiA3MCU7XG5cdFx0fVxuXG5cdFx0Lm1haW4taGVhZGVyLW1lbnUge1xuXHRcdCAgICBoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXG5cdFx0dWwjcHJpbWFyeS1tZW51IHtcblxuXHRcdFx0Jj4gbGkge1xuXG5cdFx0XHQgICAgJj4gYSB7XG5cdFx0XHRcdCAgICBoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdCAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Lm5hdi1zaG9wIHtcblx0XHQgICAgZGlzcGxheTogZmxleDtcblx0XHQgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHQgICAgd2lkdGg6IDE1JTtcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHQgICAgPiB1bCB7XG5cdFx0XHQgICAgbGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdCAgICBwYWRkaW5nOiAwO1xuXHRcdFx0ICAgIG1hcmdpbjogMDtcblx0XHRcdCAgICB3aWR0aDogMTUlO1xuXHRcdFx0ICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0XHQgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRcdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHQgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cdFx0XHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0ICAgIGEuY2FydC1jb250ZW50cyB7XG5cblx0XHRcdFx0XHQgICAgc3Bhbi5jb3VudCB7XG5cdFx0XHRcdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0ICAgIHRvcDogLTJweDtcblx0XHRcdFx0XHRcdCAgICByaWdodDogLTJweDtcblx0XHRcdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuXHRcdFx0XHRcdFx0ICAgIGhlaWdodDogMThweDtcblx0XHRcdFx0XHRcdCAgICB3aWR0aDogMThweDtcblx0XHRcdFx0XHRcdCAgICBkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0XHQgICAgYm9yZGVyLXJhZGl1czogMTBweDtcblx0XHRcdFx0XHRcdCAgICBjb2xvcjogI2ZmZjtcblx0XHRcdFx0XHRcdCAgICBmb250LXNpemU6IDExcHg7XG5cdFx0XHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0ICAgIH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LndpZGdldC53b29jb21tZXJjZS53aWRnZXRfc2hvcHBpbmdfY2FydCB7XG5cdFx0XHRcdCAgICBkaXNwbGF5OiBub25lO1xuXHRcdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHQgICAgcmlnaHQ6IDA7XG5cdFx0XHRcdCAgICB3aWR0aDogMzAwcHg7XG5cdFx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0XHRib3gtc2hhZG93OiAwcHggNHB4IDZweCByZ2JhKDAsMCwwLDAuMSk7XG5cblx0XHRcdFx0XHRwLndvb2NvbW1lcmNlLW1pbmktY2FydF9fdG90YWwudG90YWwge1xuXHRcdFx0XHRcdCAgICBtYXJnaW46IDEwcHggMDtcblx0XHRcdFx0XHQgICAgcGFkZGluZzogMTBweCAwO1xuXHRcdFx0XHRcdCAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZWZlZjtcblx0XHRcdFx0XHQgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XG5cdFx0XHRcdFx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cC53b29jb21tZXJjZS1taW5pLWNhcnRfX2J1dHRvbnMuYnV0dG9ucyB7XG5cdFx0XHRcdFx0ICAgIG1hcmdpbjogMDtcblxuXHRcdFx0XHRcdCAgICBhLmJ1dHRvbi53Yy1mb3J3YXJkIHtcblx0XHRcdFx0XHRcdCAgICBkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRhLmJ1dHRvbi5jaGVja291dC53Yy1mb3J3YXJkIHtcblx0XHRcdFx0XHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdCAgICBwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHRcdFx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXHRcdFx0XHQud2lkZ2V0Lndvb2NvbW1lcmNlLndpZGdldF9zaG9wcGluZ19jYXJ0Lm9wZW4ge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ei1pbmRleDogOTk5OTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53aWRnZXRfc2hvcHBpbmdfY2FydF9jb250ZW50IHtcblx0XHRcdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHQgICAgd2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0ICAgIHAud29vY29tbWVyY2UtbWluaS1jYXJ0X19lbXB0eS1tZXNzYWdlIHtcblx0XHRcdFx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdCAgICBvcGFjaXR5OiAwLjM7XG5cdFx0XHRcdFx0ICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cC53b29jb21tZXJjZS1taW5pLWNhcnRfX2VtcHR5LW1lc3NhZ2U6YmVmb3JlIHtcblx0XHRcdFx0XHQgICAgZm9udC1mYW1pbHk6IFwid2V0YWlsLWljb25zXCI7XG5cdFx0XHRcdFx0ICAgIGNvbnRlbnQ6IFwiPlwiO1xuXHRcdFx0XHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdCAgICBmb250LXNpemU6IDQ0cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHR1bC53b29jb21tZXJjZS1taW5pLWNhcnQuY2FydF9saXN0LnByb2R1Y3RfbGlzdF93aWRnZXQge1xuXHRcdFx0ICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0XHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdCAgICBsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0ICAgIHBhZGRpbmc6IDA7XG5cdFx0XHQgICAgbWFyZ2luOiAwO1xuXG5cdFx0XHR9XG5cblx0XHRcdGxpLndvb2NvbW1lcmNlLW1pbmktY2FydC1pdGVtLm1pbmlfY2FydF9pdGVtIHtcblx0XHRcdCAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuXHRcdFx0XHRtYXJnaW46IDAgMCAxMHB4IDA7XG5cdFx0XHQgICAgZm9udC1zaXplOiAxNHB4O1xuXHRcdFx0ICAgIGEucmVtb3ZlLnJlbW92ZV9mcm9tX2NhcnRfYnV0dG9uIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdCAgICB0b3A6IDA7XG5cdFx0XHRcdCAgICByaWdodDogMDtcblx0XHRcdFx0ICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHQgICAgd2lkdGg6IDE5cHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0ICAgIGEge1xuXHRcdFx0XHQgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0ICAgd2lkdGg6IDEwMCU7XG5cdFx0XHQgICAgfVxuXG5cdFx0XHQgICAgYSBpbWcge1xuXHRcdFx0XHQgICAgbWF4LXdpZHRoOiA2MHB4O1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdCAgICB9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm1haW4tc2VhcmNoIHtcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgICAgcGFkZGluZzogMTBweCAwIDAgMDtcblx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cblx0ICAgIGxhYmVsLnNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdFx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdCAgICB9XG5cblx0ICAgICYub3BlbiB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdCAgICB9XG5cblx0ICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuXHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHQgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0ICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0ICAgIGJvcmRlcjogbm9uZTtcblx0XHQgICAgaGVpZ2h0OiA2MHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdCAgICB9XG5cblx0ICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcblx0XHQgICAgZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLm9wZW4ge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR6LWluZGV4OiA5OTk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cbi5kZXNrdG9wIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5tb2JpbGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OGVtKSB7XG5cdC5kZXNrdG9wIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm1vYmlsZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdGhlYWRlci5zaXRlLWhlYWRlciAuc2l0ZS1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAwIDEwcHggIWltcG9ydGFudDtcblxuXHRcdC5zaXRlLWJyYW5kaW5nIHtcblx0XHQgICAgb3JkZXI6IDI7XG5cdFx0ICAgIHdpZHRoOiA1MCU7XG5cdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdH1cblxuXHRcdG5hdiNzaXRlLW5hdmlnYXRpb24ge1xuXHRcdCAgICBvcmRlcjogMTtcblx0XHQgICAgd2lkdGg6IDI1JTtcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG5cdFx0ICAgIGksYnV0dG9uIHtcblx0XHRcdCAgICBwYWRkaW5nOiA1cHggMTBweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxN3B4O1xuXHRcdFx0XHRtaW4td2lkdGg6IDM3cHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHQgICAgfVxuXG5cdFx0ICAgIC50b2dnbGUtbW9iaWxlLW1lbnU6YmVmb3JlIHtcblx0XHRcdCAgICBmb250LWZhbWlseTogXCJ3ZXRhaWwtaWNvbnNcIjtcblx0XHRcdCAgICBjb250ZW50OiBcImVcIjtcblx0XHQgICAgfVxuXG5cdFx0ICAgIC50b2dnbGUtbW9iaWxlLW1lbnUub3BlbjpiZWZvcmUge1xuXHRcdFx0XHRmb250LWZhbWlseTogXCJ3ZXRhaWwtaWNvbnNcIjtcblx0XHRcdCAgICBjb250ZW50OiBcInFcIjtcblx0XHQgICAgfVxuXHRcdH1cblxuXHRcdC5uYXYtc2hvcCB7XG5cdFx0ICAgIG9yZGVyOiAzO1xuXHRcdCAgICB3aWR0aDogMjUlO1xuXHRcdH1cblxuXHRcdC8qIE9MRCBTUE9UIEZPUiBNT0JJTEUgTUVOVSAqL1xuXG5cdFx0Lm1haW4taGVhZGVyLW1lbnUub3BlbiB7XG5cdFx0ICAgIGxlZnQ6IDA7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdCAgICB6LWluZGV4OiAxMDtcblx0XHR9XG5cdH1cbn1cbiIsIi8vIEBpbXBvcnQgXCIuLi9sYXlvdXQvY29udGVudC1zaWRlYmFyXCI7XG4vLyBAaW1wb3J0IFwiLi4vbGF5b3V0L3NpZGViYXItY29udGVudFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBQb3N0cyBhbmQgcGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJwcmltYXJ5L3Bvc3RzLWFuZC1wYWdlc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInByaW1hcnkvY29tbWVudHNcIjtcbiIsIi5zdGlja3kge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLnBvc3QsXG4ucGFnZSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLnVwZGF0ZWQ6bm90KC5wdWJsaXNoZWQpIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtY29udGVudCxcbi5lbnRyeS1jb250ZW50LFxuLmVudHJ5LXN1bW1hcnkge1xuXHRtYXJnaW46IDA7XG59XG5cbi5wYWdlLWxpbmtzIHtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5kaXYjY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1kZWZhdWx0LmZsLWJ1aWxkZXIgZGl2I2NvbnRlbnQucGFnZSxcbmJvZHkuc2luZ2xlLWZsLWJ1aWxkZXItdGVtcGxhdGUuZmwtYnVpbGRlciBkaXYjY29udGVudC5wYWdlIHtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcbn1cblxuXG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSB7XG5cbn1cbmFydGljbGUucG9zdCB7XG5cblx0LmVudHJ5LW1ldGEge1xuXHQgICAgZm9udC1zaXplOiAxMnB4O1xuXHR9XG5cblx0aDEuZW50cnktdGl0bGUsXG5cdGgyLmVudHJ5LXRpdGxlIHtcblx0ICAgIG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHRmb290ZXIuZW50cnktZm9vdGVyIHtcblx0ICAgIGZvbnQtc2l6ZTogMTJweDtcblx0ICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDEzNiwgMTM2LCAxMzYsIDAuMyk7XG5cdCAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMzYsIDEzNiwgMTM2LCAwLjMpO1xuXHQgICAgcGFkZGluZzogMTBweCAwO1xuXHQgICAgZGlzcGxheTogZmxleDtcblx0ICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxufVxuIiwiLmNvbW1lbnQtY29udGVudCBhIHtcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xufVxuLmJ5cG9zdGF1dGhvciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiZm9vdGVyI2NvbG9waG9uIHtcblx0cGFkZGluZzogMjBweDtcblx0XG5cdHVsIHtcblx0ICAgIG1hcmdpbjogMDtcblx0ICAgIHBhZGRpbmc6IDA7XG5cdCAgICBsaXN0LXN0eWxlOiBub25lO1xuXHQgICAgZGlzcGxheTogZmxleDtcblx0ICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXHQuY29sdW1ucyB7XG5cdCAgICBkaXNwbGF5OiBmbGV4O1xuXHQgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblx0ICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHQgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblx0XHQuY29sdW1uIHtcblx0XHQgICAgcGFkZGluZzogMHB4IDEwcHggMHB4IDA7XG5cdFx0ICAgICY6bGFzdC1jaGlsZCB7XG5cdFx0XHQgICAgcGFkZGluZy1yaWdodDogMDtcblx0XHQgICAgfVxuXHRcdH1cblx0XHQuY29sdW1uLmNvbC0yIHtcblx0XHQgICAgd2lkdGg6IDE2LjYlO1xuXHRcdH1cblx0XHRcblx0XHQuY29sdW1uLmNvbC02IHtcblx0XHQgICAgd2lkdGg6IDUwJTtcblx0XHR9XG5cdFx0Ji5wYXltZW50cy1sb2dvIC5jb2x1bW4ge1xuXHRcdCAgICBkaXNwbGF5OiBmbGV4O1xuXHRcdCAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0XG5cdFx0XHQud2lkZ2V0X21lZGlhX2ltYWdlIHtcblx0XHRcdFx0bWFyZ2luOiAwIDIwcHggMCAwO1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0ICAgIFx0bWF4LWhlaWdodDogMTVweDtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuc2l0ZS1pbmZvIHtcblx0ICAgIGZvbnQtc2l6ZTogMTJweDtcblx0ICAgIHBhZGRpbmc6IDBweDtcblx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OGVtKSB7XG5cdGZvb3RlciNjb2xvcGhvbiAuY29sdW1ucyB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcblx0XHQuY29sdW1uLmNvbC0yLC5jb2x1bW4uY29sLTYge1xuXHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn0iLCJib2R5LFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRmb250LWZhbWlseTogJGZvbnRfX21haW47XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYm9keTtcbn1cblxuQGltcG9ydCBcImhlYWRpbmdzXCI7XG5cbkBpbXBvcnQgXCJjb3B5XCI7XG4iLCIkY29sb3JfX2JhY2tncm91bmQtYm9keTogI2ZmZjtcbiRjb2xvcl9fYmFja2dyb3VuZC1zY3JlZW46ICNmMWYxZjE7XG4kY29sb3JfX2JhY2tncm91bmQtaHI6ICNjY2M7XG4kY29sb3JfX2JhY2tncm91bmQtYnV0dG9uOiAjZTZlNmU2O1xuJGNvbG9yX19iYWNrZ3JvdW5kLXByZTogI2VlZTtcbiRjb2xvcl9fYmFja2dyb3VuZC1pbnM6ICNmZmY5YzA7XG5cbiRjb2xvcl9fdGV4dC1zY3JlZW46ICMyMTc1OWI7XG4kY29sb3JfX3RleHQtaW5wdXQ6ICM2NjY7XG4kY29sb3JfX3RleHQtaW5wdXQtZm9jdXM6ICMxMTE7XG4kY29sb3JfX2xpbms6IHJveWFsYmx1ZTtcbiRjb2xvcl9fbGluay12aXNpdGVkOiBwdXJwbGU7XG4kY29sb3JfX2xpbmstaG92ZXI6IG1pZG5pZ2h0Ymx1ZTtcbiRjb2xvcl9fdGV4dC1tYWluOiAjNDA0MDQwO1xuXG4kY29sb3JfX2JvcmRlci1idXR0b246ICNjY2MgI2NjYyAjYmJiO1xuJGNvbG9yX19ib3JkZXItYnV0dG9uLWhvdmVyOiAjY2NjICNiYmIgI2FhYTtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1mb2N1czogI2FhYSAjYmJiICNiYmI7XG4kY29sb3JfX2JvcmRlci1pbnB1dDogI2NjYztcbiRjb2xvcl9fYm9yZGVyLWFiYnI6ICM2NjY7XG4iLCIkZm9udF9fbWFpbjogc2Fucy1zZXJpZjtcbiRmb250X19jb2RlOiBNb25hY28sIENvbnNvbGFzLCBcIkFuZGFsZSBNb25vXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBtb25vc3BhY2U7XG4kZm9udF9fcHJlOiBcIkNvdXJpZXIgMTAgUGl0Y2hcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk6IDEuNTtcbiRmb250X19saW5lLWhlaWdodC1wcmU6IDEuNjtcbiIsImgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRjbGVhcjogYm90aDtcbn1cbiIsInAge1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuZGZuLCBjaXRlLCBlbSwgaSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMCAxLjVlbTtcbn1cblxuYWRkcmVzcyB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtcHJlO1xuXHRmb250LWZhbWlseTogJGZvbnRfX3ByZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtcHJlO1xuXHRtYXJnaW4tYm90dG9tOiAxLjZlbTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogMS42ZW07XG59XG5cbmNvZGUsIGtiZCwgdHQsIHZhciB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fY29kZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvcl9fYm9yZGVyLWFiYnI7XG5cdGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWlucztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuXHRmb250LXNpemU6IDEyNSU7XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIFJlbSBvdXRwdXQgd2l0aCBweCBmYWxsYmFja1xuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZVZhbHVlOiAxKSB7XG5cdGZvbnQtc2l6ZTogKCRzaXplVmFsdWUgKiAxNikgKiAxcHg7XG5cdGZvbnQtc2l6ZTogJHNpemVWYWx1ZSAqIDFyZW07XG59XG5cbi8vIENlbnRlciBibG9ja1xuQG1peGluIGNlbnRlci1ibG9jayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBDbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi8vIENsZWFyIGFmdGVyIChub3QgYWxsIGNsZWFyZml4IG5lZWQgdGhpcyBhbHNvKVxuQG1peGluIGNsZWFyZml4LWFmdGVyKCkge1xuXHRjbGVhcjogYm90aDtcbn1cblxuLy8gQ29sdW1uIHdpZHRoIHdpdGggbWFyZ2luXG5AbWl4aW4gY29sdW1uLXdpZHRoKCRudW1iZXJDb2x1bW5zOiAzKSB7XG5cdHdpZHRoOiBtYXAtZ2V0KCAkY29sdW1ucywgJG51bWJlckNvbHVtbnMgKSAtIG1hdGguZGl2KCRjb2x1bW5zLS1tYXJnaW4gKiAoJG51bWJlckNvbHVtbnMgLSAxKSwgJG51bWJlckNvbHVtbnMpIDtcbn1cbiIsImh0bWwge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHsgLyogSW5oZXJpdCBib3gtc2l6aW5nIHRvIG1ha2UgaXQgZWFzaWVyIHRvIGNoYW5nZSB0aGUgcHJvcGVydHkgZm9yIGNvbXBvbmVudHMgdGhhdCBsZXZlcmFnZSBvdGhlciBiZWhhdmlvcjsgc2VlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlLyAqL1xuXHRib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk7IC8qIEZhbGxiYWNrIGZvciB3aGVuIHRoZXJlIGlzIG5vIGN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yIGRlZmluZWQuICovXG59XG5cbmhyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWhyO1xuXHRib3JkZXI6IDA7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuQGltcG9ydCBcImxpc3RzXCI7XG5cbmltZyB7XG5cdGhlaWdodDogYXV0bzsgLyogTWFrZSBzdXJlIGltYWdlcyBhcmUgc2NhbGVkIGNvcnJlY3RseS4gKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBBZGhlcmUgdG8gY29udGFpbmVyIHdpZHRoLiAqL1xufVxuXG5maWd1cmUge1xuXHRtYXJnaW46IDFlbSAwOyAvKiBFeHRyYSB3aWRlIGltYWdlcyB3aXRoaW4gZmlndXJlIHRhZ3MgZG9uJ3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYS4gKi9cbn1cblxuYSwgYTpob3ZlciB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmE6Zm9jdXMsIGJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgcGFzc3dvcmQsIHRleHRhcmVhIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuQGltcG9ydCBcInRhYmxlc1wiO1xuXG4uaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG5cdHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufSIsInVsLCBvbCB7XG5cdG1hcmdpbjogMCAwIDEuNWVtIDNlbTtcbn1cblxudWwge1xuXHRsaXN0LXN0eWxlOiBkaXNjO1xufVxuXG5vbCB7XG5cdGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG59XG5cbmxpID4gdWwsXG5saSA+IG9sIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0bWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG5kdCB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZCB7XG5cdG1hcmdpbjogMCAxLjVlbSAxLjVlbTtcbn1cbiIsInRhYmxlIHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cdHdpZHRoOiAxMDAlO1xufVxuIiwiYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JfX2JvcmRlci1idXR0b247XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoMC43NSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAuNmVtIDFlbSAuNGVtO1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogbm9uZTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IG5vbmU7XG4gIH1cbn1cbiIsImlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbnRleHRhcmVhIHtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC1pbnB1dDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19ib3JkZXItaW5wdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogM3B4O1xuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtaW5wdXQtZm9jdXM7XG4gIH1cbn1cblxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19ib3JkZXItaW5wdXQ7XG59XG5cbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmlucHV0LmlucHV0LS1zdWJzY3JpYmUtZm9yLXByb2R1Y3QtYmFjay1pbi1zdG9jayB7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJsaW5rc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBNZW51c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1lbnVzXCI7XG4iLCJhIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluaztcblxuXHQmOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAkY29sb3JfX2xpbmstdmlzaXRlZDtcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluay1ob3Zlcjtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiB0aGluIGRvdHRlZDtcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0b3V0bGluZTogMDtcblx0fVxufVxuIiwiLm1haW4tbmF2aWdhdGlvbiB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICB1bCB7XG4gICAgICBib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgLy90cmFuc2l0aW9uOiAwLjdzO1xuXG4gICAgICB1bCB7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAvL3RyYW5zaXRpb246IDAuN3M7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAmOmhvdmVyID4gdWwsXG4gICAgICAgICAgJi5mb2N1cyA+IHVsIHtcbiAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIC8vdHJhbnNpdGlvbjogMC43cztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICA6aG92ZXIgPiBhLFxuICAgICAgLmZvY3VzID4gYSB7XG4gICAgICB9XG5cbiAgICAgIGE6aG92ZXIsXG4gICAgICBhLmZvY3VzIHtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGxpOmhvdmVyID4gdWwsXG4gICAgICBsaS5mb2N1cyA+IHVsIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLy90cmFuc2l0aW9uOiAwLjdzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmhvdmVyID4gYSxcbiAgICAmLmZvY3VzID4gYSB7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLmN1cnJlbnRfcGFnZV9pdGVtID4gYSxcbiAgLmN1cnJlbnQtbWVudS1pdGVtID4gYSxcbiAgLmN1cnJlbnRfcGFnZV9hbmNlc3RvciA+IGEsXG4gIC5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiBhIHtcbiAgfVxufVxuXG4vKioqIE1lZ2EgbWVudSAqKiovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICB1bCNwcmltYXJ5LW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGxpLm1lZ2EtbWVudSB7IC8qIDFzdCBsZXZlbCAqL1xuICAgICAgcG9zaXRpb246IGluaXRpYWw7XG5cbiAgICAgICYgPiB1bC5zdWItbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7IC8qIFRoZSB3aWR0aCBpcyBsaW1pdGVkIGJ5IHRoZSBjbG9zZXNlZCBwYXJlbnQgcmVsYXRpdmUgZWxlbWVudCAqL1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgdWwuc3ViLW1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyID4gdWwuc3ViLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB6LWluZGV4OiA5OTk5ICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogTW9iaWxlIG1lbnUgKioqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyLnNpdGUtaGVhZGVyIC5zaXRlLWNvbnRlbnQge1xuICAgIC5tYWluLWhlYWRlci1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgaGVpZ2h0OiAxcHg7XG5cbiAgICAgIHVsI3ByaW1hcnktbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG5cbiAgICAgICAgJiA+IGxpLm1lbnUtaXRlbSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bC5zdWItbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJ3ZXRhaWwtaWNvbnNcIjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiYVwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYub3BlbjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsLnN1Yi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLnN1Yi1tZW51LnZpc2libGUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuXG4gICAgICAgICAgJiA+IHVsLnN1Yi1tZW51LnZpc2libGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI3dwYWRtaW5iYXIub3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gIC8qXG4gICAgICBuYXYubWFpbi1uYXZpZ2F0aW9uIHVsI3ByaW1hcnktbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICd3ZXRhaWwtaWNvbnMnO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcNzZcIjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdWwuc3ViLW1lbnUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpmb2N1cyA+IHVsLnN1Yi1tZW51LFxuICAgICAgICAgICY6aG92ZXIgPiB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICovXG59XG5cbi8qIFNtYWxsIG1lbnUuICovXG4ubWVudS10b2dnbGUsXG4ubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWQgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5tZW51LXRvZ2dsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQubWFpbi1uYXZpZ2F0aW9uIHVsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuKi9cblxuLmNvbW1lbnQtbmF2aWdhdGlvbixcbi5wb3N0cy1uYXZpZ2F0aW9uLFxuLnBvc3QtbmF2aWdhdGlvbiB7XG5cbiAgLnNpdGUtbWFpbiAmIHtcbiAgICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm5hdi1wcmV2aW91cyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5uYXYtbmV4dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbiIsIi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbjogLTFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHg7XG5cdHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1zY3JlZW47XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0XHRjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0Y2xpcC1wYXRoOiBub25lO1xuXHRcdGNvbG9yOiAkY29sb3JfX3RleHQtc2NyZWVuO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjg3NSk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdGxlZnQ6IDVweDtcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRcdHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR0b3A6IDVweDtcblx0XHR3aWR0aDogYXV0bztcblx0XHR6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG5cdH1cbn1cblxuLyogRG8gbm90IHNob3cgdGhlIG91dGxpbmUgb24gdGhlIHNraXAgbGluayB0YXJnZXQuICovXG4jY29udGVudFt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcblx0b3V0bGluZTogMDtcbn1cbiIsIi5hbGlnbmxlZnQge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4uYWxpZ25yaWdodCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG5cdGNsZWFyOiBib3RoO1xuXHRAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59XG4iLCIuY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YmVmb3JlLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtY29udGVudDpiZWZvcmUsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmJlZm9yZSxcbi5zaXRlLWZvb3RlcjphZnRlciB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcblx0QGluY2x1ZGUgY2xlYXJmaXgtYWZ0ZXI7XG59XG4iLCIud2lkZ2V0IHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cblx0LyogTWFrZSBzdXJlIHNlbGVjdCBlbGVtZW50cyBmaXQgaW4gd2lkZ2V0cy4gKi9cblx0c2VsZWN0IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH1cbn1cbiIsIi8qIEdsb2JhbGx5IGhpZGRlbiBlbGVtZW50cyB3aGVuIEluZmluaXRlIFNjcm9sbCBpcyBzdXBwb3J0ZWQgYW5kIGluIHVzZS4gKi9cbi5pbmZpbml0ZS1zY3JvbGwgLnBvc3RzLW5hdmlnYXRpb24sIC8qIE9sZGVyIC8gTmV3ZXIgUG9zdHMgTmF2aWdhdGlvbiAoYWx3YXlzIGhpZGRlbikgKi9cbi5pbmZpbml0ZS1zY3JvbGwubmV2ZXJlbmRpbmcgLnNpdGUtZm9vdGVyIHsgLyogVGhlbWUgRm9vdGVyICh3aGVuIHNldCB0byBzY3JvbGxpbmcpICovXG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFdoZW4gSW5maW5pdGUgU2Nyb2xsIGhhcyByZWFjaGVkIGl0cyBlbmQgd2UgbmVlZCB0byByZS1kaXNwbGF5IGVsZW1lbnRzIHRoYXQgd2VyZSBoaWRkZW4gKHZpYSAubmV2ZXJlbmRpbmcpIGJlZm9yZS4gKi9cbi5pbmZpbml0eS1lbmQubmV2ZXJlbmRpbmcgLnNpdGUtZm9vdGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG4iLCIucGFnZS1jb250ZW50IC53cC1zbWlsZXksXG4uZW50cnktY29udGVudCAud3Atc21pbGV5LFxuLmNvbW1lbnQtY29udGVudCAud3Atc21pbGV5IHtcblx0Ym9yZGVyOiBub25lO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKiBNYWtlIHN1cmUgZW1iZWRzIGFuZCBpZnJhbWVzIGZpdCB0aGVpciBjb250YWluZXJzLiAqL1xuZW1iZWQsXG5pZnJhbWUsXG5vYmplY3Qge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE1ha2Ugc3VyZSBsb2dvIGxpbmsgd3JhcHMgYXJvdW5kIGxvZ28gaW1hZ2UuICovXG4uY3VzdG9tLWxvZ28tbGluayB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgQ2FwdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJjYXB0aW9uc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBHYWxsZXJpZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJnYWxsZXJpZXNcIjtcbiIsIi53cC1jYXB0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG5cdG1heC13aWR0aDogMTAwJTtcblxuXHRpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcblx0XHRAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG5cdH1cblxuXHQud3AtY2FwdGlvbi10ZXh0IHtcblx0XHRtYXJnaW46IDAuODA3NWVtIDA7XG5cdH1cbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi5nYWxsZXJ5IHtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0d2lkdGg6IDEwMCU7XG5cblx0Ly8gTG9vcHMgdG8gZW51bWVyYXRlIHRoZSBjbGFzc2VzIGZvciBnYWxsZXJ5IGNvbHVtbnMuXG5cdEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG5cdFx0LmdhbGxlcnktY29sdW1ucy0jeyRpfSAmIHtcblx0XHRcdG1heC13aWR0aDogbWFwLWdldCggJGNvbHVtbnMsICRpICk7XG5cdFx0fVxuXHR9XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi5zaW5nbGUtcHJvZHVjdCB7XG5cdC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5yb3cge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5wYW5lbC1wcmltYXJ5Pi5wYW5lbC1oZWFkaW5nIHtcblx0ICAgIHBhZGRpbmc6IDA7XG5cdCAgICBsaW5lLWhlaWdodDogMWVtO1xuXHQgICAgY29sb3I6ICMwMDA7XG5cdCAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0ICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cblx0XG5cdC5jd2dpbnN0b2NrLXBhbmVsLWhlYWRpbmcgaDQge1xuXHQgICAgbWFyZ2luOiAwO1xuXHQgICAgY29sb3I6ICMwMDA7XG5cdCAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cdCAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXHR9XG5cdFxuXHQuY3dnaW5zdG9jay1zdWJzY3JpYmUtZm9ybSAucGFuZWwtcHJpbWFyeSB7XG5cdCAgICBib3JkZXI6IG5vbmU7XG5cdH1cblx0XG5cdC5jd2dpbnN0b2NrLXN1YnNjcmliZS1mb3JtIC5wYW5lbC1ib2R5IHtcblx0ICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG5cdCAgICB3aWR0aDogMTAwJTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0fVxuXHQuY3dnc3RvY2tfb3V0cHV0IHtcblx0ICAgIHdpZHRoOiAxMDAlO1xuXHR9XG5cdFxuXHQuY3dnc3RvY2tfb3V0cHV0IC5jd2dpbnN0b2Nrc3VjY2VzcyB7XG5cdCAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHQuY3dnaW5zdG9jay1zdWJzY3JpYmUtZm9ybSAuY29sLW1kLTEyIHtcblx0ICAgIG1hcmdpbjogMDtcblx0ICAgIHBhZGRpbmc6IDAgN3B4O1xuXHQgICAgZGlzcGxheTogZmxleDtcblx0fVxuXHRcblx0aW5wdXQuY3dnc3RvY2tfZW1haWwge1xuXHQgICAgaGVpZ2h0OiA0MHB4O1xuXHQgICAgcGFkZGluZzogMTBweDtcblx0ICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblx0XG5cdGlucHV0LmN3Z3N0b2NrX2J1dHRvbiB7XG5cdCAgICBoZWlnaHQ6IDQwcHg7XG5cdCAgICBib3JkZXItcmFkaXVzOiAwO1xuXHQgICAgYm9yZGVyOiBub25lO1xuXHR9XG5cdFxuXHQuZm9ybS1ncm91cC5jZW50ZXItYmxvY2sge1xuXHQgICAgd2lkdGg6IDQ5JTtcblx0ICAgIGRpc3BsYXk6IGZsZXg7XG5cdCAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0ICAgIG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG59IiwiLy9TdXBwb3J0IGZvciBWYXJpYXRpb24gU3dhdGNoZXMgZm9yIFdvb0NvbW1lcmNlXG4vLyBodHRwczovL3dvcmRwcmVzcy5vcmcvcGx1Z2lucy92YXJpYXRpb24tc3dhdGNoZXMtZm9yLXdvb2NvbW1lcmNlL1xuLnZhcmlhdGlvbnMgLnRhd2N2cy1zd2F0Y2hlcyB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogNXB4IDAgMTBweDtcblx0XG59XG5cbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2gge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2JmYmZiZjtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiA0MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luOiAwIDVweCAwIDA7XG4gICAgdHJhbnNpdGlvbjogMC4ycztcbn1cbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2guc2VsZWN0ZWQsXG4udmFyaWF0aW9ucyAudGF3Y3ZzLXN3YXRjaGVzIHNwYW4uc3dhdGNoOmhvdmVyLCB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG59XG5cbi52YXJpYXRpb25zIG9wdGlvbjpkaXNhYmxlZCxcbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2gub3V0LW9mLXN0b2NrIHtcbiAgb3BhY2l0eTogMC41O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi52YXJpYXRpb25zIG9wdGlvbjpkaXNhYmxlZDo6YWZ0ZXIsXG4udmFyaWF0aW9ucyAudGF3Y3ZzLXN3YXRjaGVzIHNwYW4uc3dhdGNoLm91dC1vZi1zdG9jazo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDE1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRkJGQkY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XG59XG5cbi52YXJpYXRpb25zIC50YXdjdnMtc3dhdGNoZXMgc3Bhbi5zd2F0Y2g6aG92ZXIgLnN3YXRjaF9fdG9vbHRpcCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59IiwiLm1haW4tbmF2aWdhdGlvbiB1bCB1bCBhW2NsYXNzKj1cIm1lbnUtaW1hZ2VcIl0ge1xud2lkdGg6IGF1dG87XG5tYXgtd2lkdGg6IDEwMCU7XG59XG5cbiIsImJvZHkubG9nZ2VkLWluIFtjbGFzcyo9XCJjb2x1bW5zLVwiXTplbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlByb2R1Y3RzIHdpbGwgYXBwZWFyIGhlcmVcIjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAycHggZGFzaGVkICNjYWNhY2E7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGNvbG9yOiAjY2FjYWNhO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuIixudWxsXX0= */
