/*
Theme Name: Education LMS Pro
Theme URI: https://www.filathemes.com/download/education-lms/
Author: FilaThemes
Author URI: https://www.filathemes.com
Description: Education LMS is a simple, clean, responsive and user-friendly education WordPress theme specially designed for university, school, college or other educational institutions. The Education LMS theme has powerful theme customization options such as custom header media, logo, custom menu, social icons, featured slider, courses, title bar, news, and more. It makes your website more engaging and informative. Especially, the Education LMS theme works excellent with Elementor and LearnPress plugins, help you easily create flexible content and sell the course online. For more details, check out Theme Instructions at http://docs.filathemes.com/education-lms/ and demo at https://www.filathemes.com/downloads/education-lms/
Version: 0.0.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: education-lms
Tags: education, news, blog, custom-background, custom-logo, custom-header, custom-menu, featured-images, threaded-comments, translation-ready, right-sidebar, left-sidebar, featured-image-header, footer-widgets

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Education LMS is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

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

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

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

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

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

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

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

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: "Open Sans", sans-serif;
  font-size: 15px;
  line-height: 1.5; }

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

p {
  margin-bottom: 1.5em; }

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

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

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

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

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

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

big {
  font-size: 125%; }

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

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

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

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

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

ul {
  list-style: disc;
  padding-left: 15px; }

ol {
  list-style: decimal; }

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

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

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

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

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

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: none;
  border-radius: 0;
  background: #ffb606;
  box-shadow: none;
  color: #fff;
  padding: 13px 20px;
  cursor: pointer;
  text-shadow: none;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 2px; }
  button:hover, button:active, button:focus,
  input[type="button"]:hover,
  input[type="button"]:active,
  input[type="button"]:focus,
  input[type="reset"]:hover,
  input[type="reset"]:active,
  input[type="reset"]:focus,
  input[type="submit"]:hover,
  input[type="submit"]:active,
  input[type="submit"]:focus {
    background: #404040;
    color: #fff; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #404040;
  border: 1px solid #e3e3e3;
  border-radius: 3px;
  background: #fff;
  font-size: 13px;
  margin: 0 0 10px;
  padding: 12px;
  width: 100%; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  input[type="number"]:focus,
  input[type="tel"]:focus,
  input[type="range"]:focus,
  input[type="date"]:focus,
  input[type="month"]:focus,
  input[type="week"]:focus,
  input[type="time"]:focus,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:focus,
  input[type="color"]:focus,
  textarea:focus {
    color: #000;
    outline: none;
    border: 1px solid #a9a9a9; }

select {
  border: 1px solid #ccc; }

textarea {
  width: 100%; }

form label {
  font-size: 14px;
  font-weight: normal;
  color: #404040;
  margin: 5px 0;
  text-transform: uppercase; }

.lp-archive-courses form[name="search-course"] .search-course-button {
  height: 45px;
  top: 0;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #404040; }
  a:visited {
    color: #404040; }
  a:hover, a:focus, a:active {
    color: #ffb606; }
  a:focus {
    outline: none; }
  a:hover, a:active {
    outline: 0; }

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%; }
  .main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0; }
    .main-navigation ul ul {
      box-shadow: 0 1px 5px -1px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0 1px 5px -1px rgba(0, 0, 0, 0.3);
      float: left;
      background: #fff;
      position: absolute;
      top: 100%;
      left: -999em;
      z-index: 99999;
      min-width: 12em; }
      .main-navigation ul ul ul {
        left: -999em;
        top: 0; }
      .main-navigation ul ul li {
        white-space: nowrap;
        display: block;
        width: 100%;
        margin-top: 0; }
        .main-navigation ul ul li:hover > ul,
        .main-navigation ul ul li.focus > ul {
          left: 100%; }
      .main-navigation ul ul a {
        text-transform: none;
        padding: 10px 14px;
        font-size: 13px;
        font-weight: 400;
        color: #404040; }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li.focus > ul {
      left: auto; }
  .main-navigation li {
    float: left;
    position: relative;
    padding: 0;
    margin-top: 8px;
    z-index: 20; }
    .main-navigation li:last-child a {
      padding-right: 0; }
  .main-navigation a {
    display: block;
    text-decoration: none;
    padding: 15px 15px 40px;
    text-transform: uppercase;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    color: #404040; }
    .main-navigation a:hover {
      color: #ffb606; }
  .main-navigation .current_page_item > a,
  .main-navigation .current-menu-item > a,
  .main-navigation .current_page_ancestor > a,
  .main-navigation .current-menu-ancestor > a {
    color: #ffb606; }

.nav-form {
  background: rgba(0, 0, 0, 0);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  transition: all 0.5s;
  height: 100%;
  visibility: hidden; }

.nav-form .nav-content {
  z-index: 999;
  transition: all 0.5s;
  margin-left: -500px;
  position: absolute;
  height: 100%;
  width: 280px;
  padding: 0;
  background: #fff; }

.nav-form.open .nav-content {
  margin-left: 0; }

.nav-form .nav-spec {
  height: 100%;
  padding: 40px 0 0;
  overflow: scroll; }

.nav-menu {
  width: 100%; }

.nav-menu ul {
  margin: 0;
  padding: 0;
  list-style: none; }

.nav-menu ul li {
  position: relative; }

.nav-menu ul li a {
  text-transform: uppercase;
  color: #000;
  font-size: 15px;
  padding: 15px 20px;
  display: block;
  width: 100%;
  border-bottom: 1px solid #eaeaea;
  text-decoration: none;
  text-align: left; }

.nav-menu ul li a:hover,
.nav-menu ul li.current-menu-item a {
  color: #ffb606; }

.nav-menu ul.sub-menu {
  display: none; }

.nav-menu ul.sub-menu a {
  padding-left: 30px; }

.nav-menu ul li.menu-item-has-children > span.arrow {
  position: absolute;
  top: 10px;
  right: 15px;
  display: inline-block;
  padding: 5px 10px; }

.nav-menu ul li.menu-item-has-children > span.arrow::before {
  content: "\f107";
  font-size: 15px;
  cursor: pointer;
  font-family: 'FontAwesome'; }

.nav-menu ul li.menu-item-has-children > span.arrow.active::before {
  content: "\f106"; }


/* header type 2 */
.header-type2 .header-bottom {
  overflow: hidden; }

.header-top {
  background: #fff;
  padding: 25px 0; }
  .header-top .header-contact-wrapper {
    list-style: none;
    padding: 0px;
    margin: 15px 0 0;
    overflow: hidden;
    float: right; }
    .header-top .header-contact-wrapper .btn-secondary {
      background-color: #ffb606;
      color: #fff;
      padding-left: 15px;
      padding-right: 15px; }
      .header-top .header-contact-wrapper .btn-secondary i {
        margin-right: 5px; }
      .header-top .header-contact-wrapper .btn-secondary:hover {
        opacity: 0.8; }
    .header-top .header-contact-wrapper li {
      display: block;
      float: left;
      margin-top: 0px;
      margin-bottom: 0px;
      margin-left: 25px; }
      .header-top .header-contact-wrapper li:first-child {
        margin-left: 0; }
      .header-top .header-contact-wrapper li .contact-box {
        display: inline-block; }
      .header-top .header-contact-wrapper li .box-icon {
        float: left; }
        .header-top .header-contact-wrapper li .box-icon i {
          color: #ffb606;
          font-size: 35px;
          margin-right: 1px; }
      .header-top .header-contact-wrapper li .box-text {
        float: right;
        padding-left: 10px; }
        .header-top .header-contact-wrapper li .box-text .contact-phone {
          font-size: 15px;
          font-weight: 600;
          line-height: 1;
          text-transform: uppercase;
          margin-top: 1px;
          letter-spacing: 0.3px;
          color: #222; }
        .header-top .header-contact-wrapper li .box-text .contact-text {
          line-height: 1;
          margin-top: 6px;
          font-size: 12px; }

.header-bottom {
  background: #307ad5;
  position: relative; }
  .header-bottom .main-navigation {
    width: 80%; }
    .header-bottom .main-navigation li {
      margin: 0; }
      .header-bottom .main-navigation li:last-child a {
        padding-right: 15px; }
      .header-bottom .main-navigation li ul li a {
        color: #404040; }
    .header-bottom .main-navigation a {
      color: #fff;
      padding: 15px 20px; }
      .header-bottom .main-navigation a:hover {
        background: #ffb606;
        color: #fff; }
  .header-bottom .main-navigation .current_page_item > a,
  .header-bottom .main-navigation .current-menu-item > a,
  .header-bottom .main-navigation .current_page_ancestor > a,
  .header-bottom .main-navigation .current-menu-ancestor > a {
    background: #ffb606;
    color: #fff; }
  .header-bottom .header-socials {
    width: 20%;
    float: right;
    text-align: right; }
    .header-bottom .header-socials a {
      color: #fff;
      line-height: 51px;
      margin-left: 10px; }
      .header-bottom .header-socials a:hover {
        color: #ffb606; }

/* header type 3 */
.header-type3 .header-top .header-contact-wrapper .box-text {
  margin-top: 7px; }

.header-type3 .header-top .header-contact-wrapper .box-icon {
  background: #ffb606;
  width: 50px;
  height: 50px;
  display: block;
  text-align: center;
  line-height: 55px;
  border-radius: 50%; }
  .header-type3 .header-top .header-contact-wrapper .box-icon i {
    font-size: 23px;
    color: #fff; }

.header-type3 .header-bottom {
  overflow: hidden; }
  .header-type3 .header-bottom .nav-btn-right {
    background: #ffb606;
    color: #fff;
    font-size: 14px;
    padding: 15px 25px;
    height: 100%;
    text-transform: uppercase;
    float: right; }
    .header-type3 .header-bottom .nav-btn-right:hover {
      text-decoration: none;
      opacity: 0.8; }
    .header-type3 .header-bottom .nav-btn-right i {
      margin-right: 5px; }

.header-socials-type3 {
  margin-top: 4px; }
  .header-socials-type3 a {
    width: 30px;
    height: 30px;
    display: inline-block;
    text-align: center;
    line-height: 30px;
    color: #fff; }

.header-type4 {
  background: #fff; }
  .header-type4 .header-inner {
    padding-top: 20px;
    padding-bottom: 20px;
    overflow: hidden; }
  .header-type4 .main-navigation ul {
    display: table;
    margin: 0 auto; }
    .header-type4 .main-navigation ul li {
      margin-top: 0; }
      .header-type4 .main-navigation ul li a {
        padding: 15px; }
      .header-type4 .main-navigation ul li.site-logo a {
        padding: 0; }
  .header-type4 .logo-mobile {
    display: none; }


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

.comment-navigation a,
.posts-navigation a,
.post-navigation a {
  background: #ffb606;
  color: #fff;
  border: 2px solid transparent;
  border-radius: 2px;
  padding: 10px 15px;
  display: inline-block;
  line-height: 1; }
  .comment-navigation a:hover,
  .posts-navigation a:hover,
  .post-navigation a:hover {
    text-decoration: none;
    color: #404040;
    border-color: #ffb606;
    background: transparent; }

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%; }

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%; }

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

.widget-area .widget-title {
  position: relative;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 40px;
  margin: 0 0 20px;
  letter-spacing: 1px; }
  .widget-area .widget-title::after {
    content: '';
    height: 2px;
    width: 50px;
    display: block;
    background-color: #ffb606; }

.widget-area ul li {
  margin-bottom: 7px; }

.widget_tag_cloud a {
  font-size: 13px !important;
  color: #aaa;
  display: inline-block;
  padding: 5px 9px;
  margin: 0 5px 5px 0;
  border: 1px solid #f5f5f5;
  background-color: #f0f2f5; }
  .widget_tag_cloud a:hover {
    border-color: #ffb606;
    color: #fff;
    background-color: #ffb606;
    text-decoration: none; }

.theme-posts-widget li {
  padding: 10px 0 13px;
  margin-bottom: 5px;
  clear: both;
  overflow: hidden; }
  .theme-posts-widget li:first-child {
    padding-top: 0; }
  .theme-posts-widget li .p-thumbnail {
    max-width: 60px;
    float: left; }
  .theme-posts-widget li .p-info {
    display: block;
    float: left;
    margin-left: 15px;
    width: calc(100% - 75px); }
    .theme-posts-widget li .p-info h3 {
      font-size: 14px;
      line-height: 1.4; }
    .theme-posts-widget li .p-info span {
      display: block;
      font-size: 12px;
      color: #aaa; }
  .theme-posts-widget li .course-price {
    display: inline-block;
    vertical-align: top; }
    .theme-posts-widget li .course-price .price {
      min-width: 47px;
      padding: 4px;
      color: #fff;
      text-align: center;
      background-color: #03a9f4;
      border-radius: 3px;
      font-size: 12px;
      font-weight: 100;
      text-transform: none;
      line-height: 12px; }
    .theme-posts-widget li .course-price .origin-price {
      font-size: 12px; }
  .theme-posts-widget li .course-review {
    display: inline-block;
    vertical-align: bottom; }
    .theme-posts-widget li .course-review label {
      display: none; }
    .theme-posts-widget li .course-review .review-stars-rated .review-stars li {
      padding: 0; }
    .theme-posts-widget li .course-review .review-stars-rated .review-stars.filled:before {
      content: ''; }
    .theme-posts-widget li .course-review .review-stars-rated .review-stars.empty, .theme-posts-widget li .course-review .review-stars-rated .review-stars.filled {
      font-size: 0; }

.search-form {
  position: relative; }
  .search-form label {
    width: 100%;
    margin: 0; }
  .search-form .search-submit {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.55em 1em;
    width: auto;
    border-radius: 4px;
    color: #ffb606;
    font-size: 17px;
    background: transparent; }

.lp-widget .lp-course-info-fields {
  padding-left: 0; }

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
@media (min-width: 1200px) {
  .container {
    max-width: 1230px; } }

#page {
  transition: margin-left .5s;
  overflow: hidden; }

.site-title {
  margin: 10px 0 5px;
  color: #404040;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1; }
  .site-title a {
    color: #404040;
    text-decoration: none; }
    .site-title a:hover {
      color: #404040; }

.site-branding {
  position: relative;
  z-index: 99; }
  .site-branding div {
    float: left; }
  .site-branding .site-logo {
    max-width: 90px;
    margin-right: 10px; }

.site-description {
  margin: 0;
  font-size: 12px;
  color: #404040; }

.site-content {
  position: relative;
  overflow: hidden; }

#main, #secondary {
  padding-top: 50px;
  padding-bottom: 50px; }

#main {
  border-right: 1px solid #e1e2e4;
  padding-right: 25px; }

.sidebar-inner {
  padding-left: 10px; }

.full-width #main,
.no-sidebar #main {
  border: none;
  padding-right: 15px; }

.single.left-sidebar #main {
  border-left: 1px solid #e1e2e4;
  padding-left: 25px;
  border-right: none;
  padding-right: 0; }

.single.left-sidebar .sidebar-inner {
  padding-right: 10px;
  padding-left: 0; }

/*--------------------------------------------------------------
## Topbar
--------------------------------------------------------------*/
.topbar {
  font-style: normal;
  color: #aaaaaa;
  font-size: 12px;
  background: #111;
  position: relative;
  z-index: 99; }
  .topbar .widget_text {
    float: left; }
  .topbar ul {
    list-style: none;
    padding: 0;
    margin: 11px 0 12px; }
    .topbar ul li {
      display: inline-block;
      margin-right: 15px;
      margin-bottom: 0;
      line-height: 14px; }
      .topbar ul li a {
        color: white;
        font-size: 12px; }
      .topbar ul li i {
        font-size: 14px;
        margin-right: 5px; }
  .topbar .header_login_url {
    margin: 11px 0 12px 40px;
    line-height: 1; }
    .topbar .header_login_url a {
      display: inline-block;
      vertical-align: bottom;
      text-decoration: none;
      line-height: 1;
      color: #aaaaaa; }
      .topbar .header_login_url a:hover {
        color: #fff; }
      .topbar .header_login_url a i {
        font-size: 14px;
        margin-right: 10px; }
    .topbar .header_login_url .vertical_divider {
      display: inline-block;
      vertical-align: bottom;
      margin: 0 8px 0;
      width: 1px;
      height: 12px;
      background-color: #9a9a9a; }

.header-default {
  padding: 20px 0 0;
  background: #fff;
  box-shadow: 0px 5px 10px 0px rgba(50, 50, 50, 0.06); }
  .header-default .main-navigation ul {
    float: right; }

.cart-contents {
  font-size: 12px;
  color: #fff;
  margin: 0 2px;
  display: block;
  cursor: pointer;
  z-index: 1;
  position: relative;
  border-left: 1px solid white;
  padding-left: 10px;
  width: auto !important; }
  .cart-contents .sp-count {
    background: #fff;
    color: #000;
    display: inline-block;
    width: 15px;
    height: 15px;
    text-align: center;
    line-height: 15px;
    border-radius: 100%;
    font-size: 12px;
    position: absolute;
    top: -10px;
    left: 13px; }

/*--------------------------------------------------------------
## Titlebar
--------------------------------------------------------------*/
.titlebar {
  padding: 5% 0;
  background-color: #457992;
  text-align: center;
  position: relative; }
  .titlebar::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0, 0, 0, 0.5); }
  .titlebar .container {
    position: relative;
    z-index: 10; }
  .titlebar .header-title {
    font-size: 50px;
    color: #fff;
    font-family: 'Montserrat';
    font-weight: 700;
    text-transform: uppercase;
    margin-top: 0;
    margin-bottom: 10px; }
  .titlebar .archive-description p {
    color: #fff;
    font-size: 18px;
    margin-bottom: 1em; }
  .titlebar .triangled_colored_separator {
    width: 50px;
    display: inline-block;
    margin: 0 auto;
    height: 2px;
    background: #ffb606; }

.breadcrumbs {
  background-color: #f6f6f6;
  padding: 13px 0;
  line-height: 1;
  margin: 0;
  border-top: 1px solid #f0f2f5;
  border-bottom: 1px solid #f0f2f5;
  color: #999;
  font-size: 12px; }
  .breadcrumbs span {
    color: #999;
    margin-right: 7px;
    margin-left: 7px; }
    .breadcrumbs span span {
      margin-right: 0;
      margin-left: 0; }
  .breadcrumbs span:first-child {
    margin-left: 0; }
  .breadcrumbs a:hover {
    text-decoration: none; }
    .breadcrumbs a:hover span {
      color: #ffb606; }

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

.hentry {
  margin: 0 0 3.5em; }

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

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

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

.blog-content .page-header {
  margin-top: 0; }

.blog .entry-header, .archive .entry-header, .search .entry-header {
  overflow: hidden; }
  .blog .entry-header .entry-date, .archive .entry-header .entry-date, .search .entry-header .entry-date {
    font-size: 60px;
    font-weight: 700;
    height: 85px;
    width: 95px;
    float: left;
    line-height: 60px;
    color: #ffb606;
    position: relative; }
    .blog .entry-header .entry-date:after, .archive .entry-header .entry-date:after, .search .entry-header .entry-date:after {
      content: '';
      position: absolute;
      width: 1px;
      top: 4px;
      right: 0;
      bottom: 5px;
      background: #eee; }
    .blog .entry-header .entry-date i, .archive .entry-header .entry-date i, .search .entry-header .entry-date i {
      font-size: 13px;
      text-transform: uppercase;
      font-style: normal;
      font-weight: 700;
      display: block;
      line-height: 20px;
      margin-top: 3px; }
  .blog .entry-header .entry-contain, .archive .entry-header .entry-contain, .search .entry-header .entry-contain {
    position: relative;
    padding-left: 30px;
    width: calc(100% - 95px);
    width: -webkit-calc(100% - 95px);
    width: -moz-calc(100% - 95px);
    float: right; }

.entry-meta a {
  color: #404040; }

.entry-meta span {
  margin-right: 20px;
  font-size: 14px;
  display: inline-block; }
  .entry-meta span i {
    color: #ffb606;
    margin-right: 5px; }
  .entry-meta span span {
    margin-right: 0; }

.single .entry-meta, .archive .entry-meta {
  margin-bottom: 1.5em; }

body #content .entry-footer {
  display: block; }
  body #content .entry-footer .social-share li a {
    color: #999;
    width: 30px;
    height: 30px;
    line-height: 30px;
    display: inline-block;
    border: 1px solid #999;
    border-radius: 50%;
    text-align: center;
    font-size: 14px;
    cursor: pointer; }
    body #content .entry-footer .social-share li a:hover {
      color: #fff; }
  body #content .entry-footer .social-share li div.facebook-social a:hover {
    border-color: #3b5998;
    background-color: #3b5998; }
  body #content .entry-footer .social-share li div.googleplus-social a:hover {
    border-color: #dd4b39;
    background-color: #dd4b39; }
  body #content .entry-footer .social-share li div.twitter-social a:hover {
    border-color: #00aced;
    background-color: #00aced; }
  body #content .entry-footer .social-share li div.pinterest-social a:hover {
    border-color: #cb2027;
    background-color: #cb2027; }

.entry-title {
  font-size: 30px;
  font-weight: 500;
  line-height: 34px;
  margin: 0 0 7px; }
  .entry-title a {
    color: #404040; }
    .entry-title a:hover {
      color: #ffb606;
      text-decoration: none; }

h1.entry-title {
  margin-bottom: 15px; }

.readmore a {
  background: none;
  color: #404040;
  border: 2px solid #404040;
  border-radius: 2px;
  padding: 10px 15px;
  display: inline-block;
  line-height: 1; }
  .readmore a:hover {
    text-decoration: none;
    color: #404040;
    border-color: #ffb606;
    background: transparent; }

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

.bypostauthor {
  display: block; }

.comment-list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .comment-list li {
    margin: 30px 0;
    padding-bottom: 30px;
    border-bottom: 1px solid #e6e6e6; }
    .comment-list li .avatar {
      border-radius: 3px;
      float: left;
      width: 60px; }
    .comment-list li .comment-wrapper {
      background: #f8f9f9 none repeat scroll 0 0;
      margin-left: 6em;
      padding: 20px;
      position: relative; }
      .comment-list li .comment-wrapper::before {
        border-color: transparent #f6f7f9 transparent transparent;
        border-style: solid;
        border-width: 0 10px 10px 0;
        content: "";
        height: 0;
        left: -9px;
        position: absolute;
        top: 0;
        width: 0; }
      .comment-list li .comment-wrapper .comment-meta {
        margin-bottom: 20px; }
        .comment-list li .comment-wrapper .comment-meta a {
          text-decoration: none; }
      .comment-list li .comment-wrapper .comment-actions i {
        padding-left: 10px;
        font-size: 13px; }
    .comment-list li ul, .comment-list li ol {
      margin-bottom: 0;
      margin-left: 1.5em;
      list-style: none; }
    .comment-list li li {
      border-bottom: none;
      margin-bottom: 0;
      padding-bottom: 0; }

.comment-respond input.submit {
  width: auto; }

.search .page-header .page-title {
  margin-bottom: 0; }

/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
.site-footer {
  background: #111;
  color: #999;
  padding-top: 25px;
  font-size: 13px; }
  .site-footer .footer-widgets {
    padding-top: 50px;
    padding-bottom: 50px; }
  .site-footer .widget-title {
    position: relative;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 40px;
    color: #fff;
    margin: 0 0 15px;
    letter-spacing: 1px; }
  .site-footer .copyright-area {
    padding-bottom: 20px;
    padding-top: 20px;
    border-top: 1px solid #222;
    line-height: 30px; }
    .site-footer .copyright-area span {
      color: #ffb606; }
    .site-footer .copyright-area ul {
      margin-bottom: 0; }
      .site-footer .copyright-area ul li {
        display: inline-block;
        padding-right: 5px;
        padding-left: 5px; }
    .site-footer .copyright-area a:hover {
      color: #999;
      text-decoration: underline; }
  .site-footer a {
    color: #999;
    line-height: 30px; }
    .site-footer a:hover {
      text-decoration: none;
      color: #ffb606; }
  .site-footer .footer-social {
    float: left;
    padding: 10px 18px;
    color: #FFF;
    background: #ffb606;
    margin-top: -41px;
    position: relative; }
    .site-footer .footer-social::after {
      border-right: 9px solid #777;
      border-top: 16px solid transparent;
      content: "";
      display: block;
      height: 0;
      left: -9px;
      position: absolute;
      top: 0; }
    .site-footer .footer-social label {
      font-size: 13px;
      margin-right: 10px;
      color: #fff;
      font-weight: normal; }
    .site-footer .footer-social a {
      color: #fff;
      margin-right: 3px; }
      .site-footer .footer-social a:hover i {
        color: #404040;
        border-color: #404040; }
      .site-footer .footer-social a i {
        padding: 0;
        border-radius: 50%;
        font-size: 13px;
        line-height: 25px;
        height: 25px;
        width: 25px;
        text-align: center;
        border: 1px solid #fff;
        color: #fff; }

.contact-info-item {
  margin-bottom: 10px; }
  .contact-info-item .contact-text {
    display: block;
    float: left;
    width: 30px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 2px;
    position: relative; }
    .contact-info-item .contact-text i {
      font-size: 16px; }
  .contact-info-item .contact-value {
    display: block;
    margin-left: 35px; }

.contact-info-box ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0; }
  .contact-info-box ul li {
    padding: 8px 0;
    border-top: 1px dotted rgba(255, 255, 255, 0.1); }
    .contact-info-box ul li:first-child {
      border-top: 0; }
    .contact-info-box ul li span {
      float: right;
      font-weight: bold; }

/*--------------------------------------------------------------
## Course
--------------------------------------------------------------*/
ul.learn-press-courses.row {
  margin-right: -15px;
  margin-left: -15px; }
  ul.learn-press-courses.row li {
    margin-bottom: 30px; }

#lms-course-grid .course-description, #lms-course-grid .course-readmore {
  display: none; }

#lms-course-list li.col-md-4 {
  width: 100%; }
  #lms-course-list li.col-md-4 .course-item {
    overflow: hidden;
    padding-bottom: 30px;
    border-bottom: 1px solid #e3e3e3; }
  #lms-course-list li.col-md-4 .course-thumbnail {
    width: 30%;
    float: left; }
  #lms-course-list li.col-md-4 .course-content {
    width: 70%;
    float: left;
    text-align: left;
    border: none;
    padding-left: 30px; }
    #lms-course-list li.col-md-4 .course-content .course-author {
      display: none; }
    #lms-course-list li.col-md-4 .course-content .course-meta {
      margin-left: 0;
      padding-left: 0;
      padding-right: 0;
      border: none; }
      #lms-course-list li.col-md-4 .course-content .course-meta .pull-left {
        display: none; }
      #lms-course-list li.col-md-4 .course-content .course-meta .course-price {
        float: left !important;
        margin-top: 7px; }
      #lms-course-list li.col-md-4 .course-content .course-meta .course-readmore {
        float: right;
        font-weight: 600;
        text-transform: uppercase;
        font-size: 12px;
        border: 1px solid #000;
        padding: 10px 15px 9px;
        line-height: 1; }
        #lms-course-list li.col-md-4 .course-content .course-meta .course-readmore:hover {
          text-decoration: none; }
    #lms-course-list li.col-md-4 .course-content h2.course-title {
      font-size: 22px;
      font-weight: bold; }
      #lms-course-list li.col-md-4 .course-content h2.course-title a:hover {
        text-decoration: none; }

.single-lp_course .course-thumbnail {
  margin-bottom: 30px; }

.single-lp_course .course-meta {
  display: block;
  overflow: hidden;
  position: relative;
  padding: 0;
  margin-bottom: 30px; }
  .single-lp_course .course-meta label {
    font-size: 12px;
    font-weight: 700;
    color: #ccc;
    margin-bottom: 0; }
  .single-lp_course .course-meta > div {
    line-height: 20px;
    margin-right: 15px;
    margin-bottom: 0;
    padding-right: 15px;
    color: #ccc;
    border-right: 1px solid #eee;
    float: left; }
    .single-lp_course .course-meta > div:last-child {
      border-right: 0; }
    .single-lp_course .course-meta > div .value {
      font-size: 12px;
      text-transform: uppercase;
      font-weight: 700;
      color: #7a7a7a;
      line-height: 16px; }
    .single-lp_course .course-meta > div a {
      color: #7a7a7a; }
  .single-lp_course .course-meta .course-author img {
    border-radius: 50%;
    width: 40px;
    height: auto;
    float: left;
    margin-right: 10px; }
  .single-lp_course .course-meta .course-author .author-contain {
    display: inline-block; }
  .single-lp_course .course-meta .course-review .review-stars-rated {
    margin-top: 1px; }
    .single-lp_course .course-meta .course-review .review-stars-rated .filled {
      font-size: 0; }

.single-lp_course .course-price .origin-price {
  font-size: 18px;
  text-decoration: line-through;
  font-style: italic; }

.single-lp_course .course-price .price {
  color: #f24c0a;
  font-size: 30px;
  font-weight: 700;
  margin-right: 0;
  display: inline-block; }

.single-lp_course .course-info {
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 30px; }
  .single-lp_course .course-info li {
    padding: 5px 10px;
    text-align: center; }
    .single-lp_course .course-info li i {
      color: #ffb606;
      margin-right: 5px; }

.single-lp_course .lp-single-course .course-meta {
  display: none; }

.single-lp_course .lp-single-course ul.learn-press-nav-tabs {
  border: none;
  background: #eaeaea;
  margin-bottom: 30px; }
  .single-lp_course .lp-single-course ul.learn-press-nav-tabs a {
    text-decoration: none;
    padding: 10px 30px; }
  .single-lp_course .lp-single-course ul.learn-press-nav-tabs li {
    text-align: center; }
    .single-lp_course .lp-single-course ul.learn-press-nav-tabs li:after {
      height: 0; }
  .single-lp_course .lp-single-course ul.learn-press-nav-tabs .course-nav.active, .single-lp_course .lp-single-course ul.learn-press-nav-tabs .course-nav:hover {
    background: #ffb606; }
    .single-lp_course .lp-single-course ul.learn-press-nav-tabs .course-nav.active a, .single-lp_course .lp-single-course ul.learn-press-nav-tabs .course-nav:hover a {
      color: #fff; }

.single-lp_course .lp-single-course .course-curriculum ul.curriculum-sections .section-header {
  border-bottom-color: #ffb606; }

.single-lp_course .lp-single-course .course-curriculum .section-content .course-item .section-item-link:hover {
  text-decoration: none; }

.single-lp_course .lp-single-course .course-rate .review-bar .rating {
  background: #ffb606; }

.single-lp_course .lp-single-course .course-reviews-list, .single-lp_course .lp-single-course .course-reviews-list-shortcode {
  padding-left: 0; }
  .single-lp_course .lp-single-course .course-reviews-list li, .single-lp_course .lp-single-course .course-reviews-list-shortcode li {
    border: none;
    background: #f8f9f9; }
    .single-lp_course .lp-single-course .course-reviews-list li .review-author-info, .single-lp_course .lp-single-course .course-reviews-list-shortcode li .review-author-info {
      float: left; }
      .single-lp_course .lp-single-course .course-reviews-list li .review-author-info img, .single-lp_course .lp-single-course .course-reviews-list-shortcode li .review-author-info img {
        border-radius: 3px;
        max-width: 70px; }
      .single-lp_course .lp-single-course .course-reviews-list li .review-author-info .user-name, .single-lp_course .lp-single-course .course-reviews-list-shortcode li .review-author-info .user-name {
        margin: 0 0 5px 0; }
      .single-lp_course .lp-single-course .course-reviews-list li .review-author-info .review-title, .single-lp_course .lp-single-course .course-reviews-list-shortcode li .review-author-info .review-title {
        margin-top: 0; }
    .single-lp_course .lp-single-course .course-reviews-list li .review-text, .single-lp_course .lp-single-course .course-reviews-list-shortcode li .review-text {
      float: left;
      width: 100%;
      clear: both; }

.single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #EAEAEA; }
  .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author:last-child {
    border-bottom: none; }
  .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-name {
    width: 100%;
    text-align: left; }
    .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-name img {
      float: left;
      width: 100px;
      height: 100px; }
    .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-name .socials {
      margin-left: 120px; }
      .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-name .socials a {
        font-weight: bold; }
        .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-name .socials a:hover {
          text-decoration: none; }
  .single-lp_course .lp-single-course #learn-press-course-tabs .course-tab-panel .course-author .author-bio {
    margin-top: 15px; }

.lp-user-profile .lp-sub-menu {
  padding-left: 0; }

.lp-user-profile ul.learn-press-courses.profile-courses-list {
  margin-right: -15px;
  margin-left: -15px; }


.site-header {
  position: relative;
  z-index: 99;
  width: 100%;
  opacity: 1;
  transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -webkit-transition: all 0.4s ease 0s;
  transform: translateY(0); }

.header-transparent {
  /* in case enable sticky header */ }
  .header-transparent .site-header-wrap.no-fixed {
    width: 100%;
    background: transparent; }
    .header-transparent .site-header-wrap.no-fixed .topbar, .header-transparent .site-header-wrap.no-fixed .header-default, .header-transparent .site-header-wrap.no-fixed .header-bottom, .header-transparent .site-header-wrap.no-fixed .header-top, .header-transparent .site-header-wrap.no-fixed .header-type4 {
      background: transparent;
      box-shadow: none; }
    .header-transparent .site-header-wrap.no-fixed .site-title a,
    .header-transparent .site-header-wrap.no-fixed .site-description {
      color: #fff; }
    .header-transparent .site-header-wrap.no-fixed .main-navigation a {
      color: #fff; }
      .header-transparent .site-header-wrap.no-fixed .main-navigation a:hover {
        color: #ffb606; }
  .header-transparent .site-header-wrap {
    position: absolute; }
  .header-transparent.no-sticky {
    /* in case no enable sticky header */ }
    .header-transparent.no-sticky .site-header {
      background: transparent;
      position: absolute; }
      .header-transparent.no-sticky .site-header .topbar, .header-transparent.no-sticky .site-header .header-top, .header-transparent.no-sticky .site-header .header-bottom, .header-transparent.no-sticky .site-header .header-type4 {
        background: transparent; }
      .header-transparent.no-sticky .site-header .header-default {
        box-shadow: none;
        background: transparent; }
      .header-transparent.no-sticky .site-header .site-title a,
      .header-transparent.no-sticky .site-header .site-description,
      .header-transparent.no-sticky .site-header .main-navigation a,
      .header-transparent.no-sticky .site-header .header-contact-wrapper li .box-text .contact-phone,
      .header-transparent.no-sticky .site-header .header-contact-wrapper li .box-text .contact-text {
        color: #fff; }

.site-header-wrap.fixed {
  width: 100%; }
  .site-header-wrap.fixed .site-header {
    position: fixed;
    left: 0;
    top: 30px; }

#to-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  z-index: 9999;
  width: 35px;
  height: 35px;
  text-align: center;
  line-height: 35px;
  background: #ffb606;
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 2px;
  text-decoration: none;
  transition: opacity 0.2s ease-out;
  opacity: 0;
  font-size: 20px; }

#to-top:hover {
  background: #222; }

#to-top.show {
  opacity: 1; }

.switch-layout-container {
  background: #f5f5f5;
  padding: 10px 10px 10px 20px;
  margin-bottom: 60px;
  min-height: 54px; }
  .switch-layout-container .switch-layout {
    float: left; }
    .switch-layout-container .switch-layout a {
      font-size: 18px;
      display: inline-block;
      line-height: 34px;
      margin-right: 5px;
      color: #ccc; }
      .switch-layout-container .switch-layout a.switch-active, .switch-layout-container .switch-layout a:hover {
        color: #ffb606; }
  .switch-layout-container .learn-press-search-course-form {
    float: right;
    position: relative;
    width: calc(100% - 170px);
    width: -webkit-calc(100% - 170px);
    width: -moz-calc(100% - 170px);
    margin: 0;
    display: flex; }
    .switch-layout-container .learn-press-search-course-form input {
      margin: 0;
      padding: 7px !important; }
      .switch-layout-container .learn-press-search-course-form input:focus {
        border-color: #ffb606; }
    .switch-layout-container .learn-press-search-course-form button {
      background: none;
      position: absolute;
      top: 0;
      right: 0;
      color: #ffb606;
      padding: 7px 13px;
      font-size: 14px; }


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

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

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

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

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

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

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

.gallery-caption {
  display: block; }

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

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

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

.alignwide {
  width: 100vw;
  max-width: 100%;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  clear: both; }

.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: auto;
  max-width: 1000%;
  float: left; }

.wp-block-image.alignfull img {
  width: 100vw; }

.wp-block-video video {
  max-width: 636px; }

.wp-block-image img {
  display: block; }

.wp-block-image.alignleft,
.wp-block-image.alignright {
  width: 100%; }

.wp-block-gallery:not(.components-placeholder) {
  margin: 1.5em auto; }

.wp-block-cover-text p {
  padding: 1.5em 14px; }

ul.wp-block-latest-posts.alignwide,
ul.wp-block-latest-posts.alignfull,
ul.wp-block-latest-posts.is-grid.alignwide,
ul.wp-block-latest-posts.is-grid.alignwide {
  padding: 0 14px; }

.wp-block-table {
  display: block;
  overflow-x: auto; }

.wp-block-table table {
  border-collapse: collapse;
  width: 100%; }

.wp-block-table td, .wp-block-table th {
  padding: .5em; }

.wp-block-embed.type-video > .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%; }

.wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

.wp-block-quote.is-large {
  margin: 0 auto 16px; }

.wp-block-pullquote > p:first-child {
  margin-top: 0; }

.wp-block-separator {
  margin: 3em auto;
  padding: 0; }

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

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

.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;
  table-layout: fixed; }

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

/*--------------------------------------------------------------
## Queries
--------------------------------------------------------------*/
.mobile-menu {
  display: none;
  float: right;
  font-size: 15px;
  color: #000;
  position: relative;
  top: 30px;
  z-index: 99;
  cursor: pointer; }
  .mobile-menu.nav-is-visible {
    display: block;
    top: -10px;
    right: 10px; }
    .mobile-menu.nav-is-visible span {
      background: transparent; }
      .mobile-menu.nav-is-visible span:before {
        -webkit-transform: translateX(4px) translateY(-1px) rotate(45deg);
        -moz-transform: translateX(4px) translateY(-1px) rotate(45deg);
        -ms-transform: translateX(4px) translateY(-1px) rotate(45deg);
        -o-transform: translateX(4px) translateY(-1px) rotate(45deg);
        transform: translateX(4px) translateY(-1px) rotate(45deg); }
      .mobile-menu.nav-is-visible span:after {
        -webkit-transform: translateX(4px) translateY(0px) rotate(-45deg);
        -moz-transform: translateX(4px) translateY(0px) rotate(-45deg);
        -ms-transform: translateX(4px) translateY(0px) rotate(-45deg);
        -o-transform: translateX(4px) translateY(0px) rotate(-45deg);
        transform: translateX(4px) translateY(0px) rotate(-45deg); }
  .mobile-menu span {
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -2px;
    -webkit-transition: rotate 0.2s, translate 0.2s;
    -moz-transition: rotate 0.2s, translate 0.2s;
    transition: rotate 0.2s, translate 0.2s;
    display: inline-block;
    height: 3px;
    width: 24px;
    background: #000; }
    .mobile-menu span::before, .mobile-menu span::after {
      position: absolute;
      display: inline-block;
      height: 3px;
      width: 24px;
      background: #000;
      content: '';
      right: 0;
      -webkit-transform: translateZ(0);
      -moz-transform: translateZ(0);
      -ms-transform: translateZ(0);
      -o-transform: translateZ(0);
      transform: translateZ(0);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      -webkit-transform-origin: 0% 50%;
      -moz-transform-origin: 0% 50%;
      -ms-transform-origin: 0% 50%;
      -o-transform-origin: 0% 50%;
      transform-origin: 0% 50%;
      -webkit-transition: -webkit-transform 0.2s;
      -moz-transition: -moz-transform 0.2s;
      transition: transform 0.2s; }

.mobile-menu span:before {
  top: -8px; }

.mobile-menu span:after {
  top: 8px; }

@media (max-width: 1023px) {
  #mobile-open {
    display: block;
    height: 25px;
    width: 24px;
    position: relative;
    top: 14px;
    right: 0; }
  .nav-form.open {
    background: rgba(0, 0, 0, 0.8);
    visibility: visible; }
  #site-navigation {
    display: none; }
  .header-default {
    padding: 10px 0; }
  .header-bottom .header-socials {
    width: auto; }
  .header-type3 #mobile-open, .header-type2 #mobile-open {
    float: left;
    top: 14px; }
    .header-type3 #mobile-open span, .header-type2 #mobile-open span {
      left: 0;
      background: white; }
      .header-type3 #mobile-open span::before, .header-type3 #mobile-open span::after, .header-type2 #mobile-open span::before, .header-type2 #mobile-open span::after {
        background: white; }
    .header-type3 #mobile-open.nav-is-visible, .header-type2 #mobile-open.nav-is-visible {
      left: 0; }
      .header-type3 #mobile-open.nav-is-visible span, .header-type2 #mobile-open.nav-is-visible span {
        background: transparent; }
  .header-type4 .logo-mobile {
    display: block; }
  .header-4 .nav-menu ul li.site-logo {
    display: none; } }

@media (max-width: 590px) {
  .header-top .header-contact-wrapper {
    float: none; }
    .header-top .header-contact-wrapper li {
      width: 100%;
      margin-right: 0;
      margin-bottom: 15px;
      margin-left: 0;
      text-align: center; }
      .header-top .header-contact-wrapper li .box-text {
        float: left; } }

@media (max-width: 499px) {
  .titlebar .header-title {
    font-size: 30px; }
  .single-lp_course .course-meta > div {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px; }
  .feature-slider .slick-slide .feature-slide-inner .feature-slide-content h2.feature-slide-heading {
    font-size: 30px !important; }
  #lms-course-list li.col-md-4 .course-thumbnail {
    width: 100%;
    margin-bottom: 15px; }
  #lms-course-list li.col-md-4 .course-content {
    width: 100%;
    padding-left: 0; }
  .switch-layout-container .learn-press-search-course-form {
    width: calc(100% - 70px); }
  .header-type3 .header-bottom a.nav-btn-right {
    margin-right: -15px; }
  .course-grid-layout2 .intro-item .all-course {
    position: relative !important;
    padding: 30px; }
  .carousel-wrapper .btn-view-all {
    text-align: center !important; }
  .carousel-wrapper .btn-view-all a.btn-all-courses {
    margin-top: 0;
    margin-bottom: 10px; }
  .carouse-grid .course-grid-box {
    margin-top: 5px !important; } }

/*--------------------------------------------------------------
# Elementors
--------------------------------------------------------------*/
.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 50px;
  height: 50px;
  text-align: center;
  padding: 0;
  z-index: 1;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: rgba(0, 0, 0, 0.1); }
  .slick-prev::before, .slick-next::before {
    font-family: FontAwesome;
    font-size: 40px;
    line-height: 1;
    opacity: .75;
    color: #fff;
    margin: 0 auto;
    display: block;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .slick-prev:hover, .slick-next:hover {
    background: rgba(0, 0, 0, 0.4); }

.slick-prev {
  left: 20px; }
  .slick-prev::before {
    content: "\f104"; }

.slick-next {
  right: 20px; }
  .slick-next::before {
    content: "\f105"; }

.feature-slider .slick-slide {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  overflow: hidden;
  height: 400px; }
  .feature-slider .slick-slide .feature-slide-bg {
    position: relative;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    min-width: 100%;
    min-height: 100%;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 10s;
    -o-transition-duration: 10s;
    transition-duration: 10s; }
    .feature-slider .slick-slide .feature-slide-bg::after {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      content: '';
      background: rgba(0, 0, 0, 0.35); }
  .feature-slider .slick-slide .slick-slide.slick-active .feature-slide-bg {
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-duration: 20s;
    animation-duration: 20s; }

.feature-slider .feature-slide-inner {
  background-repeat: no-repeat;
  background-position: 50%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center; }
  .feature-slider .feature-slide-inner .feature-slide-content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 59%; }
    .feature-slider .feature-slide-inner .feature-slide-content h2.feature-slide-heading {
      text-transform: uppercase;
      color: white;
      font-size: 45px;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      letter-spacing: 2px;
      margin-top: 0; }
    .feature-slider .feature-slide-inner .feature-slide-content p {
      font-size: 18px;
      color: white;
      font-weight: 400;
      font-family: 'Montserrat', sans-serif; }
    .feature-slider .feature-slide-inner .feature-slide-content a.slide-button {
      background: #ffb606;
      border: 2px solid transparent;
      border-radius: 0;
      min-width: 144px;
      padding: 8px 14px;
      font-size: 13px;
      text-transform: uppercase;
      font-weight: 600;
      color: #fff;
      font-family: 'Montserrat', sans-serif; }
      .feature-slider .feature-slide-inner .feature-slide-content a.slide-button:hover {
        background: transparent !important;
        border-color: #ffb606;
        color: #fff; }

.course-item .course-thumbnail {
  position: relative;
  margin: 0;
  overflow: hidden;
  width: 100%;
  height: 100%; }
  .course-item .course-thumbnail a {
    display: block;
    width: 100%; }
  .course-item .course-thumbnail .origin-price {
    display: none; }
  .course-item .course-thumbnail .price {
    min-width: 76px;
    position: absolute;
    top: 15px;
    left: 0;
    display: inline-block;
    padding: 11px 15px;
    color: #fff;
    background-color: #ffb606;
    text-align: center;
    line-height: 1;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    z-index: 11; }
  .course-item .course-thumbnail img {
    display: block;
    position: relative;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out; }
  .course-item .course-thumbnail:hover img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }

.course-item .course-content {
  border: 1px solid #e5e5e5;
  border-top: 0;
  padding: 0 15px;
  text-align: center; }
  .course-item .course-content .course-title {
    font-size: 16px;
    color: #404040;
    margin: 11px 0 22px;
    line-height: 25px; }
  .course-item .course-content .course-author {
    margin-top: 0;
    position: relative;
    margin-bottom: 0; }
    .course-item .course-content .course-author img {
      margin-top: -28px;
      border-radius: 50%;
      max-width: 50px;
      border: 2px solid #fff;
      position: relative;
      z-index: 3;
      display: inline-block; }
    .course-item .course-content .course-author .value {
      font-size: 13px;
      font-weight: 400;
      text-transform: capitalize;
      margin-top: 7px;
      color: #848484; }
  .course-item .course-content .course-meta {
    padding: 10px 13px 7px;
    border-top: 1px solid #e5e5e5;
    border-bottom: 0;
    font-weight: 400;
    margin: 0 -15px; }
    .course-item .course-content .course-meta .value {
      display: inline-block;
      color: #848484;
      margin-right: 10px;
      vertical-align: top;
      font-size: 13px; }
      .course-item .course-content .course-meta .value i {
        margin-right: 3px; }
    .course-item .course-content .course-meta .course-review .value {
      margin: 3px 0 0 0; }

.course-review .review-stars-rated {
  position: relative;
  display: inline-block;
  height: 16px;
  line-height: 16px;
  width: 80px;
  float: left; }
  .course-review .review-stars-rated .review-stars {
    margin: 0;
    padding: 0;
    display: inline-block;
    list-style: none;
    line-height: 16px;
    height: 16px;
    float: left;
    font-size: 0; }
    .course-review .review-stars-rated .review-stars li {
      width: 16px;
      height: 16px;
      display: inline-block;
      float: none;
      margin-bottom: 0; }
      .course-review .review-stars-rated .review-stars li span {
        font-size: 13px;
        width: auto;
        height: auto;
        border-bottom: 0;
        text-decoration: none;
        color: #ffb606; }
  .course-review .review-stars-rated .filled {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    white-space: nowrap;
    overflow: hidden;
    color: #f05a19;
    height: 40px; }
    .course-review .review-stars-rated .filled li {
      position: static; }

.carousel-wrapper h2.title {
  text-transform: uppercase;
  line-height: 40px;
  font-size: 30px;
  font-weight: 700;
  font-family: 'Montserrat', sans-serif;
  margin: 0 0 40px;
  padding-bottom: 20px;
  position: relative; }
  .carousel-wrapper h2.title::after {
    position: absolute;
    content: '';
    display: block;
    height: 1px;
    width: 50px;
    background: #ffb606;
    bottom: 0; }

.carousel-wrapper .slick-arrow {
  top: -55px;
  right: 15px;
  background: transparent;
  border: 1px solid #000;
  width: 30px;
  height: 30px; }
  .carousel-wrapper .slick-arrow:hover {
    border-color: #ffb606; }
    .carousel-wrapper .slick-arrow:hover:before {
      color: #ffb606; }
  .carousel-wrapper .slick-arrow::before {
    color: #000;
    font-size: 16px; }

.carousel-wrapper .slick-prev {
  left: auto;
  right: 55px; }

/* Course Grid */
a.btn-all-courses {
  border: 2px solid #ffb606;
  border-radius: 0;
  margin-top: 22px; }
  a.btn-all-courses:hover {
    background: #ffb606;
    color: #fff; }

.carouse-grid .course-grid-box:nth-child(3), .carouse-grid .course-grid-box:nth-child(4) {
  margin-top: 23px; }

.carouse-grid .course-grid-box .course-holder {
  position: relative;
  padding-bottom: 76%;
  background-color: #495057;
  overflow: hidden;
  border-radius: 0;
  -webkit-transition: all .3s ease;
  transition: all .3s ease; }
  .carouse-grid .course-grid-box .course-holder:hover {
    -webkit-box-shadow: 0 24px 50px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 24px 50px 3px rgba(0, 0, 0, 0.2); }
    .carouse-grid .course-grid-box .course-holder:hover .course-bg {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      opacity: .7; }
    .carouse-grid .course-grid-box .course-holder:hover .info-on-hover .course-title {
      -webkit-transform: translateY(0);
      transform: translateY(0); }
    .carouse-grid .course-grid-box .course-holder:hover .info-on-hover .course-price {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0); }
  .carouse-grid .course-grid-box .course-holder .course-holder-inner, .carouse-grid .course-grid-box .course-holder a.course_link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20; }
  .carouse-grid .course-grid-box .course-holder .course-bg {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: calc(100% + 40px);
    max-width: none;
    min-height: 100.6%;
    -webkit-transition: opacity .3s ease,-webkit-transform .3s ease;
    transition: opacity .3s ease,-webkit-transform .3s ease;
    transition: opacity .3s ease,transform .3s ease;
    transition: opacity .3s ease,transform .3s ease,-webkit-transform .3s ease;
    -webkit-transform: translate3d(-30px, 0, 0);
    transform: translate3d(-30px, 0, 0); }
  .carouse-grid .course-grid-box .course-holder .info-on-hover {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.8)), to(transparent));
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 0, transparent 100%);
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px; }
    .carouse-grid .course-grid-box .course-holder .info-on-hover .course-title {
      -webkit-transform: translateY(20px);
      transform: translateY(20px);
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease,-webkit-transform .3s ease;
      margin-bottom: 5px;
      font-weight: 500;
      font-size: 18px; }
    .carouse-grid .course-grid-box .course-holder .info-on-hover .course-price {
      display: block;
      position: relative;
      color: #ffb606;
      opacity: 0;
      -webkit-transform: translateY(50px);
      transform: translateY(50px);
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
      .carouse-grid .course-grid-box .course-holder .info-on-hover .course-price .origin-price {
        font-size: 13px;
        font-style: italic;
        text-decoration: line-through; }

/* Course layout 2 */
.course-filter {
  text-align: center;
  margin-bottom: 50px; }
  .course-filter div {
    display: inline-block;
    margin: 0 15px;
    cursor: pointer;
    padding-bottom: 3px;
    border-bottom: 1px solid transparent; }
    .course-filter div.mixitup-control-active, .course-filter div:hover {
      color: #ffb606;
      border-bottom-color: #ffb606; }

.course-grid-layout2 > .col-md-3 {
  padding-left: 2px;
  padding-right: 2px;
  padding-bottom: 4px; }

.course-grid-layout2 .intro-item {
  position: relative;
  z-index: 99;
  -webkit-box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15);
  -khtml-box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15);
  -ms-box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15);
  -o-box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.15); }
  .course-grid-layout2 .intro-item:before {
    background: #ffb606;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: scale(1.06, 1.05);
    -moz-transform: scale(1.06, 1.05);
    -ms-transform: scale(1.06, 1.05);
    -o-transform: scale(1.06, 1.05);
    z-index: -1; }
  .course-grid-layout2 .intro-item .all-course {
    position: absolute;
    top: 50%;
    padding-left: 30px;
    color: #fff;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%); }
    .course-grid-layout2 .intro-item .all-course h3 {
      margin-bottom: 0.6em; }
    .course-grid-layout2 .intro-item .all-course a {
      display: inline-block;
      font-size: 14px;
      letter-spacing: .3px;
      text-transform: uppercase;
      padding: 11px 28px 9px 29px;
      background-color: #fff;
      font-weight: 400;
      -webkit-border-radius: 30px;
      -moz-border-radius: 30px;
      border-radius: 30px;
      box-shadow: 12.9px 15.3px 18px 0 rgba(0, 0, 0, 0.08); }
      .course-grid-layout2 .intro-item .all-course a:hover {
        -webkit-box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        -khtml-box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        -moz-box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        -ms-box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        -o-box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        box-shadow: 4.5px 5.4px 10px 0 rgba(0, 0, 0, 0.06);
        color: #ffb606; }

.course-grid-layout2 .course-item {
  position: relative; }
  .course-grid-layout2 .course-item .course-holder {
    position: relative;
    padding-bottom: 100%;
    background-color: #495057;
    overflow: hidden;
    border-radius: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .course-grid-layout2 .course-item .course-holder:hover .course-bg {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      opacity: .7; }
    .course-grid-layout2 .course-item .course-holder .course-holder-inner {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 20; }
    .course-grid-layout2 .course-item .course-holder .course_link {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 20; }
    .course-grid-layout2 .course-item .course-holder .course-bg {
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      display: block;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      width: calc(100% + 40px);
      max-width: none;
      min-height: 100.6%;
      -webkit-transition: opacity .3s ease,-webkit-transform .3s ease;
      transition: opacity .3s ease,-webkit-transform .3s ease;
      transition: opacity .3s ease,transform .3s ease;
      transition: opacity .3s ease,transform .3s ease,-webkit-transform .3s ease;
      -webkit-transform: translate3d(-30px, 0, 0);
      transform: translate3d(-30px, 0, 0); }
    .course-grid-layout2 .course-item .course-holder .info-on-hover {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      color: #fff;
      text-align: center;
      padding-top: 15px;
      padding-bottom: 15px;
      background: #0000005e; }
      .course-grid-layout2 .course-item .course-holder .info-on-hover h4 {
        font-size: 15px; }
      .course-grid-layout2 .course-item .course-holder .info-on-hover .price {
        color: #fff;
        font-size: 18px;
        font-weight: 600; }
      .course-grid-layout2 .course-item .course-holder .info-on-hover .origin-price {
        font-size: 13px;
        font-style: italic;
        text-decoration: line-through; }

.recent-post-carousel .post-item {
  color: #555; }
  .recent-post-carousel .post-item .post-thumbnail {
    margin-bottom: 20px; }
    .recent-post-carousel .post-item .post-thumbnail a:hover img {
      opacity: 0.7; }
  .recent-post-carousel .post-item .entry-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 28px;
    margin: 10px 0; }
    .recent-post-carousel .post-item .entry-title a {
      color: #555; }
      .recent-post-carousel .post-item .entry-title a:hover {
        color: #ffb606; }
  .recent-post-carousel .post-item .recent-news-meta {
    border-top: 1px solid #e9e9e9;
    border-bottom: 1px solid #e9e9e9;
    padding: 5px 0 6px;
    margin-bottom: 15px;
    color: #555; }
    .recent-post-carousel .post-item .recent-news-meta span {
      margin-right: 10px;
      font-size: 13px; }
      .recent-post-carousel .post-item .recent-news-meta span i {
        color: #ffb606;
        margin-right: 5px; }
  .recent-post-carousel .post-item p {
    font-size: 14px; }
  .recent-post-carousel .post-item .btn-readmore {
    border: 1px solid #bbb;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    color: #555;
    line-height: 1.25;
    padding-left: 15px;
    padding-right: 15px;
    text-transform: uppercase;
    font-size: 13px; }
    .recent-post-carousel .post-item .btn-readmore:hover {
      color: #ffb606;
      border-color: #ffb606; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX3ZhcmlhYmxlcy1zaXRlLnNjc3MiLCJfbWl4aW5zLW1hc3Rlci5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiX3R5cG9ncmFwaHkuc2NzcyIsIl9lbGVtZW50cy5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJfbmF2aWdhdGlvbi5zY3NzIiwiX3dpZGdldHMuc2NzcyIsIl9zaXRlLnNjc3MiLCJfbWVkaWEuc2NzcyIsIl9lbGVtZW50b3JzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLypcblRoZW1lIE5hbWU6IEVkdWNhdGlvbiBMTVMgU1VGRklYXG5UaGVtZSBVUkk6IGh0dHBzOi8vd3d3LmZpbGF0aGVtZXMuY29tL2Rvd25sb2FkL2VkdWNhdGlvbi1sbXMvXG5BdXRob3I6IEZpbGFUaGVtZXNcbkF1dGhvciBVUkk6IGh0dHBzOi8vd3d3LmZpbGF0aGVtZXMuY29tXG5EZXNjcmlwdGlvbjogRWR1Y2F0aW9uIExNUyBpcyBhIHNpbXBsZSwgY2xlYW4sIHJlc3BvbnNpdmUgYW5kIHVzZXItZnJpZW5kbHkgZWR1Y2F0aW9uIFdvcmRQcmVzcyB0aGVtZSBzcGVjaWFsbHkgZGVzaWduZWQgZm9yIHVuaXZlcnNpdHksIHNjaG9vbCwgY29sbGVnZSBvciBvdGhlciBlZHVjYXRpb25hbCBpbnN0aXR1dGlvbnMuIFRoZSBFZHVjYXRpb24gTE1TIHRoZW1lIGhhcyBwb3dlcmZ1bCB0aGVtZSBjdXN0b21pemF0aW9uIG9wdGlvbnMgc3VjaCBhcyBjdXN0b20gaGVhZGVyIG1lZGlhLCBsb2dvLCBjdXN0b20gbWVudSwgc29jaWFsIGljb25zLCBmZWF0dXJlZCBzbGlkZXIsIGNvdXJzZXMsIHRpdGxlIGJhciwgbmV3cywgYW5kIG1vcmUuIEl0IG1ha2VzIHlvdXIgd2Vic2l0ZSBtb3JlIGVuZ2FnaW5nIGFuZCBpbmZvcm1hdGl2ZS4gRXNwZWNpYWxseSwgdGhlIEVkdWNhdGlvbiBMTVMgdGhlbWUgd29ya3MgZXhjZWxsZW50IHdpdGggRWxlbWVudG9yIGFuZCBMZWFyblByZXNzIHBsdWdpbnMsIGhlbHAgeW91IGVhc2lseSBjcmVhdGUgZmxleGlibGUgY29udGVudCBhbmQgc2VsbCB0aGUgY291cnNlIG9ubGluZS4gRm9yIG1vcmUgZGV0YWlscywgY2hlY2sgb3V0IFRoZW1lIEluc3RydWN0aW9ucyBhdCBodHRwOi8vZG9jcy5maWxhdGhlbWVzLmNvbS9lZHVjYXRpb24tbG1zLyBhbmQgZGVtbyBhdCBodHRwczovL3d3dy5maWxhdGhlbWVzLmNvbS9kb3dubG9hZHMvZWR1Y2F0aW9uLWxtcy9cblZlcnNpb246IDAuMC42XG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IExJQ0VOU0VcblRleHQgRG9tYWluOiBlZHVjYXRpb24tbG1zXG5UYWdzOiBlZHVjYXRpb24sIG5ld3MsIGJsb2csIGN1c3RvbS1iYWNrZ3JvdW5kLCBjdXN0b20tbG9nbywgY3VzdG9tLWhlYWRlciwgY3VzdG9tLW1lbnUsIGZlYXR1cmVkLWltYWdlcywgdGhyZWFkZWQtY29tbWVudHMsIHRyYW5zbGF0aW9uLXJlYWR5LCByaWdodC1zaWRlYmFyLCBsZWZ0LXNpZGViYXIsIGZlYXR1cmVkLWltYWdlLWhlYWRlciwgZm9vdGVyLXdpZGdldHNcblxuVGhpcyB0aGVtZSwgbGlrZSBXb3JkUHJlc3MsIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBHUEwuXG5Vc2UgaXQgdG8gbWFrZSBzb21ldGhpbmcgY29vbCwgaGF2ZSBmdW4sIGFuZCBzaGFyZSB3aGF0IHlvdSd2ZSBsZWFybmVkIHdpdGggb3RoZXJzLlxuXG5FZHVjYXRpb24gTE1TIGlzIGJhc2VkIG9uIFVuZGVyc2NvcmVzIGh0dHBzOi8vdW5kZXJzY29yZXMubWUvLCAoQykgMjAxMi0yMDE3IEF1dG9tYXR0aWMsIEluYy5cblVuZGVyc2NvcmVzIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdQTCB2MiBvciBsYXRlci5cblxuTm9ybWFsaXppbmcgc3R5bGVzIGhhdmUgYmVlbiBoZWxwZWQgYWxvbmcgdGhhbmtzIHRvIHRoZSBmaW5lIHdvcmsgb2Zcbk5pY29sYXMgR2FsbGFnaGVyIGFuZCBKb25hdGhhbiBOZWFsIGh0dHBzOi8vbmVjb2xhcy5naXRodWIuaW8vbm9ybWFsaXplLmNzcy9cbiovXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbj4+PiBUQUJMRSBPRiBDT05URU5UUzpcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTm9ybWFsaXplXG4jIFR5cG9ncmFwaHlcbiMgRWxlbWVudHNcbiMgRm9ybXNcbiMgTmF2aWdhdGlvblxuXHQjIyBMaW5rc1xuXHQjIyBNZW51c1xuIyBBY2Nlc3NpYmlsaXR5XG4jIEFsaWdubWVudHNcbiMgQ2xlYXJpbmdzXG4jIFdpZGdldHNcbiMgQ29udGVudFxuXHQjIyBQb3N0cyBhbmQgcGFnZXNcblx0IyMgQ29tbWVudHNcbiMgSW5maW5pdGUgc2Nyb2xsXG4jIE1lZGlhXG5cdCMjIENhcHRpb25zXG5cdCMjIEdhbGxlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInZhcmlhYmxlcy1zaXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zLW1hc3RlclwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE5vcm1hbGl6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJlbGVtZW50c1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEZvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiZm9ybXNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBOYXZpZ2F0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibmF2aWdhdGlvblwiO1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgV2lkZ2V0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIndpZGdldHNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBDb250ZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2l0ZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIE1lZGlhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibWVkaWFcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFbGVtZW50b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiZWxlbWVudG9yc1wiO1xuIiwiJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk6ICNmZmY7XG4kY29sb3JfX2JhY2tncm91bmQtc2NyZWVuOiAjZjFmMWYxO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWhyOiAjY2NjO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjogI2U2ZTZlNjtcbiRjb2xvcl9fYmFja2dyb3VuZC1wcmU6ICNlZWU7XG4kY29sb3JfX2JhY2tncm91bmQtaW5zOiAjZmZmOWMwO1xuXG4kY29sb3JfX3RleHQtc2NyZWVuOiAjMjE3NTliO1xuJGNvbG9yX190ZXh0LWlucHV0OiAjNjY2O1xuJGNvbG9yX190ZXh0LWlucHV0LWZvY3VzOiAjMTExO1xuJGNvbG9yX19saW5rOiAjZmZiNjA2O1xuJGNvbG9yX19saW5rLXZpc2l0ZWQ6ICNmZmI2MDY7XG4kY29sb3JfX2xpbmstaG92ZXI6ICNmZmI2MDY7XG4kY29sb3JfX3RleHQtbWFpbjogIzQwNDA0MDtcblxuJGNvbG9yX19ib3JkZXItYnV0dG9uOiAjY2NjICNjY2MgI2JiYjtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1ob3ZlcjogI2NjYyAjYmJiICNhYWE7XG4kY29sb3JfX2JvcmRlci1idXR0b24tZm9jdXM6ICNhYWEgI2JiYiAjYmJiO1xuJGNvbG9yX19ib3JkZXItaW5wdXQ6ICNjY2M7XG4kY29sb3JfX2JvcmRlci1hYmJyOiAjNjY2O1xuXG4kZm9udF9fbWFpbjogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiRmb250X19jb2RlOiBNb25hY28sIENvbnNvbGFzLCBcIkFuZGFsZSBNb25vXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBtb25vc3BhY2U7XG4kZm9udF9fcHJlOiBcIkNvdXJpZXIgMTAgUGl0Y2hcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk6IDEuNTtcbiRmb250X19saW5lLWhlaWdodC1wcmU6IDEuNjtcblxuJHNpemVfX3NpdGUtbWFpbjogMTAwJTtcbiRzaXplX19zaXRlLXNpZGViYXI6IDI1JTtcblxuJGNvbHVtbnM6IChcbiAgICAgICAgMTogMTAwJSxcbiAgICAgICAgMjogNTAlLFxuICAgICAgICAzOiAzMy4zMyUsXG4gICAgICAgIDQ6IDI1JSxcbiAgICAgICAgNTogMjAlLFxuICAgICAgICA2OiAxNi42NiUsXG4gICAgICAgIDc6IDE0LjI4JSxcbiAgICAgICAgODogMTIuNSUsXG4gICAgICAgIDk6IDExLjExJVxuKTtcblxuJGNvbHVtbnNfX21hcmdpbjogMy44JTtcblxuIiwiLy8gUmVtIG91dHB1dCB3aXRoIHB4IGZhbGxiYWNrXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEpIHtcblx0Zm9udC1zaXplOiAoJHNpemVWYWx1ZSAqIDE1KSAqIDFweDtcbn1cblxuLy8gQ2VudGVyIGJsb2NrXG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4vLyBDbGVhciBhZnRlciAobm90IGFsbCBjbGVhcmZpeCBuZWVkIHRoaXMgYWxzbylcbkBtaXhpbiBjbGVhcmZpeC1hZnRlcigpIHtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbi8vIENvbHVtbiB3aWR0aCB3aXRoIG1hcmdpblxuQG1peGluIGNvbHVtbi13aWR0aCgkbnVtYmVyQ29sdW1uczogMykge1xuXHR3aWR0aDogbWFwLWdldCggJGNvbHVtbnMsICRudW1iZXJDb2x1bW5zICkgLSAoICggJGNvbHVtbnNfX21hcmdpbiAqICggJG51bWJlckNvbHVtbnMgLSAxICkgKSAvICRudW1iZXJDb2x1bW5zICk7XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuXHRtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG5cdGZvbnQtc2l6ZTogMmVtO1xuXHRtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG5cdGhlaWdodDogMDsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcblx0Zm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcblx0Zm9udC1zaXplOiA3NSU7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxMDAlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcblx0cGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKlx0XHRgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG5cdGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG5cdG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAzICovXG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cblx0b3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cblx0Zm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4iLCJib2R5LFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRmb250LWZhbWlseTogJGZvbnRfX21haW47XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxKTtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1ib2R5O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuZGZuLCBjaXRlLCBlbSwgaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAxLjVlbTtcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtcHJlO1xuICBmb250LWZhbWlseTogJGZvbnRfX3ByZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG4gIGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtcHJlO1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMS42ZW07XG59XG5cbmNvZGUsIGtiZCwgdHQsIHZhciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udF9fY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvcl9fYm9yZGVyLWFiYnI7XG4gIGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWlucztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuICBmb250LXNpemU6IDEyNSU7XG59XG5cbiIsImh0bWwge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHsgLyogSW5oZXJpdCBib3gtc2l6aW5nIHRvIG1ha2UgaXQgZWFzaWVyIHRvIGNoYW5nZSB0aGUgcHJvcGVydHkgZm9yIGNvbXBvbmVudHMgdGhhdCBsZXZlcmFnZSBvdGhlciBiZWhhdmlvcjsgc2VlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlLyAqL1xuXHRib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk7IC8qIEZhbGxiYWNrIGZvciB3aGVuIHRoZXJlIGlzIG5vIGN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9yIGRlZmluZWQuICovXG59XG5cbmhyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWhyO1xuXHRib3JkZXI6IDA7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxudWwsIG9sIHtcbiAgbWFyZ2luOiAwIDAgMS41ZW0gMDtcbn1cblxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxubGkgPiB1bCxcbmxpID4gb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luOiAwIDEuNWVtIDEuNWVtO1xufVxuXG5cbmltZyB7XG5cdGhlaWdodDogYXV0bzsgLyogTWFrZSBzdXJlIGltYWdlcyBhcmUgc2NhbGVkIGNvcnJlY3RseS4gKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBBZGhlcmUgdG8gY29udGFpbmVyIHdpZHRoLiAqL1xufVxuXG5maWd1cmUge1xuXHRtYXJnaW46IDFlbSAwOyAvKiBFeHRyYSB3aWRlIGltYWdlcyB3aXRoaW4gZmlndXJlIHRhZ3MgZG9uJ3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYS4gKi9cbn1cblxudGFibGUge1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiIsImJ1dHRvbixcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxM3B4IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbnRleHRhcmVhIHtcbiAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UzO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgcGFkZGluZzogMTJweDtcbiAgd2lkdGg6IDEwMCU7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2E5YTlhOTtcbiAgfVxufVxuXG5zZWxlY3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2JvcmRlci1pbnB1dDtcbn1cblxudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbn1cblxuZm9ybSB7XG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbi5scC1hcmNoaXZlLWNvdXJzZXMge1xuICBmb3JtW25hbWU9XCJzZWFyY2gtY291cnNlXCJdIC5zZWFyY2gtY291cnNlLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIExpbmtzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5hIHtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG5cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgfVxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIE1lbnVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAuMyk7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgLjMpO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEyZW07XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyID4gdWwsXG4gICAgICAgICAgICAgICAgJi5mb2N1cyA+IHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDpob3ZlciA+IGEsXG4gICAgICAgICAgICAuZm9jdXMgPiBhIHtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYTpob3ZlcixcbiAgICAgICAgICAgIGEuZm9jdXMge1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGk6aG92ZXIgPiB1bCxcbiAgICAgICAgbGkuZm9jdXMgPiB1bCB7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICAmOmhvdmVyID4gYSxcbiAgICAgICAgJi5mb2N1cyA+IGEge1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDQwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VycmVudF9wYWdlX2l0ZW0gPiBhLFxuICAgIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gICAgLmN1cnJlbnRfcGFnZV9hbmNlc3RvciA+IGEsXG4gICAgLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgIH1cbn1cblxuLm5hdi1mb3JtIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5uYXYtZm9ybSAubmF2LWNvbnRlbnQge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBtYXJnaW4tbGVmdDogLTUwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDI4MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLm5hdi1mb3JtLm9wZW4gLm5hdi1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm5hdi1mb3JtIC5uYXYtc3BlYyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi5uYXYtbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5uYXYtbWVudSB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1tZW51IHVsIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXYtbWVudSB1bCBsaSBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5uYXYtbWVudSB1bCBsaSBhOmhvdmVyLFxuLm5hdi1tZW51IHVsIGxpLmN1cnJlbnQtbWVudS1pdGVtIGEge1xuICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG59XG5cbi5uYXYtbWVudSB1bC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdi1tZW51IHVsLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLm5hdi1tZW51IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBzcGFuLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLm5hdi1tZW51IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBzcGFuLmFycm93OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbn1cblxuLm5hdi1tZW51IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBzcGFuLmFycm93LmFjdGl2ZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG4vKjxpZl9pc19wcmVtaXVtPiovXG5cbi8qIGhlYWRlciB0eXBlIDIgKi9cbi5oZWFkZXItdHlwZTIge1xuICAgIC5oZWFkZXItYm90dG9tIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG4uaGVhZGVyLXRvcCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgLmhlYWRlci1jb250YWN0LXdyYXBwZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgLmJ0bi1zZWNvbmRhcnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGFjdC1ib3gge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3gtaWNvbiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJveC10ZXh0IHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIC5jb250YWN0LXBob25lIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29udGFjdC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlYWRlci1ib3R0b20ge1xuICAgIGJhY2tncm91bmQ6ICMzMDdhZDU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5tYWluLW5hdmlnYXRpb24ge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIGxpIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX3RleHQtbWFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmYjYwNjtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWluLW5hdmlnYXRpb24gLmN1cnJlbnRfcGFnZV9pdGVtID4gYSxcbiAgICAubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gICAgLm1haW4tbmF2aWdhdGlvbiAuY3VycmVudF9wYWdlX2FuY2VzdG9yID4gYSxcbiAgICAubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmYjYwNjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgLmhlYWRlci1zb2NpYWxzIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmYjYwNjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vKiBoZWFkZXIgdHlwZSAzICovXG4uaGVhZGVyLXR5cGUzIHtcbiAgICAuaGVhZGVyLXRvcCAuaGVhZGVyLWNvbnRhY3Qtd3JhcHBlciB7XG4gICAgICAgIC5ib3gtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJveC1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLWJvdHRvbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC5uYXYtYnRuLXJpZ2h0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlYWRlci1zb2NpYWxzLXR5cGUzIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgYSB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuXG4uaGVhZGVyLXR5cGU0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIC5oZWFkZXItaW5uZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5tYWluLW5hdmlnYXRpb24gdWwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zaXRlLWxvZ28gYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubG9nby1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLyo8L2lmX2lzX3ByZW1pdW0+Ki9cblxuLmNvbW1lbnQtbmF2aWdhdGlvbixcbi5wb3N0cy1uYXZpZ2F0aW9uLFxuLnBvc3QtbmF2aWdhdGlvbiB7XG5cbiAgICAuc2l0ZS1tYWluICYge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXYtcHJldmlvdXMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICAubmF2LW5leHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgIH1cbn0iLCIud2lkZ2V0IHtcblx0bWFyZ2luOiAwIDAgMmVtO1xuXG5cdC8qIE1ha2Ugc3VyZSBzZWxlY3QgZWxlbWVudHMgZml0IGluIHdpZGdldHMuICovXG5cdHNlbGVjdCB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG5cblxuLndpZGdldC1hcmVhIHtcbiAgLndpZGdldC10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgfVxuICB9XG59XG5cbi53aWRnZXRfdGFnX2Nsb3VkIHtcbiAgYSB7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNhYWE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCA5cHg7XG4gICAgbWFyZ2luOiAwIDVweCA1cHggMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjVmNWY1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYyZjU7XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG59XG5cbi50aGVtZS1wb3N0cy13aWRnZXQge1xuICBsaSB7XG4gICAgcGFkZGluZzogMTBweCAwIDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLnAtdGh1bWJuYWlsIHtcbiAgICAgIG1heC13aWR0aDogNjBweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAucC1pbmZvIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3NXB4KTtcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgfVxuICAgIH1cbiAgICAuY291cnNlLXByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAucHJpY2Uge1xuICAgICAgICBtaW4td2lkdGg6IDQ3cHg7XG4gICAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAzYTlmNDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgIH1cbiAgICAgIC5vcmlnaW4tcHJpY2Uge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2UtcmV2aWV3IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAucmV2aWV3LXN0YXJzLXJhdGVkIC5yZXZpZXctc3RhcnMgbGkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgLnJldmlldy1zdGFycy1yYXRlZCAucmV2aWV3LXN0YXJzLmZpbGxlZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cbiAgICAgIC5yZXZpZXctc3RhcnMtcmF0ZWQgLnJldmlldy1zdGFycy5lbXB0eSwgLnJldmlldy1zdGFycy1yYXRlZCAucmV2aWV3LXN0YXJzLmZpbGxlZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAuNTVlbSAxZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5scC13aWRnZXQgLmxwLWNvdXJzZS1pbmZvLWZpZWxkcyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn0iLCJAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTIzMHB4O1xuICAgIH1cbn1cblxuI3BhZ2Uge1xuICAgIHRyYW5zaXRpb246IG1hcmdpbi1sZWZ0IC41cztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2l0ZS10aXRsZSB7XG4gICAgbWFyZ2luOiAxMHB4IDAgNXB4O1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQtbWFpbjtcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2l0ZS1icmFuZGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGRpdiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuc2l0ZS1sb2dvIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxufVxuXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG59XG5cbi5zaXRlLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jbWFpbiwgI3NlY29uZGFyeSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG59XG5cbiNtYWluIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTFlMmU0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG59XG5cbi5zaWRlYmFyLWlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbi5mdWxsLXdpZHRoICNtYWluLFxuLm5vLXNpZGViYXIgI21haW4ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4uc2luZ2xlLmxlZnQtc2lkZWJhciB7XG4gICAgI21haW4ge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlMWUyZTQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAuc2lkZWJhci1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIFRvcGJhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRvcGJhciB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGNvbG9yOiAjYWFhYWFhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICAud2lkZ2V0X3RleHQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDExcHggMCAxMnB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyX2xvZ2luX3VybCB7XG4gICAgICAgIG1hcmdpbjogMTFweCAwIDEycHggNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY29sb3I6ICNhYWFhYWE7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnZlcnRpY2FsX2RpdmlkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMDtcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWE5YTlhO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVhZGVyLWRlZmF1bHQge1xuICAgIHBhZGRpbmc6IDIwcHggMCAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCAxMHB4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDAuMDYpO1xuICAgIC5tYWluLW5hdmlnYXRpb24gdWwge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4uY2FydC1jb250ZW50cyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAuc3AtY291bnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgbGVmdDogMTNweDtcbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIFRpdGxlYmFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udGl0bGViYXIge1xuICAgIHBhZGRpbmc6IDUlIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ1Nzk5MjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgICAuaGVhZGVyLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAuYXJjaGl2ZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHJpYW5nbGVkX2NvbG9yZWRfc2VwYXJhdG9yIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgfVxufVxuXG4uYnJlYWRjcnVtYnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgcGFkZGluZzogMTNweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YwZjJmNTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjJmNTtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgUG9zdHMgYW5kIHBhZ2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhlbnRyeSB7XG4gICAgbWFyZ2luOiAwIDAgMy41ZW07XG59XG5cbi51cGRhdGVkOm5vdCgucHVibGlzaGVkKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtY29udGVudCxcbi5lbnRyeS1jb250ZW50LFxuLmVudHJ5LXN1bW1hcnkge1xuICAgIG1hcmdpbjogMS41ZW0gMCAwO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnZS1saW5rcyB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAwIDAgMS41ZW07XG59XG5cbi5ibG9nLWNvbnRlbnQge1xuICAgIC5wYWdlLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG4uYmxvZywgLmFyY2hpdmUsIC5zZWFyY2gge1xuICAgIC5lbnRyeS1oZWFkZXIge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAuZW50cnktZGF0ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgaGVpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgd2lkdGg6IDk1cHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZW50cnktY29udGFpbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gOTVweCk7XG4gICAgICAgICAgICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLSA5NXB4KTtcbiAgICAgICAgICAgIHdpZHRoOiAtbW96LWNhbGMoMTAwJSAtIDk1cHgpO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmVudHJ5LW1ldGEge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpbmdsZSwgLmFyY2hpdmUge1xuICAgIC5lbnRyeS1tZXRhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgfVxuXG59XG5cbmJvZHkgI2NvbnRlbnQgLmVudHJ5LWZvb3RlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLnNvY2lhbC1zaGFyZSBsaSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmZhY2Vib29rLXNvY2lhbCBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzNiNTk5ODtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYjU5OTg7XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuZ29vZ2xlcGx1cy1zb2NpYWwgYTpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkZDRiMzk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0YjM5O1xuICAgICAgICB9XG4gICAgICAgIGRpdi50d2l0dGVyLXNvY2lhbCBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzAwYWNlZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFjZWQ7XG4gICAgICAgIH1cbiAgICAgICAgZGl2LnBpbnRlcmVzdC1zb2NpYWwgYTpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNjYjIwMjc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2IyMDI3O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIG1hcmdpbjogMCAwIDdweDtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmgxLmVudHJ5LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucmVhZG1vcmUgYSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yX190ZXh0LW1haW47XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbW1lbnQtY29udGVudCBhIHtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5ieXBvc3RhdXRob3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29tbWVudC1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgICAgLmF2YXRhciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmOSBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2Y2ZjdmOSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxMHB4IDEwcHggMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtOXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29tbWVudC1tZXRhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbW1lbnQtYWN0aW9ucyBpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsLCBvbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNWVtO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgICBpbnB1dC5zdWJtaXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbi5zZWFyY2ggLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBGb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zaXRlLWZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogIzExMTtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgLmZvb3Rlci13aWRnZXRzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQtdGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIH1cbiAgICAuY29weXJpZ2h0LWFyZWEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyO1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1zb2NpYWwge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxOHB4O1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDFweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDlweCBzb2xpZCAjNzc3O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IC05cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX190ZXh0LW1haW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhY3QtaW5mby1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIC5jb250YWN0LXRleHQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGFjdC12YWx1ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICB9XG5cbn1cblxuLmNvbnRhY3QtaW5mby1ib3gge1xuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMjIENvdXJzZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xudWwubGVhcm4tcHJlc3MtY291cnNlcy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG59XG5cbiNsbXMtY291cnNlLWdyaWQge1xuICAgIC5jb3Vyc2UtZGVzY3JpcHRpb24sIC5jb3Vyc2UtcmVhZG1vcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuI2xtcy1jb3Vyc2UtbGlzdCB7XG4gICAgbGkuY29sLW1kLTQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLmNvdXJzZS1pdGVtIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlM2UzO1xuICAgICAgICB9XG4gICAgICAgIC5jb3Vyc2UtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuY291cnNlLWNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIC5jb3Vyc2UtYXV0aG9yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZS1tZXRhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgLnB1bGwtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb3Vyc2UtcHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb3Vyc2UtcmVhZG1vcmUge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4IDlweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDIuY291cnNlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zaW5nbGUtbHBfY291cnNlIHtcbiAgICAuY291cnNlLXRodW1ibmFpbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5jb3Vyc2UtbWV0YSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogI2NjYztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudmFsdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3YTdhN2E7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzdhN2E3YTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY291cnNlLWF1dGhvciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmF1dGhvci1jb250YWluIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZS1yZXZpZXcgLnJldmlldy1zdGFycy1yYXRlZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgICAgICAgICAuZmlsbGVkIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY291cnNlLXByaWNlIHtcbiAgICAgICAgLm9yaWdpbi1wcmljZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgY29sb3I6ICNmMjRjMGE7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvdXJzZS1pbmZvIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYWVhZWE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubHAtc2luZ2xlLWNvdXJzZSB7XG5cbiAgICAgICAgLmNvdXJzZS1tZXRhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB1bC5sZWFybi1wcmVzcy1uYXYtdGFicyB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlYWVhO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZS1uYXYuYWN0aXZlLCAuY291cnNlLW5hdjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cnNlLWN1cnJpY3VsdW0ge1xuICAgICAgICAgICAgdWwuY3VycmljdWx1bS1zZWN0aW9ucyAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC5jb3Vyc2UtaXRlbSAuc2VjdGlvbi1pdGVtLWxpbms6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZS1yYXRlIC5yZXZpZXctYmFyIC5yYXRpbmcge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvdXJzZS1yZXZpZXdzLWxpc3QsIC5jb3Vyc2UtcmV2aWV3cy1saXN0LXNob3J0Y29kZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmOGY5Zjk7XG4gICAgICAgICAgICAgICAgLnJldmlldy1hdXRob3ItaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC51c2VyLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnJldmlldy10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZXZpZXctdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI2xlYXJuLXByZXNzLWNvdXJzZS10YWJzIC5jb3Vyc2UtdGFiLXBhbmVsIHtcbiAgICAgICAgICAgIC5jb3Vyc2UtYXV0aG9yIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUFFQUVBO1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hdXRob3ItbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5zb2NpYWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hdXRob3ItYmlvIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5scC11c2VyLXByb2ZpbGUge1xuICAgIC5scC1zdWItbWVudSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgdWwubGVhcm4tcHJlc3MtY291cnNlcy5wcm9maWxlLWNvdXJzZXMtbGlzdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICB9XG59XG5cbi8qPGlmX2lzX3ByZW1pdW0+Ki9cbi5zaXRlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UgMHM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlIDBzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmhlYWRlci10cmFuc3BhcmVudCB7XG4gICAgLyogaW4gY2FzZSBlbmFibGUgc3RpY2t5IGhlYWRlciAqL1xuICAgIC5zaXRlLWhlYWRlci13cmFwLm5vLWZpeGVkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAudG9wYmFyLCAuaGVhZGVyLWRlZmF1bHQsIC5oZWFkZXItYm90dG9tLCAuaGVhZGVyLXRvcCwgLmhlYWRlci10eXBlNCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnNpdGUtdGl0bGUgYSxcbiAgICAgICAgLnNpdGUtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgLm1haW4tbmF2aWdhdGlvbiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fbGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2l0ZS1oZWFkZXItd3JhcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAmLm5vLXN0aWNreSB7XG4gICAgICAgIC8qIGluIGNhc2Ugbm8gZW5hYmxlIHN0aWNreSBoZWFkZXIgKi9cbiAgICAgICAgLnNpdGUtaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLnRvcGJhciwgLmhlYWRlci10b3AsIC5oZWFkZXItYm90dG9tLCAuaGVhZGVyLXR5cGU0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5oZWFkZXItZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zaXRlLXRpdGxlIGEsXG4gICAgICAgICAgICAuc2l0ZS1kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIC5tYWluLW5hdmlnYXRpb24gYSxcbiAgICAgICAgICAgIC5oZWFkZXItY29udGFjdC13cmFwcGVyIGxpIC5ib3gtdGV4dCAuY29udGFjdC1waG9uZSxcbiAgICAgICAgICAgIC5oZWFkZXItY29udGFjdC13cmFwcGVyIGxpIC5ib3gtdGV4dCAuY29udGFjdC10ZXh0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpdGUtaGVhZGVyLXdyYXAuZml4ZWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5zaXRlLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgIH1cbn1cblxuI3RvLXRvcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMjVweDtcbiAgICByaWdodDogMjVweDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmYjYwNjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4jdG8tdG9wOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjIyO1xufVxuXG4jdG8tdG9wLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5zd2l0Y2gtbGF5b3V0LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgbWluLWhlaWdodDogNTRweDtcbiAgICAuc3dpdGNoLWxheW91dCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBjb2xvcjogI2NjYztcbiAgICAgICAgICAgICYuc3dpdGNoLWFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmI2MDY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVhcm4tcHJlc3Mtc2VhcmNoLWNvdXJzZS1mb3JtIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNzBweCk7XG4gICAgICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtIDE3MHB4KTtcbiAgICAgICAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC0gMTcwcHgpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDdweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZiNjA2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmYjYwNjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDdweCAxM3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKjwvaWZfaXNfcHJlbWl1bT4qLyIsIi5wYWdlLWNvbnRlbnQgLndwLXNtaWxleSxcbi5lbnRyeS1jb250ZW50IC53cC1zbWlsZXksXG4uY29tbWVudC1jb250ZW50IC53cC1zbWlsZXkge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyogTWFrZSBzdXJlIGVtYmVkcyBhbmQgaWZyYW1lcyBmaXQgdGhlaXIgY29udGFpbmVycy4gKi9cbmVtYmVkLFxuaWZyYW1lLFxub2JqZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE1ha2Ugc3VyZSBsb2dvIGxpbmsgd3JhcHMgYXJvdW5kIGxvZ28gaW1hZ2UuICovXG4uY3VzdG9tLWxvZ28tbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBDYXB0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndwLWNhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuICAgICAgICBAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG4gICAgfVxuXG4gICAgLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICAgIG1hcmdpbjogMC44MDc1ZW0gMDtcbiAgICB9XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgR2FsbGVyaWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgZ2FsbGVyeSBjb2x1bW5zLlxuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG4gICAgICAgIC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0gJiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJGNvbHVtbnMsICRpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hbGlnbmxlZnQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuXG5cbi5hbGlnbndpZGUge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5hbGlnbmZ1bGwge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4ud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsIGltZyB7XG4gICAgd2lkdGg6IDEwMHZ3O1xufVxuXG4ud3AtYmxvY2stdmlkZW8gdmlkZW8ge1xuICAgIG1heC13aWR0aDogNjM2cHg7XG59XG5cbi53cC1ibG9jay1pbWFnZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud3AtYmxvY2staW1hZ2UuYWxpZ25sZWZ0LFxuLndwLWJsb2NrLWltYWdlLmFsaWducmlnaHQge1xuICAgIHdpZHRoOiAxMDAlXG59XG5cbi53cC1ibG9jay1nYWxsZXJ5Om5vdCguY29tcG9uZW50cy1wbGFjZWhvbGRlcikge1xuICAgIG1hcmdpbjogMS41ZW0gYXV0bztcbn1cblxuLndwLWJsb2NrLWNvdmVyLXRleHQgcCB7XG4gICAgcGFkZGluZzogMS41ZW0gMTRweDtcbn1cblxudWwud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmFsaWdud2lkZSxcbnVsLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbmZ1bGwsXG51bC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5hbGlnbndpZGUsXG51bC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5hbGlnbndpZGUge1xuICAgIHBhZGRpbmc6IDAgMTRweDtcbn1cblxuLndwLWJsb2NrLXRhYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ud3AtYmxvY2stdGFibGUgdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgd2lkdGg6IDEwMCVcbn1cblxuLndwLWJsb2NrLXRhYmxlIHRkLCAud3AtYmxvY2stdGFibGUgdGgge1xuICAgIHBhZGRpbmc6IC41ZW07XG59XG5cbi53cC1ibG9jay1lbWJlZC50eXBlLXZpZGVvID4gLndwLWJsb2NrLWVtYmVkX193cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG5cbi53cC1ibG9jay1lbWJlZC50eXBlLXZpZGVvID4gLndwLWJsb2NrLWVtYmVkX193cmFwcGVyID4gaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmlzLWxhcmdlIHtcbiAgICBtYXJnaW46IDAgYXV0byAxNnB4O1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlPnA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1zZXBhcmF0b3Ige1xuICAgIG1hcmdpbjogM2VtIGF1dG87XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweDtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50OyAvKiBNYW55IHNjcmVlbiByZWFkZXIgYW5kIGJyb3dzZXIgY29tYmluYXRpb25zIGFubm91bmNlIGJyb2tlbiB3b3JkcyBhcyB0aGV5IHdvdWxkIGFwcGVhciB2aXN1YWxseS4gKi9cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtc2NyZWVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfX3RleHQtc2NyZWVuO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDAuODc1KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbiAgICB9XG59XG5cbi8qIERvIG5vdCBzaG93IHRoZSBvdXRsaW5lIG9uIHRoZSBza2lwIGxpbmsgdGFyZ2V0LiAqL1xuI2NvbnRlbnRbdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbn1cblxuLmNsZWFyOmJlZm9yZSxcbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmJlZm9yZSxcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDpiZWZvcmUsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmJlZm9yZSxcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWNvbnRlbnQ6YmVmb3JlLFxuLnNpdGUtY29udGVudDphZnRlcixcbi5zaXRlLWZvb3RlcjpiZWZvcmUsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeC1hZnRlcjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgUXVlcmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1vYmlsZS1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMzBweDtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJi5uYXYtaXMtdmlzaWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoLTFweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoLTFweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCkgdHJhbnNsYXRlWSgtMXB4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoLTFweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KSB0cmFuc2xhdGVZKC0xcHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoMHB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoMHB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCkgdHJhbnNsYXRlWSgwcHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpIHRyYW5zbGF0ZVkoMHB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KSB0cmFuc2xhdGVZKDBweCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogcm90YXRlIDAuMnMsIHRyYW5zbGF0ZSAwLjJzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IHJvdGF0ZSAwLjJzLCB0cmFuc2xhdGUgMC4ycztcbiAgICAgICAgdHJhbnNpdGlvbjogcm90YXRlIDAuMnMsIHRyYW5zbGF0ZSAwLjJzO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG4gICAgICAgICAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMnM7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuMnM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vYmlsZS1tZW51IHNwYW46YmVmb3JlIHtcbiAgICB0b3A6IC04cHg7XG59XG5cbi5tb2JpbGUtbWVudSBzcGFuOmFmdGVyIHtcbiAgICB0b3A6IDhweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICNtb2JpbGUtb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMTRweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5uYXYtZm9ybS5vcGVuIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgICAjc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLWRlZmF1bHQge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgfVxuICAgIC5oZWFkZXItYm90dG9tIHtcbiAgICAgICAgLmhlYWRlci1zb2NpYWxzIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXItdHlwZTMsIC5oZWFkZXItdHlwZTIge1xuICAgICAgICAjbW9iaWxlLW9wZW4ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB0b3A6IDE0cHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubmF2LWlzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyLXR5cGU0IHtcbiAgICAgICAgLmxvZ28tbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItNCB7XG4gICAgICAgIC5uYXYtbWVudSB1bCBsaS5zaXRlLWxvZ28ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU5MHB4KSB7XG4gICAgLmhlYWRlci10b3AgLmhlYWRlci1jb250YWN0LXdyYXBwZXIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAuYm94LXRleHQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0OTlweCkge1xuXG4gICAgLnRpdGxlYmFyIC5oZWFkZXItdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgfVxuICAgIC5zaW5nbGUtbHBfY291cnNlIC5jb3Vyc2UtbWV0YSA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIC5mZWF0dXJlLXNsaWRlciAuc2xpY2stc2xpZGUgLmZlYXR1cmUtc2xpZGUtaW5uZXIgLmZlYXR1cmUtc2xpZGUtY29udGVudCBoMi5mZWF0dXJlLXNsaWRlLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAjbG1zLWNvdXJzZS1saXN0IGxpLmNvbC1tZC00IC5jb3Vyc2UtdGh1bWJuYWlsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgICNsbXMtY291cnNlLWxpc3QgbGkuY29sLW1kLTQgLmNvdXJzZS1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAuc3dpdGNoLWxheW91dC1jb250YWluZXIgLmxlYXJuLXByZXNzLXNlYXJjaC1jb3Vyc2UtZm9ybSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcbiAgICB9XG4gICAgLmhlYWRlci10eXBlMyAuaGVhZGVyLWJvdHRvbSBhLm5hdi1idG4tcmlnaHQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIH1cblxuICAgIC5jb3Vyc2UtZ3JpZC1sYXlvdXQyIC5pbnRyby1pdGVtIC5hbGwtY291cnNlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuICAgIC5jYXJvdXNlbC13cmFwcGVyIC5idG4tdmlldy1hbGwge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNhcm91c2VsLXdyYXBwZXIgLmJ0bi12aWV3LWFsbCBhLmJ0bi1hbGwtY291cnNlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5jYXJvdXNlLWdyaWQgLmNvdXJzZS1ncmlkLWJveCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIuc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDRcIjtcbiAgICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgICByaWdodDogMjBweDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgIH1cbn1cblxuLmZlYXR1cmUtc2xpZGVyIHtcblxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAuZmVhdHVyZS1zbGlkZS1iZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxMHM7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOiAxMHM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMHM7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLXNsaWRlLnNsaWNrLWFjdGl2ZSAuZmVhdHVyZS1zbGlkZS1iZyB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyMHM7XG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDIwcztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZS1zbGlkZS1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLmZlYXR1cmUtc2xpZGUtY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU5JTtcbiAgICAgICAgICAgIGgyLmZlYXR1cmUtc2xpZGUtaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYS5zbGlkZS1idXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTQ0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE0cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY291cnNlLWl0ZW0ge1xuICAgIC5jb3Vyc2UtdGh1bWJuYWlsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAub3JpZ2luLXByaWNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogNzZweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDE1cHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmI2MDY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgei1pbmRleDogMTE7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvdXJzZS1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5jb3Vyc2UtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuICAgICAgICAgICAgbWFyZ2luOiAxMXB4IDAgMjJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb3Vyc2UtYXV0aG9yIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjhweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4NDg0ODQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZS1tZXRhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTNweCA3cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xNXB4O1xuICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4NDg0ODQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY291cnNlLXJldmlldyB7XG4gICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAzcHggMCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5jb3Vyc2UtcmV2aWV3IHtcbiAgICAucmV2aWV3LXN0YXJzLXJhdGVkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgLnJldmlldy1zdGFycyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmI2MDY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWxsZWQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBjb2xvcjogI2YwNWExOTtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2Fyb3VzZWwtd3JhcHBlciB7XG5cbiAgICBoMi50aXRsZSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgdG9wOiAtNTVweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDU1cHg7XG4gICAgfVxufVxuXG5cbi8qIENvdXJzZSBHcmlkICovXG5hLmJ0bi1hbGwtY291cnNlcyB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yX19saW5rLWhvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLXRvcDogMjJweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfX2xpbmstaG92ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbn1cbi5jYXJvdXNlLWdyaWQge1xuICAgXG4gICAgLmNvdXJzZS1ncmlkLWJveCB7XG4gICAgICAgIFxuICAgICAgICAmOm50aC1jaGlsZCgzKSwgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3Vyc2UtaG9sZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NiU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDI0cHggNTBweCAzcHggcmdiYSgwLDAsMCwuMik7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyNHB4IDUwcHggM3B4IHJnYmEoMCwwLDAsLjIpO1xuXG4gICAgICAgICAgICAgICAgLmNvdXJzZS1iZyB7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW5mby1vbi1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5jb3Vyc2UtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvdXJzZS1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3Vyc2UtaG9sZGVyLWlubmVyLCBhLmNvdXJzZV9saW5rICB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyMDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY291cnNlLWJnIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwLjYlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UsdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UsdHJhbnNmb3JtIC4zcyBlYXNlLC13ZWJraXQtdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzBweCwwLDApO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwcHgsMCwwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluZm8tb24taG92ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsbGVmdCBib3R0b20sbGVmdCB0b3AsZnJvbShyZ2JhKDAsMCwwLC44KSksdG8odHJhbnNwYXJlbnQpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZyxyZ2JhKDAsMCwwLC44KSAwLHRyYW5zcGFyZW50IDEwMCUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgLmNvdXJzZS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb3Vyc2UtcHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5vcmlnaW4tcHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIENvdXJzZSBsYXlvdXQgMiAqL1xuLmNvdXJzZS1maWx0ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyBcblxuICAgIGRpdiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAgICYubWl4aXR1cC1jb250cm9sLWFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyOyAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn1cbi5jb3Vyc2UtZ3JpZC1sYXlvdXQyIHtcblxuICAgICYgPiAuY29sLW1kLTMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIH1cblxuICAgIC5pbnRyby1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICAgICAgXG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDEyLjlweCAxNS4zcHggMThweCAwIHJnYmEoMCwwLDAsLjE1KTtcbiAgICAgICAgLWtodG1sLWJveC1zaGFkb3c6IDEyLjlweCAxNS4zcHggMThweCAwIHJnYmEoMCwwLDAsLjE1KTtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAxMi45cHggMTUuM3B4IDE4cHggMCByZ2JhKDAsMCwwLC4xNSk7XG4gICAgICAgIC1tcy1ib3gtc2hhZG93OiAxMi45cHggMTUuM3B4IDE4cHggMCByZ2JhKDAsMCwwLC4xNSk7XG4gICAgICAgIC1vLWJveC1zaGFkb3c6IDEyLjlweCAxNS4zcHggMThweCAwIHJnYmEoMCwwLDAsLjE1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMTIuOXB4IDE1LjNweCAxOHB4IDAgcmdiYSgwLDAsMCwuMTUpO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDYsMS4wNSk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4wNiwxLjA1KTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDYsMS4wNSk7XG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMDYsMS4wNSk7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbGwtY291cnNlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMjhweCA5cHggMjlweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDEyLjlweCAxNS4zcHggMThweCAwIHJnYmEoMCwwLDAsLjA4KTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDQuNXB4IDUuNHB4IDEwcHggMCByZ2JhKDAsMCwwLC4wNik7XG4gICAgICAgICAgICAgICAgICAgIC1raHRtbC1ib3gtc2hhZG93OiA0LjVweCA1LjRweCAxMHB4IDAgcmdiYSgwLDAsMCwuMDYpO1xuICAgICAgICAgICAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IDQuNXB4IDUuNHB4IDEwcHggMCByZ2JhKDAsMCwwLC4wNik7XG4gICAgICAgICAgICAgICAgICAgIC1tcy1ib3gtc2hhZG93OiA0LjVweCA1LjRweCAxMHB4IDAgcmdiYSgwLDAsMCwuMDYpO1xuICAgICAgICAgICAgICAgICAgICAtby1ib3gtc2hhZG93OiA0LjVweCA1LjRweCAxMHB4IDAgcmdiYSgwLDAsMCwuMDYpO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA0LjVweCA1LjRweCAxMHB4IDAgcmdiYSgwLDAsMCwuMDYpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvdXJzZS1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgLmNvdXJzZS1ob2xkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNvdXJzZS1iZyB7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3Vyc2UtaG9sZGVyLWlubmVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZV9saW5rIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZS1iZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMC42JTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UsLXdlYmtpdC10cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLHRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLHRyYW5zZm9ybSAuM3MgZWFzZSwtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwcHgsMCwwKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMHB4LDAsMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5mby1vbi1ob3ZlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwNWU7XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm9yaWdpbi1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZWNlbnQtcG9zdC1jYXJvdXNlbCB7XG4gICAgLnBvc3QtaXRlbSB7XG4gICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAucG9zdC10aHVtYm5haWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVjZW50LW5ld3MtbWV0YSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U5ZTllOTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllOWU5O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDAgNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvcl9fbGluay1ob3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgICAgIC5idG4tcmVhZG1vcmUge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW9CRTtBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0VB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 */

 /* Remove admin toolbar | 10851056-hc */
#wpadminbar { display: none; }
