/* Imports */
/*
Theme Name: Botanicals
Theme URI: http://wptema.se/Billie
Author: Carolina Nymark
Author URI: http://wptema.se
Description: Botanicals is a responsive, accessibility-ready multi-purpose theme. The theme has two optional menus (including a social menu) two different sidebars and a footer widget area that will hold any number of widgets. Features also include a Call To Action button and custom copyright text. We recommend that you install the Jetpack plugin to make full use of supported features like logos, featured content, contact forms, testimonials, social sharing and more.  To create a portfolio, install Jetpack and create your projects, all the templates are already shipped with the theme.
Version: 1.0.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Copyright: Carolina Nymark 2015-2016
Text Domain: botanicals
Tags: light, white, threaded-comments, custom-menu, sticky-post, editor-style, translation-ready, two-columns, featured-images, responsive-layout, accessibility-ready, custom-header

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
and Blueprint http://www.blueprintcss.org/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Reset
2.0 Typography
3.0 Elements
4.0 Forms
5.0 Navigation
	5.1 Links
	5.2 Menus
6.0 Accessibility
7.0 Alignments
8.0 Clearings
10.0 Content
	10.1 Call to action
	10.2 Posts and pages
	10.3 Comments
11.0 Jetpack
12.0 Media
	12.1 Captions
	12.2 Galleries
13.0 BBpress
14.0 Woocommerce
15.0 Responsive widths
--------------------------------------------------------------*/
/*--------------------------------------------------------------
1.0 Reset
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline; }

html {
  font-size: 62.5%;
  /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
  overflow-y: scroll;
  /* Keeps page centered in all browsers regardless of content height */
  -webkit-text-size-adjust: 100%;
  /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
  -ms-text-size-adjust: 100%;
  /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
  box-sizing: border-box;
  /* Apply a natural box layout model to the document; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */ }

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

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

article,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block; }

ol,
ul {
  list-style: none; }

table {
  /* tables still need 'cellspacing="0"' in the markup */
  border-collapse: separate;
  border-spacing: 0; }

caption,
th,
td {
  font-weight: normal;
  text-align: left; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: ""; }

blockquote,
q {
  quotes: "" ""; }

a:focus {
  outline: thin dotted; }

a:hover,
a:active {
  outline: 0; }

a img {
  border: 0; }

/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
  color: #333;
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  font-weight: inherit; }

p {
  margin-bottom: 1.5em; }

b,
strong {
  font-weight: bold; }

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

blockquote {
  margin: 0 1.5em;
  font-style: italic;
  font-size: 18px;
  font-size: 1.8rem; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: hidden;
  padding: 1.6em;
  word-wrap: break-word;
  white-space: pre-wrap; }

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

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

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

sup,
sub {
  font-size: 75%;
  height: 0;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  bottom: 1ex; }

sub {
  top: .5ex; }

small {
  font-size: 75%; }

big {
  font-size: 125%; }

/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
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: 0; }

table {
  margin: 15px 4px 20px 4px;
  border-collapse: collapse;
  border: 1px solid #cccccc;
  width: 100%; }

td {
  border: 1px solid #cccccc;
  padding: 8px; }

th {
  background: #f5f5f5;
  padding: 8px;
  border: 1px solid #cccccc; }

/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
button,
input,
select,
textarea {
  font-size: 100%;
  /* Corrects font size not being inherited in all browsers */
  margin: 0;
  /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
  vertical-align: baseline;
  /* Improves appearance and consistency in all browsers */ }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
  cursor: pointer;
  /* Improves usability and consistency of cursor style between image-type 'input' and others */
  -webkit-appearance: button;
  /* Corrects inability to style clickable 'input' types in iOS */
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  padding: .6em 1em .4em;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); }

input[type="checkbox"],
input[type="radio"] {
  padding: 0;
  /* Addresses excess padding in IE8/9 */ }

input[type="search"] {
  -webkit-appearance: textfield;
  /* Addresses appearance set to searchfield in S5, Chrome */
  box-sizing: content-box; }

input[type="search"]::-webkit-search-decoration {
  /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
  -webkit-appearance: none; }

select,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px; }

select:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
  color: #111;
  box-shadow: 0 0 5px #a2c4fb;
  border: 1px solid #a2c4fb; }

select,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
  padding: 3px; }

textarea {
  overflow: auto;
  /* Removes default vertical scrollbar in IE6/7/8/9 */
  padding-left: 3px;
  vertical-align: top;
  /* Improves readability and alignment in all browsers */
  width: 100%; }

/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
.more-link {
  position: relative;
  padding: 12px;
  font-size: 16px;
  font-size: 1.6rem;
  background: #fff;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  margin: 20px 0 20px 0;
  display: inline-block; }

.page-numbers:hover,
.prev:hover,
.next:hover,
.more-link:focus,
.more-link:hover,
.nav-previous:hover a,
.nav-next:hover a {
  text-decoration: none; }

.nav-previous:before {
  content: "\f060";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  line-height: 1;
  color: #717171;
  margin-right: 10px;
  margin-top: 4px;
  vertical-align: middle;
  float: left;
  text-decoration: none; }

.nav-next:after {
  content: "\f061";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  line-height: 1;
  color: #717171;
  margin-left: 10px;
  vertical-align: middle;
  text-decoration: none; }

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 45px;
  overflow: hidden; }

.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  display: inline-block;
  vertical-align: top;
  float: left;
  text-align: left;
  width: 40%;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 12px;
  background: #fff;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif; }

.posts-navigation .nav-next,
.post-navigation .nav-next {
  display: inline-block;
  vertical-align: top;
  float: right;
  text-align: right;
  width: 40%;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 12px;
  background: #fff;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif; }

.comment-navigation {
  display: inline-block;
  vertical-align: top;
  background: #fff;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  padding: 12px; }

.page-links a,
.page-numbers {
  padding: 0 5px 0 5px; }

.comment-navigation .prev,
.comment-navigation .next {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  font-size: 1.6rem; }

.crumbs {
  color: #666; }

.crumbs ul {
  margin-left: 0; }

.crumbs li {
  list-style: none;
  display: inline; }

/*--------------------------------------------------------------
5.1 Links
--------------------------------------------------------------*/
a {
  color: #000; }

a:visited {
  color: #000; }

a:hover,
a:focus,
a:active {
  color: #666; }

/*--------------------------------------------------------------
5.2 Menus
--------------------------------------------------------------*/
/* =Header Menu
-------------------------------------------------------------- */
.main-navigation {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  display: inline-block;
  padding: 9px;
  font-size: 14px;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  width: 100%;
  height: auto; }

@media screen and (min-width: 768px) {
  .main-navigation li {
    float: none;
    text-align: center;
    display: inline-block;
    font-size: 1rem; } }

/* Top level hover state, preserve hover state when hovering dropdown  */
.main-navigation li > a:hover,
.main-navigation li > a:focus,
.main-navigation li:focus > a,
.main-navigation li:hover > a {
  text-decoration: underline; }

.main-navigation ul ul {
  position: absolute;
  display: block;
  clear: both;
  width: 228px;
  /*8 wider than the link, to make room for the border image.*/
  top: auto;
  padding-right: 1em;
  padding-top: 8px;
  clip: rect(1px, 1px, 1px, 1px); }

/*make sure that the items are visible if they are overlapping*/
.main-navigation ul ul a {
  background: #fff; }

.main-navigation li:hover ul,
.keyboard-dropdown {
  clip: auto !important; }

.main-navigation ul li:hover > ul {
  display: block; }

.sub-menu .menu-item-has-children > a:after {
  content: ''; }

.menu-item-has-children > a:after {
  font: normal 16px/1 'dashicons';
  font-size: 16px;
  height: 16px;
  width: 16px;
  content: "\f140";
  -webkit-font-smoothing: antialiased; }

/* Small menu */
.menu-toggle {
  display: none; }

@media screen and (max-width: 767px) {
  .menu-toggle,
  .main-navigation.toggled .nav-menu {
    display: block;
    outline: none; }
  .main-navigation {
    position: relative; }
  .main-navigation ul {
    display: none; }
  .menu-toggle:before {
    content: "\f0c9";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    vertical-align: top;
    font-size: 2em;
    line-height: 1;
    color: #000000;
    text-decoration: none; } }

/*--------------
Social menu
---------------*/
@font-face {
  font-family: 'FontAwesome';
  src: url("/assets/fonts/fontawesome-webfont.eot?v=4.2.0");
  src: url("/assets/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"), url("/assets/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"), url("/assets/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"), url("/assets/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }

li a:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  text-decoration: none;
  margin: 0px 5px 0px 5px;
  padding: 0; }

.social-menu li a:before {
  display: inline-block;
  font: normal normal normal 34px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  text-decoration: none;
  margin: 0px 5px 0px 5px;
  padding: 0; }

.social-menu {
  width: 100%;
  margin: 20px auto 20px auto;
  text-align: center;
  padding: 0; }

.social-menu ul {
  margin: 0; }

.social-menu ul li {
  list-style-type: none;
  display: inline; }

.social-menu li a,
.social-menu li a:hover {
  text-decoration: none;
  background: none; }

.social-menu li a:hover:before {
  color: #333333; }

.social-menu li a[href*="dribbble.com"]::before {
  content: '\f17d'; }

.social-menu li a[href*="facebook.com"]::before {
  content: '\f09a'; }

.social-menu li a[href*="flickr.com"]::before {
  content: '\f16e'; }

.social-menu li a[href*="foursquare.com"]::before {
  content: '\f180'; }

.social-menu li a[href*="github.com"]::before {
  content: '\f09b'; }

.social-menu li a[href*="plus.google.com"]::before {
  content: '\f0d5'; }

.social-menu li a[href*="instagram.com"]::before {
  content: '\f16d'; }

.social-menu li a[href*="jsfiddle.com"]::before {
  content: '\f1cc'; }

.social-menu li a[href*="linkedin.com"]::before {
  content: '\f0e1'; }

.social-menu li a[href*="pinterest.com"]::before {
  content: '\f0d2'; }

.social-menu li a[href*="reddit.com"]::before {
  content: '\f1a1'; }

.social-menu li a[href*="soundcloud.com"]::before {
  content: '\f1be'; }

.social-menu li a[href*="stackoverflow.com"]::before {
  content: '\f16c'; }

.social-menu li a[href*="tumblr.com"]::before {
  content: '\f173'; }

.social-menu li a[href*="twitter.com"]::before {
  content: '\f099'; }

.social-menu li a[href*="vimeo.com"]::before {
  content: '\f194'; }

.social-menu li a[href*="vine.co"]::before {
  content: '\f1ca'; }

.social-menu li a[href*="yelp.com"]::before {
  content: '\f1e9'; }

.social-menu li a[href*="youtube.com"]::before {
  content: '\f167'; }

.social-menu li a[href*="wordpress.com"]::before {
  content: '\f19a'; }

.social-menu li a[href*="paypal.com"]::before {
  content: "\f1ed"; }

.social-menu li a[href*="lastfm.com"]::before {
  content: "\f202"; }

.social-menu li a[href*="behance.net"]::before {
  content: "\f1b4"; }

.social-menu li a[href*="deviantart.com"]::before {
  content: "\f1bd"; }

.social-menu li a[href*="spotify.com"]::before {
  content: "\f1bc"; }

.social-menu li a[href*="skype.com"]::before {
  content: "\f17e"; }

.social-menu li a[href*="slack.com"]::before {
  content: "\f198"; }

/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:hover,
.screen-reader-text:active,
.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;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  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 */ }

/*--------------------------------------------------------------
7.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: 0 auto; }

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

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

.clearfix:before,
.clearfix:after {
  display: table;
  content: " "; }

.clearfix:after {
  clear: both; }

/*----------------------------
9.0 widgets
----------------------------*/
.widget-area {
  padding: 20px 12px 12px 12px; }

.widget {
  font-size: 14px;
  font-size: 1.4rem;
  display: inline-block;
  vertical-align: top;
  list-style: none;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%; }

.widget-title,
.widgettitle {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  margin: 0;
  padding-bottom: 7px;
  font-size: 16px;
  font-size: 1.6rem;
  text-transform: uppercase; }

.widget ul {
  padding: 0;
  margin: 0;
  float: left;
  width: 100%; }

.widget ul li {
  list-style: none;
  font-weight: normal;
  margin: 9px 0 9px 9px;
  padding: 0 0 4px 8px;
  text-align: left; }

#calendar_wrap {
  padding-top: 5px; }

.widget_calendar .widgettitle {
  display: none; }

table#wp-calendar,
#wp-calendar {
  font-weight: normal;
  padding: 5px;
  margin-bottom: 25px;
  border: none; }

#wp-calendar th {
  padding: 5px;
  text-align: center; }

#wp-calendar td {
  padding: 5px;
  border: 1px solid #e9e9e9;
  text-align: center; }

#wp-calendar a {
  text-decoration: underline; }

#wp-calendar caption {
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 8px; }

#wp-calendar tfoot td,
#wp-calendar tfoot {
  border: none; }

#wp-calendar td a {
  font-weight: bold; }

#wp-calendar td a:hover {
  text-decoration: none; }

.widget ul li a,
.tagcloud a {
  text-decoration: none; }

.widget ul li a:hover,
.tagcloud a:hover {
  text-decoration: underline; }

.textwidget {
  padding: 10px;
  overflow: hidden; }

.widget select,
.widget_search input[type='search'] {
  width: 95%;
  margin-bottom: 9px; }

.search-post input {
  margin: 3px; }

.widget_rss ul li {
  margin-bottom: 25px;
  width: 97%; }

.rssSummary {
  width: 90%; }

.rss-date {
  width: 90%;
  float: left;
  clear: both; }

/*--------------------------------------------------------------
10.0 Content
--------------------------------------------------------------*/
.site-header {
  position: relative;
  text-align: center;
  display: block;
  background-position: 55% 95px !important;
  background-size: 60% !important; }

.site-branding {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  margin-top: 20px; }

@media screen and (max-width: 767px) {
  .site-branding {
    margin-top: 0;
    padding: 0 15px; }
  .woocommerce ul.products li.product .add_to_cart_button {
    display: none; }
  .woocommerce-tabs {
    display: none; }
  .woocommerce div.product p.price, .woocommerce div.product span.price {
    color: black; }
  .woocommerce button.button.alt {
    color: black;
    border: 1px solid black;
    background-color: white;
    text-transform: uppercase; }
  .woocommerce .quantity .qty {
    padding: 3px; }
  .wc-proceed-to-checkout a.button.alt {
    width: 100%; }
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: 1em; } }

.wc-proceed-to-checkout a.button.alt {
  color: black;
  border: 1px solid black;
  background-color: white;
  text-transform: uppercase;
  display: inline-block; }

.wc-proceed-to-checkout a.button.alt:hover {
  background: white;
  color: black; }

.site-description {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 28px;
  font-size: 2.8rem;
  text-transform: uppercase;
  margin-top: 15px;
  margin-bottom: 30px; }

.site-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  position: relative;
  margin: 0 auto 10px auto;
  font-size: 5rem;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  color: #000000; }

.site-content {
  width: 100%;
  margin: 0;
  padding: 12px 12px 25px 12px;
  display: inline-block;
  text-align: center; }

/*Hide the site content if the landing page template is used.*/
.page-template-landingpage .site-content {
  display: none; }

.site-footer {
  padding: 12px 0 12px 0; }

.site-info {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  width: 90%;
  margin: 35px auto 15px auto;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 2px; }

.content-area {
  display: inline-block;
  width: 60%;
  margin: 0 auto;
  text-align: left; }

.site-main {
  margin: 0 auto; }

.site-content .widget-area {
  margin: 105px auto;
  padding: 5px 2% 0 4%;
  display: inline-block;
  vertical-align: top; }

.site-footer {
  clear: both;
  width: 100%; }

.single-jetpack-testimonial .content-area,
.page .content-area,
.single-jetpack-portfolio .content-area,
.no-sidebar .content-area {
  width: 80%;
  display: block;
  margin: 0 auto;
  float: none; }

.site-branding form {
  width: 30%;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 1em;
  margin: 0 auto 130px auto;
  border-radius: 4px; }

/*--------------------------------------------------------------
10.1 Call to action
--------------------------------------------------------------*/
#action {
  width: 30%;
  margin: 60px auto 55px auto;
  padding: 1em;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2);
  background: rgba(255, 255, 255, 0.6); }

#action:hover,
#action:focus {
  border: 1px solid #fafafa;
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.2);
  transition: background-color 1.4s ease;
  background: #fff; }

#action a {
  text-decoration: none;
  color: #000000;
  padding-bottom: 4px; }

/*--------------------------------------------------------------
10.2 Posts and pages
--------------------------------------------------------------*/
.billie-border {
  border: 4px solid #fff;
  border-radius: 4px;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2); }

.type-jetpack-testimonial,
.page-header,
.type-page,
.type-jetpack-portfolio,
.search-results .type-page,
.type-attachment,
.post {
  border-radius: 4px;
  padding: 30px;
  display: block;
  position: relative;
  overflow: auto;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2);
  margin: 0 0 65px 0;
  background: #fcfcfc;
  line-height: 1.8; }

.sticky {
  display: block; }

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

.single .byline,
.group-blog .byline {
  display: inline; }

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

.page-links {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  clear: both;
  margin: 0 0 1.5em;
  padding: 12px;
  position: relative;
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  display: inline-block; }

.entry-title,
.entry-title a {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 30px;
  font-size: 3.0rem;
  text-decoration: none;
  margin: 10px 0 15px 0;
  padding-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #000000; }

.entry-title a:hover {
  text-decoration: underline; }

.page-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2px; }

.taxonomy-description {
  margin-bottom: 45px;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: 'Open Sans', sans-serif; }

.entry-content {
  width: 100%;
  display: block; }

.entry-content a {
  text-decoration: underline; }

.entry-content a:hover {
  text-decoration: none; }

.entry-footer,
.entry-meta {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 10px 0;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 2px;
  display: block; }

.byline,
.cat-links {
  margin-right: 8px; }

.single-jetpack-portfolio .entry-footer {
  width: 100%;
  float: left; }

.type-page .entry-footer {
  display: none; }

.entry-meta a,
.entry-footer a,
.site-footer a,
.page-links a {
  text-decoration: none; }

.entry-meta a:focus,
.entry-footer a:focus,
.page-links a:focus,
.site-footer a:focus,
.entry-meta a:hover,
.entry-footer a:hover,
.page-links a:hover,
.site-footer a:hover {
  text-decoration: underline; }

.edit-link,
.posted-on,
.tags-links,
.comments-link {
  clear: both;
  width: 100%;
  margin-bottom: 8px;
  margin-left: 8px;
  margin-right: 8px;
  padding-left: 12px;
  border-left: #d5dbde 1px solid; }

.not-found .page-title:before {
  content: "\f05a";
  display: inline-block;
  font: normal normal normal 40px/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  text-decoration: none;
  margin: 0px 10px 0px 5px;
  padding: 0;
  color: #666; }

/*--------------------------------------------------------------
10.3 Comments
--------------------------------------------------------------*/
.comments-area {
  margin-top: 45px;
  margin-bottom: 40px;
  clear: both;
  position: relative; }

.comments-title,
.comment-reply-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 20px;
  font-size: 2.0rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 10px 0 10px 0; }

.comment-list {
  margin: 0 0 1.5em 0; }

.comment-list,
.children {
  list-style: none; }

.comment-body {
  margin-bottom: 25px; }

.comment-navigation {
  padding-bottom: 10px; }

.comment-content {
  margin-top: 20px; }

.comment-content a {
  word-wrap: break-word; }

.comment-metadata {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0px 15px 15px 15px;
  display: inline-block; }

.comment-metadata .edit-link {
  margin-left: 10px; }

.comment-metadata a {
  text-decoration: none; }

.comment-metadata a:hover {
  text-decoration: underline; }

.reply {
  margin: 15px;
  padding-bottom: 15px; }

.says {
  display: none; }

.bypostauthor {
  display: block; }

.comment-author .avatar {
  border: 4px solid #fff;
  border-radius: 4px;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2); }

.comment-meta .fn {
  vertical-align: top;
  margin-left: 15px;
  font-size: 18px;
  font-size: 1.8rem; }

.comment-meta .fn .url {
  vertical-align: top;
  font-size: 18px;
  font-size: 1.8rem; }

.logged-in-as a:hover,
.reply .comment-reply-link:hover,
.comment-meta .fn .url:hover {
  text-decoration: none; }

.comment-form {
  width: 70%; }

.comment-form p {
  margin-bottom: 20px; }

/*labels:*/
.comment-form-url label,
.comment-form-email label,
.comment-form-author label,
.comment-form-comment label {
  font-weight: bold;
  display: block;
  margin-bottom: 4px; }

.required {
  font-weight: normal;
  margin-left: 3px; }

.comment-form input[type='text'],
.comment-form input[type='email'] {
  width: 300px;
  max-width: 98%;
  margin-bottom: 3px; }

.form-allowed-tags {
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #f2f2f2;
  border-radius: 4px;
  padding: 12px; }

.form-allowed-tags code {
  font-size: 1.2rem; }

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

/* ==========================================================================
     Featured posts
========================================================================== */
.featured-post {
  position: relative;
  border: 1px solid #eeefef;
  border-radius: 4px;
  padding: 8px;
  margin: 25px 25px 5rem 25px;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.04);
  display: inline-block;
  vertical-align: top;
  background: #fff;
  width: 400px;
  height: 267px; }

.featured-inner {
  height: 100%;
  border-radius: 3px;
  padding: 0;
  background: #9cc9c7; }

.post-header {
  padding-top: 20px;
  text-align: center;
  position: relative; }

.featured-post h2 a {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  color: #000;
  text-transform: uppercase;
  font-size: 2rem;
  text-decoration: none;
  text-transform: uppercase;
  color: #000000; }

.featured-post h2 a:hover,
.featured-post h2 a:focus {
  text-decoration: underline; }

.tag-list {
  padding: 0;
  margin: 0;
  margin-left: 12px;
  color: #666;
  display: inline-block;
  margin-left: 8px;
  padding-left: 12px;
  border-left: #d5dbde 1px solid; }

.featured-text {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  display: block;
  width: 100%;
  margin: 25% 0 0 0;
  padding: 0;
  background: #fff;
  border: none;
  border: 1px solid #fafafa;
  color: #666;
  text-transform: uppercase;
  font-size: 1.3rem;
  opacity: 0.86; }

/* Jetpack Sharing */
.featured-post .sharedaddy,
.featured-post .sharedaddy .sd-like,
.featured-post .sharedaddy h3.sd-title,
.featured-post .sharedaddy .likes-widget-placeholder {
  display: none; }

.sharedaddy {
  margin-top: 25px; }

.entry-footer .sharedaddy h3.sd-title {
  font-weight: normal;
  font-size: 14px;
  font-size: 1.4rem; }

/*Jetpack site logo*/
.site-logo {
  clear: both;
  position: relative;
  margin-bottom: 25px; }

/*Jetpack Portfolio*/
.tax-jetpack-portfolio-type .page-title,
.post-type-archive-jetpack-portfolio .page-title {
  text-align: center;
  margin: 0; }

.tax-jetpack-portfolio-tag .featured-text,
.tax-jetpack-portfolio-type .featured-text,
.post-type-archive-jetpack-portfolio .featured-text {
  text-align: center; }

.portfolio-type-links a {
  font-style: italic; }

.jetpack-portfolio-type {
  display: inline-block;
  margin-bottom: 8px; }

.post-type-archive-jetpack-testimonial .content-area {
  margin: 0 auto;
  width: 100%; }

.post-type-archive-jetpack-testimonial .page-header {
  text-align: center; }

.testimonial-entry-title,
.jetpack-testimonial .entry-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  background: none;
  text-align: center;
  font-size: 14px;
  margin-top: 15px;
  text-decoration: none;
  padding-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 2px;
  display: block; }

.testimonial-entry-title a:focus,
.testimonial-entry-title a:hover {
  text-decoration: underline !important;
  /*We need to overwrite Jetpacks styling here...*/ }

.testimonial-entry-content,
.jetpack-testimonial .entry-content {
  width: 100%;
  font-size: 2em;
  text-align: center;
  font-style: italic; }

.testimonial-entry,
.post-type-archive-jetpack-testimonial .type-jetpack-testimonial {
  display: inline-block;
  margin: 0px 40px 15px 40px;
  padding: 12px;
  width: 26%;
  vertical-align: top; }

.post-type-archive-jetpack-testimonial .attachment-billie-jetpack-logo {
  clear: both;
  margin: 0 auto;
  display: block; }

.testimonial-featured-image {
  margin: 20px auto !important;
  /*We need to overwrite Jetpacks styling here...*/
  text-align: center;
  display: block; }

.testimonial-featured-image img:focus,
.testimonial-featured-image img:hover {
  border: 4px solid #9cc9c7 !important;
  /*We need to overwrite Jetpacks styling here...*/ }

.testimonial-featured-image img,
.attachment-billie-jetpack-testimonial {
  width: 100px;
  height: 100px;
  border-radius: 50px;
  border: 4px solid #fff !important;
  /*We need to overwrite Jetpacks styling here...*/
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2);
  margin: 0 auto;
  display: block; }

/*--------------------------------------------------------------
12.0 Media
--------------------------------------------------------------*/
.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.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%; }

/*--------------------------------------------------------------
12.1 Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin: 0 auto; }

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

.wp-caption .wp-caption-text {
  margin: 0.8075em 0; }

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

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
  margin: 0.4%; }

.gallery-columns-2 .gallery-item {
  max-width: 48%; }

.gallery-columns-3 .gallery-item {
  max-width: 31.33%; }

.gallery-columns-4 .gallery-item {
  max-width: 23%; }

.gallery-columns-5 .gallery-item {
  max-width: 17%; }

.gallery-columns-6 .gallery-item {
  max-width: 14.66%; }

.gallery-columns-7 .gallery-item {
  max-width: 12.28%; }

.gallery-columns-8 .gallery-item {
  max-width: 10.5%; }

.gallery-columns-9 .gallery-item {
  max-width: 9.11%; }

.gallery-caption {
  display: block; }

.single-attachment .crumbs,
.single-attachment .post-navigation {
  display: none; }

.gallery-icon a img {
  padding: 4px; }

/*--------------------------------------------------------------
13.0 BBpress
--------------------------------------------------------------*/
#bbpress-forums,
#bbpress-forums .bbp-breadcrumb,
#bbpress-forums .bbp-body {
  font-size: 16px;
  font-size: 1.6rem; }

#bbpress-forums .bbp-forum-info .bbp-forum-content,
#bbpress-forums p.bbp-topic-meta,
div.bbp-template-notice p {
  font-size: 14px;
  font-size: 1.4rem; }

.bbp-search-form,
.bbp-breadcrumb {
  margin-bottom: 25px; }

.subscription-toggle {
  float: right;
  margin-bottom: 25px; }

.bbpress .entry-content {
  width: 90%; }

/*Hide avatar clutter...*/
.bbp-topic-started-by .bbp-author-avatar,
.bbp-forum-description .bbp-author-avatar,
.bbp-topic-freshness-author .bbp-author-avatar,
.bbp-topic-description .bbp-author-avatar {
  display: none; }

.bbp-user-section {
  margin-top: 10px; }

#bbpress-forums #bbp-single-user-details #bbp-user-navigation li.current a,
span.bbp-admin-links a,
.bbp-forum-header a.bbp-forum-permalink,
.bbp-topic-header a.bbp-topic-permalink,
.bbp-reply-header a.bbp-reply-permalink {
  color: #333; }

#bbpress-forums #bbp-your-profile fieldset input,
#bbpress-forums #bbp-your-profile fieldset textarea {
  background: #fff; }

#bbpress-forums textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px; }

#bbpress-forums textarea:focus {
  color: #111;
  box-shadow: 0 0 5px #a2c4fb;
  border: 1px solid #a2c4fb; }

/*--------------------------------------------------------------
14.0 Woocommerce
--------------------------------------------------------------*/
/*This needs to correspond with .content-area to play well with sidebars.*/
.woocommerce #container {
  float: left;
  margin: 0 -25% 0 0%;
  padding: 5px 2% 0 2%;
  width: 100%; }

@media screen and (max-width: 767px) {
  .woocommerce #container {
    width: 100%; } }

.woocommerce .woocommerce-error::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-message::before,
.woocommerce-page .woocommerce-error::before,
.woocommerce-page .woocommerce-info::before,
.woocommerce-page .woocommerce-message::before {
  padding: 0;
  /*make sure the icon is placed correctly*/ }

.product .attachment-shop_catalog {
  border: 3px solid #fff; }

.product a:focus .attachment-shop_catalog {
  border: 3px solid #333; }

.woocommerce #content nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page #content nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul {
  border: 4px solid #fff;
  border-radius: 4px;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.2); }

@media screen and (max-width: 767px) {
  .menu-toggle {
    border: 0;
    background: none;
    box-shadow: none;
    margin: 0; }
  .menu-toggle:before {
    font-size: 3em; }
  .menu-toggle:active {
    box-shadow: none; } }

.woocommerce #content nav.woocommerce-pagination ul li,
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page #content nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li {
  border: 1px solid #e7e7e7; }

.woocommerce #content nav.woocommerce-pagination ul li a,
.woocommerce #content nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page #content nav.woocommerce-pagination ul li a,
.woocommerce-page #content nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span {
  padding: .5em .7em; }

.woocommerce #content nav.woocommerce-pagination ul li a:focus,
.woocommerce #content nav.woocommerce-pagination ul li a:hover,
.woocommerce #content nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page #content nav.woocommerce-pagination ul li a:focus,
.woocommerce-page #content nav.woocommerce-pagination ul li a:hover,
.woocommerce-page #content nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li a:focus,
.woocommerce-page nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li span.current {
  color: #000;
  text-decoration: underline; }

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
  width: 100%; }

.woocommerce .cart-collaterals .cart_totals table th,
.woocommerce-page .cart-collaterals .cart_totals table th,
.woocommerce .cart-collaterals .cart_totals table td,
.woocommerce-page .cart-collaterals .cart_totals table td {
  padding: 6px; }

/*--------------------------------------------------------------
15.0 Responsive widths
--------------------------------------------------------------*/
@media screen and (max-width: 1100px) {
  .content-area {
    width: 100%;
    margin: 0 auto;
    padding: 0; }
  .site-content .widget-area {
    width: 100%;
    margin-top: 15px;
    margin-left: 0;
    margin-right: 0;
    padding: 0; }
  .site-footer .widget,
  .widget {
    width: auto;
    min-width: 31%;
    margin-left: 0;
    margin-right: 20px; }
  .type-jetpack-testimonial,
  .page-header,
  .type-page,
  .type-jetpack-portfolio,
  .search-results .type-page,
  .type-attachment,
  .post {
    padding: 22px; } }

@media screen and (max-width: 900px) {
  .site-footer .widget,
  .widget {
    width: 46%; } }

@media screen and (max-width: 800px) {
  .site-description {
    font-size: 20px;
    font-size: 2.0rem; }
  .entry-title, .entry-title a {
    font-size: 24px;
    font-size: 2.4rem; }
  .comment-navigation .nav-previous,
  .posts-navigation .nav-previous,
  .post-navigation .nav-previous {
    width: 100%;
    margin: 0 0 10px 0; }
  .comment-navigation .nav-next,
  .posts-navigation .nav-next,
  .post-navigation .nav-next {
    width: 100%;
    margin: 0 0 10px 0; }
  .featured-post {
    width: 80%;
    margin: 0 auto 45px auto; }
  #action {
    width: 80%;
    margin: 45px auto 45px auto; }
  .site-branding form {
    width: 80%; }
  .site-main {
    width: 100%;
    padding: 0; }
  .post {
    width: 100%;
    margin: 25px 0 45px 0; }
  .type-post {
    width: 100%; }
  .post-type-archive-jetpack-testimonial .type-jetpack-testimonial {
    width: 100%;
    margin: 25px 0 45px 0; }
  .jetpack-testimonial,
  .jetpack-testimonial .entry-content,
  .single-jetpack-portfolio .content-area,
  .no-sidebar .content-area,
  .entry-footer,
  .entry-content {
    width: 100%; }
  .page-title {
    text-align: center; } }

@media screen and (max-width: 767px) {
  .testimonial-entry {
    width: 100% !important; }
  .featured-wrap {
    text-align: center; }
  .site-footer .widget,
  .widget {
    width: 100%;
    margin-right: 0; }
  .site-title {
    font-size: 3rem; }
  /*Increase text-size on tiny screens */
  .more-link,
  .entry-meta,
  .entry-footer {
    font-size: 16px;
    font-size: 1.6rem; }
  .comment-form,
  .page-header,
  .type-page,
  .comments-area {
    width: 100%;
    margin: 45px 0 45px 0; }
  .single-jetpack-testimonial .content-area,
  .page .content-area,
  .single-jetpack-portfolio .content-area,
  .no-sidebar .content-area {
    width: 100%;
    margin: 0 auto;
    float: none; } }

html {
  overflow-x: hidden; }

body {
  overflow-x: hidden; }

p:last-child {
  margin-bottom: 0; }

#primary {
  max-width: 990px; }

@media (min-width: 768px) {
  #site-logo {
    width: 50%;
    max-width: 450px; } }

.page-title {
  display: none; }

.entry-title {
  margin-top: 0; }

.woocommerce a.button {
  background-color: black;
  color: #fff;
  font-size: 16px;
  display: block;
  padding: 20px 50px;
  border: 1px solid black;
  transition: all 250ms ease;
  text-align: center; }
  @media (max-width: 767px) {
    .woocommerce a.button {
      font-size: 16px; } }
  .woocommerce a.button:hover {
    background-color: white;
    color: black; }

.about-page h1 {
  text-align: center; }
  @media (max-width: 767px) {
    .about-page h1 {
      margin-top: 40px; } }

.about-page article {
  padding: 30px;
  max-width: 1000px;
  display: block;
  margin: auto; }
  .about-page article .entry-content {
    margin: 0; }
    @media (min-width: 768px) {
      .about-page article .entry-content {
        display: flex; } }
    @media (min-width: 768px) {
      .about-page article .entry-content .featured-image {
        width: 50%; } }
    .about-page article .entry-content .featured-image img {
      max-height: 700px;
      width: auto;
      margin: 0 auto;
      display: block; }
    @media (min-width: 768px) {
      .about-page article .entry-content .the-content {
        width: 50%;
        display: flex;
        position: relative;
        padding-left: 30px; } }
    @media (min-width: 768px) {
      .about-page article .entry-content .the-content .text-content {
        position: absolute;
        width: calc(100% - $padding);
        top: 50%;
        transform: translateY(-50%); } }
    .about-page article .entry-content .the-content .text-content *:last-child {
      margin-bottom: 0; }

header .main-navigation {
  padding-left: 0;
  padding-right: 0; }
  @media (min-width: 768px) and (max-width: 991px) {
    header .main-navigation {
      margin-left: 120px;
      margin-right: 120px;
      width: auto; } }
  @media (min-width: 992px) {
    header .main-navigation {
      margin-left: 220px;
      margin-right: 220px;
      width: auto; } }
  @media (max-width: 767px) {
    header .main-navigation.toggled .menu-menu-container {
      height: 100vh; } }
  @media (max-width: 767px) {
    header .main-navigation button {
      z-index: 9600;
      position: absolute;
      opacity: 1 !important;
      left: 2px; } }
  @media (min-width: 768px) {
    header .main-navigation button.menu-toggle {
      display: none; } }
  header .main-navigation button.menu-toggle:before {
    content: none; }
  header .main-navigation button.menu-toggle .hamburger-inner::before {
    border-radius: 2px; }
  @media (max-width: 767px) {
    header .main-navigation .menu-menu-container {
      position: fixed;
      z-index: 9500;
      top: 0;
      left: 0;
      width: 100vw;
      height: 0;
      background-color: white;
      transition: height 350ms ease-in-out; } }
  @media (max-width: 767px) {
    header .main-navigation .menu-menu-container #menu-menu {
      top: 50%;
      position: absolute;
      transform: translateY(-50%); }
      header .main-navigation .menu-menu-container #menu-menu li {
        margin: 0;
        opacity: 0;
        transition-delay: 350ms;
        transition: opacity 250ms ease; }
        header .main-navigation .menu-menu-container #menu-menu li a {
          display: block;
          width: 100%;
          padding: 40px 15px;
          text-align: center; } }
  header .main-navigation .menu-menu-container ul {
    list-style: none;
    margin: auto;
    padding: 0;
    width: 100%; }
    header .main-navigation .menu-menu-container ul li {
      position: relative;
      margin: 8px; }
      @media (min-width: 768px) and (max-width: 991px) {
        header .main-navigation .menu-menu-container ul li {
          margin: 0; } }
      header .main-navigation .menu-menu-container ul li a {
        padding: 6px 8px 6px 8px;
        color: #000;
        text-decoration: none;
        border: 1px solid transparent;
        border-radius: 3px;
        display: inline-block;
        text-align: left;
        font-size: 22px; }
        @media (min-width: 768px) and (max-width: 991px) {
          header .main-navigation .menu-menu-container ul li a {
            font-size: 14px; } }

@media (max-width: 767px) {
  header .site-branding {
    margin-top: 60px; } }

header .fjb-checkout {
  text-align: center; }
  @media (min-width: 768px) {
    header .fjb-checkout {
      position: absolute;
      right: 20px;
      top: 14px;
      width: 120px;
      z-index: 999; } }
  @media (min-width: 992px) {
    header .fjb-checkout {
      width: 200px;
      top: 25px; } }
  header .fjb-checkout:hover a .bling-shark-container .bling-shark {
    display: none; }
  header .fjb-checkout:hover a .bling-shark-container .bling-shark-hover {
    display: block; }
  header .fjb-checkout a {
    display: block;
    text-decoration: none; }
    @media (max-width: 767px) {
      header .fjb-checkout a {
        padding: 20px;
        border-radius: 6px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        margin: 15px;
        border: 1px solid #ccc;
        background-color: #eee;
        box-shadow: 0 6px #aaa; }
        header .fjb-checkout a:active {
          position: relative;
          box-shadow: none;
          top: 6px; } }
    header .fjb-checkout a .bling-shark-container {
      height: 160px;
      position: relative; }
      header .fjb-checkout a .bling-shark-container .bling-shark, header .fjb-checkout a .bling-shark-container .bling-shark-hover {
        margin: 0 auto;
        background-repeat: no-repeat;
        height: 100%; }
        @media (max-width: 767px) {
          header .fjb-checkout a .bling-shark-container .bling-shark, header .fjb-checkout a .bling-shark-container .bling-shark-hover {
            width: 250px;
            display: block;
            margin: auto; } }
        @media (min-width: 768px) {
          header .fjb-checkout a .bling-shark-container .bling-shark, header .fjb-checkout a .bling-shark-container .bling-shark-hover {
            position: absolute;
            left: 0;
            bottom: 0;
            width: 100%; } }
      header .fjb-checkout a .bling-shark-container .bling-shark {
        display: block;
        background-image: url(/assets/img/bling-shark-color.svg); }
      header .fjb-checkout a .bling-shark-container .bling-shark-hover {
        display: none;
        background-image: url(/assets/img/bling-shark-color-hover.svg); }
    header .fjb-checkout a span {
      font-family: 'Montserrat', sans-serif;
      font-weight: 500;
      color: black;
      font-size: 22px;
      text-transform: uppercase; }
      @media (max-width: 767px) {
        header .fjb-checkout a span {
          display: block; } }
      @media (min-width: 768px) and (max-width: 991px) {
        header .fjb-checkout a span {
          font-size: 14px; } }

.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 1; }
  .hamburger.is-active:hover {
    opacity: 1; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 40px;
  height: 27px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2.5px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 5px;
    background-color: #000;
    border-radius: 2px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -11px; }
  .hamburger-inner::after {
    bottom: -11px; }

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

footer {
  background: none;
  text-align: center; }
  @media (min-width: 768px) {
    footer {
      padding-bottom: 40px; } }
  footer .widget-area {
    width: 100%; }
    footer .widget-area .site-footer .widget {
      display: inline-block;
      vertical-align: top;
      list-style: none;
      position: relative;
      padding: 0 18px 0 18px;
      margin: 0 0.5em  45px 0.5em;
      box-shadow: none;
      background: none;
      border: none; }
  footer .social {
    display: flex;
    justify-content: center;
    padding: 0;
    margin: 0;
    list-style-type: none; }
    footer .social li {
      width: 32px;
      margin: 10px; }

.jewelry-shop {
  max-width: 1200px;
  display: block;
  margin: 0 auto; }
  .jewelry-shop .woocommerce-breadcrumb {
    display: none; }
  .jewelry-shop .term-description {
    margin-bottom: 40px; }
  .jewelry-shop .above-shop-section .product-categories {
    padding-left: 0;
    text-align: center;
    margin: 0 0 20px 0; }
    .jewelry-shop .above-shop-section .product-categories li {
      display: inline-block;
      margin: 0 20px; }
  .jewelry-shop .woocommerce-result-count {
    font-size: 12px; }
  .jewelry-shop .woocommerce-ordering {
    display: none; }

.woocommerce .cart .coupon {
  display: none; }

.shop-front a {
  display: block;
  position: relative;
  text-decoration: none;
  overflow: hidden; }
  .shop-front a:hover .jewelry-page-link {
    color: white; }
    .shop-front a:hover .jewelry-page-link .overlay, .shop-front a:hover .jewelry-page-link .text {
      opacity: 1; }
  .shop-front a .overlay {
    content: '';
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.4);
    transition: opacity 350ms ease;
    z-index: 10; }
    @media (max-width: 767px) {
      .shop-front a .overlay {
        opacity: 1;
        background-color: rgba(0, 0, 0, 0.25); } }
  .shop-front a .jewelry-page-link {
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center center;
    padding-top: 40px; }
    .shop-front a .jewelry-page-link .text {
      font-family: 'Montserrat', sans-serif;
      font-weight: 500;
      letter-spacing: 3px;
      text-align: center;
      font-size: 56px;
      text-transform: uppercase;
      color: white;
      line-height: normal;
      position: relative;
      z-index: 11;
      transition: color 350ms ease;
      width: 100%;
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%); }
      @media (max-width: 767px) {
        .shop-front a .jewelry-page-link .text {
          font-size: 22px; } }
      @media (min-width: 768px) {
        .shop-front a .jewelry-page-link .text {
          opacity: 0; } }
    .shop-front a .jewelry-page-link.dustin .overlay, .shop-front a .jewelry-page-link.hillary .overlay {
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 0) 100%); }
    @media (max-width: 767px) {
      .shop-front a .jewelry-page-link.dustin .text, .shop-front a .jewelry-page-link.hillary .text {
        bottom: 0px; } }
    .shop-front a .jewelry-page-link.all {
      height: 200px; }
      .shop-front a .jewelry-page-link.all .text {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
        @media (max-width: 767px) {
          .shop-front a .jewelry-page-link.all .text {
            display: block;
            line-height: 60px; } }
  .shop-front a .mobile-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    letter-spacing: 3px;
    text-align: center;
    font-size: 56px;
    text-transform: uppercase;
    color: white;
    line-height: normal;
    color: black;
    margin-top: 10px; }
    @media (max-width: 767px) {
      .shop-front a .mobile-title {
        font-size: 22px; } }
    @media (min-width: 768px) {
      .shop-front a .mobile-title {
        display: none; } }

.shop-front .profile-pics {
  display: flex;
  margin-top: 40px; }
  @media (max-width: 767px) {
    .shop-front .profile-pics {
      margin-top: 20px; } }
  @media (max-width: 767px) {
    .shop-front .profile-pics a {
      width: 100%;
      height: 300px;
      width: calc(50% - 10px); }
      .shop-front .profile-pics a:first-child {
        margin-right: 20px; } }
  @media (min-width: 768px) {
    .shop-front .profile-pics a {
      height: 600px;
      width: calc(50% - 20px); }
      .shop-front .profile-pics a:first-child {
        margin-right: 40px; } }

div.pp_woocommerce .ppt {
  display: none !important; }

div.pp_woocommerce .pp_content_container {
  background-color: transparent;
  color: white;
  padding: 0;
  box-shadow: none; }
  div.pp_woocommerce .pp_content_container .pp_left {
    padding-left: 0; }
  div.pp_woocommerce .pp_content_container .pp_right {
    padding-right: 0; }
  div.pp_woocommerce .pp_content_container .pp_expand {
    display: none !important; }
  div.pp_woocommerce .pp_content_container .pp_gallery {
    display: none !important; }
  div.pp_woocommerce .pp_content_container .pp_content {
    display: block;
    margin: 0 auto; }
    div.pp_woocommerce .pp_content_container .pp_content .pp_previous, div.pp_woocommerce .pp_content_container .pp_content .pp_next {
      background-size: 50px;
      background-repeat: no-repeat;
      opacity: .5; }
      @media (max-width: 767px) {
        div.pp_woocommerce .pp_content_container .pp_content .pp_previous, div.pp_woocommerce .pp_content_container .pp_content .pp_next {
          background-size: 25px; } }
      @media (min-width: 768px) {
        div.pp_woocommerce .pp_content_container .pp_content .pp_previous:hover, div.pp_woocommerce .pp_content_container .pp_content .pp_next:hover {
          opacity: 1; } }
      div.pp_woocommerce .pp_content_container .pp_content .pp_previous:before, div.pp_woocommerce .pp_content_container .pp_content .pp_next:before {
        content: none; }
      div.pp_woocommerce .pp_content_container .pp_content .pp_previous.pp_previous, div.pp_woocommerce .pp_content_container .pp_content .pp_next.pp_previous {
        background-image: url(/assets/img/caret-left.svg);
        background-position: left 20px center; }
        @media (max-width: 767px) {
          div.pp_woocommerce .pp_content_container .pp_content .pp_previous.pp_previous, div.pp_woocommerce .pp_content_container .pp_content .pp_next.pp_previous {
            background-position: left 10px center; } }
      div.pp_woocommerce .pp_content_container .pp_content .pp_previous.pp_next, div.pp_woocommerce .pp_content_container .pp_content .pp_next.pp_next {
        background-image: url(/assets/img/caret-right.svg);
        background-position: right 20px center; }
        @media (max-width: 767px) {
          div.pp_woocommerce .pp_content_container .pp_content .pp_previous.pp_next, div.pp_woocommerce .pp_content_container .pp_content .pp_next.pp_next {
            background-position: right 10px center; } }
    @media (max-width: 767px) {
      div.pp_woocommerce .pp_content_container .pp_content .pp_hoverContainer {
        width: 100% !important;
        height: 100% !important; }
        div.pp_woocommerce .pp_content_container .pp_content .pp_hoverContainer .pp_next {
          display: block !important; }
        div.pp_woocommerce .pp_content_container .pp_content .pp_hoverContainer .pp_previous {
          display: block !important; } }
    div.pp_woocommerce .pp_content_container .pp_content .pp_loaderIcon {
      display: block;
      position: absolute;
      left: 50%;
      top: 50%;
      height: 50px;
      width: 50px;
      transform: translate(-100%, -100%);
      background-size: 100%;
      margin: 0; }
      div.pp_woocommerce .pp_content_container .pp_content .pp_loaderIcon:before {
        height: 50px;
        width: 50px;
        position: absolute;
        top: 50%;
        left: 50%;
        display: block;
        content: "";
        background: url(/assets/img/fjb-loader.svg) center center;
        background-size: cover;
        margin: 0; }
  div.pp_woocommerce .pp_content_container .pp_details {
    padding-top: 0; }
    div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_play {
      display: none; }
    div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_previous, div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_next {
      border-radius: 0;
      background-color: transparent;
      background-size: 100%;
      margin-top: 1px;
      display: none; }
      div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_previous:before, div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_next:before {
        content: none; }
      div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_previous.pp_arrow_previous, div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_next.pp_arrow_previous {
        background-image: url(/assets/img/left-arrow.svg); }
      div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_previous.pp_arrow_next, div.pp_woocommerce .pp_content_container .pp_details .pp_nav .pp_arrow_next.pp_arrow_next {
        background-image: url(/assets/img/right-arrow.svg); }
    @media (max-width: 767px) {
      div.pp_woocommerce .pp_content_container .pp_details .pp_nav .currentTextHolder {
        line-height: normal; } }
    div.pp_woocommerce .pp_content_container .pp_details .pp_close {
      background-color: transparent;
      background-image: url(/assets/img/close.svg);
      width: 24px;
      height: 24px;
      background-size: 100%;
      border-radius: 0;
      right: 40px;
      top: 20px;
      z-index: 9999;
      opacity: .5; }
      @media (max-width: 767px) {
        div.pp_woocommerce .pp_content_container .pp_details .pp_close {
          right: -15px;
          top: -15px;
          width: 75px;
          height: 75px;
          background-size: 16px;
          background-repeat: no-repeat;
          background-position: center center; } }
      @media (min-width: 768px) {
        div.pp_woocommerce .pp_content_container .pp_details .pp_close:hover {
          opacity: 1; } }
      div.pp_woocommerce .pp_content_container .pp_details .pp_close:before {
        content: none; }

@media (max-width: 767px) {
  .jewelry-shop .above-shop-section .product-categories {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; } }

.jewelry-shop .above-shop-section .product-categories .swiper-slide {
  display: inline;
  margin: 10px; }
  @media (max-width: 767px) {
    .jewelry-shop .above-shop-section .product-categories .swiper-slide {
      display: block;
      text-align: center;
      display: block;
      margin: 0; } }
  .jewelry-shop .above-shop-section .product-categories .swiper-slide a {
    text-decoration: none; }
    @media (max-width: 767px) {
      .jewelry-shop .above-shop-section .product-categories .swiper-slide a {
        padding: 10px 12px;
        display: block;
        top: 50%;
        position: relative;
        transform: translateY(-50%); } }

.jewelry-shop .woocommerce-result-count {
  display: none; }

@media (max-width: 767px) {
  .jewelry-shop ul.products li.product {
    display: block;
    float: none;
    width: 100%; } }

.jewelry-shop ul.products li.product a img {
  margin: 0;
  border: 0; }

.jewelry-shop ul.products li.product .price .amount {
  color: black; }

.jewelry-shop ul.products li.product .add_to_cart_button {
  display: none; }

.jewelry-shop .woocommerce-error, .jewelry-shop .woocommerce-message {
  text-align: left;
  background-color: #f7f6f7;
  border-top-color: black;
  border: 1px solid black;
  border-top-width: 3px;
  border-radius: 0;
  margin-left: 20px; }
  .jewelry-shop .woocommerce-error:before, .jewelry-shop .woocommerce-message:before {
    color: black; }
  @media (max-width: 767px) {
    .jewelry-shop .woocommerce-error .button, .jewelry-shop .woocommerce-message .button {
      display: block;
      margin-top: 20px;
      width: 100%; } }

.jewelry-shop div.product div.summary {
  text-align: left;
  margin: 0; }
  @media (max-width: 767px) {
    .jewelry-shop div.product div.summary.entry-summary {
      margin: 0 0 100px 0; } }

.jewelry-shop div.product .price .amount {
  color: black; }

.jewelry-shop div.product p.stock {
  color: black; }

.jewelry-shop div.product [itemprop="description"] {
  margin-bottom: 40px; }
  .jewelry-shop div.product [itemprop="description"] p {
    margin-bottom: 10px; }

.jewelry-shop div.product .product_meta {
  display: none; }

.jewelry-shop div.product .quantity {
  display: none; }

.jewelry-shop div.product button.button.alt.single_add_to_cart_button {
  background-color: black;
  color: #fff;
  font-size: 16px;
  display: block;
  padding: 20px 50px;
  border: 1px solid black;
  transition: all 250ms ease;
  text-align: center; }
  @media (max-width: 767px) {
    .jewelry-shop div.product button.button.alt.single_add_to_cart_button {
      font-size: 16px; } }
  .jewelry-shop div.product button.button.alt.single_add_to_cart_button:hover {
    background-color: white;
    color: black; }
  @media (max-width: 767px) {
    .jewelry-shop div.product button.button.alt.single_add_to_cart_button {
      width: 100%; } }

.jewelry-shop .woocommerce-tabs {
  display: none; }

@media (max-width: 767px) {
  .related ul.products li.product {
    width: 48%;
    float: left;
    clear: both;
    margin: 0 0 20px 0; }
    .related ul.products li.product:nth-child(2n) {
      float: right; }
    .related ul.products li.product a img {
      margin: 0; } }

.related ul.products li.product .add_to_cart_button {
  display: none; }

.woocommerce-cart main article h1 {
  margin-top: 0; }

.woocommerce-cart main article .woocommerce .woocommerce-info, .woocommerce-cart main article .woocommerce .woocommerce-message, .woocommerce-cart main article .woocommerce .woocommerce-error {
  border-top-color: black;
  border: 1px solid black;
  border-top-width: 3px; }
  .woocommerce-cart main article .woocommerce .woocommerce-info:before, .woocommerce-cart main article .woocommerce .woocommerce-message:before, .woocommerce-cart main article .woocommerce .woocommerce-error:before {
    color: black; }

@media (max-width: 767px) {
  .woocommerce-cart main article table.cart .cart_item .product-remove {
    padding: 20px; } }

.woocommerce-cart main article table.cart .cart_item .product-remove .remove {
  margin: auto;
  display: block;
  color: transparent !important;
  border-radius: 0;
  background-image: url(/assets/img/close-red.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  opacity: .5; }
  @media (max-width: 767px) {
    .woocommerce-cart main article table.cart .cart_item .product-remove .remove {
      width: 100%;
      height: 40px;
      background-image: url(/assets/img/trash-can.svg);
      opacity: 1; } }
  .woocommerce-cart main article table.cart .cart_item .product-remove .remove:hover {
    background-color: transparent;
    opacity: 1; }

@media (max-width: 767px) {
  .woocommerce-cart main article table.cart .cart_item .product-thumbnail {
    display: block; }
    .woocommerce-cart main article table.cart .cart_item .product-thumbnail:before {
      display: none; } }

.woocommerce-cart main article table.cart .cart_item .product-thumbnail img {
  width: 300px;
  display: block;
  margin: 20px auto; }

@media (max-width: 767px) {
  .woocommerce-cart main article table.cart .cart_item .product-name {
    text-align: left !important; }
    .woocommerce-cart main article table.cart .cart_item .product-name:before {
      display: block;
      margin-bottom: 5px;
      float: none; }
    .woocommerce-cart main article table.cart .cart_item .product-name a {
      display: block;
      width: 100%; } }

@media (max-width: 767px) {
  .woocommerce-cart main article table.cart .cart_item .quantity .qty {
    border: 1px solid #ccc; } }

@media (min-width: 768px) {
  .woocommerce-cart main article table.cart .cart_item .quantity .qty {
    display: block;
    margin: auto; } }

.woocommerce-cart main article table.cart td.actions {
  padding: 20px; }
  .woocommerce-cart main article table.cart td.actions .button {
    background-color: black;
    color: #fff;
    font-size: 16px;
    display: block;
    padding: 20px 50px;
    border: 1px solid black;
    transition: all 250ms ease;
    text-align: center; }
    @media (max-width: 767px) {
      .woocommerce-cart main article table.cart td.actions .button {
        font-size: 16px; } }
    .woocommerce-cart main article table.cart td.actions .button:hover {
      background-color: white;
      color: black; }
    @media (max-width: 767px) {
      .woocommerce-cart main article table.cart td.actions .button[type="submit"] {
        width: 100% !important; } }
    @media (min-width: 768px) {
      .woocommerce-cart main article table.cart td.actions .button[type="submit"] {
        float: right; } }

.woocommerce-cart main article .policies {
  margin-bottom: 20px; }
  .woocommerce-cart main article .policies .textwidget {
    padding: 0; }
    .woocommerce-cart main article .policies .textwidget h2, .woocommerce-cart main article .policies .textwidget h3 {
      margin: 0 0 10px 0; }
    .woocommerce-cart main article .policies .textwidget p {
      margin-bottom: 10px;
      font-size: 14px; }
    .woocommerce-cart main article .policies .textwidget ul {
      padding-left: 20px;
      margin: 0; }
      .woocommerce-cart main article .policies .textwidget ul li {
        list-style-type: square;
        font-size: 14px;
        margin-bottom: 10px; }

.woocommerce-cart main article .cart-collaterals .cart_totals h2 {
  margin-top: 0; }

.woocommerce-cart main article .cart-collaterals .cart_totals .shop_table {
  border-radius: 0; }
  .woocommerce-cart main article .cart-collaterals .cart_totals .shop_table .shipping .woocommerce-shipping-calculator {
    display: none; }
    .woocommerce-cart main article .cart-collaterals .cart_totals .shop_table .shipping .woocommerce-shipping-calculator .shipping-calculator-form .button {
      background-color: black;
      color: #fff;
      font-size: 16px;
      display: block;
      padding: 20px 50px;
      border: 1px solid black;
      transition: all 250ms ease;
      text-align: center; }
      @media (max-width: 767px) {
        .woocommerce-cart main article .cart-collaterals .cart_totals .shop_table .shipping .woocommerce-shipping-calculator .shipping-calculator-form .button {
          font-size: 16px; } }
      .woocommerce-cart main article .cart-collaterals .cart_totals .shop_table .shipping .woocommerce-shipping-calculator .shipping-calculator-form .button:hover {
        background-color: white;
        color: black; }

.woocommerce-cart main article .cart-collaterals .wc-proceed-to-checkout {
  text-align: right;
  padding-top: 30px;
  padding-bottom: 0; }
  .woocommerce-cart main article .cart-collaterals .wc-proceed-to-checkout .button {
    background-color: black;
    color: #fff;
    font-size: 16px;
    display: block;
    padding: 20px 50px;
    border: 1px solid black;
    transition: all 250ms ease;
    text-align: center;
    display: inline-block;
    margin-bottom: 0; }
    @media (max-width: 767px) {
      .woocommerce-cart main article .cart-collaterals .wc-proceed-to-checkout .button {
        font-size: 16px; } }
    .woocommerce-cart main article .cart-collaterals .wc-proceed-to-checkout .button:hover {
      background-color: white;
      color: black; }

.woocommerce-checkout main article h1 {
  margin-top: 0; }

.woocommerce-checkout main article .checkout .col-1, .woocommerce-checkout main article .checkout .col-2 {
  width: 100%;
  display: block; }
  @media (min-width: 992px) {
    .woocommerce-checkout main article .checkout .col-1, .woocommerce-checkout main article .checkout .col-2 {
      width: 48%; } }
  @media (max-width: 767px) {
    .woocommerce-checkout main article .checkout .col-1 .form-row-first, .woocommerce-checkout main article .checkout .col-1 .form-row-last, .woocommerce-checkout main article .checkout .col-2 .form-row-first, .woocommerce-checkout main article .checkout .col-2 .form-row-last {
      display: block;
      width: 100%;
      float: none; } }

.woocommerce-checkout main article .checkout .woocommerce-info, .woocommerce-checkout main article .checkout .woocommerce-message, .woocommerce-checkout main article .checkout .woocommerce-error {
  border-top-color: black;
  border: 1px solid black;
  border-top-width: 3px; }
  .woocommerce-checkout main article .checkout .woocommerce-info:before, .woocommerce-checkout main article .checkout .woocommerce-message:before, .woocommerce-checkout main article .checkout .woocommerce-error:before {
    color: black; }

.woocommerce-checkout main article .checkout #billing_company_field, .woocommerce-checkout main article .checkout #shipping_company_field {
  display: none; }

.woocommerce-checkout main article .checkout .woocommerce-invalid input.input-text {
  border-width: 1px; }

.woocommerce-checkout main article .checkout .woocommerce-validated input.input-text {
  border-color: inherit; }

.woocommerce-checkout main article .checkout select, .woocommerce-checkout main article .checkout input, .woocommerce-checkout main article .checkout input[type="text"], .woocommerce-checkout main article .checkout input[type="email"], .woocommerce-checkout main article .checkout input[type="url"], .woocommerce-checkout main article .checkout input[type="password"], .woocommerce-checkout main article .checkout input[type="search"], .woocommerce-checkout main article .checkout input[type="tel"], .woocommerce-checkout main article .checkout .select2-container .select2-choice {
  border-radius: 3px;
  border: 1px solid #666;
  padding: 6px;
  height: 46px;
  padding-left: 9px;
  padding-right: 9px; }

.woocommerce-checkout main article .checkout textarea {
  border-radius: 3px;
  border: 1px solid #666;
  padding: 6px; }

.woocommerce-checkout main article .checkout input[type="checkbox"], .woocommerce-checkout main article .checkout input[type="radio"] {
  width: 20px;
  height: 20px;
  margin-left: 10px;
  vertical-align: middle;
  cursor: pointer; }

@media (max-width: 767px) {
  .woocommerce-checkout main article .checkout .woocommerce-checkout-review-order-table {
    font-size: 12px; } }

.woocommerce-checkout #payment {
  background-color: #f7f6f7;
  border-top-color: black;
  border: 1px solid black;
  border-top-width: 3px;
  border-radius: 0; }
  .woocommerce-checkout #payment ul.payment_methods {
    border: 0;
    border-bottom: 0; }
    .woocommerce-checkout #payment ul.payment_methods .payment_box {
      background: none;
      margin: 10px 0;
      padding: 0;
      font-size: 12px; }
      .woocommerce-checkout #payment ul.payment_methods .payment_box:before {
        content: none; }
    @media (max-width: 767px) {
      .woocommerce-checkout #payment ul.payment_methods .about_paypal {
        float: none;
        display: block; } }
  .woocommerce-checkout #payment .place-order {
    padding-top: 0; }
  .woocommerce-checkout #payment .button, .woocommerce-checkout #payment input[type="submit"] {
    background-color: black;
    color: #fff;
    font-size: 16px;
    display: block;
    padding: 20px 50px;
    border: 1px solid black;
    transition: all 250ms ease;
    text-align: center;
    height: auto; }
    @media (max-width: 767px) {
      .woocommerce-checkout #payment .button, .woocommerce-checkout #payment input[type="submit"] {
        font-size: 16px; } }
    .woocommerce-checkout #payment .button:hover, .woocommerce-checkout #payment input[type="submit"]:hover {
      background-color: white;
      color: black; }
    .woocommerce-checkout #payment .button:hover, .woocommerce-checkout #payment input[type="submit"]:hover {
      box-shadow: none; }

.woocommerce .woocommerce-info, .woocommerce .woocommerce-error, .woocommerce .woocommerce-message {
  text-align: left;
  background-color: #f7f6f7;
  border-top-color: black;
  border: 1px solid black;
  border-top-width: 3px;
  border-radius: 0; }
  .woocommerce .woocommerce-info:before, .woocommerce .woocommerce-error:before, .woocommerce .woocommerce-message:before {
    color: black; }
  @media (max-width: 767px) {
    .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-error .button, .woocommerce .woocommerce-message .button {
      display: block;
      margin-top: 20px;
      width: 100%; } }

.woocommerce .checkout_coupon .form-row {
  margin: 0; }
  .woocommerce .checkout_coupon .form-row input {
    border-radius: 3px;
    border: 1px solid #666;
    padding: 6px; }

.woocommerce .checkout_coupon input[type="submit"] {
  background-color: black;
  color: #fff;
  font-size: 16px;
  display: block;
  padding: 20px 50px;
  border: 1px solid black;
  transition: all 250ms ease;
  text-align: center;
  display: block;
  width: 100%; }
  @media (max-width: 767px) {
    .woocommerce .checkout_coupon input[type="submit"] {
      font-size: 16px; } }
  .woocommerce .checkout_coupon input[type="submit"]:hover {
    background-color: white;
    color: black; }
  @media (max-width: 767px) {
    .woocommerce .checkout_coupon input[type="submit"] {
      padding: 20px 10px;
      font-size: 16px; } }

.woocommerce form .form-row .required {
  border: 0;
  text-decoration: none;
  font-size: 10px;
  margin: 0;
  vertical-align: super;
  color: #a00; }

.no-padding {
  padding: 0 !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX21peGlucy5zY3NzIiwiX2Jhc2UtdGhlbWUuc2NzcyIsIl92YXJzLnNjc3MiLCJfZWxlbWVudHMuc2NzcyIsIl9nbG9iYWwuc2NzcyIsImNvbXBvbmVudHMvX2Fib3V0LnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19zaG9wLXByb2R1Y3RzLnNjc3MiLCJjb21wb25lbnRzL19zaG9wLWZyb250LnNjc3MiLCJjb21wb25lbnRzL193b29jb21tZXJjZS1saWdodGJveC5zY3NzIiwiY29tcG9uZW50cy9fcHJvZHVjdHMtbGlzdGluZy1wYWdlLnNjc3MiLCJjb21wb25lbnRzL19wcm9kdWN0LWRldGFpbC1wYWdlLnNjc3MiLCJjb21wb25lbnRzL19yZWxhdGVkLXByb2R1Y3RzLnNjc3MiLCJjb21wb25lbnRzL19jYXJ0LnNjc3MiLCJfaGVscGVycy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIEltcG9ydHMgKi9cclxuLy8gVGhpcyBwcm9qZWN0IHVzZXMgaW52ZXJ0ZWQgdHJpYW5nbGUgQ1NTIGFyY2hpdGVjdHVyZSAoaHR0cHM6Ly93d3cueGZpdmUuY28vYmxvZy9pdGNzcy1zY2FsYWJsZS1tYWludGFpbmFibGUtY3NzLWFyY2hpdGVjdHVyZS8pXHJcblxyXG4vLyB2ZW5kb3JzXHJcbi8vQGltcG9ydCAnLi4vdmVuZG9ycy9jc3Mvc3dpcGVyJztcclxuXHJcbi8vIHNoYXJlZFxyXG5AaW1wb3J0ICdtaXhpbnMnO1xyXG5cclxuLy8gQmFzZSBXb3JkUHJlc3MgVGhlbWVcclxuQGltcG9ydCAnYmFzZS10aGVtZSc7XHJcblxyXG4vLyBnbG9iYWxcclxuQGltcG9ydCAndmFycyc7XHJcbkBpbXBvcnQgJ2VsZW1lbnRzJztcclxuQGltcG9ydCAnZ2xvYmFsJztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWJvdXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2hlYWRlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGFtYnVyZ2VyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb290ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Nob3AtcHJvZHVjdHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Nob3AtZnJvbnQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dvb2NvbW1lcmNlLWxpZ2h0Ym94JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wcm9kdWN0cy1saXN0aW5nLXBhZ2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2R1Y3QtZGV0YWlsLXBhZ2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3JlbGF0ZWQtcHJvZHVjdHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcnQnO1xyXG5cclxuQGltcG9ydCAnaGVscGVycyc7IiwiLy8gR2xvYmFsIHJlLXVzZWFibGUgbWl4aW4gYmxvY2tzXHJcblxyXG4kbW9iaWxlLXdpZHRoOiA3NjdweDtcclxuJHRhYmxldC13aWR0aDogNzY4cHg7XHJcbiRkZXNrdG9wLXdpZHRoOiA5OTJweDtcclxuJGRlc2t0b3AtbGFyZ2Utd2lkdGg6IDEyMDBweDtcclxuXHJcbkBtaXhpbiBtb2JpbGUtb25seSB7XHJcblx0QG1lZGlhIChtYXgtd2lkdGg6ICN7JG1vYmlsZS13aWR0aH0pIHtcclxuXHRcdEBjb250ZW50O1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHRhYmxldCB7XHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHRhYmxldC13aWR0aH0pIHtcclxuXHRcdEBjb250ZW50O1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIHRhYmxldC1vbmx5IHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skdGFibGV0LXdpZHRofSkgYW5kIChtYXgtd2lkdGg6ICN7JGRlc2t0b3Atd2lkdGggLSAxcHh9KSB7XHJcblx0XHRAY29udGVudDtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBkZXNrdG9wIHtcclxuXHRAbWVkaWEgKG1pbi13aWR0aDogI3skZGVza3RvcC13aWR0aH0pIHtcclxuXHRcdEBjb250ZW50O1xyXG5cdH1cclxufVxyXG5cclxuQG1peGluIGRlc2t0b3AtbGFyZ2Uge1xyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRkZXNrdG9wLWxhcmdlLXdpZHRofSkge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gTW9udHNlcnJhdCB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG5AbWl4aW4gYmxhY2stYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cGFkZGluZzogMjBweCA1MHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcclxuXHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0fVxyXG5cdFxyXG5cdCY6aG92ZXIge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0XHRjb2xvcjogYmxhY2s7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gZm9ybS1pbnB1dC1zdHlsZSB7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XHJcblx0cGFkZGluZzogNnB4O1xyXG59XHJcblxyXG5AbWl4aW4gYWxlcnQge1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y3ZjZmNztcclxuXHRib3JkZXItdG9wLWNvbG9yOiBibGFjaztcclxuXHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuXHRib3JkZXItdG9wLXdpZHRoOiAzcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcclxuXHQmOmJlZm9yZSB7XHJcblx0XHRjb2xvcjogYmxhY2s7XHJcblx0fVxyXG5cdFxyXG5cdC5idXR0b24ge1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvKlxyXG5UaGVtZSBOYW1lOiBCaWxsaWVcclxuVGhlbWUgVVJJOiBodHRwOi8vd3B0ZW1hLnNlL0JpbGxpZVxyXG5BdXRob3I6IENhcm9saW5hIE55bWFya1xyXG5BdXRob3IgVVJJOiBodHRwOi8vd3B0ZW1hLnNlXHJcbkRlc2NyaXB0aW9uOiBCaWxsaWUgaXMgYSByZXNwb25zaXZlLCBhY2Nlc3NpYmlsaXR5LXJlYWR5IG11bHRpLXB1cnBvc2UgdGhlbWUuIFRoZSB0aGVtZSBoYXMgdHdvIG9wdGlvbmFsIG1lbnVzIChpbmNsdWRpbmcgYSBzb2NpYWwgbWVudSkgdHdvIGRpZmZlcmVudCBzaWRlYmFycyBhbmQgYSBmb290ZXIgd2lkZ2V0IGFyZWEgdGhhdCB3aWxsIGhvbGQgYW55IG51bWJlciBvZiB3aWRnZXRzLiBGZWF0dXJlcyBhbHNvIGluY2x1ZGUgYSBDYWxsIFRvIEFjdGlvbiBidXR0b24gYW5kIGN1c3RvbSBjb3B5cmlnaHQgdGV4dC4gV2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIEpldHBhY2sgcGx1Z2luIHRvIG1ha2UgZnVsbCB1c2Ugb2Ygc3VwcG9ydGVkIGZlYXR1cmVzIGxpa2UgbG9nb3MsIGZlYXR1cmVkIGNvbnRlbnQsIGNvbnRhY3QgZm9ybXMsIHRlc3RpbW9uaWFscywgc29jaWFsIHNoYXJpbmcgYW5kIG1vcmUuICBUbyBjcmVhdGUgYSBwb3J0Zm9saW8sIGluc3RhbGwgSmV0cGFjayBhbmQgY3JlYXRlIHlvdXIgcHJvamVjdHMsIGFsbCB0aGUgdGVtcGxhdGVzIGFyZSBhbHJlYWR5IHNoaXBwZWQgd2l0aCB0aGUgdGhlbWUuIElmIHlvdSBoYXZlIGFueSBxdWVzdGlvbnMsIGFjY2Vzc2liaWxpdHkgaXNzdWVzIG9yIGZlYXR1cmUgcmVxdWVzdHMgZm9yIHRoaXMgdGhlbWUsIHBsZWFzZSB2aXNpdCBodHRwOi8vd3B0ZW1hLnNlL0JpbGxpZS5cclxuVmVyc2lvbjogMS4wLjRcclxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcclxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcclxuQ29weXJpZ2h0OiBDYXJvbGluYSBOeW1hcmsgMjAxNS0yMDE2XHJcblRleHQgRG9tYWluOiBiaWxsaWVcclxuVGFnczogbGlnaHQsIHdoaXRlLCB0aHJlYWRlZC1jb21tZW50cywgY3VzdG9tLW1lbnUsIHN0aWNreS1wb3N0LCBlZGl0b3Itc3R5bGUsIHRyYW5zbGF0aW9uLXJlYWR5LCB0d28tY29sdW1ucywgZmVhdHVyZWQtaW1hZ2VzLCByZXNwb25zaXZlLWxheW91dCwgYWNjZXNzaWJpbGl0eS1yZWFkeSwgY3VzdG9tLWhlYWRlclxyXG5cclxuUmVzZXR0aW5nIGFuZCByZWJ1aWxkaW5nIHN0eWxlcyBoYXZlIGJlZW4gaGVscGVkIGFsb25nIHRoYW5rcyB0byB0aGUgZmluZSB3b3JrIG9mXHJcbkVyaWMgTWV5ZXIgaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC9pbmRleC5odG1sXHJcbmFsb25nIHdpdGggTmljb2xhcyBHYWxsYWdoZXIgYW5kIEpvbmF0aGFuIE5lYWwgaHR0cDovL25lY29sYXMuZ2l0aHViLmNvbS9ub3JtYWxpemUuY3NzL1xyXG5hbmQgQmx1ZXByaW50IGh0dHA6Ly93d3cuYmx1ZXByaW50Y3NzLm9yZy9cclxuKi9cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbj4+PiBUQUJMRSBPRiBDT05URU5UUzpcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xLjAgUmVzZXRcclxuMi4wIFR5cG9ncmFwaHlcclxuMy4wIEVsZW1lbnRzXHJcbjQuMCBGb3Jtc1xyXG41LjAgTmF2aWdhdGlvblxyXG5cdDUuMSBMaW5rc1xyXG5cdDUuMiBNZW51c1xyXG42LjAgQWNjZXNzaWJpbGl0eVxyXG43LjAgQWxpZ25tZW50c1xyXG44LjAgQ2xlYXJpbmdzXHJcbjEwLjAgQ29udGVudFxyXG5cdDEwLjEgQ2FsbCB0byBhY3Rpb25cclxuXHQxMC4yIFBvc3RzIGFuZCBwYWdlc1xyXG5cdDEwLjMgQ29tbWVudHNcclxuMTEuMCBKZXRwYWNrXHJcbjEyLjAgTWVkaWFcclxuXHQxMi4xIENhcHRpb25zXHJcblx0MTIuMiBHYWxsZXJpZXNcclxuMTMuMCBCQnByZXNzXHJcbjE0LjAgV29vY29tbWVyY2VcclxuMTUuMCBSZXNwb25zaXZlIHdpZHRoc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjEuMCBSZXNldFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuLypoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCovIHAsIGJsb2NrcXVvdGUsIHByZSxcclxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxyXG5kZWwsIGRmbiwgZW0sIGZvbnQsIGlucywga2JkLCBxLCBzLCBzYW1wLFxyXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcclxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQge1xyXG5cdGJvcmRlcjogMDtcclxuXHRmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHRmb250LXNpemU6IDEwMCU7XHJcblx0Zm9udC1zdHlsZTogaW5oZXJpdDtcclxuXHRmb250LXdlaWdodDogaW5oZXJpdDtcclxuXHRtYXJnaW46IDA7XHJcblx0b3V0bGluZTogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG5cclxuaHRtbCB7XHJcblx0Zm9udC1zaXplOiA2Mi41JTsgLyogQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRTYvNyB3aGVuIGJvZHkgZm9udC1zaXplIGlzIHNldCB1c2luZyBlbSB1bml0cyBodHRwOi8vY2xhZ251dC5jb20vYmxvZy8zNDgvI2M3OTAgKi9cclxuXHRvdmVyZmxvdy15OiBzY3JvbGw7IC8qIEtlZXBzIHBhZ2UgY2VudGVyZWQgaW4gYWxsIGJyb3dzZXJzIHJlZ2FyZGxlc3Mgb2YgY29udGVudCBoZWlnaHQgKi9cclxuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIFByZXZlbnRzIGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tICovXHJcblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6ICAgICAxMDAlOyAvKiB3d3cuNDU2YmVyZWFzdHJlZXQuY29tL2FyY2hpdmUvMjAxMDEyL2NvbnRyb2xsaW5nX3RleHRfc2l6ZV9pbl9zYWZhcmlfZm9yX2lvc193aXRob3V0X2Rpc2FibGluZ191c2VyX3pvb20vICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogQXBwbHkgYSBuYXR1cmFsIGJveCBsYXlvdXQgbW9kZWwgdG8gdGhlIGRvY3VtZW50OyBzZWUgaHR0cDovL3d3dy5wYXVsaXJpc2guY29tLzIwMTIvYm94LXNpemluZy1ib3JkZXItYm94LWZ0dy8gKi9cclxufVxyXG4qLFxyXG4qOmJlZm9yZSxcclxuKjphZnRlciB7IC8qIEluaGVyaXQgYm94LXNpemluZyB0byBtYWtlIGl0IGVhc2llciB0byBjaGFuZ2UgdGhlIHByb3BlcnR5IGZvciBjb21wb25lbnRzIHRoYXQgbGV2ZXJhZ2Ugb3RoZXIgYmVoYXZpb3I7IHNlZSBodHRwOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlLyAqL1xyXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG59XHJcblxyXG5ib2R5IHtcclxuXHRiYWNrZ3JvdW5kOiAjZmFmYWZhOyAvKiBGYWxsYmFjayBmb3Igd2hlbiB0aGVyZSBpcyBubyBjdXN0b20gYmFja2dyb3VuZCBjb2xvciBkZWZpbmVkLiAqL1xyXG59XHJcblxyXG5hcnRpY2xlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5tYWluLFxyXG5uYXYsXHJcbnNlY3Rpb24ge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5vbCxcclxudWwge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbnRhYmxlIHsgLyogdGFibGVzIHN0aWxsIG5lZWQgJ2NlbGxzcGFjaW5nPVwiMFwiJyBpbiB0aGUgbWFya3VwICovXHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuXHRib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxuY2FwdGlvbixcclxudGgsXHJcbnRkIHtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuYmxvY2txdW90ZTpiZWZvcmUsXHJcbmJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLFxyXG5xOmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlLFxyXG5xIHtcclxuXHRxdW90ZXM6IFwiXCIgXCJcIjtcclxufVxyXG5cclxuYTpmb2N1cyB7XHJcblx0b3V0bGluZTogdGhpbiBkb3R0ZWQ7XHJcbn1cclxuXHJcbmE6aG92ZXIsXHJcbmE6YWN0aXZlIHtcclxuXHRvdXRsaW5lOiAwO1xyXG59XHJcblxyXG5hIGltZyB7XHJcblx0Ym9yZGVyOiAwO1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjIuMCBUeXBvZ3JhcGh5XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuYm9keSxcclxuYnV0dG9uLFxyXG5pbnB1dCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcblx0Y29sb3I6ICMzMzM7XHJcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xyXG5cdGZvbnQtc2l6ZTogMTZweDtcclxuXHRmb250LXNpemU6IDEuNnJlbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2IHtcclxuXHRjbGVhcjogYm90aDtcclxuXHRmb250LXdlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxucCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XHJcbn1cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbmRmbixcclxuY2l0ZSxcclxuZW0sXHJcbmkge1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuYmxvY2txdW90ZSB7XHJcblx0bWFyZ2luOiAwIDEuNWVtO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRmb250LXNpemU6IDE4cHg7XHJcblx0Zm9udC1zaXplOiAxLjhyZW07XHJcbn1cclxuXHJcbmFkZHJlc3Mge1xyXG5cdG1hcmdpbjogMCAwIDEuNWVtO1xyXG59XHJcblxyXG5wcmUge1xyXG5cdGJhY2tncm91bmQ6ICNlZWU7XHJcblx0Zm9udC1mYW1pbHk6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcblx0Zm9udC1zaXplOiAxNXB4O1xyXG5cdGZvbnQtc2l6ZTogMS41cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjY7XHJcblx0bWFyZ2luLWJvdHRvbTogMS42ZW07XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cGFkZGluZzogMS42ZW07XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxufVxyXG5cclxuY29kZSxcclxua2JkLFxyXG50dCxcclxudmFyIHtcclxuXHRmb250LWZhbWlseTogTW9uYWNvLCBDb25zb2xhcywgXCJBbmRhbGUgTW9ub1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgbW9ub3NwYWNlO1xyXG5cdGZvbnQtc2l6ZTogMTVweDtcclxuXHRmb250LXNpemU6IDEuNXJlbTtcclxufVxyXG5cclxuYWJicixcclxuYWNyb255bSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjNjY2O1xyXG5cdGN1cnNvcjogaGVscDtcclxufVxyXG5cclxubWFyayxcclxuaW5zIHtcclxuXHRiYWNrZ3JvdW5kOiAjZmZmOWMwO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuc3VwLFxyXG5zdWIge1xyXG5cdGZvbnQtc2l6ZTogNzUlO1xyXG5cdGhlaWdodDogMDtcclxuXHRsaW5lLWhlaWdodDogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5zdXAge1xyXG5cdGJvdHRvbTogMWV4O1xyXG59XHJcblxyXG5zdWIge1xyXG5cdHRvcDogLjVleDtcclxufVxyXG5cclxuc21hbGwge1xyXG5cdGZvbnQtc2l6ZTogNzUlO1xyXG59XHJcblxyXG5iaWcge1xyXG5cdGZvbnQtc2l6ZTogMTI1JTtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4zLjAgRWxlbWVudHNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5ociB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuXHRib3JkZXI6IDA7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XHJcbn1cclxuXHJcbnVsLFxyXG5vbCB7XHJcblx0bWFyZ2luOiAwIDAgMS41ZW0gM2VtO1xyXG59XHJcblxyXG51bCB7XHJcblx0bGlzdC1zdHlsZTogZGlzYztcclxufVxyXG5cclxub2wge1xyXG5cdGxpc3Qtc3R5bGU6IGRlY2ltYWw7XHJcbn1cclxuXHJcbmxpID4gdWwsXHJcbmxpID4gb2wge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcblx0bWFyZ2luLWxlZnQ6IDEuNWVtO1xyXG59XHJcblxyXG5kdCB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbmRkIHtcclxuXHRtYXJnaW46IDAgMS41ZW0gMS41ZW07XHJcbn1cclxuXHJcbmltZyB7XHJcblx0aGVpZ2h0OiBhdXRvOyAvKiBNYWtlIHN1cmUgaW1hZ2VzIGFyZSBzY2FsZWQgY29ycmVjdGx5LiAqL1xyXG5cdG1heC13aWR0aDogMTAwJTsgLyogQWRoZXJlIHRvIGNvbnRhaW5lciB3aWR0aC4gKi9cclxufVxyXG5cclxuZmlndXJlIHtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbnRhYmxle1xyXG5cdG1hcmdpbjoxNXB4IDRweCAyMHB4IDRweDsgXHJcblx0Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlOyBcclxuXHRib3JkZXI6MXB4IHNvbGlkICNjY2NjY2M7IFxyXG5cdHdpZHRoOjEwMCU7XHJcbn1cclxudGR7XHJcblx0Ym9yZGVyOjFweCBzb2xpZCAjY2NjY2NjOyBcclxuXHRwYWRkaW5nOjhweDtcclxufVxyXG50aHtcclxuXHRiYWNrZ3JvdW5kOiNmNWY1ZjU7IFxyXG5cdHBhZGRpbmc6OHB4OyBcclxuXHRib3JkZXI6MXB4IHNvbGlkICNjY2NjY2M7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuNC4wIEZvcm1zXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuYnV0dG9uLFxyXG5pbnB1dCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcblx0Zm9udC1zaXplOiAxMDAlOyAvKiBDb3JyZWN0cyBmb250IHNpemUgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBhbGwgYnJvd3NlcnMgKi9cclxuXHRtYXJnaW46IDA7IC8qIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvNywgRjMvNCwgUzUsIENocm9tZSAqL1xyXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogSW1wcm92ZXMgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzICovXHJcbn1cclxuXHJcbmJ1dHRvbixcclxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZDtcclxuXHRib3JkZXItY29sb3I6ICNjY2MgI2NjYyAjYmJiO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRiYWNrZ3JvdW5kOiAjZTZlNmU2O1xyXG5cdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpLCBpbnNldCAwIDE1cHggMTdweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSksIGluc2V0IDAgLTVweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcblx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjsgLyogSW1wcm92ZXMgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlICdpbnB1dCcgYW5kIG90aGVycyAqL1xyXG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiBDb3JyZWN0cyBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlICdpbnB1dCcgdHlwZXMgaW4gaU9TICovXHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtc2l6ZTogMS40cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHBhZGRpbmc6IC42ZW0gMWVtIC40ZW07XHJcblx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcblx0cGFkZGluZzogMDsgLyogQWRkcmVzc2VzIGV4Y2VzcyBwYWRkaW5nIGluIElFOC85ICovXHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG5cdC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiBBZGRyZXNzZXMgYXBwZWFyYW5jZSBzZXQgdG8gc2VhcmNoZmllbGQgaW4gUzUsIENocm9tZSAqL1xyXG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHsgLyogQ29ycmVjdHMgaW5uZXIgcGFkZGluZyBkaXNwbGF5ZWQgb2RkbHkgaW4gUzUsIENocm9tZSBvbiBPU1ggKi9cclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbnNlbGVjdCxcclxuaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuaW5wdXRbdHlwZT1cInVybFwiXSxcclxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxyXG50ZXh0YXJlYSB7XHJcblx0Y29sb3I6ICM2NjY7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbnNlbGVjdDpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxyXG50ZXh0YXJlYTpmb2N1cyB7XHJcblx0Y29sb3I6ICMxMTE7XHJcblx0Ym94LXNoYWRvdzogMCAwIDVweCByZ2JhKDE2MiwgMTk2LCAyNTEsIDEpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTYyLCAxOTYsIDI1MSwgMSk7XHJcbn1cclxuXHJcbnNlbGVjdCxcclxuaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuaW5wdXRbdHlwZT1cInVybFwiXSxcclxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuXHRwYWRkaW5nOiAzcHg7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuXHRvdmVyZmxvdzogYXV0bzsgLyogUmVtb3ZlcyBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRTYvNy84LzkgKi9cclxuXHRwYWRkaW5nLWxlZnQ6IDNweDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvKiBJbXByb3ZlcyByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2VycyAqL1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjUuMCBOYXZpZ2F0aW9uXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5tb3JlLWxpbmt7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0cGFkZGluZzoxMnB4OyBcclxuXHRmb250LXNpemU6MTZweDtcclxuXHRmb250LXNpemU6MS42cmVtO1xyXG5cdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRib3JkZXI6MXB4IHNvbGlkICNmMmYyZjI7XHJcblx0Ym9yZGVyLXJhZGl1czo0cHg7XHJcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xyXG5cdG1hcmdpbjoyMHB4IDAgMjBweCAwO1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG5cclxuLnBhZ2UtbnVtYmVyczpob3ZlcixcclxuLnByZXY6aG92ZXIsXHJcbi5uZXh0OmhvdmVyLFxyXG4ubW9yZS1saW5rOmZvY3VzLFxyXG4ubW9yZS1saW5rOmhvdmVyLFxyXG4ubmF2LXByZXZpb3VzOmhvdmVyIGEsXHJcbi5uYXYtbmV4dDpob3ZlciBhe3RleHQtZGVjb3JhdGlvbjpub25lO31cclxuXHJcbi5uYXYtcHJldmlvdXM6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlxcZjA2MFwiO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XHJcblx0dGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuXHRmb250LXNpemU6IDE0cHg7IFxyXG5cdGxpbmUtaGVpZ2h0OiAxOyBcclxuXHRjb2xvcjogIzcxNzE3MTtcclxuXHRtYXJnaW4tcmlnaHQ6MTBweDtcclxuXHRtYXJnaW4tdG9wOjRweDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1x0XHJcblx0ZmxvYXQ6bGVmdDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG59XHJcblxyXG4ubmF2LW5leHQ6YWZ0ZXJ7XHJcblx0Y29udGVudDogXCJcXGYwNjFcIjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0Zm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xyXG5cdHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcblx0Zm9udC1zaXplOiAxNHB4OyBcclxuXHRsaW5lLWhlaWdodDogMTsgXHJcblx0Y29sb3I6ICM3MTcxNzE7XHJcblx0bWFyZ2luLWxlZnQ6MTBweDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1x0XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcclxufVxyXG5cclxuLnNpdGUtbWFpbiAuY29tbWVudC1uYXZpZ2F0aW9uLFxyXG4uc2l0ZS1tYWluIC5wb3N0cy1uYXZpZ2F0aW9uLFxyXG4uc2l0ZS1tYWluIC5wb3N0LW5hdmlnYXRpb24ge1xyXG5cdG1hcmdpbjogMCAwIDQ1cHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnBvc3RzLW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyxcclxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRmbG9hdDogbGVmdDtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHdpZHRoOiA0MCU7XHJcblx0Zm9udC1zaXplOjE2cHg7XHJcblx0Zm9udC1zaXplOjEuNnJlbTtcclxuXHRwYWRkaW5nOjEycHg7IFxyXG5cdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRib3JkZXI6MXB4IHNvbGlkICNmMmYyZjI7XHJcblx0Ym9yZGVyLXJhZGl1czo0cHg7XHJcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4ucG9zdHMtbmF2aWdhdGlvbiAubmF2LW5leHQsXHJcbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1uZXh0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0d2lkdGg6IDQwJTtcclxuXHRmb250LXNpemU6MTZweDtcclxuXHRmb250LXNpemU6MS42cmVtO1xyXG5cdHBhZGRpbmc6MTJweDsgXHJcblx0YmFja2dyb3VuZDojZmZmO1xyXG5cdGJvcmRlcjoxcHggc29saWQgI2YyZjJmMjtcclxuXHRib3JkZXItcmFkaXVzOjRweDtcclxuXHRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5jb21tZW50LW5hdmlnYXRpb257XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0YmFja2dyb3VuZDojZmZmO1xyXG5cdGJvcmRlcjoxcHggc29saWQgI2YyZjJmMjtcclxuXHRib3JkZXItcmFkaXVzOjRweDtcclxuXHRwYWRkaW5nOjEycHg7IFxyXG59XHJcblxyXG4ucGFnZS1saW5rcyBhLFxyXG4ucGFnZS1udW1iZXJze3BhZGRpbmc6MCA1cHggMCA1cHg7fVxyXG5cclxuLmNvbW1lbnQtbmF2aWdhdGlvbiAucHJldixcclxuLmNvbW1lbnQtbmF2aWdhdGlvbiAubmV4dHtcclxuXHRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XHJcblx0Zm9udC1zaXplOjE2cHg7XHJcblx0Zm9udC1zaXplOjEuNnJlbTtcclxufVxyXG5cclxuLmNydW1ic3tcclxuXHRjb2xvcjojNjY2O1xyXG59XHJcblxyXG4uY3J1bWJzIHVse1x0bWFyZ2luLWxlZnQ6MDt9XHJcblxyXG4uY3J1bWJzIGxpe1xyXG5cdGxpc3Qtc3R5bGU6bm9uZTtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuNS4xIExpbmtzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuYSB7XHJcblx0Y29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbmE6dmlzaXRlZCB7XHJcblx0Y29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbmE6aG92ZXIsXHJcbmE6Zm9jdXMsXHJcbmE6YWN0aXZlIHtcclxuXHRjb2xvcjogIzY2NjtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG41LjIgTWVudXNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiA9SGVhZGVyIE1lbnVcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5tYWluLW5hdmlnYXRpb24ge1xyXG5cdEBpbmNsdWRlIE1vbnRzZXJyYXQ7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6OXB4O1xyXG5cdGZvbnQtc2l6ZToxNHB4O1xyXG5cdGZvbnQtc2l6ZToxLjRyZW07XHJcblx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAycHg7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRoZWlnaHQ6YXV0bztcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpe1xyXG5cdC5tYWluLW5hdmlnYXRpb24gbGkge1xyXG5cdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRmb250LXNpemU6IDFyZW07XHJcblx0fVxyXG59XHJcblxyXG4vKiBUb3AgbGV2ZWwgaG92ZXIgc3RhdGUsIHByZXNlcnZlIGhvdmVyIHN0YXRlIHdoZW4gaG92ZXJpbmcgZHJvcGRvd24gICovXHJcbi5tYWluLW5hdmlnYXRpb24gbGkgPiBhOmhvdmVyLFxyXG4ubWFpbi1uYXZpZ2F0aW9uIGxpID4gYTpmb2N1cyxcclxuLm1haW4tbmF2aWdhdGlvbiBsaTpmb2N1cyA+IGEsXHJcbi5tYWluLW5hdmlnYXRpb24gbGk6aG92ZXIgPiBhIHtcclxuICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG59XHJcblxyXG4ubWFpbi1uYXZpZ2F0aW9uIHVsIHVsIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHRcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRjbGVhcjpib3RoO1xyXG5cdHdpZHRoOiAyMjhweDsgLyo4IHdpZGVyIHRoYW4gdGhlIGxpbmssIHRvIG1ha2Ugcm9vbSBmb3IgdGhlIGJvcmRlciBpbWFnZS4qL1xyXG5cdHRvcDogYXV0bztcclxuXHRwYWRkaW5nLXJpZ2h0OjFlbTtcclxuXHRwYWRkaW5nLXRvcDo4cHg7XHJcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG59XHJcblxyXG4vKm1ha2Ugc3VyZSB0aGF0IHRoZSBpdGVtcyBhcmUgdmlzaWJsZSBpZiB0aGV5IGFyZSBvdmVybGFwcGluZyovXHJcbi5tYWluLW5hdmlnYXRpb24gdWwgdWwgYXtiYWNrZ3JvdW5kOiNmZmY7fVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbiBsaTpob3ZlciB1bCxcclxuLmtleWJvYXJkLWRyb3Bkb3due1xyXG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbiB1bCBsaTpob3ZlciA+IHVsIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnN1Yi1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlcntcclxuY29udGVudDonJztcclxufVxyXG5cclxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOmFmdGVye1xyXG5cdGZvbnQ6IG5vcm1hbCAxNnB4LzEgJ2Rhc2hpY29ucyc7XHJcblx0Zm9udC1zaXplOjE2cHg7XHJcblx0aGVpZ2h0OjE2cHg7XHJcblx0d2lkdGg6MTZweDtcclxuXHRjb250ZW50OiBcIlxcZjE0MFwiO1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG59XHJcblxyXG4vKiBTbWFsbCBtZW51ICovXHJcbi5tZW51LXRvZ2dsZXtkaXNwbGF5OiBub25lO31cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcblxyXG5cdC5tZW51LXRvZ2dsZSxcclxuXHQubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWQgLm5hdi1tZW51IHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0b3V0bGluZTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0Lm1haW4tbmF2aWdhdGlvbnsgcG9zaXRpb246IHJlbGF0aXZlO31cclxuXHJcblx0Lm1haW4tbmF2aWdhdGlvbiB1bCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0Lm1lbnUtdG9nZ2xlOmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBcIlxcZjBjOVwiO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0Zm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xyXG5cdFx0dGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0Zm9udC1zaXplOiAyZW07IFxyXG5cdFx0bGluZS1oZWlnaHQ6IDE7IFxyXG5cdFx0Y29sb3I6ICMwMDAwMDA7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG5cdH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLVxyXG5Tb2NpYWwgbWVudVxyXG4tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XHJcbiAgc3JjOiB1cmwoJ2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90P3Y9NC4yLjAnKTtcclxuICBzcmM6IHVybCgnZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9NC4yLjAnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmP3Y9NC4yLjAnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCdmb250cy9mb250YXdlc29tZS13ZWJmb250LnR0Zj92PTQuMi4wJykgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoJ2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9NC4yLjAjZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxubGkgYTpiZWZvcmV7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcclxuXHR0ZXh0LXJlbmRlcmluZzogYXV0bztcclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG5cdGxpbmUtaGVpZ2h0OiAxOyBcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG5cdG1hcmdpbjowcHggNXB4IDBweCA1cHg7XHJcblx0cGFkZGluZzowO1xyXG59XHJcblxyXG4uc29jaWFsLW1lbnUgbGkgYTpiZWZvcmV7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDM0cHgvMSBGb250QXdlc29tZTtcclxuXHR0ZXh0LXJlbmRlcmluZzogYXV0bztcclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG5cdGxpbmUtaGVpZ2h0OiAxOyBcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG5cdG1hcmdpbjowcHggNXB4IDBweCA1cHg7XHJcblx0cGFkZGluZzowO1xyXG59XHJcblxyXG4uc29jaWFsLW1lbnV7XHJcblx0d2lkdGg6MTAwJTsgXHJcblx0bWFyZ2luOjIwcHggYXV0byAyMHB4IGF1dG87IFxyXG5cdHRleHQtYWxpZ246Y2VudGVyOyBcclxuXHRwYWRkaW5nOjA7XHJcbn1cclxuLnNvY2lhbC1tZW51IHVsIHttYXJnaW46MDt9XHJcblxyXG4uc29jaWFsLW1lbnUgdWwgbGl7XHJcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdGRpc3BsYXk6IGlubGluZTtcclxufVxyXG4uc29jaWFsLW1lbnUgbGkgYSwgXHJcbi5zb2NpYWwtbWVudSBsaSBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjogbm9uZTsgYmFja2dyb3VuZDpub25lO31cclxuLnNvY2lhbC1tZW51IGxpIGE6aG92ZXI6YmVmb3Jle2NvbG9yOiMzMzMzMzM7fVxyXG5cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJkcmliYmJsZS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxN2QnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMDlhJzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cImZsaWNrci5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxNmUnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwiZm91cnNxdWFyZS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxODAnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwiZ2l0aHViLmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjA5Yic7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJwbHVzLmdvb2dsZS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwZDUnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwiaW5zdGFncmFtLmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjE2ZCc7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJqc2ZpZGRsZS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxY2MnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwibGlua2VkaW4uY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMGUxJzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cInBpbnRlcmVzdC5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwZDInOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwicmVkZGl0LmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjFhMSc7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJzb3VuZGNsb3VkLmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjFiZSc7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJzdGFja292ZXJmbG93LmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjE2Yyc7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJ0dW1ibHIuY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMTczJzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cInR3aXR0ZXIuY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMDk5JzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cInZpbWVvLmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogJ1xcZjE5NCc7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJ2aW5lLmNvXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMWNhJzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cInllbHAuY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMWU5JzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cInlvdXR1YmUuY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMTY3JzsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cIndvcmRwcmVzcy5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxOWEnOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwicGF5cGFsLmNvbVwiXTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWRcIjsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cImxhc3RmbS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAyXCI7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJiZWhhbmNlLm5ldFwiXTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjRcIjsgfVxyXG4uc29jaWFsLW1lbnUgbGkgYVtocmVmKj1cImRldmlhbnRhcnQuY29tXCJdOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiZFwiOyB9XHJcbi5zb2NpYWwtbWVudSBsaSBhW2hyZWYqPVwic3BvdGlmeS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJjXCI7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJza3lwZS5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTdlXCI7IH1cclxuLnNvY2lhbC1tZW51IGxpIGFbaHJlZio9XCJzbGFjay5jb21cIl06OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTk4XCI7IH1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjYuMCBBY2Nlc3NpYmlsaXR5XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycyAqL1xyXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcclxuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0d2lkdGg6IDFweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2NyZWVuLXJlYWRlci10ZXh0OmhvdmVyLFxyXG4uc2NyZWVuLXJlYWRlci10ZXh0OmFjdGl2ZSxcclxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcclxuXHRjb2xvcjogIzIxNzU5YjtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdGxlZnQ6IDVweDtcclxuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR0b3A6IDVweDtcclxuXHR3aWR0aDogYXV0bztcclxuXHR6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIgKi9cclxufVx0XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjcuMCBBbGlnbm1lbnRzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmFsaWdubGVmdCB7XHJcblx0ZGlzcGxheTogaW5saW5lO1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG5cdG1hcmdpbi1yaWdodDogMS41ZW07XHJcbn1cclxuXHJcbi5hbGlnbnJpZ2h0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcclxufVxyXG5cclxuLmFsaWduY2VudGVyIHtcclxuXHRjbGVhcjogYm90aDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG44LjAgQ2xlYXJpbmdzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmNsZWFyOmJlZm9yZSxcclxuLmNsZWFyOmFmdGVyLFxyXG4uZW50cnktY29udGVudDpiZWZvcmUsXHJcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxyXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcclxuLmNvbW1lbnQtY29udGVudDphZnRlcixcclxuLnNpdGUtaGVhZGVyOmJlZm9yZSxcclxuLnNpdGUtaGVhZGVyOmFmdGVyLFxyXG4uc2l0ZS1jb250ZW50OmJlZm9yZSxcclxuLnNpdGUtY29udGVudDphZnRlcixcclxuLnNpdGUtZm9vdGVyOmJlZm9yZSxcclxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4uY2xlYXI6YWZ0ZXIsXHJcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxyXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxyXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXHJcbi5zaXRlLWNvbnRlbnQ6YWZ0ZXIsXHJcbi5zaXRlLWZvb3RlcjphZnRlciB7XHJcblx0Y2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi5jbGVhcmZpeDpiZWZvcmUsXHJcbi5jbGVhcmZpeDphZnRlciB7XHJcblx0ZGlzcGxheTogdGFibGU7XHJcblx0Y29udGVudDogXCIgXCI7XHJcbn1cclxuXHJcbi5jbGVhcmZpeDphZnRlciB7XHJcblx0Y2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG45LjAgd2lkZ2V0c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLndpZGdldC1hcmVhe3BhZGRpbmc6MjBweCAxMnB4IDEycHggMTJweDt9XHJcblxyXG4ud2lkZ2V0IHtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC1zaXplOiAxLjRyZW07XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgICBcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1x0XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi53aWRnZXQtdGl0bGUsXHJcbi53aWRnZXR0aXRsZSB7XHJcblx0QGluY2x1ZGUgTW9udHNlcnJhdDtcclxuXHRtYXJnaW46MDtcclxuXHRwYWRkaW5nLWJvdHRvbTo3cHg7XHJcblx0Zm9udC1zaXplOjE2cHg7XHJcblx0Zm9udC1zaXplOjEuNnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi53aWRnZXQgdWx7XHJcblx0cGFkZGluZzowO1xyXG5cdG1hcmdpbjowO1xyXG5cdGZsb2F0OmxlZnQ7XHJcblx0d2lkdGg6MTAwJTtcclxufVxyXG5cclxuLndpZGdldCB1bCBsaXtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuXHRtYXJnaW46OXB4IDAgOXB4IDlweDtcclxuXHRwYWRkaW5nOjAgMCA0cHggOHB4O1xyXG5cdHRleHQtYWxpZ246bGVmdDtcclxufVxyXG5cclxuI2NhbGVuZGFyX3dyYXB7XHJcblx0cGFkZGluZy10b3A6NXB4O1xyXG59XHJcblxyXG4ud2lkZ2V0X2NhbGVuZGFyIC53aWRnZXR0aXRsZSB7ZGlzcGxheTpub25lO31cclxuXHJcbnRhYmxlI3dwLWNhbGVuZGFyLFxyXG4jd3AtY2FsZW5kYXIge1xyXG5cdGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuXHRwYWRkaW5nOjVweDtcclxuXHRtYXJnaW4tYm90dG9tOjI1cHg7XHJcblx0Ym9yZGVyOm5vbmU7XHJcbn1cclxuXHJcbiN3cC1jYWxlbmRhciB0aHtwYWRkaW5nOjVweDsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG5cclxuI3dwLWNhbGVuZGFyIHRke1xyXG5cdHBhZGRpbmc6NXB4OyBcclxuXHRib3JkZXI6MXB4IHNvbGlkICNlOWU5ZTk7IFxyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG59XHJcblxyXG4jd3AtY2FsZW5kYXIgYSB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxufVxyXG5cclxuI3dwLWNhbGVuZGFyIGNhcHRpb24ge1xyXG5cdGZvbnQtc2l6ZToxOHB4O1xyXG5cdGZvbnQtc2l6ZToxLjhyZW07XHJcblx0bWFyZ2luLWJvdHRvbTo4cHg7XHJcbn1cclxuXHJcbiN3cC1jYWxlbmRhciB0Zm9vdCB0ZCxcclxuI3dwLWNhbGVuZGFyIHRmb290IHtib3JkZXI6bm9uZTt9XHJcblxyXG4jd3AtY2FsZW5kYXIgdGQgYXtmb250LXdlaWdodDpib2xkO31cclxuXHJcbiN3cC1jYWxlbmRhciB0ZCBhOmhvdmVye1xyXG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcblxyXG4ud2lkZ2V0IHVsIGxpIGEsXHJcbi50YWdjbG91ZCBhIHtcclxuXHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxufVxyXG5cclxuLndpZGdldCB1bCBsaSBhOmhvdmVyLFxyXG4udGFnY2xvdWQgYTpob3ZlcntcclxuXHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG59XHJcblxyXG4udGV4dHdpZGdldHtcclxuXHRwYWRkaW5nOjEwcHg7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcblxyXG4ud2lkZ2V0IHNlbGVjdCxcclxuLndpZGdldF9zZWFyY2ggaW5wdXRbdHlwZT0nc2VhcmNoJ117XHJcblx0d2lkdGg6OTUlO1xyXG5cdG1hcmdpbi1ib3R0b206OXB4O1xyXG59XHJcblxyXG4uc2VhcmNoLXBvc3QgaW5wdXR7XHJcblx0bWFyZ2luOjNweDtcclxufVxyXG5cclxuLndpZGdldF9yc3MgdWwgbGkge1xyXG5cdG1hcmdpbi1ib3R0b206MjVweDsgXHJcblx0d2lkdGg6OTclO1xyXG59XHJcbi5yc3NTdW1tYXJ5e3dpZHRoOjkwJTt9XHJcbi5yc3MtZGF0ZXtcclxuXHR3aWR0aDo5MCU7IFxyXG5cdGZsb2F0OmxlZnQ7IFxyXG5cdGNsZWFyOmJvdGg7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuMTAuMCBDb250ZW50XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLnNpdGUtaGVhZGVye1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IDU1JSA5NXB4ICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiA2MCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNpdGUtYnJhbmRpbmcge1xyXG5cdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpe1xyXG5cdC5zaXRlLWJyYW5kaW5nIHtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHRwYWRkaW5nOiAwIDE1cHg7XHJcblx0fVxyXG5cdFxyXG5cdC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24ge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0Lndvb2NvbW1lcmNlLXRhYnMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlIHtcclxuXHRcdGNvbG9yOiBibGFjaztcclxuXHR9XHJcblx0XHJcblx0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0IHtcclxuXHRcdGNvbG9yOiBibGFjaztcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHRcclxuXHQud29vY29tbWVyY2UgLnF1YW50aXR5IC5xdHkge1xyXG5cdFx0cGFkZGluZzogM3B4O1xyXG5cdH1cclxuXHRcclxuXHQud2MtcHJvY2VlZC10by1jaGVja291dCBhLmJ1dHRvbi5hbHQge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cdFxyXG5cdC53b29jb21tZXJjZS1jYXJ0IC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IGEuY2hlY2tvdXQtYnV0dG9uIHtcclxuXHRcdGZvbnQtc2l6ZTogMWVtO1xyXG5cdH1cclxufVxyXG5cclxuLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgYS5idXR0b24uYWx0IHtcclxuXHRjb2xvcjogYmxhY2s7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcblxyXG4ud2MtcHJvY2VlZC10by1jaGVja291dCBhLmJ1dHRvbi5hbHQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cdGNvbG9yOiBibGFjaztcclxufVxyXG5cclxuLnNpdGUtZGVzY3JpcHRpb24ge1xyXG5cdEBpbmNsdWRlIE1vbnRzZXJyYXQ7XHJcblx0Zm9udC1zaXplOiAyOHB4O1xyXG5cdGZvbnQtc2l6ZTogMi44cmVtO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bWFyZ2luLXRvcDogMTVweDtcclxuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uc2l0ZS10aXRsZSB7XHJcblx0QGluY2x1ZGUgTW9udHNlcnJhdDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luOiAwIGF1dG8gMTBweCBhdXRvO1xyXG5cdGZvbnQtc2l6ZTogNXJlbTsgXHJcblx0bGluZS1oZWlnaHQ6IDE7IFxyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGNvbG9yOiAjMDAwMDAwO1xyXG59XHJcblxyXG4uc2l0ZS1jb250ZW50e1xyXG5cdHdpZHRoOiAxMDAlOyBcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMTJweCAxMnB4IDI1cHggMTJweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vKkhpZGUgdGhlIHNpdGUgY29udGVudCBpZiB0aGUgbGFuZGluZyBwYWdlIHRlbXBsYXRlIGlzIHVzZWQuKi9cclxuLnBhZ2UtdGVtcGxhdGUtbGFuZGluZ3BhZ2UgLnNpdGUtY29udGVudHsgZGlzcGxheTpub25lO31cclxuLnNpdGUtZm9vdGVye1xyXG5cdHBhZGRpbmc6IDEycHggMCAxMnB4IDA7XHJcbn1cclxuXHJcbi5zaXRlLWluZm97XHJcblx0QGluY2x1ZGUgTW9udHNlcnJhdDtcclxuXHR3aWR0aDogOTAlOyBcclxuXHRtYXJnaW46IDM1cHggYXV0byAxNXB4IGF1dG87IFxyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRmb250LXNpemU6IDEuMnJlbTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHRcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAycHg7XHJcbn1cclxuXHJcbi5jb250ZW50LWFyZWEge1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOiA2MCU7XHJcblx0bWFyZ2luOjAgYXV0bztcclxuXHR0ZXh0LWFsaWduOmxlZnQ7XHJcbn1cclxuXHJcbi5zaXRlLW1haW4ge1xyXG5cdG1hcmdpbjowIGF1dG87XHRcclxufVxyXG5cclxuLnNpdGUtY29udGVudCAud2lkZ2V0LWFyZWEge1xyXG5cdG1hcmdpbjogMTA1cHggYXV0bztcclxuXHRwYWRkaW5nOiA1cHggMiUgMCA0JTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IHRvcDtcclxufVxyXG5cclxuLnNpdGUtZm9vdGVyIHtcclxuXHRjbGVhcjogYm90aDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnNpbmdsZS1qZXRwYWNrLXRlc3RpbW9uaWFsIC5jb250ZW50LWFyZWEsXHJcbi5wYWdlIC5jb250ZW50LWFyZWEsXHJcbi5zaW5nbGUtamV0cGFjay1wb3J0Zm9saW8gLmNvbnRlbnQtYXJlYSwgXHJcbi5uby1zaWRlYmFyIC5jb250ZW50LWFyZWEge1xyXG5cdHdpZHRoOiA4MCU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0ZmxvYXQ6IG5vbmU7XHJcbn1cclxuXHJcbi5zaXRlLWJyYW5kaW5nIGZvcm0ge1xyXG5cdHdpZHRoOjMwJTtcclxuXHRib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtcclxuXHRwYWRkaW5nOjFlbTtcclxuXHRtYXJnaW46IDAgYXV0byAxMzBweCBhdXRvO1xyXG5cdGJvcmRlci1yYWRpdXM6NHB4O1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjEwLjEgQ2FsbCB0byBhY3Rpb25cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuI2FjdGlvbntcclxuXHR3aWR0aDozMCU7XHJcblx0bWFyZ2luOjYwcHggYXV0byA1NXB4IGF1dG87XHJcblx0cGFkZGluZzoxZW07XHJcblx0Zm9udC1zaXplOiAxLjhyZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlci1yYWRpdXM6NHB4O1xyXG5cdGJveC1zaGFkb3c6IDBweCAxcHggNnB4IHJnYmEoMCwwLDAsMC4yKTtcclxuXHRiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC42KTtcclxufVxyXG5cclxuI2FjdGlvbjpob3ZlcixcclxuI2FjdGlvbjpmb2N1c3tcclxuXHRib3JkZXI6MXB4IHNvbGlkICNmYWZhZmE7XHJcblx0Ym94LXNoYWRvdzogMHB4IDNweCAxMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDEuNHMgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6I2ZmZjtcclxufVxyXG5cclxuI2FjdGlvbiBhe1xyXG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG5cdGNvbG9yOiMwMDAwMDA7XHJcblx0cGFkZGluZy1ib3R0b206NHB4O1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjEwLjIgUG9zdHMgYW5kIHBhZ2VzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmJpbGxpZS1ib3JkZXJ7XHRcclxuXHRib3JkZXI6NHB4IHNvbGlkICNmZmY7XHJcblx0Ym9yZGVyLXJhZGl1czo0cHg7XHJcblx0Ym94LXNoYWRvdzogMHB4IDFweCA2cHggcmdiYSgwLDAsMCwwLjIpO1xyXG59XHJcblxyXG4udHlwZS1qZXRwYWNrLXRlc3RpbW9uaWFsLFxyXG4ucGFnZS1oZWFkZXIsXHJcbi50eXBlLXBhZ2UsXHJcbi50eXBlLWpldHBhY2stcG9ydGZvbGlvLFxyXG4uc2VhcmNoLXJlc3VsdHMgLnR5cGUtcGFnZSxcclxuLnR5cGUtYXR0YWNobWVudCxcclxuLnBvc3R7XHJcblx0Ym9yZGVyLXJhZGl1czo0cHg7IFxyXG5cdHBhZGRpbmc6IDMwcHg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdGJveC1zaGFkb3c6IDBweCAxcHggNnB4IHJnYmEoMCwwLDAsMC4yKTtcclxuXHRtYXJnaW4gOjAgMCA2NXB4IDA7XHJcblx0YmFja2dyb3VuZDojZmNmY2ZjO1xyXG5cdGxpbmUtaGVpZ2h0OjEuODtcclxufVxyXG5cclxuLnN0aWNreSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5oZW50cnkge31cclxuXHJcbi51cGRhdGVkOm5vdCgucHVibGlzaGVkKSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNpbmdsZSAuYnlsaW5lLFxyXG4uZ3JvdXAtYmxvZyAuYnlsaW5lIHtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcbn1cclxuXHJcbi5wYWdlLWNvbnRlbnQsXHJcbi5lbnRyeS1jb250ZW50LFxyXG4uZW50cnktc3VtbWFyeSB7XHJcblx0bWFyZ2luOiAxLjVlbSAwIDA7XHJcbn1cclxuXHJcbi5wYWdlLWxpbmtzIHtcclxuXHRAaW5jbHVkZSBNb250c2VycmF0O1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdG1hcmdpbjogMCAwIDEuNWVtO1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtc2l6ZTogMS40cmVtO1xyXG5cdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4OyBcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5lbnRyeS10aXRsZSwgXHJcbi5lbnRyeS10aXRsZSBhIHtcclxuXHRAaW5jbHVkZSBNb250c2VycmF0O1xyXG5cdGZvbnQtc2l6ZTogMzBweDtcclxuXHRmb250LXNpemU6IDMuMHJlbTsgXHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdG1hcmdpbjogMTBweCAwIDE1cHggMDtcclxuXHRwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHRjb2xvcjogIzAwMDAwMDtcclxufVxyXG5cclxuLmVudHJ5LXRpdGxlIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxyXG5cclxuLnBhZ2UtdGl0bGUge1xyXG5cdEBpbmNsdWRlIE1vbnRzZXJyYXQ7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG59XHJcblxyXG4udGF4b25vbXktZGVzY3JpcHRpb257XHJcblx0bWFyZ2luLWJvdHRvbTogNDVweDtcclxuXHRmb250LXNpemU6MTZweDtcclxuXHRmb250LXNpemU6MS42cmVtOyBcclxuXHRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5lbnRyeS1jb250ZW50e1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5lbnRyeS1jb250ZW50IGF7dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxyXG4uZW50cnktY29udGVudCBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjogbm9uZTt9XHJcblxyXG4uZW50cnktZm9vdGVyLFxyXG4uZW50cnktbWV0YXtcclxuXHRmb250LXNpemU6MTRweDtcclxuXHRmb250LXNpemU6MS40cmVtOyBcclxuXHRtYXJnaW46MCAwIDEwcHggMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcbn1cclxuXHJcbi5ieWxpbmUsXHJcbi5jYXQtbGlua3N7bWFyZ2luLXJpZ2h0OjhweDt9XHJcblxyXG4uc2luZ2xlLWpldHBhY2stcG9ydGZvbGlvIC5lbnRyeS1mb290ZXIge1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0ZmxvYXQ6bGVmdDtcclxufVxyXG5cclxuLnR5cGUtcGFnZSAuZW50cnktZm9vdGVye2Rpc3BsYXk6bm9uZTt9XHJcblxyXG4uZW50cnktbWV0YSBhICwgXHJcbi5lbnRyeS1mb290ZXIgYSwgXHJcbi5zaXRlLWZvb3RlciBhLCBcclxuLnBhZ2UtbGlua3MgYXtcclxuXHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxufVxyXG5cclxuLmVudHJ5LW1ldGEgYTpmb2N1cyxcclxuLmVudHJ5LWZvb3RlciBhOmZvY3VzLFxyXG4ucGFnZS1saW5rcyBhOmZvY3VzLFxyXG4uc2l0ZS1mb290ZXIgYTpmb2N1cyxcclxuLmVudHJ5LW1ldGEgYTpob3ZlcixcclxuLmVudHJ5LWZvb3RlciBhOmhvdmVyLFxyXG4ucGFnZS1saW5rcyBhOmhvdmVyLFxyXG4uc2l0ZS1mb290ZXIgYTpob3ZlciB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxufVxyXG5cclxuLmVkaXQtbGluayxcclxuLnBvc3RlZC1vbixcclxuLnRhZ3MtbGlua3MsXHJcbi5jb21tZW50cy1saW5re1xyXG5cdGNsZWFyOmJvdGg7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRtYXJnaW4tYm90dG9tOjhweDtcclxuXHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xyXG4gICAgYm9yZGVyLWxlZnQ6ICNkNWRiZGUgMXB4IHNvbGlkO1xyXG59XHJcblxyXG4ubm90LWZvdW5kIC5wYWdlLXRpdGxlOmJlZm9yZXtcclxuXHRjb250ZW50OiBcIlxcZjA1YVwiO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCA0MHB4LzEgRm9udEF3ZXNvbWU7XHJcblx0dGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuXHRsaW5lLWhlaWdodDogMTsgXHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcclxuXHRtYXJnaW46MHB4IDEwcHggMHB4IDVweDtcclxuXHRwYWRkaW5nOjA7XHJcblx0Y29sb3I6IzY2NjtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xMC4zIENvbW1lbnRzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5jb21tZW50cy1hcmVhe1xyXG5cdG1hcmdpbi10b3A6NDVweDsgXHJcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRjbGVhcjpib3RoOyBcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxufVxyXG5cclxuLmNvbW1lbnRzLXRpdGxlLFxyXG4uY29tbWVudC1yZXBseS10aXRsZSB7XHJcblx0QGluY2x1ZGUgTW9udHNlcnJhdDtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0Zm9udC1zaXplOiAyLjByZW07XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cdHBhZGRpbmc6IDEwcHggMCAxMHB4IDA7XHJcbn1cclxuXHJcbi5jb21tZW50LWxpc3R7bWFyZ2luOiAwIDAgMS41ZW0gMH1cclxuXHJcbi5jb21tZW50LWxpc3QsXHJcbi5jaGlsZHJlbntcclxuXHRsaXN0LXN0eWxlOm5vbmU7XHJcbn1cclxuXHJcbi5jb21tZW50LWJvZHkge1xyXG5cdG1hcmdpbi1ib3R0b206MjVweDsgXHJcbn1cclxuXHJcbi5jb21tZW50LW5hdmlnYXRpb257XHJcblx0cGFkZGluZy1ib3R0b206MTBweDtcclxufVxyXG5cclxuLmNvbW1lbnQtY29udGVudHsgbWFyZ2luLXRvcDoyMHB4O31cclxuXHJcbi5jb21tZW50LWNvbnRlbnQgYSB7XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG59XHJcblxyXG4uY29tbWVudC1tZXRhZGF0YXtcclxuXHRmb250LXNpemU6MTRweDtcclxuXHRmb250LXNpemU6MS40cmVtO1xyXG5cdG1hcmdpbjowcHggMTVweCAxNXB4IDE1cHg7XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5jb21tZW50LW1ldGFkYXRhIC5lZGl0LWxpbmt7bWFyZ2luLWxlZnQ6MTBweDt9XHJcblxyXG4uY29tbWVudC1tZXRhZGF0YSBhe3RleHQtZGVjb3JhdGlvbjpub25lOyB9XHJcbi5jb21tZW50LW1ldGFkYXRhIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsgfVxyXG5cclxuLnJlcGx5e1xyXG5cdG1hcmdpbjoxNXB4OyBcclxuXHRwYWRkaW5nLWJvdHRvbToxNXB4O1xyXG59XHJcblxyXG4uc2F5c3tkaXNwbGF5Om5vbmU7fVxyXG5cclxuLmJ5cG9zdGF1dGhvciB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5jb21tZW50LWF1dGhvciAuYXZhdGFye1xyXG5cdGJvcmRlcjo0cHggc29saWQgI2ZmZjtcclxuXHRib3JkZXItcmFkaXVzOjRweDtcclxuXHRib3gtc2hhZG93OiAwcHggMXB4IDZweCByZ2JhKDAsMCwwLDAuMik7XHJcbn1cclxuXHJcbi5jb21tZW50LW1ldGEgLmZue1xyXG5cdHZlcnRpY2FsLWFsaWduOnRvcDtcclxuXHRtYXJnaW4tbGVmdDoxNXB4O1xyXG5cdGZvbnQtc2l6ZToxOHB4O1xyXG5cdGZvbnQtc2l6ZToxLjhyZW07XHJcbn1cclxuXHJcbi5jb21tZW50LW1ldGEgLmZuIC51cmx7XHJcblx0dmVydGljYWwtYWxpZ246dG9wO1xyXG5cdGZvbnQtc2l6ZToxOHB4O1xyXG5cdGZvbnQtc2l6ZToxLjhyZW07XHJcbn1cclxuXHJcbi5sb2dnZWQtaW4tYXMgYTpob3ZlcixcclxuLnJlcGx5IC5jb21tZW50LXJlcGx5LWxpbms6aG92ZXIsXHJcbi5jb21tZW50LW1ldGEgLmZuIC51cmw6aG92ZXJ7XHJcblx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7IFxyXG59XHJcblxyXG4uY29tbWVudC1mb3Jte3dpZHRoOjcwJTt9XHJcbi5jb21tZW50LWZvcm0gcHttYXJnaW4tYm90dG9tOjIwcHg7fVxyXG5cclxuLypsYWJlbHM6Ki9cclxuLmNvbW1lbnQtZm9ybS11cmwgbGFiZWwsXHJcbi5jb21tZW50LWZvcm0tZW1haWwgbGFiZWwsXHJcbi5jb21tZW50LWZvcm0tYXV0aG9yIGxhYmVsLFxyXG4uY29tbWVudC1mb3JtLWNvbW1lbnQgbGFiZWx7XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206NHB4O1xyXG59XHJcblxyXG4ucmVxdWlyZWR7XHJcblx0Zm9udC13ZWlnaHQ6bm9ybWFsO1xyXG5cdG1hcmdpbi1sZWZ0OjNweDtcclxufVxyXG5cclxuLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPSd0ZXh0J10sIFxyXG4uY29tbWVudC1mb3JtIGlucHV0W3R5cGU9J2VtYWlsJ117XHJcblx0d2lkdGg6MzAwcHg7XHJcblx0bWF4LXdpZHRoOjk4JTtcclxuXHRtYXJnaW4tYm90dG9tOjNweDtcclxufVxyXG5cclxuLmZvcm0tYWxsb3dlZC10YWdze1xyXG5cdGJhY2tncm91bmQ6I2ZmZjtcclxuXHRmb250LXNpemU6MTRweDtcclxuXHRmb250LXNpemU6MS40cmVtOyBcclxuXHRib3JkZXI6MXB4IHNvbGlkICNmMmYyZjI7XHJcblx0Ym9yZGVyLXJhZGl1czo0cHg7XHJcblx0cGFkZGluZzoxMnB4O1xyXG59XHJcblxyXG4uZm9ybS1hbGxvd2VkLXRhZ3MgY29kZXtcclxuXHRmb250LXNpemU6MS4ycmVtOyBcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xMS4wIEpldHBhY2tcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKkluZmluaXRlIHNjcm9sbCovXHJcbi8qIEdsb2JhbGx5IGhpZGRlbiBlbGVtZW50cyB3aGVuIEluZmluaXRlIFNjcm9sbCBpcyBzdXBwb3J0ZWQgYW5kIGluIHVzZS4gKi9cclxuLmluZmluaXRlLXNjcm9sbCAucG9zdHMtbmF2aWdhdGlvbiwgLyogT2xkZXIgLyBOZXdlciBQb3N0cyBOYXZpZ2F0aW9uIChhbHdheXMgaGlkZGVuKSAqL1xyXG4uaW5maW5pdGUtc2Nyb2xsLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlciB7IC8qIFRoZW1lIEZvb3RlciAod2hlbiBzZXQgdG8gc2Nyb2xsaW5nKSAqL1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFdoZW4gSW5maW5pdGUgU2Nyb2xsIGhhcyByZWFjaGVkIGl0cyBlbmQgd2UgbmVlZCB0byByZS1kaXNwbGF5IGVsZW1lbnRzIHRoYXQgd2VyZSBoaWRkZW4gKHZpYSAubmV2ZXJlbmRpbmcpIGJlZm9yZSAqL1xyXG4uaW5maW5pdHktZW5kLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlciB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgICAgRmVhdHVyZWQgcG9zdHNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLmZlYXR1cmVkLXBvc3R7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIGJvcmRlcjoxcHggc29saWQgI2VlZWZlZjtcclxuICAgIGJvcmRlci1yYWRpdXM6NHB4O1xyXG4gICAgcGFkZGluZzo4cHg7XHJcbiAgICBtYXJnaW46MjVweCAyNXB4IDVyZW0gMjVweDtcclxuICAgIGJveC1zaGFkb3c6MCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA0KTtcclxuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246dG9wO1xyXG4gICAgYmFja2dyb3VuZDojZmZmOyAgICBcclxuICAgIHdpZHRoOjQwMHB4OyBcclxuICAgIGhlaWdodDoyNjdweDtcclxufVxyXG5cclxuLmZlYXR1cmVkLWlubmVye1xyXG4gICAgaGVpZ2h0OjEwMCU7XHJcbiAgICBib3JkZXItcmFkaXVzOjNweDtcclxuICAgIHBhZGRpbmc6MDtcclxuICAgXHRiYWNrZ3JvdW5kOiAjOWNjOWM3O1xyXG59XHJcblxyXG4ucG9zdC1oZWFkZXJ7XHJcbiAgICBwYWRkaW5nLXRvcDoyMHB4OyBcclxuICAgIHRleHQtYWxpZ246Y2VudGVyOyBcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG59XHJcblxyXG4uZmVhdHVyZWQtcG9zdCBoMiBhIHtcclxuXHRAaW5jbHVkZSBNb250c2VycmF0O1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Y29sb3I6ICMwMDAwMDA7XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1wb3N0IGgyIGE6aG92ZXIsXHJcbi5mZWF0dXJlZC1wb3N0IGgyIGE6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9XHJcblxyXG4udGFnLWxpc3R7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIG1hcmdpbi1sZWZ0OjEycHg7XHJcbiAgICBjb2xvcjojNjY2O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgIHBhZGRpbmctbGVmdDogMTJweDtcclxuICAgIGJvcmRlci1sZWZ0OiAjZDVkYmRlIDFweCBzb2xpZDtcclxufVxyXG5cclxuLmZlYXR1cmVkLXRleHQge1xyXG5cdEBpbmNsdWRlIE1vbnRzZXJyYXQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAyNSUgMCAwIDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmYWZhZmE7XHJcbiAgICBjb2xvcjogIzY2NjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgIG9wYWNpdHk6IDAuODY7XHJcbn1cclxuXHJcbi8qIEpldHBhY2sgU2hhcmluZyAqL1xyXG4uZmVhdHVyZWQtcG9zdCAuc2hhcmVkYWRkeSxcclxuLmZlYXR1cmVkLXBvc3QgLnNoYXJlZGFkZHkgLnNkLWxpa2UsXHJcbi5mZWF0dXJlZC1wb3N0IC5zaGFyZWRhZGR5IGgzLnNkLXRpdGxlLFxyXG4uZmVhdHVyZWQtcG9zdCAuc2hhcmVkYWRkeSAubGlrZXMtd2lkZ2V0LXBsYWNlaG9sZGVyXHJcbiB7XHJcblx0ZGlzcGxheTpub25lOyBcclxufVxyXG5cclxuLnNoYXJlZGFkZHl7bWFyZ2luLXRvcDoyNXB4O31cclxuLmVudHJ5LWZvb3RlciAuc2hhcmVkYWRkeSBoMy5zZC10aXRsZXtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGZvbnQtc2l6ZToxNHB4O1xyXG5cdGZvbnQtc2l6ZToxLjRyZW07XHJcbn1cclxuXHJcbi8qSmV0cGFjayBzaXRlIGxvZ28qL1xyXG4uc2l0ZS1sb2dve1xyXG5cdGNsZWFyOmJvdGg7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbToyNXB4O1xyXG59XHJcblxyXG4vKkpldHBhY2sgUG9ydGZvbGlvKi9cclxuLnRheC1qZXRwYWNrLXBvcnRmb2xpby10eXBlIC5wYWdlLXRpdGxlLFxyXG4ucG9zdC10eXBlLWFyY2hpdmUtamV0cGFjay1wb3J0Zm9saW8gLnBhZ2UtdGl0bGV7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0bWFyZ2luOjA7XHJcbn1cclxuXHJcbi50YXgtamV0cGFjay1wb3J0Zm9saW8tdGFnIC5mZWF0dXJlZC10ZXh0LFxyXG4udGF4LWpldHBhY2stcG9ydGZvbGlvLXR5cGUgLmZlYXR1cmVkLXRleHQsXHJcbi5wb3N0LXR5cGUtYXJjaGl2ZS1qZXRwYWNrLXBvcnRmb2xpbyAuZmVhdHVyZWQtdGV4dHtcclxuXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxufVxyXG5cclxuLnBvcnRmb2xpby10eXBlLWxpbmtzIGF7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4uamV0cGFjay1wb3J0Zm9saW8tdHlwZXtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tYm90dG9tOjhweDtcclxufVxyXG5cclxuLnBvc3QtdHlwZS1hcmNoaXZlLWpldHBhY2stdGVzdGltb25pYWwgLmNvbnRlbnQtYXJlYXtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHR3aWR0aDoxMDAlO1xyXG59XHJcblxyXG4ucG9zdC10eXBlLWFyY2hpdmUtamV0cGFjay10ZXN0aW1vbmlhbCAucGFnZS1oZWFkZXJ7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcbn1cclxuXHJcbi50ZXN0aW1vbmlhbC1lbnRyeS10aXRsZSxcclxuLmpldHBhY2stdGVzdGltb25pYWwgLmVudHJ5LXRpdGxlIHtcclxuXHRAaW5jbHVkZSBNb250c2VycmF0O1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRwYWRkaW5nLWJvdHRvbTogNHB4O1x0XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4OyBcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnRlc3RpbW9uaWFsLWVudHJ5LXRpdGxlIGE6Zm9jdXMsXHJcbi50ZXN0aW1vbmlhbC1lbnRyeS10aXRsZSBhOmhvdmVyeyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIWltcG9ydGFudDsgLypXZSBuZWVkIHRvIG92ZXJ3cml0ZSBKZXRwYWNrcyBzdHlsaW5nIGhlcmUuLi4qL31cclxuXHJcblxyXG4udGVzdGltb25pYWwtZW50cnktY29udGVudCxcclxuLmpldHBhY2stdGVzdGltb25pYWwgLmVudHJ5LWNvbnRlbnR7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRmb250LXNpemU6MmVtO1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdGZvbnQtc3R5bGU6aXRhbGljO1xyXG59XHJcblxyXG4udGVzdGltb25pYWwtZW50cnksXHJcbi5wb3N0LXR5cGUtYXJjaGl2ZS1qZXRwYWNrLXRlc3RpbW9uaWFsIC50eXBlLWpldHBhY2stdGVzdGltb25pYWx7XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luOjBweCA0MHB4IDE1cHggNDBweDtcclxuXHRwYWRkaW5nOjEycHg7XHJcblx0d2lkdGg6MjYlO1xyXG5cdHZlcnRpY2FsLWFsaWduOnRvcDtcclxufVxyXG5cclxuXHJcbi5wb3N0LXR5cGUtYXJjaGl2ZS1qZXRwYWNrLXRlc3RpbW9uaWFsIC5hdHRhY2htZW50LWJpbGxpZS1qZXRwYWNrLWxvZ297XHJcblx0Y2xlYXI6Ym90aDtcclxuXHRtYXJnaW46MCBhdXRvO1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcbn1cclxuXHJcbi50ZXN0aW1vbmlhbC1mZWF0dXJlZC1pbWFnZXtcdFxyXG5cdG1hcmdpbjoyMHB4IGF1dG8gIWltcG9ydGFudDsgLypXZSBuZWVkIHRvIG92ZXJ3cml0ZSBKZXRwYWNrcyBzdHlsaW5nIGhlcmUuLi4qL1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcbn1cclxuXHJcbi50ZXN0aW1vbmlhbC1mZWF0dXJlZC1pbWFnZSBpbWc6Zm9jdXMsXHJcbi50ZXN0aW1vbmlhbC1mZWF0dXJlZC1pbWFnZSBpbWc6aG92ZXJ7XHJcblx0Ym9yZGVyOjRweCBzb2xpZCAjOWNjOWM3ICFpbXBvcnRhbnQ7IC8qV2UgbmVlZCB0byBvdmVyd3JpdGUgSmV0cGFja3Mgc3R5bGluZyBoZXJlLi4uKi9cclxufVxyXG5cclxuXHJcbi50ZXN0aW1vbmlhbC1mZWF0dXJlZC1pbWFnZSBpbWcsXHJcbi5hdHRhY2htZW50LWJpbGxpZS1qZXRwYWNrLXRlc3RpbW9uaWFse1xyXG5cdHdpZHRoOiAxMDBweDtcclxuXHRoZWlnaHQ6IDEwMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblxyXG5cdGJvcmRlcjo0cHggc29saWQgI2ZmZiAhaW1wb3J0YW50OyAvKldlIG5lZWQgdG8gb3ZlcndyaXRlIEpldHBhY2tzIHN0eWxpbmcgaGVyZS4uLiovXHJcblx0Ym94LXNoYWRvdzogMHB4IDFweCA2cHggcmdiYSgwLDAsMCwwLjIpO1xyXG5cdG1hcmdpbjowIGF1dG87XHJcblx0ZGlzcGxheTpibG9jaztcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xMi4wIE1lZGlhXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLnBhZ2UtY29udGVudCBpbWcud3Atc21pbGV5LFxyXG4uZW50cnktY29udGVudCBpbWcud3Atc21pbGV5LFxyXG4uY29tbWVudC1jb250ZW50IGltZy53cC1zbWlsZXkge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLyogTWFrZSBzdXJlIGVtYmVkcyBhbmQgaWZyYW1lcyBmaXQgdGhlaXIgY29udGFpbmVycyAqL1xyXG5lbWJlZCxcclxuaWZyYW1lLFxyXG5vYmplY3Qge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xMi4xIENhcHRpb25zXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLndwLWNhcHRpb24ge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLndwLWNhcHRpb24gaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi53cC1jYXB0aW9uLXRleHQge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XHJcblx0bWFyZ2luOiAwLjgwNzVlbSAwO1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjEyLjIgR2FsbGVyaWVzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmdhbGxlcnkge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xyXG59XHJcblxyXG4uZ2FsbGVyeS1pdGVtIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luOjAuNCU7XHJcbn1cclxuXHJcbi5nYWxsZXJ5LWNvbHVtbnMtMiAuZ2FsbGVyeS1pdGVtIHtcclxuXHRtYXgtd2lkdGg6IDQ4JTtcclxufVxyXG5cclxuLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xyXG5cdG1heC13aWR0aDogMzEuMzMlO1xyXG59XHJcblxyXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XHJcblx0bWF4LXdpZHRoOiAyMyU7XHJcbn1cclxuXHJcbi5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcclxuXHRtYXgtd2lkdGg6IDE3JTtcclxufVxyXG5cclxuLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xyXG5cdG1heC13aWR0aDogMTQuNjYlO1xyXG59XHJcblxyXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbSB7XHJcblx0bWF4LXdpZHRoOiAxMi4yOCU7XHJcbn1cclxuXHJcbi5nYWxsZXJ5LWNvbHVtbnMtOCAuZ2FsbGVyeS1pdGVtIHtcclxuXHRtYXgtd2lkdGg6IDEwLjUlO1xyXG59XHJcblxyXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbSB7XHJcblx0bWF4LXdpZHRoOiA5LjExJTtcclxufVxyXG5cclxuLmdhbGxlcnktY2FwdGlvbiB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5zaW5nbGUtYXR0YWNobWVudCAuY3J1bWJzLFxyXG4uc2luZ2xlLWF0dGFjaG1lbnQgLnBvc3QtbmF2aWdhdGlvbntcclxuXHRkaXNwbGF5IDpub25lO1xyXG59XHJcblxyXG4uZ2FsbGVyeS1pY29uIGEgaW1ne3BhZGRpbmc6NHB4O31cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuMTMuMCBCQnByZXNzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiNiYnByZXNzLWZvcnVtcyxcclxuI2JicHJlc3MtZm9ydW1zIC5iYnAtYnJlYWRjcnVtYixcclxuI2JicHJlc3MtZm9ydW1zIC5iYnAtYm9keXtcclxuXHRmb250LXNpemU6MTZweDtcclxuXHRmb250LXNpemU6MS42cmVtO1xyXG59XHJcblxyXG4jYmJwcmVzcy1mb3J1bXMgLmJicC1mb3J1bS1pbmZvIC5iYnAtZm9ydW0tY29udGVudCwgXHJcbiNiYnByZXNzLWZvcnVtcyBwLmJicC10b3BpYy1tZXRhLFxyXG5kaXYuYmJwLXRlbXBsYXRlLW5vdGljZSBwe1xyXG5cdGZvbnQtc2l6ZToxNHB4O1xyXG5cdGZvbnQtc2l6ZToxLjRyZW07XHJcbn1cclxuXHJcbi5iYnAtc2VhcmNoLWZvcm0sXHJcbi5iYnAtYnJlYWRjcnVtYntcclxuXHRtYXJnaW4tYm90dG9tOjI1cHg7XHJcbn1cclxuXHJcbi5zdWJzY3JpcHRpb24tdG9nZ2xle1xyXG5cdGZsb2F0OnJpZ2h0O1xyXG5cdG1hcmdpbi1ib3R0b206MjVweDtcclxufVxyXG5cclxuLmJicHJlc3MgLmVudHJ5LWNvbnRlbnR7XHJcblx0d2lkdGg6OTAlO1xyXG59XHJcblxyXG4vKkhpZGUgYXZhdGFyIGNsdXR0ZXIuLi4qL1xyXG4uYmJwLXRvcGljLXN0YXJ0ZWQtYnkgLmJicC1hdXRob3ItYXZhdGFyLFxyXG4uYmJwLWZvcnVtLWRlc2NyaXB0aW9uIC5iYnAtYXV0aG9yLWF2YXRhcixcclxuLmJicC10b3BpYy1mcmVzaG5lc3MtYXV0aG9yIC5iYnAtYXV0aG9yLWF2YXRhcixcclxuLmJicC10b3BpYy1kZXNjcmlwdGlvbiAuYmJwLWF1dGhvci1hdmF0YXJcclxue1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG5cclxuLmJicC11c2VyLXNlY3Rpb257bWFyZ2luLXRvcDoxMHB4O31cclxuXHJcbiNiYnByZXNzLWZvcnVtcyAjYmJwLXNpbmdsZS11c2VyLWRldGFpbHMgI2JicC11c2VyLW5hdmlnYXRpb24gbGkuY3VycmVudCBhLFxyXG5zcGFuLmJicC1hZG1pbi1saW5rcyBhLFxyXG4uYmJwLWZvcnVtLWhlYWRlciBhLmJicC1mb3J1bS1wZXJtYWxpbmssIFxyXG4uYmJwLXRvcGljLWhlYWRlciBhLmJicC10b3BpYy1wZXJtYWxpbmssIFxyXG4uYmJwLXJlcGx5LWhlYWRlciBhLmJicC1yZXBseS1wZXJtYWxpbmt7XHJcblx0Y29sb3I6IzMzMztcclxufVxyXG5cclxuI2JicHJlc3MtZm9ydW1zICNiYnAteW91ci1wcm9maWxlIGZpZWxkc2V0IGlucHV0LCBcclxuI2JicHJlc3MtZm9ydW1zICNiYnAteW91ci1wcm9maWxlIGZpZWxkc2V0IHRleHRhcmVhe1xyXG5cdGJhY2tncm91bmQ6I2ZmZjtcclxufVxyXG5cclxuI2JicHJlc3MtZm9ydW1zIHRleHRhcmVhIHtcclxuXHRjb2xvcjogIzY2NjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxufVxyXG5cclxuI2JicHJlc3MtZm9ydW1zIHRleHRhcmVhOmZvY3VzIHtcclxuXHRjb2xvcjogIzExMTtcclxuXHRib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMTYyLCAxOTYsIDI1MSwgMSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgxNjIsIDE5NiwgMjUxLCAxKTtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xNC4wIFdvb2NvbW1lcmNlXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLypUaGlzIG5lZWRzIHRvIGNvcnJlc3BvbmQgd2l0aCAuY29udGVudC1hcmVhIHRvIHBsYXkgd2VsbCB3aXRoIHNpZGViYXJzLiovXHJcbi53b29jb21tZXJjZSAjY29udGFpbmVyIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRtYXJnaW46IDAgLTI1JSAwIDAlO1xyXG5cdHBhZGRpbmc6IDVweCAyJSAwIDIlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cdC53b29jb21tZXJjZSAjY29udGFpbmVyIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcjo6YmVmb3JlLCBcclxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOjpiZWZvcmUsIFxyXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2U6OmJlZm9yZSwgXHJcbi53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1lcnJvcjo6YmVmb3JlLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLWluZm86OmJlZm9yZSwgXHJcbi53b29jb21tZXJjZS1wYWdlIC53b29jb21tZXJjZS1tZXNzYWdlOjpiZWZvcmV7XHJcblx0cGFkZGluZzowOyAvKm1ha2Ugc3VyZSB0aGUgaWNvbiBpcyBwbGFjZWQgY29ycmVjdGx5Ki9cclxufVxyXG5cclxuLnByb2R1Y3QgLmF0dGFjaG1lbnQtc2hvcF9jYXRhbG9ne1xyXG5cdGJvcmRlcjozcHggc29saWQgI2ZmZjtcclxufVxyXG5cclxuLnByb2R1Y3QgYTpmb2N1cyAuYXR0YWNobWVudC1zaG9wX2NhdGFsb2d7XHJcblx0Ym9yZGVyOjNweCBzb2xpZCAjMzMzO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UgI2NvbnRlbnQgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwsIFxyXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwsIFxyXG4ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCwgXHJcbi53b29jb21tZXJjZS1wYWdlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVse1xyXG5cdGJvcmRlcjo0cHggc29saWQgI2ZmZjtcclxuXHRib3JkZXItcmFkaXVzOjRweDtcclxuXHRib3gtc2hhZG93OiAwcHggMXB4IDZweCByZ2JhKDAsMCwwLDAuMik7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcblx0XHJcblx0Lm1lbnUtdG9nZ2xlIHtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHRcclxuXHQubWVudS10b2dnbGU6YmVmb3JlIHtcclxuXHRcdGZvbnQtc2l6ZTogM2VtO1xyXG5cdH1cclxuXHRcclxuXHQubWVudS10b2dnbGU6YWN0aXZlIHtcclxuXHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLndvb2NvbW1lcmNlICNjb250ZW50IG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpLCBcclxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGksIFxyXG4ud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaXtcclxuXHRib3JkZXI6MXB4IHNvbGlkICNlN2U3ZTc7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZSAjY29udGVudCBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhLCBcclxuLndvb2NvbW1lcmNlICNjb250ZW50IG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4sIFxyXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYSwgXHJcbi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYSwgXHJcbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4sIFxyXG4ud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbntcclxuXHRwYWRkaW5nOi41ZW0gLjdlbTtcclxufVxyXG5cclxuLndvb2NvbW1lcmNlICNjb250ZW50IG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGE6Zm9jdXMsIFxyXG4ud29vY29tbWVyY2UgI2NvbnRlbnQgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYTpob3ZlciwgXHJcbi53b29jb21tZXJjZSAjY29udGVudCBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLmN1cnJlbnQsIFxyXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYTpmb2N1cywgXHJcbi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhOmhvdmVyLCBcclxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4uY3VycmVudCwgXHJcbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGE6Zm9jdXMsIFxyXG4ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhOmhvdmVyLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3Bhbi5jdXJyZW50LCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYTpmb2N1cywgXHJcbi53b29jb21tZXJjZS1wYWdlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGE6aG92ZXIsIFxyXG4ud29vY29tbWVyY2UtcGFnZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLmN1cnJlbnR7XHJcblx0Y29sb3I6IzAwMDtcclxuXHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxze1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlIHRoLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlIHRoLFxyXG4ud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlIHRkLCBcclxuLndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlIHRke1xyXG5cdHBhZGRpbmc6NnB4O1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xNS4wIFJlc3BvbnNpdmUgd2lkdGhzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xyXG5cdCBcclxuXHQuY29udGVudC1hcmVhe1xyXG5cdFx0d2lkdGg6MTAwJTsgXHJcblx0XHRtYXJnaW46MCBhdXRvO1xyXG5cdFx0cGFkZGluZzowO1xyXG5cdH1cclxuXHJcblx0LnNpdGUtY29udGVudCAud2lkZ2V0LWFyZWF7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG5cdFx0bWFyZ2luLXRvcDoxNXB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6MDtcclxuXHRcdG1hcmdpbi1yaWdodDowO1xyXG5cdFx0cGFkZGluZzowO1xyXG5cdH1cclxuXHJcblx0LnNpdGUtZm9vdGVyIC53aWRnZXQsXHJcblx0LndpZGdldHtcclxuXHRcdHdpZHRoOmF1dG87XHJcblx0XHRtaW4td2lkdGg6MzElO1xyXG5cdFx0bWFyZ2luLWxlZnQ6MDtcclxuXHRcdG1hcmdpbi1yaWdodDoyMHB4O1xyXG5cdH1cclxuXHJcblx0LnR5cGUtamV0cGFjay10ZXN0aW1vbmlhbCwgXHJcblx0LnBhZ2UtaGVhZGVyLCBcclxuXHQudHlwZS1wYWdlLCBcclxuXHQudHlwZS1qZXRwYWNrLXBvcnRmb2xpbywgXHJcblx0LnNlYXJjaC1yZXN1bHRzIC50eXBlLXBhZ2UsIFxyXG5cdC50eXBlLWF0dGFjaG1lbnQsIFxyXG5cdC5wb3N0eyBwYWRkaW5nOjIycHg7fVxyXG5cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcclxuXHQuc2l0ZS1mb290ZXIgLndpZGdldCxcclxuXHQud2lkZ2V0e1xyXG5cdFx0d2lkdGg6NDYlO1xyXG5cdH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcdFxyXG5cclxuXHQuc2l0ZS1kZXNjcmlwdGlvbntcclxuXHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdGZvbnQtc2l6ZTogMi4wcmVtO1xyXG5cdH1cclxuXHJcblx0LmVudHJ5LXRpdGxlLCAuZW50cnktdGl0bGUgYSB7XHJcblx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRmb250LXNpemU6IDIuNHJlbTtcclxuXHR9XHJcblxyXG5cclxuXHQuY29tbWVudC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMsXHJcblx0LnBvc3RzLW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyxcclxuXHQucG9zdC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMge1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHRcdG1hcmdpbjogMCAwIDEwcHggMDtcclxuXHR9XHJcblx0XHJcblx0LmNvbW1lbnQtbmF2aWdhdGlvbiAubmF2LW5leHQsXHJcblx0LnBvc3RzLW5hdmlnYXRpb24gLm5hdi1uZXh0LFxyXG5cdC5wb3N0LW5hdmlnYXRpb24gLm5hdi1uZXh0IHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG5cdH1cclxuXHJcblx0LmZlYXR1cmVkLXBvc3QgeyBcclxuXHRcdHdpZHRoOiA4MCU7XHJcblx0XHRtYXJnaW46MCBhdXRvIDQ1cHggYXV0bztcclxuXHR9XHJcblxyXG5cdCNhY3Rpb257XHJcblx0XHR3aWR0aDogODAlO1xyXG5cdFx0bWFyZ2luOjQ1cHggYXV0byA0NXB4IGF1dG87XHJcblx0fVxyXG5cclxuXHQuc2l0ZS1icmFuZGluZyBmb3Jte3dpZHRoOiA4MCU7fVxyXG5cclxuXHQuc2l0ZS1tYWlue3dpZHRoOiAxMDAlOyBwYWRkaW5nOjA7fVxyXG5cclxuXHQucG9zdHsgXHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjoyNXB4IDAgNDVweCAwO1xyXG5cdH1cclxuXHJcblx0LnR5cGUtcG9zdHt3aWR0aDoxMDAlO31cclxuXHJcblx0LnBvc3QtdHlwZS1hcmNoaXZlLWpldHBhY2stdGVzdGltb25pYWwgLnR5cGUtamV0cGFjay10ZXN0aW1vbmlhbHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOjI1cHggMCA0NXB4IDA7XHJcblx0fVxyXG5cclxuXHQuamV0cGFjay10ZXN0aW1vbmlhbCxcclxuXHQuamV0cGFjay10ZXN0aW1vbmlhbCAuZW50cnktY29udGVudCxcclxuXHQuc2luZ2xlLWpldHBhY2stcG9ydGZvbGlvIC5jb250ZW50LWFyZWEsIFxyXG5cdC5uby1zaWRlYmFyIC5jb250ZW50LWFyZWEsIFxyXG5cdC5lbnRyeS1mb290ZXIsIFxyXG5cdC5lbnRyeS1jb250ZW50e1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHR9XHJcblxyXG5cdC5wYWdlLXRpdGxle3RleHQtYWxpZ246Y2VudGVyO31cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHJcblx0LnRlc3RpbW9uaWFsLWVudHJ5e3dpZHRoOjEwMCUgIWltcG9ydGFudDt9XHJcblx0LmZlYXR1cmVkLXdyYXB7dGV4dC1hbGlnbjpjZW50ZXI7fVxyXG5cclxuXHQuc2l0ZS1mb290ZXIgLndpZGdldCxcclxuXHQud2lkZ2V0e1xyXG5cdFx0d2lkdGg6MTAwJTtcdFxyXG5cdFx0bWFyZ2luLXJpZ2h0OjA7XHJcblx0fVxyXG5cdFxyXG5cdC5zaXRlLXRpdGxlIHtmb250LXNpemU6IDNyZW07fVxyXG5cclxuXHQvKkluY3JlYXNlIHRleHQtc2l6ZSBvbiB0aW55IHNjcmVlbnMgKi9cclxuXHQubW9yZS1saW5rLFxyXG5cdC5lbnRyeS1tZXRhLCBcclxuXHQuZW50cnktZm9vdGVyIHtcclxuXHRcdGZvbnQtc2l6ZToxNnB4O1xyXG5cdFx0Zm9udC1zaXplOjEuNnJlbTtcclxuXHR9XHJcblx0LmNvbW1lbnQtZm9ybSxcclxuXHQucGFnZS1oZWFkZXIsIFxyXG5cdC50eXBlLXBhZ2UsXHJcblx0LmNvbW1lbnRzLWFyZWF7XHJcblx0XHR3aWR0aDoxMDAlOyBcclxuXHRcdG1hcmdpbjo0NXB4IDAgNDVweCAwO1xyXG5cdH1cclxuXHJcblx0LnNpbmdsZS1qZXRwYWNrLXRlc3RpbW9uaWFsIC5jb250ZW50LWFyZWEsXHJcblx0LnBhZ2UgLmNvbnRlbnQtYXJlYSxcclxuXHQuc2luZ2xlLWpldHBhY2stcG9ydGZvbGlvIC5jb250ZW50LWFyZWEsIFxyXG5cdC5uby1zaWRlYmFyIC5jb250ZW50LWFyZWEge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdGZsb2F0OiBub25lO1xyXG5cdH1cclxufSIsIiR6LWluZGV4LXNob3AtZnJvbnQtb3ZlcmxheS1iYWNrZ3JvdW5kOiAxMDtcclxuJHotaW5kZXgtc2hvcC1mcm9udC1vdmVybGF5LXRleHQ6IDExO1xyXG4kei1pbmRleC1oYW1tZXJoZWFkLWNoZWNrb3V0OiA5OTk7XHJcbiR6LWluZGV4LW1vYmlsZS1tZW51OiA5NTAwO1xyXG4kei1pbmRleC1tb2JpbGUtaGFtYnVyZ2VyOiA5NjAwO1xyXG4kei1pbmRleC13b29jb21tZXJjZS1saWdodGJveC1jbG9zZTogOTk5OTsiLCIvLyBFbGVtZW50cyDigJMgc3R5bGluZyBmb3IgYmFyZSBIVE1MIGVsZW1lbnRzXHJcblxyXG5odG1se1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuYm9keSB7XHJcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcblxyXG5wIHtcclxuXHRcclxuXHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHR9XHJcbn0iLCIvLyBHbG9iYWwgY2xhc3MtYmFzZWQgc2VsZWN0b3JzLCBwdXQgYWxsIGJhcmUgZWxlbWVudCBzdHlsaW5nIGluIGVsZW1lbnRzLnNjc3NcclxuXHJcbiNwcmltYXJ5IHtcclxuXHRtYXgtd2lkdGg6IDk5MHB4O1xyXG59XHJcblxyXG4jc2l0ZS1sb2dvIHtcclxuXHRcclxuXHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdG1heC13aWR0aDogNDUwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ucGFnZS10aXRsZSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmVudHJ5LXRpdGxlIHtcclxuXHRtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2Uge1xyXG5cdFxyXG5cdGEuYnV0dG9uIHtcclxuXHRcdEBpbmNsdWRlIGJsYWNrLWJ1dHRvbjtcclxuXHR9XHJcbn0iLCIuYWJvdXQtcGFnZSB7XHJcblx0XHJcblx0aDEge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdFxyXG5cdGFydGljbGUge1xyXG5cdFx0JHBhZGRpbmc6IDMwcHg7XHJcblx0XHRwYWRkaW5nOiAkcGFkZGluZztcclxuXHRcdG1heC13aWR0aDogMTAwMHB4O1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRcclxuXHRcdC5lbnRyeS1jb250ZW50IHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQuZmVhdHVyZWQtaW1hZ2Uge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldCB7XHJcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0bWF4LWhlaWdodDogNzAwcHg7XHJcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQudGhlLWNvbnRlbnQge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldCB7XHJcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC50ZXh0LWNvbnRlbnQge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAkcGFkZGluZyk7XHJcblx0XHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdCo6bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG59IiwiJHRhYmxldE1lbnVGb250U2l6ZTogMTRweDtcclxuXHJcbmhlYWRlciB7XHJcblx0XHJcblx0Lm1haW4tbmF2aWdhdGlvbiB7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSB0YWJsZXQtb25seSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMjBweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMjBweDtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIGRlc2t0b3Age1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMjIwcHg7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjIwcHg7XHJcblx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQmLnRvZ2dsZWQge1xyXG5cdFx0XHRcclxuXHRcdFx0Lm1lbnUtbWVudS1jb250YWluZXIge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdGhlaWdodDogMTAwdmg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0ei1pbmRleDogJHotaW5kZXgtbW9iaWxlLWhhbWJ1cmdlcjtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdGxlZnQ6IDJweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0Ji5tZW51LXRvZ2dsZSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5tZW51LW1lbnUtY29udGFpbmVyIHtcclxuXHRcdFx0JG1lbnVPcGVuU3BlZWQ6IDM1MG1zO1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdFx0XHR6LWluZGV4OiAkei1pbmRleC1tb2JpbGUtbWVudTtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRcdFx0aGVpZ2h0OiAwO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGhlaWdodCAkbWVudU9wZW5TcGVlZCBlYXNlLWluLW91dDtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0I21lbnUtbWVudSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAkbWVudU9wZW5TcGVlZDtcclxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlO1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogNDBweCAxNXB4O1xyXG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0dWwge1x0XHJcblx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdFx0XHRtYXJnaW46YXV0bztcclxuXHRcdFx0XHRwYWRkaW5nOjA7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiA4cHg7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1vbmx5IHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRhIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogNnB4IDhweCA2cHggOHB4O1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwMDtcclxuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjJweDtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHRhYmxldC1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6ICR0YWJsZXRNZW51Rm9udFNpemU7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0LnNpdGUtYnJhbmRpbmcge1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDYwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5oYW1tZXJoZWFkLWNoZWNrb3V0IHtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogMjBweDtcclxuXHRcdFx0dG9wOiAxNHB4O1xyXG5cdFx0XHR3aWR0aDogMTIwcHg7XHJcblx0XHRcdHotaW5kZXg6ICR6LWluZGV4LWhhbW1lcmhlYWQtY2hlY2tvdXQ7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIGRlc2t0b3Age1xyXG5cdFx0XHR3aWR0aDogMjAwcHg7XHJcblx0XHRcdHRvcDogMjVweDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdFxyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuYmxpbmctc2hhcmstY29udGFpbmVyIHtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LmJsaW5nLXNoYXJrIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LmJsaW5nLXNoYXJrLWhvdmVyIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdGEge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDIwcHg7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdFx0XHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcblx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiAxNXB4O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuXHRcdFx0XHRib3gtc2hhZG93OiAwIDZweCAjYWFhO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC8vIGJvcmRlcjogMXB4IHNvbGlkICM5RkMyRDY7XHJcblx0XHRcdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogI0I4RDBERTtcclxuXHRcdFx0XHQvLyBib3gtc2hhZG93OiAwIDZweCAjNjc5MkFCO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6YWN0aXZlIHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdFx0XHR0b3A6IDZweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5ibGluZy1zaGFyay1jb250YWluZXIge1xyXG5cdFx0XHRcdGhlaWdodDogMTYwcHg7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5ibGluZy1zaGFyaywgLmJsaW5nLXNoYXJrLWhvdmVyIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAyNTBweDtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuYmxpbmctc2hhcmsge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltZy9ibGluZy1zaGFyay1jb2xvci5zdmcpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuYmxpbmctc2hhcmstaG92ZXIge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1nL2JsaW5nLXNoYXJrLWNvbG9yLWhvdmVyLnN2Zyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHRzcGFuIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBNb250c2VycmF0O1xyXG5cdFx0XHRcdGNvbG9yOiBibGFjaztcclxuXHRcdFx0XHRmb250LXNpemU6IDIycHg7XHJcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgdGFibGV0LW9ubHkge1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkdGFibGV0TWVudUZvbnRTaXplO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi8vIFNldHRpbmdzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRoYW1idXJnZXItcGFkZGluZy14OiAxNXB4O1xyXG4kaGFtYnVyZ2VyLXBhZGRpbmcteTogMTVweDtcclxuJGhhbWJ1cmdlci1sYXllci13aWR0aDogNDBweDtcclxuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ6IDVweDtcclxuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nOiA2cHg7XHJcbiRoYW1idXJnZXItbGF5ZXItY29sb3I6ICMwMDA7XHJcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1czogMnB4O1xyXG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk6IDE7XHJcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xyXG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XHJcblxyXG4vLyBIYW1idXJnZXJcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5oYW1idXJnZXIge1xyXG5cdHBhZGRpbmc6ICRoYW1idXJnZXItcGFkZGluZy15ICRoYW1idXJnZXItcGFkZGluZy14O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xyXG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xyXG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcblxyXG5cdC8vIE5vcm1hbGl6ZSAoPGJ1dHRvbj4pXHJcblx0Zm9udDogaW5oZXJpdDtcclxuXHRjb2xvcjogaW5oZXJpdDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRvcGFjaXR5OiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5oYW1idXJnZXItaW5uZXIsXHJcblx0XHQuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXHJcblx0XHQuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmhhbWJ1cmdlci1ib3gge1xyXG5cdHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xyXG5cdGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uaGFtYnVyZ2VyLWlubmVyIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0b3A6IDUwJTtcclxuXHRtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yO1xyXG5cclxuXHQmLFxyXG5cdCY6OmJlZm9yZSxcclxuXHQmOjphZnRlciB7XHJcblx0XHR3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcclxuXHRcdGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xyXG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XHJcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcclxuXHR9XHJcblxyXG5cdCY6OmJlZm9yZSxcclxuXHQmOjphZnRlciB7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG5cclxuXHQmOjpiZWZvcmUge1xyXG5cdFx0dG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XHJcblx0fVxyXG5cclxuXHQmOjphZnRlciB7XHJcblx0XHRib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi8qXHJcbiAqIFNxdWVlemVcclxuICovXHJcbi5oYW1idXJnZXItLXNxdWVlemUge1xyXG5cdC5oYW1idXJnZXItaW5uZXIge1xyXG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xyXG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG5cclxuXHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgZWFzZTtcclxuXHRcdH1cclxuXHJcblx0XHQmOjphZnRlciB7XHJcblx0XHRcdHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdC5oYW1idXJnZXItaW5uZXIge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xyXG5cdFx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcblxyXG5cdFx0XHQmOjpiZWZvcmUge1xyXG5cdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjo6YWZ0ZXIge1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCJmb290ZXIge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHRcclxuXHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XHJcblx0fVxyXG5cdFxyXG5cdC53aWRnZXQtYXJlYSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFxyXG5cdFx0LnNpdGUtZm9vdGVyIC53aWRnZXR7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDE4cHggMCAxOHB4O1xyXG5cdFx0XHRtYXJnaW46IDAgMC41ZW0gIDQ1cHggMC41ZW07XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5zb2NpYWwge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHJcblx0XHRsaSB7XHJcblx0XHRcdHdpZHRoOiAzMnB4O1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmpld2Vscnktc2hvcCB7XHJcblx0bWF4LXdpZHRoOiAxMjAwcHg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHJcblx0Lndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0aDEge1xyXG5cdFx0Ly9kaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHRcclxuXHQudGVybS1kZXNjcmlwdGlvbiB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHRcclxuXHQuYWJvdmUtc2hvcC1zZWN0aW9uIHtcclxuXHRcdFxyXG5cdFx0LnByb2R1Y3QtY2F0ZWdvcmllcyB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRtYXJnaW46IDAgMCAyMHB4IDA7XHJcblx0XHRcdFxyXG5cdFx0XHRsaSB7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdG1hcmdpbjogMCAyMHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xyXG5cdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdH1cclxuXHRcclxuXHQvLyBSZW1vdmUgdG8gc2hvdyBTb3J0IEJ5IGRyb3Bkb3duXHJcblx0Lndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4vLyBTaG9wcGluZyBjYXJ0XHJcbi53b29jb21tZXJjZSB7XHJcblx0XHJcblx0LmNhcnQge1xyXG5cdFx0XHJcblx0XHQuY291cG9uIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuc2hvcC1mcm9udCB7XHJcblx0XHJcblx0JGNvbHVtblBhZGRpbmc6IDQwcHg7XHJcblx0JG1vYmlsZUNvbHVtblBhZGRpbmc6IDIwcHg7XHJcblx0XHJcblx0QG1peGluIGZvbnQtc3R5bGUge1xyXG5cdFx0QGluY2x1ZGUgTW9udHNlcnJhdDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAzcHg7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRmb250LXNpemU6IDU2cHg7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRmb250LXNpemU6IDIycHg7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdGEge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHJcblx0XHRcdC5qZXdlbHJ5LXBhZ2UtbGluayB7XHJcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5vdmVybGF5LCAudGV4dCB7XHJcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQub3ZlcmxheSB7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNCk7XHJcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMzUwbXMgZWFzZTtcclxuXHRcdFx0ei1pbmRleDogJHotaW5kZXgtc2hvcC1mcm9udC1vdmVybGF5LWJhY2tncm91bmQ7XHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLCAuMjUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5qZXdlbHJ5LXBhZ2UtbGluayB7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xyXG5cdFx0XHRcclxuXHRcdFx0LnRleHQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc3R5bGU7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHotaW5kZXg6ICR6LWluZGV4LXNob3AtZnJvbnQtb3ZlcmxheS10ZXh0O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGNvbG9yIDM1MG1zIGVhc2U7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdGJvdHRvbTogMjBweDtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBpbmNsdWRlIHRhYmxldCB7XHJcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0Ji5kdXN0aW4sICYuaGlsbGFyeSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0Lm92ZXJsYXkge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwwLDAsIC45KSAwJSwgcmdiYSgwLDAsMCwuNSkgNjAlLCByZ2JhKDAsMCwwLDApIDEwMCUpO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnRleHQge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMHB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0Ji5hbGwge1xyXG5cdFx0XHRcdGhlaWdodDogMjAwcHg7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LnRleHQge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNjBweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQubW9iaWxlLXRpdGxlIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udC1zdHlsZTtcclxuXHRcdFx0Y29sb3I6IGJsYWNrO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5wcm9maWxlLXBpY3Mge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdG1hcmdpbi10b3A6ICRjb2x1bW5QYWRkaW5nO1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdG1hcmdpbi10b3A6ICRtb2JpbGVDb2x1bW5QYWRkaW5nO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRhIHtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRoZWlnaHQ6IDMwMHB4O1xyXG5cdFx0XHRcdCRwYWRkaW5nOiAkbW9iaWxlQ29sdW1uUGFkZGluZy8yOyBcclxuXHRcdFx0XHR3aWR0aDogY2FsYyg1MCUgLSAjeyRwYWRkaW5nfSk7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRtb2JpbGVDb2x1bW5QYWRkaW5nO1xyXG5cdFx0XHRcdH1cdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0XHRcdGhlaWdodDogNjAwcHg7XHJcblx0XHRcdFx0JHBhZGRpbmc6ICRjb2x1bW5QYWRkaW5nLzI7XHJcblx0XHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gI3skcGFkZGluZ30pO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAkY29sdW1uUGFkZGluZztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCJkaXYucHBfd29vY29tbWVyY2Uge1xyXG5cdFxyXG5cdC5wcHQge1xyXG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHRcclxuXHQucHBfY29udGVudF9jb250YWluZXIge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdFxyXG5cdFx0LnBwX2xlZnQge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5wcF9yaWdodCB7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5wcF9leHBhbmQge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5wcF9nYWxsZXJ5IHsgLy8gaGlkZSBob3ZlciB0aHVtYm5haWxzXHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnBwX2NvbnRlbnQge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRcdFxyXG5cdFx0XHQucHBfcHJldmlvdXMsIC5wcF9uZXh0IHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDUwcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0XHRvcGFjaXR5OiAuNTtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmLnBwX3ByZXZpb3VzIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1nL2NhcmV0LWxlZnQuc3ZnKTtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMjBweCBjZW50ZXI7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxMHB4IGNlbnRlcjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0Ji5wcF9uZXh0IHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1nL2NhcmV0LXJpZ2h0LnN2Zyk7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAyMHB4IGNlbnRlcjtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5wcF9ob3ZlckNvbnRhaW5lciB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHRcdFx0XHRcdGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQucHBfbmV4dCB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdC5wcF9wcmV2aW91cyB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQkbG9hZGVyLWljb24tc2l6ZTogNTBweDtcclxuXHRcdFx0LnBwX2xvYWRlckljb24ge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRsZWZ0OiA1MCU7XHJcblx0XHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdFx0aGVpZ2h0OiAkbG9hZGVyLWljb24tc2l6ZTtcclxuXHRcdFx0XHR3aWR0aDogJGxvYWRlci1pY29uLXNpemU7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC0xMDAlKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdGhlaWdodDogJGxvYWRlci1pY29uLXNpemU7XHJcblx0XHRcdFx0XHR3aWR0aDogJGxvYWRlci1pY29uLXNpemU7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0XHRcdC8vYW5pbWF0aW9uOiBzcGluIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoYXNzZXRzL2ltZy9oYW1tZXJoZWFkLWxvYWRlci5zdmcpIGNlbnRlciBjZW50ZXI7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQucHBfZGV0YWlscyB7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xyXG5cdFx0XHRcclxuXHRcdFx0LnBwX25hdiB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LnBwX3BsYXkge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LnBwX2Fycm93X3ByZXZpb3VzLCAucHBfYXJyb3dfbmV4dCB7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxcHg7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdCYucHBfYXJyb3dfcHJldmlvdXMge1xyXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltZy9sZWZ0LWFycm93LnN2Zyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdCYucHBfYXJyb3dfbmV4dCB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1nL3JpZ2h0LWFycm93LnN2Zyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5jdXJyZW50VGV4dEhvbGRlciB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5wcF9jbG9zZSB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGFzc2V0cy9pbWcvY2xvc2Uuc3ZnKTtcclxuXHRcdFx0XHR3aWR0aDogMjRweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDI0cHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHRcdFx0cmlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0dG9wOiAyMHB4O1xyXG5cdFx0XHRcdHotaW5kZXg6ICR6LWluZGV4LXdvb2NvbW1lcmNlLWxpZ2h0Ym94LWNsb3NlO1xyXG5cdFx0XHRcdG9wYWNpdHk6IC41O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdHJpZ2h0OiAtMTVweDtcclxuXHRcdFx0XHRcdHRvcDogLTE1cHg7XHJcblx0XHRcdFx0XHR3aWR0aDogNzVweDtcclxuXHRcdFx0XHRcdGhlaWdodDogNzVweDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTZweDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcclxuXHRcdFx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0Y29udGVudDogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuamV3ZWxyeS1zaG9wIHtcclxuXHRcclxuXHQuYWJvdmUtc2hvcC1zZWN0aW9uIHtcclxuXHRcdFxyXG5cdFx0LnByb2R1Y3QtY2F0ZWdvcmllcyB7XHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5zd2lwZXItc2xpZGUge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZTtcclxuXHRcdFx0XHRtYXJnaW46IDEwcHg7XHJcblxyXG5cdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53b29jb21tZXJjZS1yZXN1bHQtY291bnQge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0dWwucHJvZHVjdHMge1xyXG5cdFx0XHJcblx0XHRsaS5wcm9kdWN0IHtcclxuXHRcdFx0XHJcblx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRmbG9hdDogbm9uZTtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0aW1nIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5wcmljZSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0LmFtb3VudCB7XHJcblx0XHRcdFx0XHRjb2xvcjogYmxhY2s7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQuYWRkX3RvX2NhcnRfYnV0dG9uIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5qZXdlbHJ5LXNob3Age1xyXG5cdFxyXG5cdC53b29jb21tZXJjZS1lcnJvciwgLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xyXG5cdFx0QGluY2x1ZGUgYWxlcnQ7XHJcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHR9XHJcblx0XHJcblx0ZGl2LnByb2R1Y3Qge1xyXG5cdFx0XHJcblx0XHRkaXYuc3VtbWFyeSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHJcblx0XHRcdCYuZW50cnktc3VtbWFyeSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAgMTAwcHggMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnByaWNlIHtcclxuXHRcdFx0XHJcblx0XHRcdC5hbW91bnQge1x0XHJcblx0XHRcdFx0Y29sb3I6IGJsYWNrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdHAuc3RvY2sge1xyXG5cdFx0XHRjb2xvcjogYmxhY2s7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdFtpdGVtcHJvcD1cImRlc2NyaXB0aW9uXCJdIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0XHJcblx0XHRcdHAge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnByb2R1Y3RfbWV0YSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5xdWFudGl0eSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdGJ1dHRvbi5idXR0b24uYWx0LnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xyXG5cdFx0XHRAaW5jbHVkZSBibGFjay1idXR0b247XHJcblx0XHRcdFxyXG5cdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0Lndvb2NvbW1lcmNlLXRhYnMgeyAvLyBoaWRlIHJldmlldyBmb3JtcyB0aGF0IGFyZSB2aXNpYmxlIG9uIHNvbWUgcmFuZG9tIHByb2R1Y3QgcGFnZXNcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59XHJcbiIsIi5yZWxhdGVkIHtcclxuXHRcclxuXHR1bC5wcm9kdWN0cyB7XHJcblx0XHRcclxuXHRcdGxpLnByb2R1Y3Qge1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdHdpZHRoOiA0OCU7XHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdFx0Y2xlYXI6IGJvdGg7XHJcblx0XHRcdFx0bWFyZ2luOiAwIDAgMjBweCAwO1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDJuKSB7XHJcblx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQuYWRkX3RvX2NhcnRfYnV0dG9uIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLndvb2NvbW1lcmNlLWNhcnQge1xyXG5cdFxyXG5cdG1haW4ge1xyXG5cdFx0XHJcblx0XHRhcnRpY2xlIHtcclxuXHRcdFx0XHJcblx0XHRcdGgxIHtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQud29vY29tbWVyY2Uge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC53b29jb21tZXJjZS1pbmZvLCAud29vY29tbWVyY2UtbWVzc2FnZSwgLndvb2NvbW1lcmNlLWVycm9yIHtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC1jb2xvcjogYmxhY2s7XHJcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuXHRcdFx0XHRcdGJvcmRlci10b3Atd2lkdGg6IDNweDtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogYmxhY2s7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHR0YWJsZS5jYXJ0IHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuY2FydF9pdGVtIHtcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnByb2R1Y3QtcmVtb3ZlIHtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHQucmVtb3ZlIHtcclxuXHRcdFx0XHRcdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltZy9jbG9zZS1yZWQuc3ZnKTtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG5cdFx0XHRcdFx0XHRcdG9wYWNpdHk6IC41O1xyXG5cdFx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGFzc2V0cy9pbWcvdHJhc2gtY2FuLnN2Zyk7XHJcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdFx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnByb2R1Y3QtdGh1bWJuYWlsIHtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0aW1nIHtcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMzAwcHg7XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAyMHB4IGF1dG87XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnByb2R1Y3QtbmFtZSB7XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdFx0XHRcdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnF1YW50aXR5IHtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdC5xdHkge1xyXG5cdFx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHRhYmxldCB7XHJcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0dGQuYWN0aW9ucyB7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHQuYnV0dG9uIHtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYmxhY2stYnV0dG9uO1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0Jlt0eXBlPVwic3VibWl0XCJdIHtcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBtb2JpbGUtb25seSB7XHJcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSB0YWJsZXQge1xyXG5cdFx0XHRcdFx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0LnBvbGljaWVzIHtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC50ZXh0d2lkZ2V0IHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGgyLCBoMyB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAwIDEwcHggMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0cCB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0dWwge1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcclxuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0LmNhcnQtY29sbGF0ZXJhbHMge1xyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdC5jYXJ0X3RvdGFscyB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGgyIHtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LnNob3BfdGFibGUge1xyXG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0LnNoaXBwaW5nIHtcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0XHQud29vY29tbWVyY2Utc2hpcHBpbmctY2FsY3VsYXRvciB7XHJcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdFx0XHQuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdFx0XHRcdC5idXR0b24ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJsYWNrLWJ1dHRvbjtcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQud2MtcHJvY2VlZC10by1jaGVja291dCB7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAzMHB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdC5idXR0b24ge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBibGFjay1idXR0b247XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jaGVja291dCB7XHJcblx0XHJcblx0bWFpbiB7XHJcblx0XHRcclxuXHRcdGFydGljbGUge1xyXG5cdFx0XHRcclxuXHRcdFx0aDEge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC5jaGVja291dCB7IC8vIGZvcm1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQuY29sLTEsIC5jb2wtMiB7XHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBkZXNrdG9wIHtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDQ4JTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0LmZvcm0tcm93LWZpcnN0LCAuZm9ybS1yb3ctbGFzdCB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRcdFx0XHRmbG9hdDogbm9uZTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQud29vY29tbWVyY2UtaW5mbywgLndvb2NvbW1lcmNlLW1lc3NhZ2UsIC53b29jb21tZXJjZS1lcnJvciB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGJvcmRlci10b3AtY29sb3I6IGJsYWNrO1xyXG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XHJcblx0XHRcdFx0XHRib3JkZXItdG9wLXdpZHRoOiAzcHg7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6IGJsYWNrO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQjYmlsbGluZ19jb21wYW55X2ZpZWxkLCAjc2hpcHBpbmdfY29tcGFueV9maWVsZCB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQud29vY29tbWVyY2UtaW52YWxpZCB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGlucHV0LmlucHV0LXRleHQge1xyXG5cdFx0XHRcdFx0XHRib3JkZXItd2lkdGg6IDFweDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0Lndvb2NvbW1lcmNlLXZhbGlkYXRlZCB7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGlucHV0LmlucHV0LXRleHQge1xyXG5cdFx0XHRcdFx0XHRib3JkZXItY29sb3I6IGluaGVyaXQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdHNlbGVjdCwgaW5wdXQsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWNob2ljZSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmb3JtLWlucHV0LXN0eWxlO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiA0NnB4O1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA5cHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA5cHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdHRleHRhcmVhIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGZvcm0taW5wdXQtc3R5bGU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdFxyXG5cdFx0XHRcdGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAyMHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHtcclxuXHRcdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1vYmlsZS1vbmx5IHtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQjcGF5bWVudCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmNmY3O1xyXG5cdFx0Ym9yZGVyLXRvcC1jb2xvcjogYmxhY2s7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuXHRcdGJvcmRlci10b3Atd2lkdGg6IDNweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHRcclxuXHRcdHVsLnBheW1lbnRfbWV0aG9kcyB7XHJcblx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcclxuXHRcdFx0XHJcblx0XHRcdC5wYXltZW50X2JveCB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0LmFib3V0X3BheXBhbCB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0LnBsYWNlLW9yZGVyIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDA7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5idXR0b24sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG5cdFx0XHRAaW5jbHVkZSBibGFjay1idXR0b247XHJcblx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdFx0XHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZSAge1xyXG5cdFxyXG5cdC53b29jb21tZXJjZS1pbmZvLCAud29vY29tbWVyY2UtZXJyb3IsIC53b29jb21tZXJjZS1tZXNzYWdlIHtcclxuXHRcdEBpbmNsdWRlIGFsZXJ0O1xyXG5cdH1cclxuXHRcclxuXHQuY2hlY2tvdXRfY291cG9uIHtcclxuXHRcdFxyXG5cdFx0LmZvcm0tcm93IHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcclxuXHRcdFx0aW5wdXQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZvcm0taW5wdXQtc3R5bGU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcblx0XHRcdEBpbmNsdWRlIGJsYWNrLWJ1dHRvbjtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgbW9iaWxlLW9ubHkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDIwcHggMTBweDtcclxuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0Zm9ybSB7XHJcblx0XHRcclxuXHRcdC5mb3JtLXJvdyB7XHJcblx0XHRcdFxyXG5cdFx0XHQucmVxdWlyZWQge1xyXG5cdFx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XHJcblx0XHRcdFx0Y29sb3I6ICNhMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvLyBWZXJ5IHNwZWNpZmljIGhlbHBlciBjbGFzc2VzIHRoYXQgY2FuIG92ZXJyaWRlIGFueXRoaW5nXHJcblxyXG4ubm8tcGFkZGluZyB7XHJcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGFBQWE7QUVBYjs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFHRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dFQXdCZ0U7QUFFaEU7O2dFQUVnRTtBQUNoRSxBQUFBLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU07QUFDakIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxHQUFHO0FBQzlDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUk7QUFDMUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJO0FBQ3hDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUc7QUFDeEMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO0FBQ3RCLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU07QUFDN0IsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztFQUMvQyxNQUFNLEVBQUUsQ0FBQztFQUNULFdBQVcsRUFBRSxPQUFPO0VBQ3BCLFNBQVMsRUFBRSxJQUFJO0VBQ2Ys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 */
