/*------------------------------------------------------------------
 TABLE OF CONTENTS:

- Base styles for common elements
- Bootstrap style customizations
-   Grid rows
- Primary site preloader
- Scroll top button
- Site pagination
- Site header commons
- Header elements (logo, extras, etc)
- Header desktop navigation
- Fullscreen mobile navigation
- Fullscreen search
- Header stuck state
- Header responsiveness
- Site footer styles
- Page intro block
-   Intro commons
- Portfolio listing
- Testimonials slider
- Theme progress bars
- Pricing tables
- FAQ page
- Clients page
- Mailchimp subscribe block
- 404 page
- Simple text rotator plugin styles
- Typed js integration
- Site socials VC widget
- Visual Composer custom text widget
- Basic blogroll styles
- Blogroll post formats
- Blog sidebar design
- Blogroll single page styles
-------------------------------------------------------------------*/


/* ============================================================================= */
/* Base styles for common elements. */
/* ============================================================================= */
html {
  -webkit-font-smoothing: antialiased;
}

body {
  position: relative;
  overflow-x: hidden;
  letter-spacing: 0.04em;
}

body::-webkit-scrollbar-track {
  background: #ddd;
}

body::-webkit-scrollbar {
  width: 6px;
  background: #ddd;
}

body::-webkit-scrollbar-thumb {
  background: #C3AC6D;
}

body.disable-hover {
  pointer-events: none;
}

p {
  margin-bottom: 2rem;
}

a {
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  outline: none;
}

hr {
  border-color: #eee;
  display: inline-block;
  width: 100%;
}

button, input, optgroup, select, textarea {
  font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif;
}

.wp-caption,
.sp-widget-block img,
.sp-blog-block img {
  max-width: 100%;
  height: auto;
}

button, input, select, textarea {
  max-width: 100%;
}

#sp-wrapper {
  background: #fff;
  position: relative;
  z-index: 10;
}

.form-control {
  letter-spacing: 0.04em;
}

.sp-marg30 {
  margin-top: 30px;
}

.sp-marg50 {
  margin-top: 50px;
}

@media (max-width: 767px) {
  .text-right {
    text-align: center !important;
  }
  .text-left {
    text-align: center !important;
  }
  [class*='col-'] {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .sp-marg30, .sp-marg50 {
    margin-top: 30px;
  }
}

.sp-section {
  position: relative;
  z-index: 992;
  padding-top: 110px;
  padding-bottom: 110px;
  background-color: #fff;
}

.sp-section.demo .container {
  width: 1500px;
}

.sp-section.demo .row {
  margin-left: -20px;
  margin-right: -20px;
}

.sp-section.demo [class*='col-'] {
  padding-left: 20px;
  padding-right: 20px;
}

.sp-section.pt0 {
  padding-top: 0px;
}

.sp-section.pb0 {
  padding-bottom: 0px;
}

.sp-section.none {
  padding: 0;
}

.sp-section.border {
  border-top: 1px solid #eee;
}

.sp-section.white {
  color: #fff;
}

.sp-section.white h1, .sp-section.white h2, .sp-section.white h3, .sp-section.white h4, .sp-section.white h5, .sp-section.white h6 {
  color: #fff;
}

.sp-section.little {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media (max-width: 767px) {
  .sp-section.little {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

.sp-section.bg-color-light {
  background: #f5f5f5;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}

.sp-section.bg-color-dark {
  background: #333;
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
  color: #fff;
}

.sp-section img {
  max-width: 100%;
}

@media (max-width: 767px) {
  .sp-section {
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center;
  }
}

.sp-title-block {
  width: 100%;
  margin-bottom: 2rem;
  text-transform: capitalize;
}

.sp-title-block.line h3 {
  margin-bottom: 1.4rem;
}

.sp-title-block.line span {
  margin-bottom: 1.4rem;
  display: block;
}

.sp-title-block.line:after {
  content: '';
  height: 25px;
  width: 2px;
  background: #C3AC6D;
  display: inline-block;
  text-align: center;
}

.sp-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}

.jarallax {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

/* ================================= button vc schortcode */
.sp-btn-container.align_center {
  text-align: center;
}

.sp-btn-container.align_left {
  text-align: left;
}

.sp-btn-container.align_right {
  text-align: right;
}

/* ================================= typed.js integration */
.typed-cursor {
  -webkit-animation: typed-blink 0.7s infinite;
          animation: typed-blink 0.7s infinite;
  opacity: 1;
  display: inline-block;
}

@-webkit-keyframes typed-blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes typed-blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* ============================================================================= */
/* Bootstrap style customizations. */
/* ============================================================================= */
/* ================================= grid rows */
.row {
  max-width: none !important;
}

/* ================================= buttons and other form controls */
.btn {
  cursor: pointer;
}

.btn-lg {
  font-size: 15px;
  font-weight: 400;
}

.btn-white {
  color: #333;
  background-color: #fff;
  border-color: #fff;
}

.form-control:-webkit-autofill {
  -webkit-transition: none;
  -webkit-box-shadow: 0 0 0 30px #fff inset;
}

/* ================================= carousels */
.carousel-indicators {
  margin-bottom: 2rem;
}

.carousel-indicators li {
  border-radius: 50%;
  background-color: #fff;
  -webkit-transition: background-color 0.25s;
  transition: background-color 0.25s;
}

.carousel-indicators li:hover, .carousel-indicators li.active {
  background-color: #C3AC6D;
}

.carousel-fade .carousel-inner .carousel-item {
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.carousel-fade .carousel-inner .carousel-item,
.carousel-fade .carousel-inner .active.carousel-item-left,
.carousel-fade .carousel-inner .active.carousel-item-right {
  opacity: 0;
}

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-inner .carousel-item-prev.carousel-item-right {
  opacity: 1;
}

.carousel-fade .carousel-inner .carousel-item-next,
.carousel-fade .carousel-inner .carousel-item-prev,
.carousel-fade .carousel-inner .active.carousel-item-left,
.carousel-fade .carousel-inner .active.carousel-item-right {
  left: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

/* ================================= progress bar */
.progress {
  background-color: #ddd;
  border-radius: 0;
}

.progress .progress-bar {
  background-color: #222;
  height: 5px;
}

/* ================================= input groups */
.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn {
  border-radius: 0;
}

.input-group .font-size,
.input-group .input-group-addon,
.input-group .input-group-btn {
  z-index: 10;
}

/* ============================================================================= */
/* Primary site preloader. */
/* ============================================================================= */
#sp-preloader {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 15000;
  background: #fff;
}

#sp-preloader:after {
  content: '';
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -25px;
  margin-left: -25px;
}

#sp-preloader:after {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: inline-block;
  background: #C3AC6D;
  -webkit-animation: 1.15s infinite ease-in-out;
          animation: 1.15s infinite ease-in-out;
  -webkit-animation-name: sp-site-loader;
          animation-name: sp-site-loader;
}

#sp-preloader:after:before, #sp-preloader:after:after {
  -webkit-animation: 1.15s infinite ease-in-out;
          animation: 1.15s infinite ease-in-out;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}

@-webkit-keyframes sp-site-loader {
  from {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 0;
  }
}

@keyframes sp-site-loader {
  from {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 0;
  }
}

/* ============================================================================= */
/* Scroll top button. */
/* ============================================================================= */
.sp-scroll-top {
  position: fixed;
  padding: 10px;
  text-align: center;
  right: 30px;
  bottom: 30px;
  color: #fff;
  -webkit-transform: translate3d(0, 20px, 0);
          transform: translate3d(0, 20px, 0);
  -webkit-transition: all 0.55s ease;
  transition: all 0.55s ease;
  z-index: 1000;
  border-radius: 20px;
  background-color: #C3AC6D;
  opacity: 0;
  line-height: 1;
  visibility: hidden;
}

.sp-scroll-top.scroll-top-visible {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
  visibility: visible;
}

.sp-scroll-top > i {
  width: 20px;
  height: 20px;
  line-height: 20px;
  color: #fff;
  display: inline-block;
  opacity: 1;
  font-size: 20px;
  vertical-align: middle;
}

.sp-scroll-top > .anno-text {
  padding-left: 10px;
  padding-right: 5px;
  white-space: nowrap;
  display: none;
  font-size: 14px;
  text-transform: uppercase;
  vertical-align: middle;
}

.sp-scroll-top:hover {
  background: #222;
  color: #fff;
}

/* ============================================================================= */
/* Site pagination. */
/* ============================================================================= */
.sp-pagination {
  text-align: center;
  font-size: 0;
}

.sp-pagination ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.sp-pagination ul li {
  font-weight: bold;
  display: inline;
}

.sp-pagination ul li a {
  display: inline-block;
  font-size: 18px;
  padding: 10px 25px;
  color: #333;
}

.sp-pagination ul li.current a, .sp-pagination ul li:hover a {
  color: #C3AC6D;
}

@media (max-width: 767px) {
  .sp-pagination {
    margin-top: 0;
  }
}

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

.slick-slider:hover .slick-arrow.circle.slick-next {
  right: 15px;
  opacity: 1;
}

.slick-slider:hover .slick-arrow.circle.slick-prev {
  left: 15px;
  opacity: 1;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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

.slick-arrow {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.6;
  color: inherit;
  border: 0;
  outline: none !important;
  background: transparent;
  -webkit-appearance: none;
  font-size: 0;
  display: inline-block;
  padding: 0;
  line-height: 1;
  z-index: 100;
}

.slick-arrow:hover {
  opacity: 1;
}

.slick-arrow:before {
  font-family: "sp-theme-icons";
  content: "\f3d2";
  font-size: 40px;
}

.slick-arrow.slick-next {
  left: auto;
  right: 0;
}

.slick-arrow.slick-next:before {
  content: '\f3d3';
}

.slick-arrow.slick-disabled {
  opacity: 0.2;
  pointer-events: none;
}

.slick-arrow.circle {
  font-size: 18px;
  background: #fff;
  cursor: pointer;
  position: absolute;
  top: 50%;
  text-align: center;
  margin-top: -18px;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  text-decoration: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  line-height: 36px;
}

.slick-arrow.circle:before {
  content: none;
}

.slick-arrow.circle > i {
  position: relative;
  color: #333;
}

.slick-arrow.circle:hover {
  background: #C3AC6D;
}

.slick-arrow.circle:hover i {
  color: #fff;
}

.slick-arrow.circle.slick-next {
  right: 0;
  opacity: 0;
}

.slick-arrow.circle.slick-prev {
  left: 0;
  opacity: 0;
}

.slick-dots {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  margin-top: 30px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 150;
  line-height: 1;
  font-size: 0;
}

.slick-dots > li {
  display: inline-block;
}

.slick-dots button {
  color: transparent;
  text-indent: -9999px;
  -webkit-appearance: none;
  display: inline-block;
  height: 1em;
  width: 1em;
  margin-right: .4em;
  margin-left: .4em;
  padding: 0;
  border: 0;
  outline: none !important;
  border-radius: 50%;
  background: #ddd;
  -webkit-transition: background-color 0.25s;
  transition: background-color 0.25s;
  font-size: 0.9375rem;
}

.slick-dots > li:hover button, .slick-dots > li.slick-active button {
  background-color: #C3AC6D;
}

.slick-dots-inside .slick-dots {
  position: absolute;
  bottom: 2.625rem;
  margin-top: 0;
}

.slick-dots-inside .slick-dots button {
  background: #fff;
  font-size: 1rem;
}

/* ============================================================================= */
/* Site header commons. */
/* ============================================================================= */
#sp-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1050;
  background: transparent;
  color: #fff;
  padding: 20px 30px;
  border-bottom: 1px solid transparent;
}

#sp-header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* ============================================================================= */
/* Header elements (logo, extras, etc) */
/* ============================================================================= */
#sp-header-inner > .brand-logo {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: inherit;
  font-size: 2.1rem;
  margin-right: auto;
  min-width: 0;
  line-height: 1;
}

#sp-header-inner > .brand-logo > h1 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  color: inherit;
}

#sp-header-inner > .brand-logo > h1 > span {
  color: #C3AC6D;
}

#sp-header-inner > .brand-logo img {
  max-width: 100%;
  height: auto;
}

#sp-header-inner > .brand-logo img.logo-dark {
  display: none;
}

#sp-header-inner > .header-extras {
  font-size: 0;
  line-height: 1;
  margin-left: 30px;
  margin-right: -10px;
  border-left: 1px solid currentColor;
  padding-left: 20px;
}

#sp-header-inner > .header-extras > * {
  vertical-align: middle;
}

#sp-header-inner > .header-extras > a {
  padding: 5px 10px;
  color: inherit;
  display: inline-block;
}

#sp-header-inner > .header-extras > a > i {
  font-size: 22px;
}

#sp-header-inner > .header-extras > a:hover {
  opacity: 0.6;
}

#sp-header-inner > .header-extras > .v-separator {
  display: inline-block;
  width: 1px;
  height: 22px;
  background: currentColor;
  margin: 0 30px;
}

/* ============================================================================= */
/* Header desktop navigation. */
/* ============================================================================= */
#sp-primary-nav {
  text-align: right;
  line-height: 1;
}

#sp-primary-nav > .nav_menu {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  margin: 0 -17px;
  font-size: 0;
}

#sp-primary-nav > .nav_menu::after {
  display: block;
  content: "";
  clear: both;
}

#sp-primary-nav > .nav_menu > li {
  position: relative;
  display: inline-block;
}

#sp-primary-nav > .nav_menu > li > a {
  display: inline-block;
  font-size: 16px;
  white-space: nowrap;
  padding: 15px 17px;
  font-weight: 400;
  color: inherit;
  text-transform: uppercase;
  -webkit-transition-property: opacity, color, background;
  transition-property: opacity, color, background;
}

#sp-primary-nav > .nav_menu > li.menu-item-has-children > a:after {
  padding-left: 7px;
  content: '\e821';
  font-size: 14px;
  font-family: "sp-theme-icons";
}

#sp-primary-nav > .nav_menu > li:hover > a {
  opacity: 0.6;
}

#sp-primary-nav > .nav_menu > li.menu-item-has-children:hover > a {
  opacity: 1;
  background: #fff;
  color: #333;
}

#sp-primary-nav > .nav_menu .sub-menu {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  -webkit-transform: translate3d(0, -10px, 0);
          transform: translate3d(0, -10px, 0);
  -webkit-transition: opacity 0.25s, visibility 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.25s, visibility 0.35s, -webkit-transform 0.35s;
  transition: transform 0.35s, opacity 0.25s, visibility 0.35s;
  transition: transform 0.35s, opacity 0.25s, visibility 0.35s, -webkit-transform 0.35s;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background: #fff;
  text-align: left;
}

#sp-primary-nav > .nav_menu .sub-menu.invert-attach-point {
  left: auto;
  right: 0;
}

#sp-primary-nav > .nav_menu .sub-menu > li {
  display: inline-block;
  position: relative;
}

#sp-primary-nav > .nav_menu .sub-menu > li > a {
  position: relative;
  display: inline-block;
  padding: 10px 20px;
  font-size: 15px;
  color: #333;
  width: 220px;
  line-height: 1.75;
  white-space: normal;
  -webkit-transition-property: background;
  transition-property: background;
  text-transform: capitalize;
  border-top: 1px solid #eee;
}

#sp-primary-nav > .nav_menu .sub-menu > li.menu-item-has-children > a:after {
  right: 20px;
  position: absolute;
  padding-left: 7px;
  content: '\e81f';
  font-size: 14px;
  font-family: "sp-theme-icons";
}

#sp-primary-nav > .nav_menu .sub-menu > li:hover > a {
  background: #f5f5f5;
}

#sp-primary-nav > .nav_menu .sub-menu .sub-menu {
  -webkit-transform: translate3d(-10px, 0, 0);
          transform: translate3d(-10px, 0, 0);
  left: 100%;
  top: 0;
}

#sp-primary-nav > .nav_menu .sub-menu .sub-menu.invert-attach-point {
  -webkit-transform: translate3d(10px, 0, 0);
          transform: translate3d(10px, 0, 0);
  right: 100%;
  left: auto;
}

#sp-primary-nav > .nav_menu > li.sp-mega-menu > ul {
  border-top: 1px solid #eee;
}

#sp-primary-nav > .nav_menu > li.sp-mega-menu > ul > li > a {
  width: 200px;
  border-top: 0;
  border-bottom: 1px solid #eee;
  border-right: 1px solid #eee;
}

#sp-primary-nav > .nav_menu > li.sp-mega-menu.mega-2-columns > ul {
  -webkit-columns: 2;
  columns: 2;
}

#sp-primary-nav > .nav_menu > li.sp-mega-menu.mega-3-columns > ul {
  -webkit-columns: 3;
  columns: 3;
}

#sp-primary-nav > .nav_menu li.menu-item-has-children:hover > .sub-menu {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
  visibility: visible;
}

/* ============================================================================= */
/* Fullscreen mobile navigation. */
/* ============================================================================= */
#sp-mobile-nav-bg, #sp-mobile-nav-container {
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
  opacity: 0;
  visibility: hidden;
}

#sp-mobile-nav-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1030;
  background: rgba(0, 0, 0, 0.85);
}

#sp-mobile-nav-container {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1040;
  border-top: 0 solid transparent;
  border-bottom: 25px solid transparent;
  overflow: hidden;
}

#sp-mobile-nav-container > .overlay-inner-wrap {
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  left: 50%;
  margin-left: -200px;
  width: 400px;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  text-align: center;
}

/* ================================= fn menu toggle */
#sp-primary-nav #sp-mobile-nav-trigger {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  font-size: 18px;
  z-index: 1040;
  margin: 15px 0;
  width: 1.5em;
  height: 1em;
  color: inherit;
  -webkit-transition: none;
  transition: none;
}

#sp-primary-nav #sp-mobile-nav-trigger > span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: currentColor;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: all .3s ease-in-out, color 0.25s;
  transition: all .3s ease-in-out, color 0.25s;
}

#sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(1) {
  top: 0;
}

#sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(2), #sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(3) {
  top: 50%;
  margin-top: -1px;
}

#sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(4) {
  bottom: 0;
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(1) {
  top: 50%;
  width: 0;
  left: 50%;
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(2) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger > span:nth-child(4) {
  bottom: 50%;
  width: 0;
  left: 50%;
}

/* ================================= social icons */
#sp-mobile-nav-container .sp-soc-icons {
  margin-top: 15px;
  font-size: 0;
  opacity: 0;
}

#sp-mobile-nav-container .sp-soc-icons > a {
  display: inline-block;
  color: #C3AC6D;
  padding: 0 15px;
  opacity: 1;
  font-size: 23px;
}

#sp-mobile-nav-container .sp-soc-icons > a:hover {
  color: #fff;
}

/* ================================= inner nav menu */
#sp-mobile-nav-container .nav_menu {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

#sp-mobile-nav-container .nav_menu li > a.sub-active {
  color: #C3AC6D;
}

#sp-mobile-nav-container .nav_menu li.menu-item-has-children > a {
  position: relative;
}

#sp-mobile-nav-container .nav_menu li.menu-item-has-children > a:after {
  content: '\f3d0';
  font-family: "sp-theme-icons";
  margin-left: 5px;
  font-size: 12px;
  position: absolute;
  top: 50%;
  margin-top: 2px;
  line-height: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

#sp-mobile-nav-container .nav_menu > li {
  position: relative;
  opacity: 0;
}

#sp-mobile-nav-container .nav_menu > li > a {
  font-size: 20px;
  line-height: 35px;
  text-transform: uppercase;
  margin-bottom: 15px;
  display: block;
  color: #fff;
  font-weight: 400;
}

#sp-mobile-nav-container .nav_menu > li > a:hover {
  color: #C3AC6D;
}

#sp-mobile-nav-container .nav_menu .sub-menu {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  padding: 0 0 15px;
  display: none;
}

#sp-mobile-nav-container .nav_menu .sub-menu a {
  font-size: 16px;
  font-weight: 400;
  text-align: center;
  margin-bottom: 10px;
  color: #fff;
  text-transform: none;
  display: block;
}

#sp-mobile-nav-container .nav_menu .sub-menu a:hover {
  color: #C3AC6D;
}

#sp-mobile-nav-container .nav_menu .sub-menu .sub-menu {
  padding-top: 5px;
}

/* ================================= active state */
html.sp-active-burger-menu, html.sp-active-burger-menu > body {
  position: relative;
  height: 100%;
  overflow: hidden;
}

html.sp-active-burger-menu #sp-mobile-nav-bg, html.sp-active-burger-menu #sp-mobile-nav-container {
  opacity: 1;
  visibility: visible;
}

html.sp-active-burger-menu #sp-mobile-nav-container .nav_menu > li, html.sp-active-burger-menu #sp-mobile-nav-container .sp-soc-icons {
  -webkit-animation: sp-menu-effect 0.4s linear forwards;
  animation: sp-menu-effect 0.4s linear forwards;
}

html.sp-active-burger-menu #sp-header.header-stuck .brand-logo .logo-dark {
  display: none;
}

html.sp-active-burger-menu #sp-header.header-stuck .brand-logo .logo-white {
  display: block;
}

@-webkit-keyframes sp-menu-effect {
  from {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes sp-menu-effect {
  from {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
  to {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

/* ============================================================================= */
/* Fullscreen search. */
/* ============================================================================= */
#sp-search-block-container {
  margin: 0;
  padding: 0;
  border: 0;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: rgba(0, 0, 0, 0.85);
  visibility: hidden;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
  z-index: 10000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#sp-search-block-container > .search-block-inner {
  padding: 0 30px;
  -webkit-transform: translate3d(0, 20px, 0);
          transform: translate3d(0, 20px, 0);
  width: 600px;
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s;
  text-align: center;
  opacity: 0;
}

#sp-search-block-container > .search-block-inner > form {
  position: relative;
}

#sp-search-block-container .search-input {
  position: relative;
  z-index: 10005;
  -webkit-appearance: none;
  background: transparent;
  padding: 15px 45px 15px 0;
  border: none;
  font-size: 30px;
  width: 100%;
  border-bottom: 1px solid #fff;
  outline: none;
  color: #fff;
}

#sp-search-block-container .search-input::-webkit-input-placeholder {
  color: #fff;
}

#sp-search-block-container .search-input::-moz-placeholder {
  color: #fff;
}

#sp-search-block-container .search-input:-moz-placeholder {
  color: #fff;
}

#sp-search-block-container .search-input:-ms-input-placeholder {
  color: #fff;
}

#sp-search-block-container .search-btn {
  -webkit-appearance: none;
  border: none;
  background: transparent;
  outline: 0;
  cursor: pointer;
  font-size: 35px;
  color: #fff;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
  opacity: 0.85;
  padding: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 45px;
  text-align: right;
  z-index: 10010;
}

#sp-search-block-container .search-btn:hover {
  opacity: 1;
}

#sp-search-block-container .close-search {
  position: absolute;
  top: 10px;
  right: 30px;
  line-height: 1;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

#sp-search-block-container .close-search i {
  font-size: 70px;
  color: #fff;
}

#sp-search-block-container .close-search:hover {
  opacity: 0.6;
}

#sp-search-block-container.open {
  opacity: 1;
  visibility: visible;
}

#sp-search-block-container.open > .search-block-inner {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
}

/* ============================================================================= */
/* Header stuck state. */
/* ============================================================================= */
#sp-header {
  position: fixed;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

#sp-header a {
  -webkit-transition-duration: 0.25s;
          transition-duration: 0.25s;
}

body.admin-bar #sp-header {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar #sp-header {
    top: 46px;
  }
}

#sp-header.header-stuck {
  position: fixed;
  padding-top: 15px;
  padding-bottom: 15px;
}

#sp-header.header-stuck .brand-logo {
  font-size: 2rem;
}

#sp-header.header-stuck .brand-logo .logo-dark {
  display: block;
}

#sp-header.header-stuck .brand-logo .logo-white {
  display: none;
}

/* ================================= slide-in scroll animation */
#sp-header.stuck-slidein {
  position: absolute;
  -webkit-transition: none;
  transition: none;
}

#sp-header.stuck-slidein:not(.header-stuck) {
  top: 0;
}

#sp-header.stuck-slidein.header-stuck {
  position: fixed;
  -webkit-animation: sp-header-stuck-slidein 500ms 1 forwards;
          animation: sp-header-stuck-slidein 500ms 1 forwards;
}

@-webkit-keyframes sp-header-stuck-slidein {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes sp-header-stuck-slidein {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

/* ================================= scroll styles */
body:not(.sp-active-burger-menu) #sp-header.header-stuck {
  background: #fff;
  border-bottom-color: #eee;
  color: #333;
  -webkit-box-shadow: 0 3px 20px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 20px 5px rgba(0, 0, 0, 0.1);
}

/* ============================================================================= */
/* Header responsiveness. */
/* ============================================================================= */
@media (max-width: 1199px) {
  #sp-primary-nav > .nav_menu {
    display: none;
  }
}

@media (min-width: 1200px) {
  #sp-primary-nav > #sp-mobile-nav-trigger {
    display: none;
  }
}

@media (max-width: 575px) {
  #sp-header {
    padding: 10px 15px !important;
  }
  #sp-header-inner > .brand-logo {
    font-size: 1.6rem !important;
    padding-right: 30px;
  }
  #sp-header-inner > .header-extras {
    display: none;
  }
}

/* ============================================================================= */
/* Site footer styles. */
/* ============================================================================= */
#sp-footer-sizing-helper {
  display: none;
}

#sp-footer {
  background: #222;
  width: 100%;
}

#sp-footer.sp-footer-fixed {
  position: fixed;
  bottom: 0;
  left: 0;
}

#sp-footer.sp-footer-fixed + #sp-footer-sizing-helper {
  display: block;
}

#sp-footer .container {
  padding-left: 25px;
  padding-right: 25px;
}

#sp-footer .container .row {
  margin-left: -25px;
  margin-right: -25px;
}

#sp-footer .container .row [class*='col-'] {
  padding-left: 25px;
  padding-right: 25px;
}

@media (max-width: 767px) {
  #sp-footer .container .row [class*='col-'] {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

#sp-footer > .sp-main-footer {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
  border-bottom: 1px solid #333;
  color: #fff;
}

@media (max-width: 767px) {
  #sp-footer > .sp-main-footer {
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center;
  }
}

#sp-footer > .sp-main-footer .title-block h4 {
  color: #fff;
}

#sp-footer > .sp-main-footer .soclink-block ul {
  padding: 0px;
  margin-top: 2rem;
  margin-bottom: 0;
}

#sp-footer > .sp-main-footer .soclink-block ul li {
  display: inline-block;
  list-style: none;
  padding-right: 20px;
}

#sp-footer > .sp-main-footer .soclink-block ul li a {
  color: #C3AC6D;
  border-radius: 50%;
  font-size: 23px;
  display: inline-block;
  text-align: center;
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
}

#sp-footer > .sp-main-footer .soclink-block ul li a:hover {
  color: #fff;
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
}

#sp-footer > .sp-main-footer .twitter-block ul {
  padding-left: 50px;
  margin: 0;
}

#sp-footer > .sp-main-footer .twitter-block ul li {
  list-style: none;
  padding-bottom: 1.3rem;
}

#sp-footer > .sp-main-footer .twitter-block ul li:last-child {
  padding-bottom: 0;
}

#sp-footer > .sp-main-footer .twitter-block ul li:before {
  content: '\f242';
  font-family: 'sp-theme-icons';
  color: #c3ac6d;
  font-size: 30px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  top: 5px;
  display: inline-block;
  position: relative;
  margin-right: 22px;
  line-height: 1;
  height: 100%;
  margin-left: -50px;
}

#sp-footer > .sp-main-footer .instagram-block {
  margin-left: -5px;
}

#sp-footer > .sp-main-footer .instagram-block ul {
  padding: 0;
  margin: 0;
}

#sp-footer > .sp-main-footer .instagram-block ul li {
  list-style: none;
  float: left;
  width: 25%;
  padding: 5px;
}

#sp-footer > .sp-main-footer .instagram-block ul li img {
  max-width: 100%;
}

#sp-footer > .sp-main-footer .instagram-block a {
  display: inline-block;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

#sp-footer > .sp-main-footer .instagram-block a:hover {
  opacity: 0.6;
}

#sp-footer > .sp-end-footer {
  position: relative;
  padding: 25px 0;
  color: #fff;
  font-size: 0.9rem;
  line-height: 1;
}

#sp-footer > .sp-end-footer > .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#sp-footer > .sp-end-footer a {
  color: #fff;
}

#sp-footer > .sp-end-footer a:hover {
  color: #C3AC6D;
}

#sp-footer > .sp-end-footer .menu-block {
  margin-left: auto;
}

#sp-footer > .sp-end-footer .menu-block ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

#sp-footer > .sp-end-footer .menu-block ul li {
  display: inline;
}

#sp-footer > .sp-end-footer .menu-block ul li:after {
  content: '|';
  padding: 0 10px;
}

#sp-footer > .sp-end-footer .menu-block ul li:last-child:after {
  display: none;
}

@media (max-width: 991px) {
  #sp-footer > .sp-end-footer {
    text-align: center;
  }
  #sp-footer > .sp-end-footer > .container {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #sp-footer > .sp-end-footer .end-footer-block {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  #sp-footer > .sp-end-footer .end-footer-block + .end-footer-block {
    padding-top: 20px;
  }
}

/* ============================================================================= */
/* Page intro block. */
/* ============================================================================= */
/* ================================= intro commons */
.sp-intro {
  position: relative;
  overflow: hidden;
  text-align: center;
  width: 100%;
  color: #fff;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.sp-intro .intro-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 10;
}

.sp-intro .intro-bg:before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.55;
  content: '';
  z-index: 15;
}

.sp-intro .intro-bg.no-overlay:before {
  display: none;
}

.sp-intro .intro-bg > img {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  width: 100%;
  height: 100%;
}

.sp-intro .intro-dotted-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../images/dotted-bg-pattern.png");
  z-index: 17;
}

.sp-intro .intro-body {
  position: relative;
  z-index: 20;
  padding: 50px 25px;
}

@media (max-width: 575px) {
  .sp-intro .intro-body {
    padding: 50px 15px;
  }
}

.sp-intro .intro-body h1, .sp-intro .intro-body h2, .sp-intro .intro-body h3, .sp-intro .intro-body h4, .sp-intro .intro-body h5, .sp-intro .intro-body h6, .sp-intro .intro-body p, .sp-intro .intro-body a {
  color: #fff;
}

.sp-intro .intro-body .btn-white {
  color: #333;
}

.sp-intro .intro-body .btn-border {
  border: 2px solid  #fff;
}

.sp-intro .intro-body .btn-border:hover {
  color: #333;
}

.sp-intro .intro-body .list-inline {
  margin: 0 -10px -20px;
}

.sp-intro .intro-body .list-inline li {
  display: inline-block;
  margin: 0 10px 20px;
}

.sp-intro .intro-body p {
  width: 100%;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.sp-intro .intro-body p:last-child {
  margin-bottom: 0;
}

.sp-intro .intro-body .btn {
  text-shadow: none;
  border-radius: 30px;
  padding: 8px 22px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.sp-intro .intro-body .sp-intro-image-icon {
  margin-bottom: 2.5rem;
}

.sp-intro .intro-body .icon-big {
  font-size: 90px;
  line-height: 90px;
}

.sp-intro.fullscreen {
  height: 100vh;
  min-height: 450px;
}

.sp-intro.fullscreen .intro-body {
  padding: 75px 25px 75px 25px;
}

.sp-intro.kenburns .intro-bg {
  -webkit-animation: sp-intro-kenburns 30s;
          animation: sp-intro-kenburns 30s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.sp-intro:not(.fullscreen):first-child {
  padding-top: 50px;
}

@-webkit-keyframes sp-intro-kenburns {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}

@keyframes sp-intro-kenburns {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}

.sp-intro .intro-title {
  line-height: 1;
  font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif;
  font-weight: 500;
  text-transform: capitalize;
  margin-bottom: 2.5rem;
}

.sp-intro .intro-title:last-child {
  margin-bottom: 0;
}

.sp-intro .intro-title.intro-title-1 {
  font-size: 4.3rem;
}

.sp-intro .intro-title.intro-title-2 {
  font-size: 2.15rem;
}

.sp-intro .intro-title.intro-title-3 {
  font-size: 1.43333rem;
}

.sp-intro .intro-title.intro-title-4 {
  font-size: 1.075rem;
}

.sp-intro .intro-title.intro-title-5 {
  font-size: 0.86rem;
}

.sp-intro .intro-title.intro-title-6 {
  font-size: 0.71667rem;
}

@media (max-width: 767px) {
  .sp-intro .intro-title.intro-title-1 {
    font-size: 3.2rem;
  }
  .sp-intro .intro-title.intro-title-2 {
    font-size: 1.6rem;
  }
  .sp-intro .intro-title.intro-title-3 {
    font-size: 1.06667rem;
  }
  .sp-intro .intro-title.intro-title-4 {
    font-size: 0.8rem;
  }
  .sp-intro .intro-title.intro-title-5 {
    font-size: 0.64rem;
  }
  .sp-intro .intro-title.intro-title-6 {
    font-size: 0.53333rem;
  }
}

@media (max-width: 575px) {
  .sp-intro .intro-title.intro-title-1 {
    font-size: 3rem;
  }
  .sp-intro .intro-title.intro-title-2 {
    font-size: 1.5rem;
  }
  .sp-intro .intro-title.intro-title-3 {
    font-size: 1rem;
  }
  .sp-intro .intro-title.intro-title-4 {
    font-size: 0.75rem;
  }
  .sp-intro .intro-title.intro-title-5 {
    font-size: 0.6rem;
  }
  .sp-intro .intro-title.intro-title-6 {
    font-size: 0.5rem;
  }
}

.sp-intro .intro-regular-text {
  line-height: 1.75;
  text-transform: inherit;
  margin-bottom: 2.5rem;
}

.sp-intro .sp-scroll-down-cta {
  position: relative;
  display: inline-block;
  height: 40px;
  width: 30px;
  margin-top: 2rem;
}

.sp-intro .sp-scroll-down-cta i {
  font-size: 40px;
  line-height: 1;
}

.sp-intro .sp-scroll-down-cta > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  -webkit-animation: sp-scrolldown-arrow 2.5s infinite;
          animation: sp-scrolldown-arrow 2.5s infinite;
}

@media (max-width: 575px) {
  .sp-intro .sp-scroll-down-cta {
    margin-top: 1rem;
  }
}

@-webkit-keyframes sp-scrolldown-arrow {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(0, 30px);
            transform: translate(0, 30px);
    opacity: 0;
  }
}

@keyframes sp-scrolldown-arrow {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(0, 30px);
            transform: translate(0, 30px);
    opacity: 0;
  }
}

/* ================================= image intro */
.sp-intro.sp-intro-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* ================================= carousel intro */
.sp-intro.sp-intro-carousel .slider-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.sp-intro.sp-intro-carousel.fullscreen .slider-item {
  height: 100vh;
  min-height: 450px;
}

.sp-intro.sp-intro-carousel .slick-arrow {
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

@media (max-width: 991px) {
  .sp-intro.sp-intro-carousel .slick-arrow {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .sp-intro.sp-intro-carousel .slick-dots {
    display: none !important;
  }
}

/* ================================= video intro */
.sp-intro.sp-intro-video {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.sp-intro.sp-intro-video > .intro-body {
  z-index: 30;
}

.sp-intro.sp-intro-video > .video-container, .sp-intro.sp-intro-video > .video-container:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.sp-intro.sp-intro-video > .video-container:after {
  background: #000;
  opacity: 0.5;
  content: '';
  z-index: 15;
}

.sp-intro.sp-intro-video > .video-container > .video-placeholder {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 10;
}

.sp-intro.sp-intro-video > .video-container > .video-controls {
  position: absolute;
  bottom: 25px;
  right: 30px;
  margin: 0 -10px;
  line-height: 1;
  z-index: 20;
  display: none;
}

.sp-intro.sp-intro-video > .video-container > .video-controls > a {
  display: inline-block;
  min-width: 46px;
  color: inherit;
  opacity: 0.5;
  font-size: 28px;
  padding: 5px 10px;
}

.sp-intro.sp-intro-video > .video-container > .video-controls > a:hover {
  opacity: 1;
}

@media (max-width: 767px) {
  .sp-intro.sp-intro-video > .video-container > .video-controls {
    display: none;
  }
}

/* About Us */
#sp-about p {
  margin-bottom: 0px;
}

span.sp-signature {
  width: 100%;
  font-size: 23px;
  display: block;
  margin-top: 20px;
  font-family: 'Shadows Into Light', cursive;
  font-style: italic;
  letter-spacing: 2px;
  -webkit-transform: rotate(-3deg) !important;
          transform: rotate(-3deg) !important;
}

/* Services */
.sp-services-container {
  margin-bottom: -50px;
}

.sp-services-container .sp-services-block {
  margin-bottom: 50px;
}

@media (max-width: 767px) {
  .sp-services-container {
    margin-bottom: -30px;
  }
  .sp-services-container .sp-services-block {
    margin-bottom: 30px;
  }
}

.sp-services-block .icon {
  font-size: 65px;
  margin-bottom: 1rem;
  color: #111;
}

.sp-services-block .title h4 {
  font-size: 19px;
  margin-bottom: 1rem;
}

.sp-services-block .text {
  margin-bottom: 0;
}

/* Team */
.sp-team-block {
  margin-top: 10px;
}

.sp-team-block .image {
  position: relative;
  margin-bottom: 1rem;
}

.sp-team-block .image:before {
  content: '';
  background: rgba(0, 0, 0, 0.15);
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 4px;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

.sp-team-block .image img {
  max-width: 100%;
  border-radius: 4px;
}

.sp-team-block .image .soc-links {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.sp-team-block .image .soc-links ul {
  display: inline-block;
  text-align: center;
  padding: 0;
  margin: 0;
}

.sp-team-block .image .soc-links ul li {
  float: left;
  opacity: 0;
  visibility: hidden;
  list-style: none;
  margin: 0 10px;
  text-align: center;
  font-size: 25px;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
  -webkit-transform: translate3d(0, 20px, 0);
          transform: translate3d(0, 20px, 0);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.sp-team-block .image .soc-links ul li a {
  color: #fff;
}

.sp-team-block .image .soc-links ul li a:hover {
  opacity: 0.75;
}

.sp-team-block .title h4 {
  font-size: 21px;
  margin-bottom: 0.5rem;
}

.sp-team-block .type {
  color: #999;
}

.sp-team-block:hover .image ul li {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
}

.sp-team-block:hover .image ul li:first-child {
  -webkit-transition-delay: 0.15s;
          transition-delay: 0.15s;
}

.sp-team-block:hover .image ul li:nth-child(2) {
  -webkit-transition-delay: 0.20s;
          transition-delay: 0.20s;
}

.sp-team-block:hover .image ul li:nth-child(3) {
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s;
}

.sp-team-block:hover .image ul li:nth-child(4) {
  -webkit-transition-delay: 0.30s;
          transition-delay: 0.30s;
}

.sp-team-block:hover .image:before {
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

/* Fun Fact */
.sp-animate-numbers.white h2 {
  color: #fff;
}

.sp-animate-numbers.white p {
  color: #fff;
}

.sp-animate-numbers h2 {
  font-size: 55px;
  line-height: 90px;
  letter-spacing: 7px;
  margin-bottom: 0;
}

.sp-animate-numbers p {
  font-size: 21px;
  margin-bottom: 0;
}

/* ============================================================================= */
/* Portfolio listing. */
/* ============================================================================= */
.sp-portfolio-block {
  overflow: hidden;
  width: 100%;
}

.sp-portfolio-block .sp-portfolio-sorting {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  margin-bottom: 50px;
}

.sp-portfolio-block .sp-portfolio-sorting li {
  display: inline-block;
}

.sp-portfolio-block .sp-portfolio-sorting li:after {
  content: '/';
  padding: 0 1rem;
  font-size: 15px;
}

.sp-portfolio-block .sp-portfolio-sorting li:last-child:after {
  content: none;
}

.sp-portfolio-block .sp-portfolio-sorting li a {
  color: #333;
}

.sp-portfolio-block .sp-portfolio-sorting li.active > a {
  color: #C3AC6D;
}

@media (max-width: 575px) {
  .sp-portfolio-block .sp-portfolio-sorting {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .sp-portfolio-block .sp-portfolio-sorting li:after {
    display: none;
  }
  .sp-portfolio-block .sp-portfolio-sorting li {
    padding: 0 1rem;
  }
}

.sp-portfolio-block.inner .sp-portfolio-sorting {
  margin-bottom: 100px;
}

.sp-portfolio-block.inner .sp-portfolio-sorting li {
  margin: 0 10px 10px 10px;
}

.sp-portfolio-block.inner .sp-portfolio-sorting li > a {
  display: inline-block;
  border-radius: 4px;
  background: #eee;
  -webkit-transition: background 0.25s linear;
  transition: background 0.25s linear;
  padding: 6px 18px;
}

.sp-portfolio-block.inner .sp-portfolio-sorting li:hover > a,
.sp-portfolio-block.inner .sp-portfolio-sorting li.active > a {
  background: #C3AC6D;
  color: #fff;
}

.sp-portfolio-block.inner .sp-portfolio-sorting li:after {
  content: none;
}

.sp-portfolio-block.inner .sp-portfolio-items {
  margin-left: -30px;
  margin-right: -30px;
  width: auto;
}

.sp-portfolio-block.inner .sp-portfolio-items [class^="col-"], .sp-portfolio-block.inner .sp-portfolio-items [class*=" col-"] {
  padding-left: 15px;
  padding-right: 15px;
}

.sp-portfolio-block.inner .sp-portfolio-items .sp-portfolio-item {
  padding: 0;
  margin-bottom: 30px;
}

.sp-portfolio-block.inner .sp-portfolio-items .sp-portfolio-item.x2 a {
  height: 708px;
}

.sp-portfolio-block.inner .sp-portfolio-items .sp-portfolio-item a {
  height: 340px;
}

.sp-portfolio-items {
  margin-left: -17px;
  margin-right: -17px;
  width: auto;
}

.sp-portfolio-items [class^="col-"], .sp-portfolio-items [class*=" col-"] {
  padding: 0;
}

.sp-portfolio-item {
  padding: 2px;
}

.sp-portfolio-item.x2 a {
  height: 704px;
}

.sp-portfolio-item a {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 350px;
  position: relative;
  display: block;
  cursor: pointer;
}

.sp-portfolio-item a .portfolio-hover {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  padding: 50px 50px 0 50px;
}

.sp-portfolio-item a .portfolio-hover h5 {
  color: #fff;
  font-size: 1.4rem;
  margin-bottom: 0;
  text-align: left;
  position: relative;
  -webkit-transform: translate3d(-20px, 0, 0);
          transform: translate3d(-20px, 0, 0);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 0;
}

.sp-portfolio-item a .portfolio-hover span.desc {
  color: #fff;
  text-align: left;
  position: relative;
  display: block;
  margin-top: 20px;
  width: 70%;
  -webkit-transform: translate3d(-20px, 0, 0);
          transform: translate3d(-20px, 0, 0);
  -webkit-transition: all 0.65s;
  transition: all 0.65s;
  opacity: 0;
}

.sp-portfolio-item a .portfolio-hover span.link {
  color: #fff;
  font-size: 3.3rem;
  text-align: left;
  position: absolute;
  bottom: 30px;
  left: 50px;
  line-height: 1;
  -webkit-transform: translate3d(-20px, 0, 0);
          transform: translate3d(-20px, 0, 0);
  -webkit-transition: all 0.75s;
  transition: all 0.75s;
  opacity: 0;
}

.sp-portfolio-item:hover .portfolio-hover {
  background: rgba(0, 0, 0, 0.65);
}

.sp-portfolio-item:hover .portfolio-hover h5 {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.sp-portfolio-item:hover .portfolio-hover span.desc {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.sp-portfolio-item:hover .portfolio-hover span.link {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.sp-portfolio-item img {
  max-width: 100%;
  height: auto;
}

.sp-portfolio-list.unlist {
  margin-bottom: 3rem;
}

.sp-portfolio-list.unlist li {
  display: inline-block;
  margin: 0 20px;
}

.sp-portfolio-list.unlist li:last-child {
  margin: 0 20px;
}

.sp-portfolio-list ul {
  padding: 0;
  margin: 0;
}

.sp-portfolio-list ul li {
  list-style: none;
  line-height: 1;
  margin-bottom: 1rem;
}

.sp-portfolio-list ul li:last-child {
  margin: 0;
}

.sp-portfolio-list ul li i {
  font-size: 30px;
  padding-right: 8px;
  position: relative;
  top: 5px;
}

.sp-portfolio-bar-left a {
  color: #333;
}

.sp-portfolio-bar-left a:hover {
  color: #C3AC6D;
}

.sp-portfolio-bar-left a:hover:before {
  color: #C3AC6D;
  -webkit-transition: color 0.25s linear;
  transition: color 0.25s linear;
}

.sp-portfolio-bar-left a:before {
  font-family: 'sp-theme-icons';
  font-size: 21px;
  color: #333;
  content: '\f3d2';
  top: 2px;
  position: relative;
  margin-right: 10px;
  -webkit-transition: color 0.25s linear;
  transition: color 0.25s linear;
}

.sp-portfolio-bar-right a {
  color: #333;
}

.sp-portfolio-bar-right a:hover {
  color: #C3AC6D;
}

.sp-portfolio-bar-right a:hover:after {
  color: #C3AC6D;
  -webkit-transition: color 0.25s linear;
  transition: color 0.25s linear;
}

.sp-portfolio-bar-right a:after {
  font-family: 'sp-theme-icons';
  font-size: 21px;
  color: #333;
  content: '\f3d3';
  top: 2px;
  position: relative;
  margin-left: 10px;
  -webkit-transition: color 0.25s linear;
  transition: color 0.25s linear;
}

.sp-portfolio-bar-center {
  margin-top: 5px;
}

.sp-portfolio-bar-center a {
  line-height: 1;
  font-size: 30px;
  color: #333;
}

.sp-portfolio-bar-center a:hover {
  color: #C3AC6D;
}

#sp-single-portfolio .sp-single-heading {
  position: relative;
}

#sp-single-portfolio .sp-single-heading h1 {
  position: absolute;
  top: 0;
  line-height: 1;
  font-weight: bold;
}

#sp-single-portfolio .sp-single-heading h1:after {
  font-family: 'sp-theme-icons';
  font-size: 50px;
  color: #333;
  content: '\f3d6';
  padding-left: 30px;
  line-height: 1;
  position: relative;
  top: 3px;
}

#sp-single-portfolio h3 {
  margin-top: 5px;
}

#sp-single-portfolio .sp-single-portfolio-soc {
  margin-top: 2rem;
}

#sp-single-portfolio .sp-single-portfolio-soc ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  font-size: 0;
  max-width: none;
}

#sp-single-portfolio .sp-single-portfolio-soc ul li {
  display: inline;
}

#sp-single-portfolio .sp-single-portfolio-soc ul li a {
  display: inline-block;
  font-size: 18px;
  color: #333;
  padding: 5px 14px;
}

#sp-single-portfolio .sp-single-portfolio-soc ul li a:hover {
  color: #C3AC6D;
}

/* Animated Circle */
.sp-circle {
  position: relative;
  display: inline-block;
  margin: 0 15px;
  vertical-align: top;
  text-align: center;
  width: 125px;
  padding-top: 42px;
  height: 125px;
}

.sp-circle canvas {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

.sp-circle span {
  font-weight: 700;
  font-size: 17px;
}

.sp-circle span:after {
  content: '%';
  margin-left: 0.1em;
}

@media (max-width: 575px) {
  .sp-circle {
    margin-top: 15px;
    margin-bottom: 0;
  }
}

@media (max-width: 991px) {
  .sp-circle {
    margin-bottom: 15px;
  }
}

.sp-circle-text {
  margin-top: -5px;
  font-size: 14px;
}

@media (max-width: 991px) {
  #sp-magic .text-right {
    text-align: center !important;
  }
}

/* ============================================================================= */
/* Testimonials slider. */
/* ============================================================================= */
.sp-slick-testimonials .slick-dots {
  margin-top: 15px;
}

.sp-testimonials-block {
  text-align: center;
}

.sp-testimonials-block .text {
  margin-bottom: 0;
}

.sp-testimonials-block .photo img {
  border-radius: 50%;
  width: 80px;
  height: 80px;
  margin-top: 2rem;
}

.sp-testimonials-block .name {
  margin-bottom: 1rem;
  margin-top: 2rem;
}

.sp-testimonials-block .name:empty {
  display: none;
}

/* Contacts */
.sp-contacts-list ul {
  padding: 0;
  margin: 0;
}

.sp-contacts-list ul li {
  list-style: none;
  margin-bottom: 0.45rem;
}

.sp-contacts-list ul li i {
  font-size: 30px;
  padding-right: 8px;
  position: relative;
  top: 5px;
}

/* Other Styles */
.sp-slick-clients .item {
  opacity: 0.65;
  -webkit-transition: opacity 0.25s linear;
  transition: opacity 0.25s linear;
  padding: 0 15px;
  text-align: center;
}

.sp-slick-clients .item img {
  max-width: 100%;
  height: auto;
}

.sp-slick-clients .item:hover {
  opacity: 1;
}

@media (max-width: 767px) {
  .sp-slick-clients .item {
    opacity: 1;
  }
}

/* Quote */
#sp-quote .sp-signature {
  font-size: 30px;
}

.sp-quote {
  font-size: 19px;
}

.sp-quote:before, .sp-quote:after {
  font-family: "sp-theme-icons";
  font-size: 23px;
  position: relative;
}

.sp-quote:after {
  content: '\e80f';
  left: 15px;
  top: 7px;
}

.sp-quote:before {
  content: '\e80e';
  right: 15px;
}

/* ============================================================================= */
/* Theme progress bars. */
/* ============================================================================= */
.sp-progress-bar {
  margin: 1rem 0 2rem 0;
}

.sp-progress-bar .title {
  display: inline-block;
  width: 100%;
  margin-bottom: 0.5rem;
}

.sp-progress-bar .title span {
  float: right;
  font-size: 15px;
  position: relative;
  top: 2px;
}

.sp-progress-bar .progress-bar {
  -webkit-transition: none;
  transition: none;
}

/* ============================================================================= */
/* Pricing tables. */
/* ============================================================================= */
.pricing_tables_wrap {
  background: #fff;
  text-align: center;
  border: 1px solid #eee;
  position: relative;
  overflow: hidden;
  -webkit-transition: -webkit-box-shadow 0.5s ease;
  transition: -webkit-box-shadow 0.5s ease;
  transition: box-shadow 0.5s ease;
  transition: box-shadow 0.5s ease, -webkit-box-shadow 0.5s ease;
}

.pricing_tables_wrap > .pricing_tables_name {
  text-align: center;
  font-size: 29px;
  color: #C3AC6D;
  padding: 1rem 0;
  font-weight: 600;
  border-bottom: 1px solid #eee;
}

.pricing_tables_wrap > .pricing_tables_price {
  text-align: center;
  font-size: 65px;
  padding: 1rem 0;
  border-bottom: 1px solid #eee;
  margin-bottom: 0;
}

.pricing_tables_wrap > .pricing_tables_price span {
  color: #888;
  font-size: 27px;
  position: relative;
  left: -7px;
  top: -29px;
}

.pricing_tables_wrap > .pricing_tables_price i {
  color: #888;
  font-size: 14px;
  position: relative;
  top: 0;
  font-weight: 300;
}

.pricing_tables_wrap > .pricing_tables_desc {
  padding: 20px 30px;
  border-bottom: 1px solid #eee;
  text-align: center;
}

.pricing_tables_wrap > .pricing_tables_desc ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.pricing_tables_wrap > .pricing_tables_desc ul li {
  display: block;
  padding: 10px 0;
  color: #888;
}

.pricing_tables_wrap > .pricing_tables_buttons {
  text-align: center;
  padding: 20px 30px;
  margin: 0 -10px;
}

.pricing_tables_wrap > .pricing_tables_buttons > a, .pricing_tables_wrap > .pricing_tables_buttons > .btn, .pricing_tables_wrap > .pricing_tables_buttons > .btn-group {
  vertical-align: middle;
  margin: 10px;
}

.pricing_tables_wrap.featured {
  -webkit-box-shadow: 0 15px 50px -5px rgba(0, 0, 0, 0.25);
          box-shadow: 0 15px 50px -5px rgba(0, 0, 0, 0.25);
}

.pricing_tables_wrap.featured > .pricing_tables_name {
  color: #333;
}

.pricing_tables_wrap.featured > .pricing_tables_price {
  color: #C3AC6D;
}

#sp-pricing-tables-faq h4 {
  margin-bottom: 1.5rem;
}

#sp-pricing-tables-faq p {
  margin-bottom: 4rem;
}

#sp-pricing-tables-faq p:last-child {
  margin-bottom: 0;
}

/* ============================================================================= */
/* FAQ page. */
/* ============================================================================= */
.card.sp-faq-card {
  border: 1px solid #eee;
  border-radius: 0;
  text-align: left;
}

.card.sp-faq-card + .sp-faq-card {
  margin-top: 15px;
}

.card.sp-faq-card > .card-header {
  padding: 0.5rem 1.5rem;
  background-color: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: none;
}

.card.sp-faq-card > .card-header > .card-title {
  font-size: 1.1rem;
  color: #333;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  -webkit-transition: color 0.25s;
  transition: color 0.25s;
  margin: 10px 0;
}

.card.sp-faq-card > .card-header > .toggle-icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-left: 20px;
  color: #C3AC6D;
  line-height: 1;
  font-size: 40px;
  will-change: transform;
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
}

.card.sp-faq-card > .card-header:hover > .card-title {
  color: #C3AC6D;
}

.card.sp-faq-card > .card-contents > .card-contents-inner {
  border-top: 1px solid #eee;
  padding: 1rem 1.5rem;
}

.card.sp-faq-card > .card-contents p {
  margin-bottom: 1rem;
}

.card.sp-faq-card > .card-contents p:last-child {
  margin-bottom: 0;
}

.card.sp-faq-card.card-open > .card-header > .card-title {
  color: #C3AC6D;
}

.card.sp-faq-card.card-open > .card-header > .toggle-icon {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.sp-faq-articles {
  border-top: 1px solid #ddd;
  padding-top: 2rem;
}

.sp-faq-articles ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.sp-faq-articles ul li {
  margin-bottom: 15px;
}

.sp-faq-articles ul li:last-child {
  margin-bottom: 0;
}

.sp-faq-articles ul li:before {
  content: '\f3d3';
  font-family: 'sp-theme-icons';
  font-size: 18px;
  padding-right: 10px;
  color: #C3AC6D;
}

.sp-faq-articles ul li a {
  color: #333;
}

.sp-faq-articles ul li a:hover {
  color: #C3AC6D;
}

/* ============================================================================= */
/* Clients page. */
/* ============================================================================= */
.sp-clients-grid .sp-clients-block {
  background: #fff;
  padding: 2rem;
  margin-bottom: 30px;
  -webkit-transition: -webkit-box-shadow 0.5s;
  transition: -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s;
  transition: box-shadow 0.5s, -webkit-box-shadow 0.5s;
  will-change: box-shadow;
}

.sp-clients-grid .sp-clients-block > .client-logo {
  padding-bottom: 1.5rem;
  display: inline-block;
  max-width: 100%;
  opacity: 0.85;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
  will-change: opacity;
}

.sp-clients-grid .sp-clients-block:hover {
  -webkit-box-shadow: 0 0 25px 1px rgba(0, 0, 0, 0.075);
          box-shadow: 0 0 25px 1px rgba(0, 0, 0, 0.075);
}

.sp-clients-grid .sp-clients-block:hover > .client-logo {
  opacity: 1;
}

.sp-clients-grid .sp-clients-block > .client-title {
  margin-bottom: 1.5rem;
}

.sp-clients-grid .sp-clients-block .btn {
  -webkit-transition-property: background, border;
  transition-property: background, border;
}

/* ============================================================================= */
/* Mailchimp subscribe block. */
/* ============================================================================= */
.sp-subscribe-form {
  position: relative;
  max-width: 570px;
  padding: 0 15px;
  margin: 0 auto;
}

.sp-subscribe-form > .form-inner-wrap {
  position: relative;
  z-index: 50;
  -webkit-transition: opacity 0.25s, -webkit-transform 0.25s;
  transition: opacity 0.25s, -webkit-transform 0.25s;
  transition: opacity 0.25s, transform 0.25s;
  transition: opacity 0.25s, transform 0.25s, -webkit-transform 0.25s;
}

.sp-subscribe-form > .form-inner-wrap img {
  max-width: 130px;
  opacity: 0.2;
  margin-top: 2rem;
}

.sp-subscribe-form > .form-inner-wrap p.appear-message {
  margin-top: 1rem;
  margin-bottom: 0;
}

.sp-subscribe-form > .form-inner-wrap .input-group {
  width: 350px;
  margin: auto;
}

.sp-subscribe-form > .form-output {
  position: absolute;
  top: 50%;
  left: 0;
  padding: 0 15px;
  width: 100%;
  min-height: 118px;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(-50%) scale(0.8);
          transform: translateY(-50%) scale(0.8);
  background: inherit;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  text-align: center;
}

.sp-subscribe-form > .form-output:before {
  font-family: "sp-theme-icons";
  font-size: 70px;
  line-height: 70px;
  display: block;
  margin: 0 auto 20px;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.sp-subscribe-form.mc-loading > .form-inner-wrap, .sp-subscribe-form.mc-invalid > .form-inner-wrap, .sp-subscribe-form.mc-valid > .form-inner-wrap {
  opacity: 0;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.sp-subscribe-form.mc-loading > .form-output, .sp-subscribe-form.mc-invalid > .form-output, .sp-subscribe-form.mc-valid > .form-output {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
}

.sp-subscribe-form.mc-loading > .form-output:before, .sp-subscribe-form.mc-invalid > .form-output:before, .sp-subscribe-form.mc-valid > .form-output:before {
  -webkit-animation-name: sp-mc-form-output-icon;
          animation-name: sp-mc-form-output-icon;
}

.sp-subscribe-form > .form-output.valid:before {
  content: '\f3fd';
  color: #5cb85c;
}

.sp-subscribe-form > .form-output.error:before {
  content: '\f404';
  color: #d9534f;
}

.sp-subscribe-form.mc-loading > .form-output:before {
  content: '\f45a';
  color: inherit;
  font-size: 55px;
  -webkit-animation: sp-mc-loading-icon 1s linear infinite;
          animation: sp-mc-loading-icon 1s linear infinite;
}

@-webkit-keyframes sp-mc-loading-icon {
  from {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

@keyframes sp-mc-loading-icon {
  from {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

@-webkit-keyframes sp-mc-form-output-icon {
  from {
    -webkit-transform: rotate(-360deg) scale(0.7);
            transform: rotate(-360deg) scale(0.7);
    opacity: 0.3;
  }
  to {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
    opacity: 1;
  }
}

@keyframes sp-mc-form-output-icon {
  from {
    -webkit-transform: rotate(-360deg) scale(0.7);
            transform: rotate(-360deg) scale(0.7);
    opacity: 0.3;
  }
  to {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
    opacity: 1;
  }
}

/* ============================================================================= */
/* 404 page. */
/* ============================================================================= */
#sp-404 > .intro-body {
  padding-top: 50px;
  padding-bottom: 50px;
}

#sp-404 h1 {
  margin-bottom: 2rem;
  font-size: 5rem;
  line-height: 5rem;
}

#sp-404 h3 {
  margin-bottom: 3rem;
  font-size: 3.5rem;
  font-family: 'Shadows Into Light', cursive;
  -webkit-transform: rotate(-2deg) !important;
          transform: rotate(-2deg) !important;
}

#sp-404 .sp-soc-links {
  margin-bottom: 2rem;
  font-size: 0;
}

#sp-404 .sp-soc-links ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

#sp-404 .sp-soc-links ul li {
  display: inline;
}

#sp-404 .sp-soc-links ul li a {
  display: inline-block;
  padding: 0 12px;
  font-size: 26px;
}

#sp-404 .sp-soc-links ul li a:hover {
  color: #C3AC6D;
}

#sp-404 .sp-404-menu ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  font-size: 0;
}

#sp-404 .sp-404-menu ul li {
  display: inline;
  white-space: nowrap;
}

#sp-404 .sp-404-menu ul li:after {
  content: '|';
  display: inline-block;
  margin: 0 10px;
  font-size: 1rem;
}

#sp-404 .sp-404-menu ul li:last-child:after {
  content: '';
}

#sp-404 .sp-404-menu ul li a {
  font-size: 1rem;
}

#sp-404 .sp-404-menu ul li a:hover {
  color: #C3AC6D;
}

@media (max-width: 767px) {
  #sp-404 h1 {
    font-size: 3.8rem;
    line-height: 3.8rem;
    padding: 0 15px;
  }
  #sp-404 h3 {
    font-size: 3rem;
    padding: 0 15px;
    margin-bottom: 2rem;
  }
  #sp-404 .sp-404-menu ul {
    padding: 0 15px;
  }
}

@media (max-width: 575px) {
  #sp-404 h1 {
    font-size: 3rem;
  }
  #sp-404 h3 {
    font-size: 2rem;
  }
}

/* ============================================================================= */
/* Simple text rotator plugin styles. */
/* ============================================================================= */
.sp-text-rotate {
  display: inline-block;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .sp-text-rotate {
    white-space: normal;
  }
}

.rotating {
  display: inline-block;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform: rotateX(0) rotateY(0) rotateZ(0);
  transform: rotateX(0) rotateY(0) rotateZ(0);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform-origin-x: 50%;
}

.rotating.flip {
  position: relative;
}

.rotating .front, .rotating .back {
  left: 0;
  top: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.rotating .front {
  position: absolute;
  display: inline-block;
  -webkit-transform: translate3d(0, 0, 1px);
  transform: translate3d(0, 0, 1px);
}

.rotating.flip .front {
  z-index: 1;
}

.rotating .back {
  display: block;
  opacity: 0;
}

.rotating.spin {
  -webkit-transform: rotate(360deg) scale(0);
  transform: rotate(360deg) scale(0);
}

/* ================================= flip transitions */
.rotating.flip .back {
  z-index: 2;
  display: block;
  opacity: 1;
  -webkit-transform: rotateY(180deg) translate3d(0, 0, 0);
  transform: rotateY(180deg) translate3d(0, 0, 0);
}

.rotating.flip.up .back {
  -webkit-transform: rotateX(180deg) translate3d(0, 0, 0);
  transform: rotateX(180deg) translate3d(0, 0, 0);
}

.rotating.flip.cube .front {
  -webkit-transform: translate3d(0, 0, 100px) scale(0.85, 0.85);
  transform: translate3d(0, 0, 100px) scale(0.85, 0.85);
}

.rotating.flip.cube .back {
  -webkit-transform: rotateY(180deg) translate3d(0, 0, 100px) scale(0.9, 0.9);
  transform: rotateY(180deg) translate3d(0, 0, 100px) scale(0.9, 0.9);
}

.rotating.flip.cube.up .back {
  -webkit-transform: rotateX(180deg) translate3d(0, 0, 100px) scale(0.9, 0.9);
  transform: rotateX(180deg) translate3d(0, 0, 100px) scale(0.9, 0.9);
}

/* ============================================================================= */
/* Typed js integration. */
/* ============================================================================= */
.typed-cursor {
  -webkit-animation: typed-blink 0.7s infinite;
          animation: typed-blink 0.7s infinite;
  opacity: 1;
  display: inline-block;
}

@keyframes typed-blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*! Swipebox v1.3.0 | Constantin Saguin csag.co | MIT License | github.com/brutaldesign/swipebox */
html.swipebox-html.swipebox-touch {
  overflow: hidden !important;
  -webkit-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

#swipebox-overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999 !important;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background: rgba(0, 0, 0, 0.85);
  -webkit-transition: background 0.25s linear;
  transition: background 0.25s linear;
}

#swipebox-container {
  position: relative;
  width: 100%;
  height: 100%;
}

#swipebox-slider {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  white-space: nowrap;
  position: absolute;
  display: none;
}

#swipebox-slider .slide {
  height: 100%;
  width: 100%;
  line-height: 1px;
  text-align: center;
  display: inline-block;
}

#swipebox-slider .slide:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

#swipebox-slider .slide .swipebox-video-container,
#swipebox-slider .slide .swipebox-inline-container {
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  width: auto;
  height: auto;
  vertical-align: middle;
}

#swipebox-slider .slide .swipebox-video-container {
  background: none;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 20px 150px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#swipebox-slider .slide .swipebox-video-container .swipebox-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
}

#swipebox-slider .slide .swipebox-video-container .swipebox-video iframe {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
  max-height: 100vh;
  max-height: calc(100vh - 40px);
}

#swipebox-slider .slide-loading {
  background: url("../images/loader.gif") no-repeat center center;
}

#swipebox-close {
  position: absolute;
  top: 10px;
  right: 30px;
  line-height: 1;
  cursor: pointer;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

#swipebox-close:before {
  color: #fff;
  content: '\f404';
  display: inline-block;
  font-family: "sp-theme-icons";
  font-size: 70px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#swipebox-close:hover {
  opacity: 0.6;
}

@media screen and (max-width: 800px) {
  #swipebox-close {
    right: 15px;
  }
  #swipebox-close:before {
    font-size: 30px;
  }
}

/* ============================================================================= */
/* Site socials VC widget. */
/* ============================================================================= */
.sp-site-socials {
  margin: 0 -12px;
  font-size: 0;
  color: #C3AC6D;
}

.sp-site-socials > a {
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
  opacity: 1;
  display: inline-block;
  color: inherit;
  font-size: 23px;
  padding: 0 12px;
}

.sp-site-socials > a:hover {
  opacity: 0.6;
}

.sp-site-socials.align_center {
  text-align: center;
}

.sp-site-socials.align_left {
  text-align: left;
}

.sp-site-socials.align_right {
  text-align: right;
}

@media (max-width: 767px) {
  .sp-site-socials {
    text-align: center !important;
  }
}

/* ============================================================================= */
/* Visual Composer custom text widget. */
/* ============================================================================= */
.sp-text-widget {
  line-height: 1.75;
  font-size: 1rem;
  font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif;
  color: #333;
}

.sp-text-widget.primary-font {
  font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif;
}

.sp-text-widget.headings-font {
  font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif;
}

.sp-text-widget > p {
  line-height: inherit;
  font-size: inherit;
  color: inherit;
}

.sp-text-widget > p:last-of-type {
  margin-bottom: 0;
}

.sp-text-widget img {
  max-width: 100%;
  height: auto;
}

.sp-text-widget > .sp-signature {
  width: 100%;
  font-size: 23px;
  display: block;
  margin-top: 20px;
  font-family: 'Shadows Into Light', cursive;
  font-style: italic;
  letter-spacing: 2px;
  -webkit-transform: rotate(-3deg);
  transform: rotate(-3deg);
}

.sp-text-widget > .sp-signature.white {
  color: #fff;
}

/* ============================================================================= */
/* Basic blogroll styles. */
/* ============================================================================= */
#sp-blog-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

#sp-blog-inner > .content-column {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}

#sp-blog-inner > .sidebar-column {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 360px;
          flex: 0 0 360px;
  min-width: 0;
  margin-bottom: -50px;
}

#sp-blog-inner > .sidebar-column.left {
  padding-right: 60px;
}

#sp-blog-inner > .sidebar-column.right {
  padding-left: 60px;
}

#sp-blog-inner > .sidebar-column:empty {
  display: none;
}

@media (max-width: 767px) {
  #sp-blog-inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #sp-blog-inner > .sidebar-column, #sp-blog-inner > .content-column {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  #sp-blog-inner > .content-column {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  #sp-blog-inner > .sidebar-column {
    margin-top: 80px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  #sp-blog-inner > .sidebar-column.left {
    padding-right: 0;
  }
  #sp-blog-inner > .sidebar-column.right {
    padding-left: 0;
  }
}

.sp-blog-block {
  margin-bottom: 55px;
}

.sp-blog-block::after {
  display: block;
  content: "";
  clear: both;
}

.sp-blog-block p {
  margin-bottom: 1.5rem;
}

.sp-blog-block p:last-child {
  margin-bottom: 0;
}

.sp-blog-block .sp-blog-image {
  position: relative;
  margin-bottom: 1.5rem;
  opacity: 1;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.sp-blog-block .sp-blog-image a {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 240px;
  position: relative;
  display: block;
  cursor: pointer;
}

@media (max-width: 991px) {
  .sp-blog-block .sp-blog-image a {
    height: 260px;
  }
}

.sp-blog-block .sp-blog-image:hover {
  opacity: 0.7;
}

.sp-blog-block .entry-title {
  margin-bottom: 1rem;
  font-size: 1.5rem;
}

.sp-blog-block .entry-title a {
  color: #333;
}

.sp-blog-block .entry-title a:hover {
  color: #C3AC6D;
}

.sp-blog-block .sp-blog-meta {
  margin-bottom: 0.5rem;
  width: 100%;
}

.sp-blog-block .sp-blog-meta ul {
  padding: 0;
  margin: 0;
  display: inline-block;
}

.sp-blog-block .sp-blog-meta ul li {
  float: left;
  list-style: none;
  font-size: 14px;
  text-transform: capitalize;
}

.sp-blog-block .sp-blog-meta ul li:after {
  content: '/';
  padding: 0 10px;
  color: #999;
}

.sp-blog-block .sp-blog-meta ul li:last-child:after {
  content: none;
}

.sp-blog-block .sp-blog-meta ul li a {
  color: #999;
}

.sp-blog-block.chess {
  position: relative;
  display: table;
  table-layout: fixed;
  width: 100%;
  background-color: #f7f7f7;
  margin-bottom: 60px;
}

@media (max-width: 991px) {
  .sp-blog-block.chess {
    display: block;
  }
}

.sp-blog-block.chess .meta-column {
  padding: 0px 50px;
}

@media (max-width: 1199px) {
  .sp-blog-block.chess .meta-column {
    padding: 50px 30px;
  }
}

.sp-blog-block.chess .meta-column.inner-col {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
}

@media (max-width: 991px) {
  .sp-blog-block.chess .meta-column.inner-col {
    width: 100%;
    display: block;
  }
}

.sp-blog-block.chess .meta-column h4 {
  font-size: 1.5rem;
}

.sp-blog-block.chess .image-column {
  position: relative;
  overflow: hidden;
}

.sp-blog-block.chess .image-column.inner-col {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
}

@media (max-width: 991px) {
  .sp-blog-block.chess .image-column.inner-col {
    width: 100%;
    display: none;
  }
}

.sp-blog-block.chess .image-column .sp-blog-image {
  margin-bottom: 0;
}

.sp-blog-block.chess .image-column .sp-blog-image a {
  height: 400px;
}

@media (max-width: 1199px) {
  .sp-blog-block.chess .image-column .sp-blog-image a {
    height: 350px;
  }
}

.sp-blog-block.chess.sticky:nth-child(even) .sp-blog-image:after {
  right: 30px;
  left: auto;
}

.sp-blog-block.chess.sticky:nth-child(even) .sp-blog-image:before {
  right: 30px;
  left: auto;
}

.sp-blog-block.classic {
  margin-bottom: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.sp-blog-block.classic .sp-blog-meta-classic {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 90px;
          flex: 0 0 90px;
  padding-right: 30px;
  text-align: right;
}

.sp-blog-block.classic .sp-blog-meta-classic .date {
  font-size: 1.4rem;
  margin-bottom: 0.5rem;
}

.sp-blog-block.classic .sp-blog-meta-classic .year {
  color: #999;
}

.sp-blog-block.classic .sp-blog-image a {
  height: 375px;
}

@media (max-width: 1199px) {
  .sp-blog-block.classic .sp-blog-image a {
    height: 350px;
  }
}

.sp-blog-block.medium {
  margin-bottom: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

@media (max-width: 991px) {
  .sp-blog-block.medium {
    display: block;
  }
}

.sp-blog-block.medium .sp-blog-image-medium {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 360px;
          flex: 0 0 360px;
  padding-right: 30px;
}

@media (max-width: 991px) {
  .sp-blog-block.medium .sp-blog-image-medium {
    padding-right: 0;
  }
}

.sp-blog-block.medium .sp-blog-image-medium .sp-blog-image {
  margin-bottom: 0;
}

.sp-blog-block.medium .sp-blog-image-medium .sp-blog-image a {
  height: 275px;
}

@media (max-width: 1199px) {
  .sp-blog-block.medium .sp-blog-image-medium .sp-blog-image a {
    height: 300px;
  }
}

@media (max-width: 991px) {
  .sp-blog-block.medium .sp-blog-image-medium .sp-blog-image a {
    height: 240px;
  }
}

.sp-blog-block.medium .sp-blog-block-medium h3 {
  font-size: 1.3rem;
}

@media (max-width: 991px) {
  .sp-blog-block.medium .sp-blog-block-medium h3 {
    margin-top: 1rem;
  }
}

.sp-blog-block.sticky .sp-blog-image:after {
  width: 32px;
  height: 48px;
  content: '';
  position: absolute;
  left: 30px;
  top: 0;
  border-bottom: 16px solid transparent;
  border-left: 16px solid #C3AC6D;
  border-right: 16px solid #C3AC6D;
}

.sp-blog-block.sticky .sp-blog-image:before {
  content: 'S';
  font-weight: bold;
  font-size: 19px;
  color: #fff;
  left: 30px;
  position: absolute;
  z-index: 9;
  width: 32px;
  text-align: center;
}

.sp-blog-block.no-thumbnail.sticky {
  padding: 30px;
  background: #f7f7f7;
}

.sp-blog-block.no-thumbnail.sticky .sp-blog-meta-classic {
  text-align: center;
}

/* ============================================================================= */
/* Blogroll post formats. */
/* ============================================================================= */
.sp-blog-block .sp-blog-quote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 4px solid #eee;
  padding: 30px;
  margin-bottom: 2rem;
}

.sp-blog-block .sp-blog-quote > .quote-icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: 73px;
  color: #C3AC6D;
  padding-right: 30px;
  line-height: 1;
  min-width: 0;
}

.sp-blog-block .sp-blog-quote > .quote-inner {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}

.sp-blog-block .sp-blog-quote > .quote-inner p {
  font-size: 1.25rem;
  font-style: italic;
  font-weight: 600;
}

.sp-blog-block .sp-blog-quote > .quote-inner .blockquote-footer {
  font-size: 100%;
}

.sp-blog-block .sp-blog-quote > .quote-inner .blockquote-footer cite {
  font-style: normal;
}

.sp-blog-block .sp-blog-quote > .quote-inner p:last-child {
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .sp-blog-block .sp-blog-quote {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    text-align: center;
  }
  .sp-blog-block .sp-blog-quote > .quote-icon {
    padding: 0 0 1rem;
  }
  .sp-blog-block .sp-blog-quote > .quote-icon, .sp-blog-block .sp-blog-quote > .quote-inner {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .sp-blog-block .sp-blog-quote > .quote-inner p {
    font-size: 1rem;
  }
}

.sp-blog-block .sp-blog-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 4px solid #eee;
  padding: 30px;
  margin-bottom: 2rem;
  width: 100%;
  white-space: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.sp-blog-block .sp-blog-link:before {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  content: '\f3d9';
  font-family: "sp-theme-icons";
  font-size: 70px;
  color: #C3AC6D;
  margin-right: 30px;
  padding-right: 30px;
  line-height: 1;
  border-right: 1px solid #eee;
}

.sp-blog-block .sp-blog-link a {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  font-size: 2rem;
  color: #333;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 991px) {
  .sp-blog-block .sp-blog-link {
    padding: 20px;
  }
  .sp-blog-block .sp-blog-link:before {
    font-size: 50px;
    padding-right: 15px;
    margin-right: 15px;
  }
  .sp-blog-block .sp-blog-link a {
    font-size: 1rem;
  }
}

.sp-blog-block .sp-blog-image .caption {
  display: block;
  margin-top: 5px;
}

.sp-blog-block .sp-slick-post-gallery .slick-slide .caption {
  margin-top: 5px;
  display: block;
  opacity: 0;
  -webkit-transform: translateX(15px);
          transform: translateX(15px);
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}

.sp-blog-block .sp-slick-post-gallery .slick-slide.slick-animated .caption {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.sp-blog-block .sp-single-embed {
  margin-bottom: 2rem;
}

/* ============================================================================= */
/* Blog sidebar design */
/* ============================================================================= */
.sp-sidebar {
  padding-bottom: 50px;
}

.sp-sidebar a {
  color: #333;
}

.sp-sidebar a:hover {
  color: #C3AC6D;
}

.sp-sidebar .sp-widget-block {
  margin-bottom: 55px;
}

.sp-sidebar .sp-widget-block::after {
  display: block;
  content: "";
  clear: both;
}

.sp-sidebar .sp-widget-block:last-child {
  margin-bottom: 0;
}

.sp-sidebar .sp-widget-block > .widget-title {
  margin-bottom: 1.5rem;
  font-size: 1.5rem;
}

.sp-sidebar .sp-category {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.sp-sidebar .sp-category li {
  padding-bottom: 15px;
  text-align: left !important;
}

.sp-sidebar .sp-category li span {
  float: right;
  background: #f5f5f5;
  width: 30px;
  font-size: 14px;
  padding: 1px 0;
  text-align: center;
}

.sp-sidebar .sp-popular-posts {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.sp-sidebar .sp-popular-posts > li {
  list-style: none;
  margin-bottom: 20px;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.sp-sidebar .sp-popular-posts > li:hover {
  opacity: 0.7;
}

.sp-sidebar .sp-popular-posts > li:last-child {
  margin-bottom: 0;
}

.sp-sidebar .sp-popular-posts > li > .post-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.sp-sidebar .sp-popular-posts > li > .post-link > .image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100px;
          flex: 0 0 100px;
}

.sp-sidebar .sp-popular-posts > li > .post-link > .content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.sp-sidebar .sp-popular-posts > li .image {
  padding-right: 15px;
  min-width: 0;
}

.sp-sidebar .sp-popular-posts > li .image > img {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  width: 100%;
  height: 65px;
}

.sp-sidebar .sp-popular-posts > li .content {
  text-align: left !important;
}

.sp-sidebar .sp-popular-posts > li .content h5 {
  font-size: 0.92rem;
  margin-bottom: 0;
  line-height: 1.3;
}

.sp-sidebar .sp-popular-posts > li .content span {
  color: #999;
  font-size: 14px;
}

/* ============================================================================= */
/* Blogroll single page styles. */
/* ============================================================================= */
.sp-intro.single-post {
  text-align: center;
}

.sp-intro.single-post .intro-title {
  line-height: 1.3;
  font-size: 3rem;
  text-transform: capitalize;
}

.sp-intro.single-post .sp-single-meta {
  margin-bottom: 2rem;
  width: 100%;
  font-size: 0;
}

.sp-intro.single-post .sp-single-meta ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.sp-intro.single-post .sp-single-meta ul li {
  display: inline;
  font-size: 18px;
  text-transform: capitalize;
}

.sp-intro.single-post .sp-single-meta ul li:after {
  content: '/';
  padding: 0 10px;
  color: #fff;
}

.sp-intro.single-post .sp-single-meta ul li:last-child:after {
  content: none;
}

.sp-intro.single-post .sp-single-meta ul li a {
  color: #fff;
}

.sp-blog-block.single .sp-blog-block {
  margin-bottom: 50px;
}

.sp-blog-block.single .sp-blog-image:hover {
  opacity: 1;
}

.sp-blog-block.single .sp-blog-image .caption {
  color: #999;
  font-size: 14px;
  width: 100%;
}

.sp-blog-block.single .sp-single-tags {
  font-size: 16px;
}

.sp-blog-block.single .sp-single-tags i {
  font-size: 22px;
  color: #333;
  position: relative;
  top: 1px;
  line-height: 1.1;
  margin-right: 7px;
}

.sp-blog-block.single .sp-single-tags a {
  color: #333;
  padding-right: 5px;
}

.sp-blog-block.single .sp-single-tags a:hover {
  color: #C3AC6D;
}

.sp-blog-block.single .sp-single-soc ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  font-size: 0;
  margin: -5px -15px;
  text-align: right;
  max-width: none;
}

.sp-blog-block.single .sp-single-soc ul li {
  display: inline;
}

.sp-blog-block.single .sp-single-soc ul li a {
  display: inline-block;
  font-size: 18px;
  color: #222;
  padding: 5px 15px;
}

.sp-blog-block.single .sp-single-soc ul li a:hover {
  color: #C3AC6D;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInN0eWxlLXBhcnRzL19iYXNlLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJhc3NldHMvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIm1haW4uY3NzIiwiYXNzZXRzL19taXhpbnMuc2NzcyIsInN0eWxlLXBhcnRzL19ib290c3RyYXAtY3VzdG9taXphdGlvbnMuc2NzcyIsImFzc2V0cy9ib290c3RyYXAvX3ZhcmlhYmxlcy5zY3NzIiwic3R5bGUtcGFydHMvX3ByZWxvYWRlci5zY3NzIiwic3R5bGUtcGFydHMvX3Njcm9sbC10by10b3Auc2NzcyIsInN0eWxlLXBhcnRzL19wYWdpbmF0aW9uLnNjc3MiLCJzdHlsZS1wYXJ0cy9fc2xpY2stc2xpZGVyLnNjc3MiLCJzdHlsZS1wYXJ0cy9faGVhZGVyLWJhc2Uuc2NzcyIsImFzc2V0cy9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwic3R5bGUtcGFydHMvX2hlYWRlci1mbi1tZW51LnNjc3MiLCJzdHlsZS1wYXJ0cy9faGVhZGVyLXNlYXJjaC5zY3NzIiwic3R5bGUtcGFydHMvX2hlYWRlci1zdGF0ZXMuc2NzcyIsInN0eWxlLXBhcnRzL19mb290ZXIuc2NzcyIsInN0eWxlLXBhcnRzL19pbnRyby5zY3NzIiwic3R5bGUtcGFydHMvX2Fib3V0LnNjc3MiLCJzdHlsZS1wYXJ0cy9fc2VydmljZXMuc2NzcyIsInN0eWxlLXBhcnRzL190ZWFtLnNjc3MiLCJzdHlsZS1wYXJ0cy9fZnVuX2ZhY3Quc2NzcyIsInN0eWxlLXBhcnRzL19wb3J0Zm9saW8uc2NzcyIsInN0eWxlLXBhcnRzL19hbmltYXRlZC1jaXJjbGUuc2NzcyIsInN0eWxlLXBhcnRzL190ZXN0aW1vbmlhbHMuc2NzcyIsInN0eWxlLXBhcnRzL19jb250YWN0cy5zY3NzIiwic3R5bGUtcGFydHMvX290aGVyLnNjc3MiLCJzdHlsZS1wYXJ0cy9fcXVvdGUuc2NzcyIsInN0eWxlLXBhcnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsInN0eWxlLXBhcnRzL19wcmljaW5nLXRhYmxlcy5zY3NzIiwic3R5bGUtcGFydHMvX2ZhcS5zY3NzIiwic3R5bGUtcGFydHMvX2NsaWVudHMuc2NzcyIsInN0eWxlLXBhcnRzL19zdWJzY3JpYmUuc2NzcyIsInN0eWxlLXBhcnRzL180MDQuc2NzcyIsInN0eWxlLXBhcnRzL190ZXh0cm9yYXRvci5zY3NzIiwic3R5bGUtcGFydHMvX3R5cGVkanMuc2NzcyIsInN0eWxlLXBhcnRzL19zd2lwZWJveC5zY3NzIiwic3R5bGUtcGFydHMvX3NpdGUtc29jaWFscy5zY3NzIiwic3R5bGUtcGFydHMvX3RleHQtd2lkZ2V0LnNjc3MiLCJzdHlsZS1wYXJ0cy9fYmxvZy1iYXNlLnNjc3MiLCJzdHlsZS1wYXJ0cy9fYmxvZy1wb3N0LWZvcm1hdHMuc2NzcyIsInN0eWxlLXBhcnRzL19ibG9nLXNpZGViYXIuc2NzcyIsInN0eWxlLXBhcnRzL19ibG9nLXNpbmdsZS1wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FFQW1DcUU7QUNuQ3JFLG1GQUFtRjtBQUNuRixzQ0FBc0M7QUFDdEMsbUZBQW1GO0FBRW5GO0VBQU8sb0NBQW9DO0NBQUs7O0FBRWhEO0VBQ0UsbUJBQXlCO0VBQ3pCLG1CQUF1QjtFQUN2Qix1QkFBdUI7Q0FPeEI7O0FBVkQ7RUFLK0IsaUJBQWlCO0NBQUs7O0FBTHJEO0VBTXlCLFdBQVc7RUFBRyxpQkFBaUI7Q0FBSzs7QUFON0Q7RUFPK0Isb0JDWFA7Q0RXc0M7O0FBUDlEO0VBU29CLHFCQUFxQjtDQUFLOztBQUc5QztFQUFJLG9CQUFvQjtDQUFLOztBQUM3QjtFQUFJLDhCQUFzQjtFQUF0QixzQkFBc0I7RUFBRyxjQUFhO0NBQUs7O0FBQy9DO0VBQUssbUJBQW1CO0VBQUcsc0JBQXNCO0VBQUcsWUFBWTtDQUFLOztBQUNyRTtFQUE0QyxrRkM0QzRDO0NENUNWOztBQUc5RTs7O0VBRXFC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Q0FDbkI7O0FBckJMO0VBdUJNLFlBQW9CO0VBQ3BCLG1CQUFtQjtDQUlwQjs7QUE1Qkw7RUEwQlEsZXpDaEVnQjtDeUNpRWpCOztBQTNCUDtFdENZRSxVQUFXO0VBQ1gsV0FBVztFQUNYLFVBQVc7RUFHVCxpQkFBaUI7RXNDZ0JqQixhQUFjO0VBQ2QsbUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQixnQkFBaUI7Q0FhbEI7O0FBakRIO0VBdUNNLGdCQUFnQjtDQVNqQjs7QUFoREw7RUEwQ1Esc0JBQXdCO0VBQ3hCLGdCQUFnQjtFQUNoQixZQUFnQjtFQUNoQixrQkFBb0I7Q0FFckI7O0FBL0NQO0VBOENrQixlekNwRk07Q3lDb0ZvQiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gVEFCTEUgT0YgQ09OVEVOVFM6XG5cbi0gQmFzZSBzdHlsZXMgZm9yIGNvbW1vbiBlbGVtZW50c1xuLSBCb290c3RyYXAgc3R5bGUgY3VzdG9taXphdGlvbnNcbi0gICBHcmlkIHJvd3Ncbi0gUHJpbWFyeSBzaXRlIHByZWxvYWRlclxuLSBTY3JvbGwgdG9wIGJ1dHRvblxuLSBTaXRlIHBhZ2luYXRpb25cbi0gU2l0ZSBoZWFkZXIgY29tbW9uc1xuLSBIZWFkZXIgZWxlbWVudHMgKGxvZ28sIGV4dHJhcywgZXRjKVxuLSBIZWFkZXIgZGVza3RvcCBuYXZpZ2F0aW9uXG4tIEZ1bGxzY3JlZW4gbW9iaWxlIG5hdmlnYXRpb25cbi0gRnVsbHNjcmVlbiBzZWFyY2hcbi0gSGVhZGVyIHN0dWNrIHN0YXRlXG4tIEhlYWRlciByZXNwb25zaXZlbmVzc1xuLSBTaXRlIGZvb3RlciBzdHlsZXNcbi0gUGFnZSBpbnRybyBibG9ja1xuLSAgIEludHJvIGNvbW1vbnNcbi0gUG9ydGZvbGlvIGxpc3Rpbmdcbi0gVGVzdGltb25pYWxzIHNsaWRlclxuLSBUaGVtZSBwcm9ncmVzcyBiYXJzXG4tIFByaWNpbmcgdGFibGVzXG4tIEZBUSBwYWdlXG4tIENsaWVudHMgcGFnZVxuLSBNYWlsY2hpbXAgc3Vic2NyaWJlIGJsb2NrXG4tIDQwNCBwYWdlXG4tIFNpbXBsZSB0ZXh0IHJvdGF0b3IgcGx1Z2luIHN0eWxlc1xuLSBUeXBlZCBqcyBpbnRlZ3JhdGlvblxuLSBTaXRlIHNvY2lhbHMgVkMgd2lkZ2V0XG4tIFZpc3VhbCBDb21wb3NlciBjdXN0b20gdGV4dCB3aWRnZXRcbi0gQmFzaWMgYmxvZ3JvbGwgc3R5bGVzXG4tIEJsb2dyb2xsIHBvc3QgZm9ybWF0c1xuLSBCbG9nIHNpZGViYXIgZGVzaWduXG4tIEJsb2dyb2xsIHNpbmdsZSBwYWdlIHN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuXG4vLyA9PT09IHZhcmlhYmxlcyAmIGRlcHMuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgJ3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdhc3NldHMvYm9vdHN0cmFwL21peGlucyc7XG5AaW1wb3J0ICdhc3NldHMvbWl4aW5zJztcblxuXG4vLyA9PT09IGJhc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCAnc3R5bGUtcGFydHMvYmFzZSc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9ib290c3RyYXAtY3VzdG9taXphdGlvbnMnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvcHJlbG9hZGVyJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL3Njcm9sbC10by10b3AnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9zbGljay1zbGlkZXInO1xuXG5cbi8vID09PT0gaGVhZGVyLCBmb290ZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCAnc3R5bGUtcGFydHMvaGVhZGVyLWJhc2UnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvaGVhZGVyLWZuLW1lbnUnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvaGVhZGVyLXNlYXJjaCc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9oZWFkZXItc3RhdGVzJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2Zvb3Rlcic7XG5cblxuLy8gPT09PSB1bmNhdGVnb3JpemVkXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2ludHJvJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2Fib3V0JztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL3NlcnZpY2VzJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL3RlYW0nO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvZnVuX2ZhY3QnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvcG9ydGZvbGlvJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2FuaW1hdGVkLWNpcmNsZSc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy90ZXN0aW1vbmlhbHMnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvY29udGFjdHMnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvb3RoZXInO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvcXVvdGUnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL3ByaWNpbmctdGFibGVzJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2ZhcSc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9jbGllbnRzJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL3N1YnNjcmliZSc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy80MDQnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvdGV4dHJvcmF0b3InO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvdHlwZWRqcyc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9zd2lwZWJveCc7XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9zaXRlLXNvY2lhbHMnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvdGV4dC13aWRnZXQnO1xuXG5cbi8vID09PT0gYmxvZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0ICdzdHlsZS1wYXJ0cy9ibG9nLWJhc2UnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvYmxvZy1wb3N0LWZvcm1hdHMnO1xuQGltcG9ydCAnc3R5bGUtcGFydHMvYmxvZy1zaWRlYmFyJztcbkBpbXBvcnQgJ3N0eWxlLXBhcnRzL2Jsb2ctc2luZ2xlLXBhZ2UnOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCYXNlIHN0eWxlcyBmb3IgY29tbW9uIGVsZW1lbnRzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7IC13ZWJraXQtZm9udC1zbW9vdGhpbmcgOiBhbnRpYWxpYXNlZDsgfVxuXG5ib2R5IHtcbiAgcG9zaXRpb24gICAgICAgOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteCAgICAgOiBoaWRkZW47XG4gIGxldHRlci1zcGFjaW5nIDogMC4wNGVtO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsgYmFja2dyb3VuZCA6ICNkZGQ7IH1cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIgeyB3aWR0aCA6IDZweDsgYmFja2dyb3VuZCA6ICNkZGQ7IH1cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgeyBiYWNrZ3JvdW5kIDogJGJyYW5kLXByaW1hcnk7IH1cblxuICAmLmRpc2FibGUtaG92ZXIgeyBwb2ludGVyLWV2ZW50cyA6IG5vbmU7IH1cbn1cblxucCB7IG1hcmdpbi1ib3R0b20gOiAycmVtOyB9XG5hIHsgdHJhbnNpdGlvbiA6IGFsbCAwLjI1czsgb3V0bGluZTogbm9uZTsgfVxuaHIgeyBib3JkZXItY29sb3IgOiAjZWVlOyBkaXNwbGF5IDogaW5saW5lLWJsb2NrOyB3aWR0aCA6IDEwMCU7IH1cbmJ1dHRvbiwgaW5wdXQsIG9wdGdyb3VwLCBzZWxlY3QsIHRleHRhcmVhIHsgZm9udC1mYW1pbHkgOiAkZm9udC1mYW1pbHktYmFzZSB9XG5cbi8vIG1heC13aWR0aCByZXNldFxuLndwLWNhcHRpb24sXG4uc3Atd2lkZ2V0LWJsb2NrIGltZyxcbi5zcC1ibG9nLWJsb2NrIGltZyB7IG1heC13aWR0aCA6IDEwMCU7IGhlaWdodCA6IGF1dG87IH1cblxuYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSB7IG1heC13aWR0aCA6IDEwMCU7IH1cblxuI3NwLXdyYXBwZXIge2JhY2tncm91bmQ6ICNmZmY7cG9zaXRpb246IHJlbGF0aXZlO3otaW5kZXg6IDEwO31cbi5mb3JtLWNvbnRyb2wge2xldHRlci1zcGFjaW5nOiAwLjA0ZW07fVxuLnNwLW1hcmczMCB7bWFyZ2luLXRvcDogMzBweDt9XG4uc3AtbWFyZzUwIHttYXJnaW4tdG9wOiA1MHB4O31cblxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgLnRleHQtcmlnaHQge3RleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50fVxuICAudGV4dC1sZWZ0IHt0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudH1cbiAgW2NsYXNzKj0nY29sLSddIHtwYWRkaW5nLXRvcDogMTVweDsgcGFkZGluZy1ib3R0b206IDE1cHg7fVxuICAuc3AtbWFyZzMwLCAuc3AtbWFyZzUwIHttYXJnaW4tdG9wOiAzMHB4O31cbn1cblxuXG4uc3Atc2VjdGlvbiB7XG4gICAgJi5kZW1vIHtcbiAgICAgIC5jb250YWluZXIge3dpZHRoOjE1MDBweDt9XG4gICAgICAucm93IHttYXJnaW4tbGVmdDogLTIwcHg7IG1hcmdpbi1yaWdodDogLTIwcHg7fVxuICAgICAgW2NsYXNzKj0nY29sLSddIHtwYWRkaW5nLWxlZnQ6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDIwcHg7fVxuICAgIH0gXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5MjtcbiAgICBwYWRkaW5nLXRvcDogMTEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDExMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgJi5wdDAge3BhZGRpbmctdG9wOiAwcHg7fVxuICAgICYucGIwIHtwYWRkaW5nLWJvdHRvbTogMHB4O31cbiAgICAmLm5vbmUge3BhZGRpbmc6IDA7fVxuICAgICYuYm9yZGVyIHtcbiAgICBcdGJvcmRlci10b3A6MXB4IHNvbGlkICNlZWU7XG4gICAgfVxuICAgICYud2hpdGUge1xuICAgICAgY29sb3I6I2ZmZjtcbiAgICAgIGgxLGgyLGgzLGg0LGg1LGg2IHtjb2xvcjojZmZmO31cbiAgICB9XG4gICAgJi5saXR0bGUge1xuICAgIFx0cGFkZGluZy10b3A6IDgwcHg7XG4gICAgXHRwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge3BhZGRpbmctdG9wOiA1MHB4OyBwYWRkaW5nLWJvdHRvbTogNTBweDt9XG4gICAgfVxuICAgICYuYmctY29sb3ItbGlnaHQge1xuICAgIFx0YmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICBcdGJvcmRlci10b3A6MXB4IHNvbGlkICNlZWU7XG4gICAgXHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZWVlO1xuICAgIH0gXG4gICAgJi5iZy1jb2xvci1kYXJrIHtcbiAgICBcdGJhY2tncm91bmQ6ICMzMzM7XG4gICAgXHRib3JkZXItdG9wOjFweCBzb2xpZCAjNDQ0O1xuICAgIFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzQ0NDtcbiAgICBcdGNvbG9yOiNmZmY7XG4gICAgfSBcbiAgICBpbWcge21heC13aWR0aDogMTAwJTt9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7cGFkZGluZy10b3A6IDgwcHg7IHBhZGRpbmctYm90dG9tOiA4MHB4O3RleHQtYWxpZ246IGNlbnRlcn1cbn1cblxuLnNwLXRpdGxlLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAmLmxpbmUgaDN7bWFyZ2luLWJvdHRvbTogMS40cmVtO31cbiAgJi5saW5lIHNwYW57bWFyZ2luLWJvdHRvbTogMS40cmVtO2Rpc3BsYXk6IGJsb2NrO31cbiAgJi5saW5lOmFmdGVyIHtcbiAgXHRjb250ZW50OiAnJztcbiAgXHRoZWlnaHQ6IDI1cHg7XG4gIFx0d2lkdGg6IDJweDtcbiAgXHRiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5zcC1vdmVybGF5IHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKCk7XG4gIC8vei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLmphcmFsbGF4IHtcbiAgYmFja2dyb3VuZC1zaXplICAgICA6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdCAgIDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogNTAlIDUwJTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGJ1dHRvbiB2YyBzY2hvcnRjb2RlICovXG4uc3AtYnRuLWNvbnRhaW5lci5hbGlnbl9jZW50ZXIgeyB0ZXh0LWFsaWduIDogY2VudGVyOyB9XG4uc3AtYnRuLWNvbnRhaW5lci5hbGlnbl9sZWZ0IHsgdGV4dC1hbGlnbiA6IGxlZnQ7IH1cbi5zcC1idG4tY29udGFpbmVyLmFsaWduX3JpZ2h0IHsgdGV4dC1hbGlnbiA6IHJpZ2h0OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSB0eXBlZC5qcyBpbnRlZ3JhdGlvbiAqL1xuLnR5cGVkLWN1cnNvciB7XG4gIGFuaW1hdGlvbiA6IHR5cGVkLWJsaW5rIDAuN3MgaW5maW5pdGU7XG4gIG9wYWNpdHkgICA6IDE7XG4gIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbn1cblxuQGtleWZyYW1lcyB0eXBlZC1ibGluayB7XG4gIDAlIHsgb3BhY2l0eSA6IDE7IH1cbiAgNTAlIHsgb3BhY2l0eSA6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHkgOiAxOyB9XG59IiwiLy8gR2VuZXJhbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRicmFuZC1wcmltYXJ5IDogI0MzQUM2RDtcbiRib2R5LWJnIDogI2ZmZjtcbiRib2R5LWNvbG9yIDogIzMzMztcblxuJGxpbmstY29sb3IgOiAkYnJhbmQtcHJpbWFyeTtcbiRsaW5rLWhvdmVyLWNvbG9yIDogbGlnaHRlbigkbGluay1jb2xvciwgMTUlKTtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb24gOiBub25lO1xuXG4kZW5hYmxlLXJvdW5kZWQgOiB0cnVlO1xuJGljb24tZm9udC1mYW1pbHkgOiBcInNwLXRoZW1lLWljb25zXCI7XG5cblxuLy8gU3BhY2luZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kc3BhY2VyOiAgIDFyZW07XG4kc3BhY2VyLXg6ICRzcGFjZXI7XG4kc3BhY2VyLXk6ICRzcGFjZXI7XG4kc3BhY2VycyA6IChcbiAgICAgICAgMDogKFxuICAgICAgICAgICAgICAgIHg6IDAsXG4gICAgICAgICAgICAgICAgeTogMFxuICAgICAgICApLFxuICAgICAgICAxOiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIC4yNSksIC8vIDRweFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXkgKiAuMjUpXG4gICAgICAgICksXG4gICAgICAgIDI6IChcbiAgICAgICAgICAgICAgICB4OiAoJHNwYWNlci14ICogLjUpLCAvLyA4cHhcbiAgICAgICAgICAgICAgICB5OiAoJHNwYWNlci15ICogLjUpXG4gICAgICAgICksXG4gICAgICAgIDM6IChcbiAgICAgICAgICAgICAgICB4OiAoJHNwYWNlci14ICogLjkzNzUpLCAvLyAxNXB4XG4gICAgICAgICAgICAgICAgeTogKCRzcGFjZXIteSAqIC45Mzc1KVxuICAgICAgICApLFxuICAgICAgICA0OiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDEuMjUpLCAvLyAyMHB4XG4gICAgICAgICAgICAgICAgeTogKCRzcGFjZXIteSAqIDEuMjUpXG4gICAgICAgICksXG4gICAgICAgIDU6IChcbiAgICAgICAgICAgICAgICB4OiAoJHNwYWNlci14ICogMS44NzUpLCAvLyAzMHB4XG4gICAgICAgICAgICAgICAgeTogKCRzcGFjZXIteSAqIDEuODc1KVxuICAgICAgICApLFxuICAgICAgICA2OiAoXG4gICAgICAgICAgICAgICAgeDogKCRzcGFjZXIteCAqIDMpLCAvLyA0OHB4XG4gICAgICAgICAgICAgICAgeTogKCRzcGFjZXIteSAqIDMpXG4gICAgICAgICksXG4gICAgICAgIDc6IChcbiAgICAgICAgICAgICAgICB4OiAoJHNwYWNlci14ICogMy41KSwgLy8gNTZweFxuICAgICAgICAgICAgICAgIHk6ICgkc3BhY2VyLXkgKiAzLjUpXG4gICAgICAgIClcbik7XG5cblxuLy8gR3JpZCBvcHRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGdyaWQtY29sdW1ucyA6IDEyO1xuJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UgOiAzMHB4O1xuLy8kZ3JpZC1icmVha3BvaW50cyA6ICh4czogMHB4LCBzbTogNTY4cHgsIG1kOiA3NjhweCwgbGc6IDEyMDBweCk7XG4vLyRjb250YWluZXItbWF4LXdpZHRocyA6ICh4czogMHB4LCBzbTogNTY4cHgsIG1kOiA3NjhweCwgbGc6IDEyMDBweCk7XG5cblxuLy8gVHlwb2dyYXBoeSBvcHRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGZvbnQtZmFtaWx5LWJhc2UgOiBcIlNvdXJjZSBTYW5zIFByb1wiLCBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRmb250LXNpemUtYmFzZSA6IDFyZW07XG4kbGluZS1oZWlnaHQtYmFzZSA6IDEuNzU7XG4kZm9udC13ZWlnaHQtYmFzZSA6IDQwMDtcblxuJHBhcmFncmFwaHMtbWFyZ2luLWJvdHRvbSA6IDJyZW07XG5cblxuLy8gSGVhZGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGVhZGluZ3MtZm9udC1mYW1pbHkgOiBcIk1vbnRzZXJyYXRcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRoZWFkaW5ncy1mb250LXdlaWdodCA6IDUwMDtcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tIDogMnJlbTtcbiRoZWFkaW5ncy1saW5lLWhlaWdodCA6IDEuNTtcbiRoZWFkaW5ncy1jb2xvciA6ICMxMTE7XG5cbiRkaXNwbGF5MS13ZWlnaHQgOiBpbmhlcml0O1xuJGRpc3BsYXkyLXdlaWdodCA6IGluaGVyaXQ7XG4kZGlzcGxheTMtd2VpZ2h0IDogaW5oZXJpdDtcbiRkaXNwbGF5NC13ZWlnaHQgOiBpbmhlcml0O1xuXG4kbGVhZC1mb250LXdlaWdodCA6IGluaGVyaXQ7XG5cblxuLy8gQnV0dG9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRidG4tbGluZS1oZWlnaHQgOiAxLjc1O1xuJGJ0bi1mb250LXdlaWdodCA6IDQwMDtcbiRidG4tcGFkZGluZy14IDogMS4zcmVtO1xuJGJ0bi1wYWRkaW5nLXkgOiAuNHJlbTtcblxuJGJ0bi1wcmltYXJ5LWJvcmRlciA6ICRicmFuZC1wcmltYXJ5O1xuJGJ0bi1wcmltYXJ5LWJnIDogJGJyYW5kLXByaW1hcnk7XG4kYnRuLXByaW1hcnktY29sb3IgOiAjZmZmO1xuXG4kYnRuLWJvcmRlci1yYWRpdXMgOiAzMHB4O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnIDogMzBweDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbSA6IDMwcHg7XG5cbiRidG4tcGFkZGluZy14LXNtIDogMC44cmVtO1xuJGJ0bi1wYWRkaW5nLXktc20gOiAwLjRyZW07XG5cbiRidG4tcGFkZGluZy14LWxnIDogMi41cmVtO1xuJGJ0bi1wYWRkaW5nLXktbGcgOiAxcmVtO1xuXG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGlucHV0LWJnIDogI2ZmZjtcbiRpbnB1dC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4kaW5wdXQtYm9yZGVyLWNvbG9yIDogI2VlZTtcblxuJGlucHV0LWJvcmRlci1mb2N1cyA6ICNkZGQ7XG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIgOiByZ2JhKCMzMzMsIDAuNSk7XG5cbiRpbnB1dC1wYWRkaW5nLXggOiAxcmVtO1xuJGlucHV0LXBhZGRpbmcteSA6IDAuNjVyZW07XG4kaW5wdXQtcGFkZGluZy14LWxnIDogMS41cmVtO1xuJGlucHV0LXBhZGRpbmcteS1sZyA6IDFyZW07XG5cbiRpbnB1dC1saW5lLWhlaWdodCA6IDEuNDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXMgOiAwO1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgOiAwO1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc20gOiAwO1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAyMHB4O1xuXG5cbi8vIENhcm91c2VsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aCA6IDFyZW07XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogMXJlbTtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyIDogMC40cmVtO1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXIgOiAwLjRyZW07XG5cblxuLy8gQm9vdHN0cmFwIGRlZmF1bHQgc2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0ICdhc3NldHMvYm9vdHN0cmFwL3ZhcmlhYmxlcyc7IiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjEuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpKVxuLy8gICAgNzY3cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIDFweCwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW5mcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJG5hbWUsICRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBUQUJMRSBPRiBDT05URU5UUzpcblxuLSBCYXNlIHN0eWxlcyBmb3IgY29tbW9uIGVsZW1lbnRzXG4tIEJvb3RzdHJhcCBzdHlsZSBjdXN0b21pemF0aW9uc1xuLSAgIEdyaWQgcm93c1xuLSBQcmltYXJ5IHNpdGUgcHJlbG9hZGVyXG4tIFNjcm9sbCB0b3AgYnV0dG9uXG4tIFNpdGUgcGFnaW5hdGlvblxuLSBTaXRlIGhlYWRlciBjb21tb25zXG4tIEhlYWRlciBlbGVtZW50cyAobG9nbywgZXh0cmFzLCBldGMpXG4tIEhlYWRlciBkZXNrdG9wIG5hdmlnYXRpb25cbi0gRnVsbHNjcmVlbiBtb2JpbGUgbmF2aWdhdGlvblxuLSBGdWxsc2NyZWVuIHNlYXJjaFxuLSBIZWFkZXIgc3R1Y2sgc3RhdGVcbi0gSGVhZGVyIHJlc3BvbnNpdmVuZXNzXG4tIFNpdGUgZm9vdGVyIHN0eWxlc1xuLSBQYWdlIGludHJvIGJsb2NrXG4tICAgSW50cm8gY29tbW9uc1xuLSBQb3J0Zm9saW8gbGlzdGluZ1xuLSBUZXN0aW1vbmlhbHMgc2xpZGVyXG4tIFRoZW1lIHByb2dyZXNzIGJhcnNcbi0gUHJpY2luZyB0YWJsZXNcbi0gRkFRIHBhZ2Vcbi0gQ2xpZW50cyBwYWdlXG4tIE1haWxjaGltcCBzdWJzY3JpYmUgYmxvY2tcbi0gNDA0IHBhZ2Vcbi0gU2ltcGxlIHRleHQgcm90YXRvciBwbHVnaW4gc3R5bGVzXG4tIFR5cGVkIGpzIGludGVncmF0aW9uXG4tIFNpdGUgc29jaWFscyBWQyB3aWRnZXRcbi0gVmlzdWFsIENvbXBvc2VyIGN1c3RvbSB0ZXh0IHdpZGdldFxuLSBCYXNpYyBibG9ncm9sbCBzdHlsZXNcbi0gQmxvZ3JvbGwgcG9zdCBmb3JtYXRzXG4tIEJsb2cgc2lkZWJhciBkZXNpZ25cbi0gQmxvZ3JvbGwgc2luZ2xlIHBhZ2Ugc3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCYXNlIHN0eWxlcyBmb3IgY29tbW9uIGVsZW1lbnRzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmh0bWwge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xufVxuXG5ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbmJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDZweDtcbiAgYmFja2dyb3VuZDogI2RkZDtcbn1cblxuYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiAjQzNBQzZEO1xufVxuXG5ib2R5LmRpc2FibGUtaG92ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbmEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmhyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbn1cblxuLndwLWNhcHRpb24sXG4uc3Atd2lkZ2V0LWJsb2NrIGltZyxcbi5zcC1ibG9nLWJsb2NrIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5idXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4jc3Atd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5mb3JtLWNvbnRyb2wge1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xufVxuXG4uc3AtbWFyZzMwIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLnNwLW1hcmc1MCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgW2NsYXNzKj0nY29sLSddIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgfVxuICAuc3AtbWFyZzMwLCAuc3AtbWFyZzUwIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cbi5zcC1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTI7XG4gIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDExMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uc3Atc2VjdGlvbi5kZW1vIC5jb250YWluZXIge1xuICB3aWR0aDogMTUwMHB4O1xufVxuXG4uc3Atc2VjdGlvbi5kZW1vIC5yb3cge1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi1yaWdodDogLTIwcHg7XG59XG5cbi5zcC1zZWN0aW9uLmRlbW8gW2NsYXNzKj0nY29sLSddIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uc3Atc2VjdGlvbi5wdDAge1xuICBwYWRkaW5nLXRvcDogMHB4O1xufVxuXG4uc3Atc2VjdGlvbi5wYjAge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xufVxuXG4uc3Atc2VjdGlvbi5ub25lIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNwLXNlY3Rpb24uYm9yZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG59XG5cbi5zcC1zZWN0aW9uLndoaXRlIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zcC1zZWN0aW9uLndoaXRlIGgxLCAuc3Atc2VjdGlvbi53aGl0ZSBoMiwgLnNwLXNlY3Rpb24ud2hpdGUgaDMsIC5zcC1zZWN0aW9uLndoaXRlIGg0LCAuc3Atc2VjdGlvbi53aGl0ZSBoNSwgLnNwLXNlY3Rpb24ud2hpdGUgaDYge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNwLXNlY3Rpb24ubGl0dGxlIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA4MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNwLXNlY3Rpb24ubGl0dGxlIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4uc3Atc2VjdGlvbi5iZy1jb2xvci1saWdodCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbn1cblxuLnNwLXNlY3Rpb24uYmctY29sb3ItZGFyayB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDQ0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQ0NDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zcC1zZWN0aW9uIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zcC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnNwLXRpdGxlLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4uc3AtdGl0bGUtYmxvY2subGluZSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbn1cblxuLnNwLXRpdGxlLWJsb2NrLmxpbmUgc3BhbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zcC10aXRsZS1ibG9jay5saW5lOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDJweDtcbiAgYmFja2dyb3VuZDogI0MzQUM2RDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLmphcmFsbGF4IHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGJ1dHRvbiB2YyBzY2hvcnRjb2RlICovXG4uc3AtYnRuLWNvbnRhaW5lci5hbGlnbl9jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcC1idG4tY29udGFpbmVyLmFsaWduX2xlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc3AtYnRuLWNvbnRhaW5lci5hbGlnbl9yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gdHlwZWQuanMgaW50ZWdyYXRpb24gKi9cbi50eXBlZC1jdXJzb3Ige1xuICBhbmltYXRpb246IHR5cGVkLWJsaW5rIDAuN3MgaW5maW5pdGU7XG4gIG9wYWNpdHk6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQGtleWZyYW1lcyB0eXBlZC1ibGluayB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCb290c3RyYXAgc3R5bGUgY3VzdG9taXphdGlvbnMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGdyaWQgcm93cyAqL1xuLnJvdyB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gYnV0dG9ucyBhbmQgb3RoZXIgZm9ybSBjb250cm9scyAqL1xuLmJ0biB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmJ0bi1sZyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmJ0bi13aGl0ZSB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAzMHB4ICNmZmYgaW5zZXQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBjYXJvdXNlbHMgKi9cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXM7XG59XG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIGxpOmhvdmVyLCAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzNBQzZEO1xufVxuXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0ge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0sXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWlubmVyIC5hY3RpdmUsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWlubmVyIC5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0tcHJldixcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pbm5lciAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pbm5lciAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gcHJvZ3Jlc3MgYmFyICovXG4ucHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ucHJvZ3Jlc3MgLnByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGhlaWdodDogNXB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gaW5wdXQgZ3JvdXBzICovXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1hZGRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgLmZvbnQtc2l6ZSxcbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0biB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogUHJpbWFyeSBzaXRlIHByZWxvYWRlci4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtcHJlbG9hZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE1MDAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4jc3AtcHJlbG9hZGVyOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTI1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjVweDtcbn1cblxuI3NwLXByZWxvYWRlcjphZnRlciB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjQzNBQzZEO1xuICBhbmltYXRpb246IDEuMTVzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tbmFtZTogc3Atc2l0ZS1sb2FkZXI7XG59XG5cbiNzcC1wcmVsb2FkZXI6YWZ0ZXI6YmVmb3JlLCAjc3AtcHJlbG9hZGVyOmFmdGVyOmFmdGVyIHtcbiAgYW5pbWF0aW9uOiAxLjE1cyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuQGtleWZyYW1lcyBzcC1zaXRlLWxvYWRlciB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTY3JvbGwgdG9wIGJ1dHRvbi4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uc3Atc2Nyb2xsLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICByaWdodDogMzBweDtcbiAgYm90dG9tOiAzMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNTVzIGVhc2U7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDM0FDNkQ7XG4gIG9wYWNpdHk6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zcC1zY3JvbGwtdG9wLnNjcm9sbC10b3AtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5zcC1zY3JvbGwtdG9wID4gaSB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAxO1xuICBmb250LXNpemU6IDIwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5zcC1zY3JvbGwtdG9wID4gLmFubm8tdGV4dCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5zcC1zY3JvbGwtdG9wOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIHBhZ2luYXRpb24uICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLXBhZ2luYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLnNwLXBhZ2luYXRpb24gdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNwLXBhZ2luYXRpb24gdWwgbGkge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uc3AtcGFnaW5hdGlvbiB1bCBsaSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zcC1wYWdpbmF0aW9uIHVsIGxpLmN1cnJlbnQgYSwgLnNwLXBhZ2luYXRpb24gdWwgbGk6aG92ZXIgYSB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNwLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stc2xpZGVyOmhvdmVyIC5zbGljay1hcnJvdy5jaXJjbGUuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAxNXB4O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2xpY2stc2xpZGVyOmhvdmVyIC5zbGljay1hcnJvdy5jaXJjbGUuc2xpY2stcHJldiB7XG4gIGxlZnQ6IDE1cHg7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGljay1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxNSU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBmb250LXNpemU6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNwLXRoZW1lLWljb25zXCI7XG4gIGNvbnRlbnQ6IFwiXFxmM2QyXCI7XG4gIGZvbnQtc2l6ZTogNDBweDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjNkMyc7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zbGljay1hcnJvdy5jaXJjbGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMThweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG5cbi5zbGljay1hcnJvdy5jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLnNsaWNrLWFycm93LmNpcmNsZSA+IGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc2xpY2stYXJyb3cuY2lyY2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0MzQUM2RDtcbn1cblxuLnNsaWNrLWFycm93LmNpcmNsZTpob3ZlciBpIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zbGljay1hcnJvdy5jaXJjbGUuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xpY2stYXJyb3cuY2lyY2xlLnNsaWNrLXByZXYge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xpY2stZG90cyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxNTA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDA7XG59XG5cbi5zbGljay1kb3RzID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbGljay1kb3RzIGJ1dHRvbiB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDFlbTtcbiAgd2lkdGg6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuNGVtO1xuICBtYXJnaW4tbGVmdDogLjRlbTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogI2RkZDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG5cbi5zbGljay1kb3RzID4gbGk6aG92ZXIgYnV0dG9uLCAuc2xpY2stZG90cyA+IGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc2xpY2stZG90cy1pbnNpZGUgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMi42MjVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5zbGljay1kb3RzLWluc2lkZSAuc2xpY2stZG90cyBidXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIGhlYWRlciBjb21tb25zLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1oZWFkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDUwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4jc3AtaGVhZGVyLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEhlYWRlciBlbGVtZW50cyAobG9nbywgZXh0cmFzLCBldGMpICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI3NwLWhlYWRlci1pbm5lciA+IC5icmFuZC1sb2dvIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IDIuMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4jc3AtaGVhZGVyLWlubmVyID4gLmJyYW5kLWxvZ28gPiBoMSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4jc3AtaGVhZGVyLWlubmVyID4gLmJyYW5kLWxvZ28gPiBoMSA+IHNwYW4ge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuI3NwLWhlYWRlci1pbm5lciA+IC5icmFuZC1sb2dvIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4jc3AtaGVhZGVyLWlubmVyID4gLmJyYW5kLWxvZ28gaW1nLmxvZ28tZGFyayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzcC1oZWFkZXItaW5uZXIgPiAuaGVhZGVyLWV4dHJhcyB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4jc3AtaGVhZGVyLWlubmVyID4gLmhlYWRlci1leHRyYXMgPiAqIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI3NwLWhlYWRlci1pbm5lciA+IC5oZWFkZXItZXh0cmFzID4gYSB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jc3AtaGVhZGVyLWlubmVyID4gLmhlYWRlci1leHRyYXMgPiBhID4gaSB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbn1cblxuI3NwLWhlYWRlci1pbm5lciA+IC5oZWFkZXItZXh0cmFzID4gYTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuI3NwLWhlYWRlci1pbm5lciA+IC5oZWFkZXItZXh0cmFzID4gLnYtc2VwYXJhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgbWFyZ2luOiAwIDMwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBIZWFkZXIgZGVza3RvcCBuYXZpZ2F0aW9uLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1wcmltYXJ5LW5hdiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAtMTdweDtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogMTVweCAxN3B4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgY29sb3IsIGJhY2tncm91bmQ7XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOmFmdGVyIHtcbiAgcGFkZGluZy1sZWZ0OiA3cHg7XG4gIGNvbnRlbnQ6ICdcXGU4MjEnO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiBcInNwLXRoZW1lLWljb25zXCI7XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSA+IGxpOmhvdmVyID4gYSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51ID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciA+IGEge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IC5zdWItbWVudSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzLCBvcGFjaXR5IDAuMjVzLCB2aXNpYmlsaXR5IDAuMzVzO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBib3gtc2hhZG93OiAwIDZweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNzUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgLnN1Yi1tZW51LmludmVydC1hdHRhY2gtcG9pbnQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IC5zdWItbWVudSA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSAuc3ViLW1lbnUgPiBsaSA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGNvbG9yOiAjMzMzO1xuICB3aWR0aDogMjIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSAuc3ViLW1lbnUgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gIHJpZ2h0OiAyMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBjb250ZW50OiAnXFxlODFmJztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LWZhbWlseTogXCJzcC10aGVtZS1pY29uc1wiO1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgLnN1Yi1tZW51ID4gbGk6aG92ZXIgPiBhIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IC5zdWItbWVudSAuc3ViLW1lbnUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiAwO1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgLnN1Yi1tZW51IC5zdWItbWVudS5pbnZlcnQtYXR0YWNoLXBvaW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSA+IGxpLnNwLW1lZ2EtbWVudSA+IHVsIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG59XG5cbiNzcC1wcmltYXJ5LW5hdiA+IC5uYXZfbWVudSA+IGxpLnNwLW1lZ2EtbWVudSA+IHVsID4gbGkgPiBhIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51ID4gbGkuc3AtbWVnYS1tZW51Lm1lZ2EtMi1jb2x1bW5zID4gdWwge1xuICAtd2Via2l0LWNvbHVtbnM6IDI7XG4gIC1tb3otY29sdW1uczogMjtcbiAgY29sdW1uczogMjtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51ID4gbGkuc3AtbWVnYS1tZW51Lm1lZ2EtMy1jb2x1bW5zID4gdWwge1xuICAtd2Via2l0LWNvbHVtbnM6IDM7XG4gIC1tb3otY29sdW1uczogMztcbiAgY29sdW1uczogMztcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuc3ViLW1lbnUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogRnVsbHNjcmVlbiBtb2JpbGUgbmF2aWdhdGlvbi4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtbW9iaWxlLW5hdi1iZywgI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzLCB2aXNpYmlsaXR5IDAuM3M7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuI3NwLW1vYmlsZS1uYXYtYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAzMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGJvcmRlci10b3A6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciA+IC5vdmVybGF5LWlubmVyLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMDBweDtcbiAgd2lkdGg6IDQwMHB4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGZuIG1lbnUgdG9nZ2xlICovXG4jc3AtcHJpbWFyeS1uYXYgI3NwLW1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHotaW5kZXg6IDEwNDA7XG4gIG1hcmdpbjogMTVweCAwO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMWVtO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuI3NwLXByaW1hcnktbmF2ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIgPiBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAycHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6IDE7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0LCBjb2xvciAwLjI1cztcbn1cblxuI3NwLXByaW1hcnktbmF2ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIgPiBzcGFuOm50aC1jaGlsZCgxKSB7XG4gIHRvcDogMDtcbn1cblxuI3NwLXByaW1hcnktbmF2ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIgPiBzcGFuOm50aC1jaGlsZCgyKSwgI3NwLXByaW1hcnktbmF2ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIgPiBzcGFuOm50aC1jaGlsZCgzKSB7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4jc3AtcHJpbWFyeS1uYXYgI3NwLW1vYmlsZS1uYXYtdHJpZ2dlciA+IHNwYW46bnRoLWNoaWxkKDQpIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc3AtYWN0aXZlLWJ1cmdlci1tZW51ICNzcC1wcmltYXJ5LW5hdiAjc3AtbW9iaWxlLW5hdi10cmlnZ2VyID4gc3BhbjpudGgtY2hpbGQoMSkge1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDA7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLnNwLWFjdGl2ZS1idXJnZXItbWVudSAjc3AtcHJpbWFyeS1uYXYgI3NwLW1vYmlsZS1uYXYtdHJpZ2dlciA+IHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4uc3AtYWN0aXZlLWJ1cmdlci1tZW51ICNzcC1wcmltYXJ5LW5hdiAjc3AtbW9iaWxlLW5hdi10cmlnZ2VyID4gc3BhbjpudGgtY2hpbGQoMykge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4uc3AtYWN0aXZlLWJ1cmdlci1tZW51ICNzcC1wcmltYXJ5LW5hdiAjc3AtbW9iaWxlLW5hdi10cmlnZ2VyID4gc3BhbjpudGgtY2hpbGQoNCkge1xuICBib3R0b206IDUwJTtcbiAgd2lkdGg6IDA7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IHNvY2lhbCBpY29ucyAqL1xuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5zcC1zb2MtaWNvbnMge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBmb250LXNpemU6IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbiNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciAuc3Atc29jLWljb25zID4gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNDM0FDNkQ7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1zaXplOiAyM3B4O1xufVxuXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLnNwLXNvYy1pY29ucyA+IGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGlubmVyIG5hdiBtZW51ICovXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLm5hdl9tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbiNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciAubmF2X21lbnUgbGkgPiBhLnN1Yi1hY3RpdmUge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5uYXZfbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5uYXZfbWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGYzZDAnO1xuICBmb250LWZhbWlseTogXCJzcC10aGVtZS1pY29uc1wiO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5uYXZfbWVudSA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwO1xufVxuXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLm5hdl9tZW51ID4gbGkgPiBhIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLm5hdl9tZW51ID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbiNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciAubmF2X21lbnUgLnN1Yi1tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCAxNXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLm5hdl9tZW51IC5zdWItbWVudSBhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciAubmF2X21lbnUgLnN1Yi1tZW51IGE6aG92ZXIge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5uYXZfbWVudSAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGFjdGl2ZSBzdGF0ZSAqL1xuaHRtbC5zcC1hY3RpdmUtYnVyZ2VyLW1lbnUsIGh0bWwuc3AtYWN0aXZlLWJ1cmdlci1tZW51ID4gYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5odG1sLnNwLWFjdGl2ZS1idXJnZXItbWVudSAjc3AtbW9iaWxlLW5hdi1iZywgaHRtbC5zcC1hY3RpdmUtYnVyZ2VyLW1lbnUgI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaHRtbC5zcC1hY3RpdmUtYnVyZ2VyLW1lbnUgI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5uYXZfbWVudSA+IGxpLCBodG1sLnNwLWFjdGl2ZS1idXJnZXItbWVudSAjc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLnNwLXNvYy1pY29ucyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcC1tZW51LWVmZmVjdCAwLjRzIGxpbmVhciBmb3J3YXJkcztcbiAgYW5pbWF0aW9uOiBzcC1tZW51LWVmZmVjdCAwLjRzIGxpbmVhciBmb3J3YXJkcztcbn1cblxuaHRtbC5zcC1hY3RpdmUtYnVyZ2VyLW1lbnUgI3NwLWhlYWRlci5oZWFkZXItc3R1Y2sgLmJyYW5kLWxvZ28gLmxvZ28tZGFyayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmh0bWwuc3AtYWN0aXZlLWJ1cmdlci1tZW51ICNzcC1oZWFkZXIuaGVhZGVyLXN0dWNrIC5icmFuZC1sb2dvIC5sb2dvLXdoaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBrZXlmcmFtZXMgc3AtbWVudS1lZmZlY3Qge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEZ1bGxzY3JlZW4gc2VhcmNoLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1zZWFyY2gtYmxvY2stY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG4gIHotaW5kZXg6IDEwMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIgPiAuc2VhcmNoLWJsb2NrLWlubmVyIHtcbiAgcGFkZGluZzogMCAzMHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB3aWR0aDogNjAwcHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG59XG5cbiNzcC1zZWFyY2gtYmxvY2stY29udGFpbmVyID4gLnNlYXJjaC1ibG9jay1pbm5lciA+IGZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNzcC1zZWFyY2gtYmxvY2stY29udGFpbmVyIC5zZWFyY2gtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDA1O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxNXB4IDQ1cHggMTVweCAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIgLnNlYXJjaC1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jc3Atc2VhcmNoLWJsb2NrLWNvbnRhaW5lciAuc2VhcmNoLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNzcC1zZWFyY2gtYmxvY2stY29udGFpbmVyIC5zZWFyY2gtaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jc3Atc2VhcmNoLWJsb2NrLWNvbnRhaW5lciAuc2VhcmNoLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jc3Atc2VhcmNoLWJsb2NrLWNvbnRhaW5lciAuc2VhcmNoLWJ0biB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDM1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICBvcGFjaXR5OiAwLjg1O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQ1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB6LWluZGV4OiAxMDAxMDtcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIgLnNlYXJjaC1idG46aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jc3Atc2VhcmNoLWJsb2NrLWNvbnRhaW5lciAuY2xvc2Utc2VhcmNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIgLmNsb3NlLXNlYXJjaCBpIHtcbiAgZm9udC1zaXplOiA3MHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIgLmNsb3NlLXNlYXJjaDpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIub3BlbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbiNzcC1zZWFyY2gtYmxvY2stY29udGFpbmVyLm9wZW4gPiAuc2VhcmNoLWJsb2NrLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEhlYWRlciBzdHVjayBzdGF0ZS4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgbGluZWFyO1xufVxuXG4jc3AtaGVhZGVyIGEge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbn1cblxuYm9keS5hZG1pbi1iYXIgI3NwLWhlYWRlciB7XG4gIHRvcDogMzJweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc4MnB4KSB7XG4gIGJvZHkuYWRtaW4tYmFyICNzcC1oZWFkZXIge1xuICAgIHRvcDogNDZweDtcbiAgfVxufVxuXG4jc3AtaGVhZGVyLmhlYWRlci1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4jc3AtaGVhZGVyLmhlYWRlci1zdHVjayAuYnJhbmQtbG9nbyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuI3NwLWhlYWRlci5oZWFkZXItc3R1Y2sgLmJyYW5kLWxvZ28gLmxvZ28tZGFyayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jc3AtaGVhZGVyLmhlYWRlci1zdHVjayAuYnJhbmQtbG9nbyAubG9nby13aGl0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBzbGlkZS1pbiBzY3JvbGwgYW5pbWF0aW9uICovXG4jc3AtaGVhZGVyLnN0dWNrLXNsaWRlaW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbiNzcC1oZWFkZXIuc3R1Y2stc2xpZGVpbjpub3QoLmhlYWRlci1zdHVjaykge1xuICB0b3A6IDA7XG59XG5cbiNzcC1oZWFkZXIuc3R1Y2stc2xpZGVpbi5oZWFkZXItc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGFuaW1hdGlvbjogc3AtaGVhZGVyLXN0dWNrLXNsaWRlaW4gNTAwbXMgMSBmb3J3YXJkcztcbn1cblxuQGtleWZyYW1lcyBzcC1oZWFkZXItc3R1Y2stc2xpZGVpbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gc2Nyb2xsIHN0eWxlcyAqL1xuYm9keTpub3QoLnNwLWFjdGl2ZS1idXJnZXItbWVudSkgI3NwLWhlYWRlci5oZWFkZXItc3R1Y2sge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWVlO1xuICBjb2xvcjogIzMzMztcbiAgYm94LXNoYWRvdzogMCAzcHggMjBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSGVhZGVyIHJlc3BvbnNpdmVuZXNzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgI3NwLXByaW1hcnktbmF2ID4gI3NwLW1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgI3NwLWhlYWRlciB7XG4gICAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgI3NwLWhlYWRlci1pbm5lciA+IC5icmFuZC1sb2dvIHtcbiAgICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbiAgI3NwLWhlYWRlci1pbm5lciA+IC5oZWFkZXItZXh0cmFzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIGZvb3RlciBzdHlsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI3NwLWZvb3Rlci1zaXppbmctaGVscGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3NwLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jc3AtZm9vdGVyLnNwLWZvb3Rlci1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4jc3AtZm9vdGVyLnNwLWZvb3Rlci1maXhlZCArICNzcC1mb290ZXItc2l6aW5nLWhlbHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jc3AtZm9vdGVyIC5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG59XG5cbiNzcC1mb290ZXIgLmNvbnRhaW5lciAucm93IHtcbiAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xufVxuXG4jc3AtZm9vdGVyIC5jb250YWluZXIgLnJvdyBbY2xhc3MqPSdjb2wtJ10ge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjc3AtZm9vdGVyIC5jb250YWluZXIgLnJvdyBbY2xhc3MqPSdjb2wtJ10ge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtbWFpbi1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcbiAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjc3AtZm9vdGVyID4gLnNwLW1haW4tZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAudGl0bGUtYmxvY2sgaDQge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuc29jbGluay1ibG9jayB1bCB7XG4gIHBhZGRpbmc6IDBweDtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuc29jbGluay1ibG9jayB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuc29jbGluay1ibG9jayB1bCBsaSBhIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAyM3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBsaW5lYXI7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtbWFpbi1mb290ZXIgLnNvY2xpbmstYmxvY2sgdWwgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGxpbmVhcjtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAudHdpdHRlci1ibG9jayB1bCB7XG4gIHBhZGRpbmctbGVmdDogNTBweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4jc3AtZm9vdGVyID4gLnNwLW1haW4tZm9vdGVyIC50d2l0dGVyLWJsb2NrIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDEuM3JlbTtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAudHdpdHRlci1ibG9jayB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtbWFpbi1mb290ZXIgLnR3aXR0ZXItYmxvY2sgdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjI0Mic7XG4gIGZvbnQtZmFtaWx5OiAnc3AtdGhlbWUtaWNvbnMnO1xuICBjb2xvcjogI2MzYWM2ZDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdG9wOiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAtNTBweDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuaW5zdGFncmFtLWJsb2NrIHtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtbWFpbi1mb290ZXIgLmluc3RhZ3JhbS1ibG9jayB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuaW5zdGFncmFtLWJsb2NrIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuaW5zdGFncmFtLWJsb2NrIHVsIGxpIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1tYWluLWZvb3RlciAuaW5zdGFncmFtLWJsb2NrIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtbWFpbi1mb290ZXIgLmluc3RhZ3JhbS1ibG9jayBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4jc3AtZm9vdGVyID4gLnNwLWVuZC1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDI1cHggMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyID4gLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtZW5kLWZvb3RlciBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtZW5kLWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbiNzcC1mb290ZXIgPiAuc3AtZW5kLWZvb3RlciAubWVudS1ibG9jayB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4jc3AtZm9vdGVyID4gLnNwLWVuZC1mb290ZXIgLm1lbnUtYmxvY2sgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyIC5tZW51LWJsb2NrIHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4jc3AtZm9vdGVyID4gLnNwLWVuZC1mb290ZXIgLm1lbnUtYmxvY2sgdWwgbGk6YWZ0ZXIge1xuICBjb250ZW50OiAnfCc7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyIC5tZW51LWJsb2NrIHVsIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyID4gLmNvbnRhaW5lciB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gICNzcC1mb290ZXIgPiAuc3AtZW5kLWZvb3RlciAuZW5kLWZvb3Rlci1ibG9jayB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgfVxuICAjc3AtZm9vdGVyID4gLnNwLWVuZC1mb290ZXIgLmVuZC1mb290ZXItYmxvY2sgKyAuZW5kLWZvb3Rlci1ibG9jayB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFBhZ2UgaW50cm8gYmxvY2suICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGludHJvIGNvbW1vbnMgKi9cbi5zcC1pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNwLWludHJvIC5pbnRyby1iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJnOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjU1O1xuICBjb250ZW50OiAnJztcbiAgei1pbmRleDogMTU7XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYmcubm8tb3ZlcmxheTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJnID4gaW1nIHtcbiAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlcjtcIjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLWludHJvIC5pbnRyby1kb3R0ZWQtYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RvdHRlZC1iZy1wYXR0ZXJuLnBuZ1wiKTtcbiAgei1pbmRleDogMTc7XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjA7XG4gIHBhZGRpbmc6IDUwcHggMjVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5zcC1pbnRybyAuaW50cm8tYm9keSB7XG4gICAgcGFkZGluZzogNTBweCAxNXB4O1xuICB9XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSBoMSwgLnNwLWludHJvIC5pbnRyby1ib2R5IGgyLCAuc3AtaW50cm8gLmludHJvLWJvZHkgaDMsIC5zcC1pbnRybyAuaW50cm8tYm9keSBoNCwgLnNwLWludHJvIC5pbnRyby1ib2R5IGg1LCAuc3AtaW50cm8gLmludHJvLWJvZHkgaDYsIC5zcC1pbnRybyAuaW50cm8tYm9keSBwLCAuc3AtaW50cm8gLmludHJvLWJvZHkgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJvZHkgLmJ0bi13aGl0ZSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJvZHkgLmJ0bi1ib3JkZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCAgI2ZmZjtcbn1cblxuLnNwLWludHJvIC5pbnRyby1ib2R5IC5idG4tYm9yZGVyOmhvdmVyIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSAubGlzdC1pbmxpbmUge1xuICBtYXJnaW46IDAgLTEwcHggLTIwcHg7XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSAubGlzdC1pbmxpbmUgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAxMHB4IDIwcHg7XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSBwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNzAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zcC1pbnRybyAuaW50cm8tYm9keSBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJvZHkgLmJ0biB7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBwYWRkaW5nOiA4cHggMjJweDtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnNwLWludHJvIC5pbnRyby1ib2R5IC5zcC1pbnRyby1pbWFnZS1pY29uIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuXG4uc3AtaW50cm8gLmludHJvLWJvZHkgLmljb24tYmlnIHtcbiAgZm9udC1zaXplOiA5MHB4O1xuICBsaW5lLWhlaWdodDogOTBweDtcbn1cblxuLnNwLWludHJvLmZ1bGxzY3JlZW4ge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiA0NTBweDtcbn1cblxuLnNwLWludHJvLmZ1bGxzY3JlZW4gLmludHJvLWJvZHkge1xuICBwYWRkaW5nOiA3NXB4IDI1cHggNzVweCAyNXB4O1xufVxuXG4uc3AtaW50cm8ua2VuYnVybnMgLmludHJvLWJnIHtcbiAgYW5pbWF0aW9uOiBzcC1pbnRyby1rZW5idXJucyAzMHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuXG4uc3AtaW50cm86bm90KC5mdWxsc2NyZWVuKTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xufVxuXG5Aa2V5ZnJhbWVzIHNwLWludHJvLWtlbmJ1cm5zIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgfVxufVxuXG4uc3AtaW50cm8gLmludHJvLXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cblxuLnNwLWludHJvIC5pbnRyby10aXRsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwLWludHJvIC5pbnRyby10aXRsZS5pbnRyby10aXRsZS0xIHtcbiAgZm9udC1zaXplOiA0LjNyZW07XG59XG5cbi5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtMiB7XG4gIGZvbnQtc2l6ZTogMi4xNXJlbTtcbn1cblxuLnNwLWludHJvIC5pbnRyby10aXRsZS5pbnRyby10aXRsZS0zIHtcbiAgZm9udC1zaXplOiAxLjQzMzMzcmVtO1xufVxuXG4uc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTQge1xuICBmb250LXNpemU6IDEuMDc1cmVtO1xufVxuXG4uc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTUge1xuICBmb250LXNpemU6IDAuODZyZW07XG59XG5cbi5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtNiB7XG4gIGZvbnQtc2l6ZTogMC43MTY2N3JlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtMSB7XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gIH1cbiAgLnNwLWludHJvIC5pbnRyby10aXRsZS5pbnRyby10aXRsZS0yIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxuICAuc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTMge1xuICAgIGZvbnQtc2l6ZTogMS4wNjY2N3JlbTtcbiAgfVxuICAuc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTQge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtNSB7XG4gICAgZm9udC1zaXplOiAwLjY0cmVtO1xuICB9XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtNiB7XG4gICAgZm9udC1zaXplOiAwLjUzMzMzcmVtO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuICAuc3AtaW50cm8gLmludHJvLXRpdGxlLmludHJvLXRpdGxlLTIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtMyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtNCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG4gIC5zcC1pbnRybyAuaW50cm8tdGl0bGUuaW50cm8tdGl0bGUtNSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07XG4gIH1cbiAgLnNwLWludHJvIC5pbnRyby10aXRsZS5pbnRyby10aXRsZS02IHtcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgfVxufVxuXG4uc3AtaW50cm8gLmludHJvLXJlZ3VsYXItdGV4dCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuXG4uc3AtaW50cm8gLnNwLXNjcm9sbC1kb3duLWN0YSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uc3AtaW50cm8gLnNwLXNjcm9sbC1kb3duLWN0YSBpIHtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnNwLWludHJvIC5zcC1zY3JvbGwtZG93bi1jdGEgPiBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGFuaW1hdGlvbjogc3Atc2Nyb2xsZG93bi1hcnJvdyAyLjVzIGluZmluaXRlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnNwLWludHJvIC5zcC1zY3JvbGwtZG93bi1jdGEge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcC1zY3JvbGxkb3duLWFycm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDMwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGltYWdlIGludHJvICovXG4uc3AtaW50cm8uc3AtaW50cm8taW1hZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGNhcm91c2VsIGludHJvICovXG4uc3AtaW50cm8uc3AtaW50cm8tY2Fyb3VzZWwgLnNsaWRlci1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNwLWludHJvLnNwLWludHJvLWNhcm91c2VsLmZ1bGxzY3JlZW4gLnNsaWRlci1pdGVtIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogNDUwcHg7XG59XG5cbi5zcC1pbnRyby5zcC1pbnRyby1jYXJvdXNlbCAuc2xpY2stYXJyb3cge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNwLWludHJvLnNwLWludHJvLWNhcm91c2VsIC5zbGljay1hcnJvdyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3AtaW50cm8uc3AtaW50cm8tY2Fyb3VzZWwgLnNsaWNrLWRvdHMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gdmlkZW8gaW50cm8gKi9cbi5zcC1pbnRyby5zcC1pbnRyby12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC5pbnRyby1ib2R5IHtcbiAgei1pbmRleDogMzA7XG59XG5cbi5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC52aWRlby1jb250YWluZXIsIC5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC52aWRlby1jb250YWluZXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNwLWludHJvLnNwLWludHJvLXZpZGVvID4gLnZpZGVvLWNvbnRhaW5lcjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY29udGVudDogJyc7XG4gIHotaW5kZXg6IDE1O1xufVxuXG4uc3AtaW50cm8uc3AtaW50cm8tdmlkZW8gPiAudmlkZW8tY29udGFpbmVyID4gLnZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlcjtcIjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnNwLWludHJvLnNwLWludHJvLXZpZGVvID4gLnZpZGVvLWNvbnRhaW5lciA+IC52aWRlby1jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAyNXB4O1xuICByaWdodDogMzBweDtcbiAgbWFyZ2luOiAwIC0xMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgei1pbmRleDogMjA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC52aWRlby1jb250YWluZXIgPiAudmlkZW8tY29udHJvbHMgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDQ2cHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjU7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59XG5cbi5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC52aWRlby1jb250YWluZXIgPiAudmlkZW8tY29udHJvbHMgPiBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zcC1pbnRyby5zcC1pbnRyby12aWRlbyA+IC52aWRlby1jb250YWluZXIgPiAudmlkZW8tY29udHJvbHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyogQWJvdXQgVXMgKi9cbiNzcC1hYm91dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG5zcGFuLnNwLXNpZ25hdHVyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDIzcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBmb250LWZhbWlseTogJ1NoYWRvd3MgSW50byBMaWdodCcsIGN1cnNpdmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNlcnZpY2VzICovXG4uc3Atc2VydmljZXMtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTUwcHg7XG59XG5cbi5zcC1zZXJ2aWNlcy1jb250YWluZXIgLnNwLXNlcnZpY2VzLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zcC1zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xuICB9XG4gIC5zcC1zZXJ2aWNlcy1jb250YWluZXIgLnNwLXNlcnZpY2VzLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi5zcC1zZXJ2aWNlcy1ibG9jayAuaWNvbiB7XG4gIGZvbnQtc2l6ZTogNjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY29sb3I6ICMxMTE7XG59XG5cbi5zcC1zZXJ2aWNlcy1ibG9jayAudGl0bGUgaDQge1xuICBmb250LXNpemU6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5zcC1zZXJ2aWNlcy1ibG9jayAudGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFRlYW0gKi9cbi5zcC10ZWFtLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnNwLXRlYW0tYmxvY2sgLmltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc3AtdGVhbS1ibG9jayAuaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG59XG5cbi5zcC10ZWFtLWJsb2NrIC5pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnNwLXRlYW0tYmxvY2sgLmltYWdlIC5zb2MtbGlua3Mge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zcC10ZWFtLWJsb2NrIC5pbWFnZSAuc29jLWxpbmtzIHVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNwLXRlYW0tYmxvY2sgLmltYWdlIC5zb2MtbGlua3MgdWwgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uc3AtdGVhbS1ibG9jayAuaW1hZ2UgLnNvYy1saW5rcyB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zcC10ZWFtLWJsb2NrIC5pbWFnZSAuc29jLWxpbmtzIHVsIGxpIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc1O1xufVxuXG4uc3AtdGVhbS1ibG9jayAudGl0bGUgaDQge1xuICBmb250LXNpemU6IDIxcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnNwLXRlYW0tYmxvY2sgLnR5cGUge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnNwLXRlYW0tYmxvY2s6aG92ZXIgLmltYWdlIHVsIGxpIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzLCB0cmFuc2Zvcm0gMC41cztcbn1cblxuLnNwLXRlYW0tYmxvY2s6aG92ZXIgLmltYWdlIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG59XG5cbi5zcC10ZWFtLWJsb2NrOmhvdmVyIC5pbWFnZSB1bCBsaTpudGgtY2hpbGQoMikge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIwcztcbn1cblxuLnNwLXRlYW0tYmxvY2s6aG92ZXIgLmltYWdlIHVsIGxpOm50aC1jaGlsZCgzKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xufVxuXG4uc3AtdGVhbS1ibG9jazpob3ZlciAuaW1hZ2UgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4zMHM7XG59XG5cbi5zcC10ZWFtLWJsb2NrOmhvdmVyIC5pbWFnZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG59XG5cbi8qIEZ1biBGYWN0ICovXG4uc3AtYW5pbWF0ZS1udW1iZXJzLndoaXRlIGgyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zcC1hbmltYXRlLW51bWJlcnMud2hpdGUgcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3AtYW5pbWF0ZS1udW1iZXJzIGgyIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBsaW5lLWhlaWdodDogOTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDdweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwLWFuaW1hdGUtbnVtYmVycyBwIHtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogUG9ydGZvbGlvIGxpc3RpbmcuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLXBvcnRmb2xpby1ibG9jayB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrIC5zcC1wb3J0Zm9saW8tc29ydGluZyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrIC5zcC1wb3J0Zm9saW8tc29ydGluZyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnNwLXBvcnRmb2xpby1ibG9jayAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGk6YWZ0ZXIge1xuICBjb250ZW50OiAnLyc7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrIC5zcC1wb3J0Zm9saW8tc29ydGluZyBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLnNwLXBvcnRmb2xpby1ibG9jayAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGkgYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrIC5zcC1wb3J0Zm9saW8tc29ydGluZyBsaS5hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuc3AtcG9ydGZvbGlvLWJsb2NrIC5zcC1wb3J0Zm9saW8tc29ydGluZyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gIH1cbiAgLnNwLXBvcnRmb2xpby1ibG9jayAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGk6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNwLXBvcnRmb2xpby1ibG9jayAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGkge1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgfVxufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrLmlubmVyIC5zcC1wb3J0Zm9saW8tc29ydGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrLmlubmVyIC5zcC1wb3J0Zm9saW8tc29ydGluZyBsaSB7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMTBweDtcbn1cblxuLnNwLXBvcnRmb2xpby1ibG9jay5pbm5lciAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGkgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yNXMgbGluZWFyO1xuICBwYWRkaW5nOiA2cHggMThweDtcbn1cblxuLnNwLXBvcnRmb2xpby1ibG9jay5pbm5lciAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGk6aG92ZXIgPiBhLFxuLnNwLXBvcnRmb2xpby1ibG9jay5pbm5lciAuc3AtcG9ydGZvbGlvLXNvcnRpbmcgbGkuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICNDM0FDNkQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJsb2NrLmlubmVyIC5zcC1wb3J0Zm9saW8tc29ydGluZyBsaTphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5zcC1wb3J0Zm9saW8tYmxvY2suaW5uZXIgLnNwLXBvcnRmb2xpby1pdGVtcyB7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5zcC1wb3J0Zm9saW8tYmxvY2suaW5uZXIgLnNwLXBvcnRmb2xpby1pdGVtcyBbY2xhc3NePVwiY29sLVwiXSwgLnNwLXBvcnRmb2xpby1ibG9jay5pbm5lciAuc3AtcG9ydGZvbGlvLWl0ZW1zIFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbn1cblxuLnNwLXBvcnRmb2xpby1ibG9jay5pbm5lciAuc3AtcG9ydGZvbGlvLWl0ZW1zIC5zcC1wb3J0Zm9saW8taXRlbSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zcC1wb3J0Zm9saW8tYmxvY2suaW5uZXIgLnNwLXBvcnRmb2xpby1pdGVtcyAuc3AtcG9ydGZvbGlvLWl0ZW0ueDIgYSB7XG4gIGhlaWdodDogNzA4cHg7XG59XG5cbi5zcC1wb3J0Zm9saW8tYmxvY2suaW5uZXIgLnNwLXBvcnRmb2xpby1pdGVtcyAuc3AtcG9ydGZvbGlvLWl0ZW0gYSB7XG4gIGhlaWdodDogMzQwcHg7XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbXMge1xuICBtYXJnaW4tbGVmdDogLTE3cHg7XG4gIG1hcmdpbi1yaWdodDogLTE3cHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uc3AtcG9ydGZvbGlvLWl0ZW1zIFtjbGFzc149XCJjb2wtXCJdLCAuc3AtcG9ydGZvbGlvLWl0ZW1zIFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbSB7XG4gIHBhZGRpbmc6IDJweDtcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtLngyIGEge1xuICBoZWlnaHQ6IDcwNHB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWl0ZW0gYSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtIGEgLnBvcnRmb2xpby1ob3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cztcbiAgcGFkZGluZzogNTBweCA1MHB4IDAgNTBweDtcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtIGEgLnBvcnRmb2xpby1ob3ZlciBoNSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbSBhIC5wb3J0Zm9saW8taG92ZXIgc3Bhbi5kZXNjIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHdpZHRoOiA3MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC42NXM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbSBhIC5wb3J0Zm9saW8taG92ZXIgc3Bhbi5saW5rIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMy4zcmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMzBweDtcbiAgbGVmdDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC43NXM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbTpob3ZlciAucG9ydGZvbGlvLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjY1KTtcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtOmhvdmVyIC5wb3J0Zm9saW8taG92ZXIgaDUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtOmhvdmVyIC5wb3J0Zm9saW8taG92ZXIgc3Bhbi5kZXNjIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4ycztcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtOmhvdmVyIC5wb3J0Zm9saW8taG92ZXIgc3Bhbi5saW5rIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbn1cblxuLnNwLXBvcnRmb2xpby1pdGVtIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uc3AtcG9ydGZvbGlvLWxpc3QudW5saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cblxuLnNwLXBvcnRmb2xpby1saXN0LnVubGlzdCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDIwcHg7XG59XG5cbi5zcC1wb3J0Zm9saW8tbGlzdC51bmxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbjogMCAyMHB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWxpc3QgdWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5zcC1wb3J0Zm9saW8tbGlzdCB1bCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc3AtcG9ydGZvbGlvLWxpc3QgdWwgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNwLXBvcnRmb2xpby1saXN0IHVsIGxpIGkge1xuICBmb250LXNpemU6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDVweDtcbn1cblxuLnNwLXBvcnRmb2xpby1iYXItbGVmdCBhIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zcC1wb3J0Zm9saW8tYmFyLWxlZnQgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJhci1sZWZ0IGE6aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjtcbn1cblxuLnNwLXBvcnRmb2xpby1iYXItbGVmdCBhOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnc3AtdGhlbWUtaWNvbnMnO1xuICBmb250LXNpemU6IDIxcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBjb250ZW50OiAnXFxmM2QyJztcbiAgdG9wOiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBsaW5lYXI7XG59XG5cbi5zcC1wb3J0Zm9saW8tYmFyLXJpZ2h0IGEge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnNwLXBvcnRmb2xpby1iYXItcmlnaHQgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJhci1yaWdodCBhOmhvdmVyOmFmdGVyIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjtcbn1cblxuLnNwLXBvcnRmb2xpby1iYXItcmlnaHQgYTphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiAnc3AtdGhlbWUtaWNvbnMnO1xuICBmb250LXNpemU6IDIxcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBjb250ZW50OiAnXFxmM2QzJztcbiAgdG9wOiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjtcbn1cblxuLnNwLXBvcnRmb2xpby1iYXItY2VudGVyIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uc3AtcG9ydGZvbGlvLWJhci1jZW50ZXIgYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDMwcHg7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc3AtcG9ydGZvbGlvLWJhci1jZW50ZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4jc3Atc2luZ2xlLXBvcnRmb2xpbyAuc3Atc2luZ2xlLWhlYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNzcC1zaW5nbGUtcG9ydGZvbGlvIC5zcC1zaW5nbGUtaGVhZGluZyBoMSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiNzcC1zaW5nbGUtcG9ydGZvbGlvIC5zcC1zaW5nbGUtaGVhZGluZyBoMTphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiAnc3AtdGhlbWUtaWNvbnMnO1xuICBmb250LXNpemU6IDUwcHg7XG4gIGNvbG9yOiAjMzMzO1xuICBjb250ZW50OiAnXFxmM2Q2JztcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDNweDtcbn1cblxuI3NwLXNpbmdsZS1wb3J0Zm9saW8gaDMge1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbiNzcC1zaW5nbGUtcG9ydGZvbGlvIC5zcC1zaW5nbGUtcG9ydGZvbGlvLXNvYyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbiNzcC1zaW5nbGUtcG9ydGZvbGlvIC5zcC1zaW5nbGUtcG9ydGZvbGlvLXNvYyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDA7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuI3NwLXNpbmdsZS1wb3J0Zm9saW8gLnNwLXNpbmdsZS1wb3J0Zm9saW8tc29jIHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4jc3Atc2luZ2xlLXBvcnRmb2xpbyAuc3Atc2luZ2xlLXBvcnRmb2xpby1zb2MgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogIzMzMztcbiAgcGFkZGluZzogNXB4IDE0cHg7XG59XG5cbiNzcC1zaW5nbGUtcG9ydGZvbGlvIC5zcC1zaW5nbGUtcG9ydGZvbGlvLXNvYyB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbi8qIEFuaW1hdGVkIENpcmNsZSAqL1xuLnNwLWNpcmNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTVweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTI1cHg7XG4gIHBhZGRpbmctdG9wOiA0MnB4O1xuICBoZWlnaHQ6IDEyNXB4O1xufVxuXG4uc3AtY2lyY2xlIGNhbnZhcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLnNwLWNpcmNsZSBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xufVxuXG4uc3AtY2lyY2xlIHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiAnJSc7XG4gIG1hcmdpbi1sZWZ0OiAwLjFlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5zcC1jaXJjbGUge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNwLWNpcmNsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4uc3AtY2lyY2xlLXRleHQge1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAjc3AtbWFnaWMgLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBUZXN0aW1vbmlhbHMgc2xpZGVyLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zcC1zbGljay10ZXN0aW1vbmlhbHMgLnNsaWNrLWRvdHMge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4uc3AtdGVzdGltb25pYWxzLWJsb2NrIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3AtdGVzdGltb25pYWxzLWJsb2NrIC50ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwLXRlc3RpbW9uaWFscy1ibG9jayAucGhvdG8gaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uc3AtdGVzdGltb25pYWxzLWJsb2NrIC5uYW1lIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLnNwLXRlc3RpbW9uaWFscy1ibG9jayAubmFtZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIENvbnRhY3RzICovXG4uc3AtY29udGFjdHMtbGlzdCB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNwLWNvbnRhY3RzLWxpc3QgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwLjQ1cmVtO1xufVxuXG4uc3AtY29udGFjdHMtbGlzdCB1bCBsaSBpIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA1cHg7XG59XG5cbi8qIE90aGVyIFN0eWxlcyAqL1xuLnNwLXNsaWNrLWNsaWVudHMgLml0ZW0ge1xuICBvcGFjaXR5OiAwLjY1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGxpbmVhcjtcbiAgcGFkZGluZzogMCAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcC1zbGljay1jbGllbnRzIC5pdGVtIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uc3Atc2xpY2stY2xpZW50cyAuaXRlbTpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3Atc2xpY2stY2xpZW50cyAuaXRlbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiBRdW90ZSAqL1xuI3NwLXF1b3RlIC5zcC1zaWduYXR1cmUge1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbi5zcC1xdW90ZSB7XG4gIGZvbnQtc2l6ZTogMTlweDtcbn1cblxuLnNwLXF1b3RlOmJlZm9yZSwgLnNwLXF1b3RlOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IFwic3AtdGhlbWUtaWNvbnNcIjtcbiAgZm9udC1zaXplOiAyM3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zcC1xdW90ZTphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXGU4MGYnO1xuICBsZWZ0OiAxNXB4O1xuICB0b3A6IDdweDtcbn1cblxuLnNwLXF1b3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MGUnO1xuICByaWdodDogMTVweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFRoZW1lIHByb2dyZXNzIGJhcnMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLXByb2dyZXNzLWJhciB7XG4gIG1hcmdpbjogMXJlbSAwIDJyZW0gMDtcbn1cblxuLnNwLXByb2dyZXNzLWJhciAudGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5zcC1wcm9ncmVzcy1iYXIgLnRpdGxlIHNwYW4ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLnNwLXByb2dyZXNzLWJhciAucHJvZ3Jlc3MtYmFyIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFByaWNpbmcgdGFibGVzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5wcmljaW5nX3RhYmxlc193cmFwIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cyBlYXNlO1xufVxuXG4ucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19uYW1lIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI5cHg7XG4gIGNvbG9yOiAjQzNBQzZEO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xufVxuXG4ucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19wcmljZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiA2NXB4O1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19wcmljZSBzcGFuIHtcbiAgY29sb3I6ICM4ODg7XG4gIGZvbnQtc2l6ZTogMjdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtN3B4O1xuICB0b3A6IC0yOXB4O1xufVxuXG4ucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19wcmljZSBpIHtcbiAgY29sb3I6ICM4ODg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5wcmljaW5nX3RhYmxlc193cmFwID4gLnByaWNpbmdfdGFibGVzX2Rlc2Mge1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcmljaW5nX3RhYmxlc193cmFwID4gLnByaWNpbmdfdGFibGVzX2Rlc2MgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnByaWNpbmdfdGFibGVzX3dyYXAgPiAucHJpY2luZ190YWJsZXNfZGVzYyB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGNvbG9yOiAjODg4O1xufVxuXG4ucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19idXR0b25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIG1hcmdpbjogMCAtMTBweDtcbn1cblxuLnByaWNpbmdfdGFibGVzX3dyYXAgPiAucHJpY2luZ190YWJsZXNfYnV0dG9ucyA+IGEsIC5wcmljaW5nX3RhYmxlc193cmFwID4gLnByaWNpbmdfdGFibGVzX2J1dHRvbnMgPiAuYnRuLCAucHJpY2luZ190YWJsZXNfd3JhcCA+IC5wcmljaW5nX3RhYmxlc19idXR0b25zID4gLmJ0bi1ncm91cCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLnByaWNpbmdfdGFibGVzX3dyYXAuZmVhdHVyZWQge1xuICBib3gtc2hhZG93OiAwIDE1cHggNTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5wcmljaW5nX3RhYmxlc193cmFwLmZlYXR1cmVkID4gLnByaWNpbmdfdGFibGVzX25hbWUge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnByaWNpbmdfdGFibGVzX3dyYXAuZmVhdHVyZWQgPiAucHJpY2luZ190YWJsZXNfcHJpY2Uge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuI3NwLXByaWNpbmctdGFibGVzLWZhcSBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuI3NwLXByaWNpbmctdGFibGVzLWZhcSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cblxuI3NwLXByaWNpbmctdGFibGVzLWZhcSBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogRkFRIHBhZ2UuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNhcmQuc3AtZmFxLWNhcmQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY2FyZC5zcC1mYXEtY2FyZCArIC5zcC1mYXEtY2FyZCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5jYXJkLnNwLWZhcS1jYXJkID4gLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uY2FyZC5zcC1mYXEtY2FyZCA+IC5jYXJkLWhlYWRlciA+IC5jYXJkLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAjMzMzO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLXdpZHRoOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cztcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbi5jYXJkLnNwLWZhcS1jYXJkID4gLmNhcmQtaGVhZGVyID4gLnRvZ2dsZS1pY29uIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBjb2xvcjogI0MzQUM2RDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xufVxuXG4uY2FyZC5zcC1mYXEtY2FyZCA+IC5jYXJkLWhlYWRlcjpob3ZlciA+IC5jYXJkLXRpdGxlIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbi5jYXJkLnNwLWZhcS1jYXJkID4gLmNhcmQtY29udGVudHMgPiAuY2FyZC1jb250ZW50cy1pbm5lciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbn1cblxuLmNhcmQuc3AtZmFxLWNhcmQgPiAuY2FyZC1jb250ZW50cyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNhcmQuc3AtZmFxLWNhcmQgPiAuY2FyZC1jb250ZW50cyBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC5zcC1mYXEtY2FyZC5jYXJkLW9wZW4gPiAuY2FyZC1oZWFkZXIgPiAuY2FyZC10aXRsZSB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uY2FyZC5zcC1mYXEtY2FyZC5jYXJkLW9wZW4gPiAuY2FyZC1oZWFkZXIgPiAudG9nZ2xlLWljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5zcC1mYXEtYXJ0aWNsZXMge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5cbi5zcC1mYXEtYXJ0aWNsZXMgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNwLWZhcS1hcnRpY2xlcyB1bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5zcC1mYXEtYXJ0aWNsZXMgdWwgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zcC1mYXEtYXJ0aWNsZXMgdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjNkMyc7XG4gIGZvbnQtZmFtaWx5OiAnc3AtdGhlbWUtaWNvbnMnO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc3AtZmFxLWFydGljbGVzIHVsIGxpIGEge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnNwLWZhcS1hcnRpY2xlcyB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNDM0FDNkQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDbGllbnRzIHBhZ2UuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLWNsaWVudHMtZ3JpZCAuc3AtY2xpZW50cy1ibG9jayB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cztcbiAgd2lsbC1jaGFuZ2U6IGJveC1zaGFkb3c7XG59XG5cbi5zcC1jbGllbnRzLWdyaWQgLnNwLWNsaWVudHMtYmxvY2sgPiAuY2xpZW50LWxvZ28ge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMC44NTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5zcC1jbGllbnRzLWdyaWQgLnNwLWNsaWVudHMtYmxvY2s6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMjVweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG59XG5cbi5zcC1jbGllbnRzLWdyaWQgLnNwLWNsaWVudHMtYmxvY2s6aG92ZXIgPiAuY2xpZW50LWxvZ28ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3AtY2xpZW50cy1ncmlkIC5zcC1jbGllbnRzLWJsb2NrID4gLmNsaWVudC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnNwLWNsaWVudHMtZ3JpZCAuc3AtY2xpZW50cy1ibG9jayAuYnRuIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZCwgYm9yZGVyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogTWFpbGNoaW1wIHN1YnNjcmliZSBibG9jay4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uc3Atc3Vic2NyaWJlLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNTcwcHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybSA+IC5mb3JtLWlubmVyLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzLCB0cmFuc2Zvcm0gMC4yNXM7XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybSA+IC5mb3JtLWlubmVyLXdyYXAgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMzBweDtcbiAgb3BhY2l0eTogMC4yO1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uc3Atc3Vic2NyaWJlLWZvcm0gPiAuZm9ybS1pbm5lci13cmFwIHAuYXBwZWFyLW1lc3NhZ2Uge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3Atc3Vic2NyaWJlLWZvcm0gPiAuZm9ybS1pbm5lci13cmFwIC5pbnB1dC1ncm91cCB7XG4gIHdpZHRoOiAzNTBweDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uc3Atc3Vic2NyaWJlLWZvcm0gPiAuZm9ybS1vdXRwdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMThweDtcbiAgei1pbmRleDogMTAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwLjgpO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNwLXN1YnNjcmliZS1mb3JtID4gLmZvcm0tb3V0cHV0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNwLXRoZW1lLWljb25zXCI7XG4gIGZvbnQtc2l6ZTogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xufVxuXG4uc3Atc3Vic2NyaWJlLWZvcm0ubWMtbG9hZGluZyA+IC5mb3JtLWlubmVyLXdyYXAsIC5zcC1zdWJzY3JpYmUtZm9ybS5tYy1pbnZhbGlkID4gLmZvcm0taW5uZXItd3JhcCwgLnNwLXN1YnNjcmliZS1mb3JtLm1jLXZhbGlkID4gLmZvcm0taW5uZXItd3JhcCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbn1cblxuLnNwLXN1YnNjcmliZS1mb3JtLm1jLWxvYWRpbmcgPiAuZm9ybS1vdXRwdXQsIC5zcC1zdWJzY3JpYmUtZm9ybS5tYy1pbnZhbGlkID4gLmZvcm0tb3V0cHV0LCAuc3Atc3Vic2NyaWJlLWZvcm0ubWMtdmFsaWQgPiAuZm9ybS1vdXRwdXQge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybS5tYy1sb2FkaW5nID4gLmZvcm0tb3V0cHV0OmJlZm9yZSwgLnNwLXN1YnNjcmliZS1mb3JtLm1jLWludmFsaWQgPiAuZm9ybS1vdXRwdXQ6YmVmb3JlLCAuc3Atc3Vic2NyaWJlLWZvcm0ubWMtdmFsaWQgPiAuZm9ybS1vdXRwdXQ6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwLW1jLWZvcm0tb3V0cHV0LWljb247XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybSA+IC5mb3JtLW91dHB1dC52YWxpZDpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmM2ZkJztcbiAgY29sb3I6ICM1Y2I4NWM7XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybSA+IC5mb3JtLW91dHB1dC5lcnJvcjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmNDA0JztcbiAgY29sb3I6ICNkOTUzNGY7XG59XG5cbi5zcC1zdWJzY3JpYmUtZm9ybS5tYy1sb2FkaW5nID4gLmZvcm0tb3V0cHV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGY0NWEnO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBhbmltYXRpb246IHNwLW1jLWxvYWRpbmctaWNvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgc3AtbWMtbG9hZGluZy1pY29uIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3AtbWMtZm9ybS1vdXRwdXQtaWNvbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpIHNjYWxlKDAuNyk7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA0MDQgcGFnZS4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtNDA0ID4gLmludHJvLWJvZHkge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG59XG5cbiNzcC00MDQgaDEge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBmb250LXNpemU6IDVyZW07XG4gIGxpbmUtaGVpZ2h0OiA1cmVtO1xufVxuXG4jc3AtNDA0IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgZm9udC1zaXplOiAzLjVyZW07XG4gIGZvbnQtZmFtaWx5OiAnU2hhZG93cyBJbnRvIExpZ2h0JywgY3Vyc2l2ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTJkZWcpICFpbXBvcnRhbnQ7XG59XG5cbiNzcC00MDQgLnNwLXNvYy1saW5rcyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuI3NwLTQwNCAuc3Atc29jLWxpbmtzIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbiNzcC00MDQgLnNwLXNvYy1saW5rcyB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuI3NwLTQwNCAuc3Atc29jLWxpbmtzIHVsIGxpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgZm9udC1zaXplOiAyNnB4O1xufVxuXG4jc3AtNDA0IC5zcC1zb2MtbGlua3MgdWwgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4jc3AtNDA0IC5zcC00MDQtbWVudSB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDA7XG59XG5cbiNzcC00MDQgLnNwLTQwNC1tZW51IHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jc3AtNDA0IC5zcC00MDQtbWVudSB1bCBsaTphZnRlciB7XG4gIGNvbnRlbnQ6ICd8JztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTBweDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4jc3AtNDA0IC5zcC00MDQtbWVudSB1bCBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG59XG5cbiNzcC00MDQgLnNwLTQwNC1tZW51IHVsIGxpIGEge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbiNzcC00MDQgLnNwLTQwNC1tZW51IHVsIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNzcC00MDQgaDEge1xuICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjhyZW07XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG4gICNzcC00MDQgaDMge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuICAjc3AtNDA0IC5zcC00MDQtbWVudSB1bCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAjc3AtNDA0IGgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgI3NwLTQwNCBoMyB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaW1wbGUgdGV4dCByb3RhdG9yIHBsdWdpbiBzdHlsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLXRleHQtcm90YXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNwLXRleHQtcm90YXRlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG5cbi5yb3RhdGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDApIHJvdGF0ZVkoMCkgcm90YXRlWigwKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZVgoMCkgcm90YXRlWSgwKSByb3RhdGVaKDApO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMCkgcm90YXRlWSgwKSByb3RhdGVaKDApO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuNXM7XG4gIC1tb3otdHJhbnNpdGlvbjogMC41cztcbiAgdHJhbnNpdGlvbjogMC41cztcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXg6IDUwJTtcbn1cblxuLnJvdGF0aW5nLmZsaXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yb3RhdGluZyAuZnJvbnQsIC5yb3RhdGluZyAuYmFjayB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5yb3RhdGluZyAuZnJvbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDFweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAxcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDFweCk7XG59XG5cbi5yb3RhdGluZy5mbGlwIC5mcm9udCB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5yb3RhdGluZyAuYmFjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwO1xufVxuXG4ucm90YXRpbmcuc3BpbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSgwKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gZmxpcCB0cmFuc2l0aW9ucyAqL1xuLnJvdGF0aW5nLmZsaXAgLmJhY2sge1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5yb3RhdGluZy5mbGlwLnVwIC5iYWNrIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5yb3RhdGluZy5mbGlwLmN1YmUgLmZyb250IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDEwMHB4KSBzY2FsZSgwLjg1LCAwLjg1KTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDEwMHB4KSBzY2FsZSgwLjg1LCAwLjg1KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAxMDBweCkgc2NhbGUoMC44NSwgMC44NSk7XG59XG5cbi5yb3RhdGluZy5mbGlwLmN1YmUgLmJhY2sge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDEwMHB4KSBzY2FsZSgwLjksIDAuOSk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMTAwcHgpIHNjYWxlKDAuOSwgMC45KTtcbiAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMTAwcHgpIHNjYWxlKDAuOSwgMC45KTtcbn1cblxuLnJvdGF0aW5nLmZsaXAuY3ViZS51cCAuYmFjayB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMTAwcHgpIHNjYWxlKDAuOSwgMC45KTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAxMDBweCkgc2NhbGUoMC45LCAwLjkpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAxMDBweCkgc2NhbGUoMC45LCAwLjkpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogVHlwZWQganMgaW50ZWdyYXRpb24uICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGVkLWN1cnNvciB7XG4gIGFuaW1hdGlvbjogdHlwZWQtYmxpbmsgMC43cyBpbmZpbml0ZTtcbiAgb3BhY2l0eTogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5Aa2V5ZnJhbWVzIHR5cGVkLWJsaW5rIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyohIFN3aXBlYm94IHYxLjMuMCB8IENvbnN0YW50aW4gU2FndWluIGNzYWcuY28gfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vYnJ1dGFsZGVzaWduL3N3aXBlYm94ICovXG5odG1sLnN3aXBlYm94LWh0bWwuc3dpcGVib3gtdG91Y2gge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG59XG5cbiNzd2lwZWJveC1vdmVybGF5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk5ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzIGxpbmVhcjtcbn1cblxuI3N3aXBlYm94LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI3N3aXBlYm94LXNsaWRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2U7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jc3dpcGVib3gtc2xpZGVyIC5zbGlkZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jc3dpcGVib3gtc2xpZGVyIC5zbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNTAlO1xuICB3aWR0aDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbiNzd2lwZWJveC1zbGlkZXIgLnNsaWRlIC5zd2lwZWJveC12aWRlby1jb250YWluZXIsXG4jc3dpcGVib3gtc2xpZGVyIC5zbGlkZSAuc3dpcGVib3gtaW5saW5lLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNzd2lwZWJveC1zbGlkZXIgLnNsaWRlIC5zd2lwZWJveC12aWRlby1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXgtd2lkdGg6IDExNDBweDtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMTUwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiNzd2lwZWJveC1zbGlkZXIgLnNsaWRlIC5zd2lwZWJveC12aWRlby1jb250YWluZXIgLnN3aXBlYm94LXZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jc3dpcGVib3gtc2xpZGVyIC5zbGlkZSAuc3dpcGVib3gtdmlkZW8tY29udGFpbmVyIC5zd2lwZWJveC12aWRlbyBpZnJhbWUge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDBweCk7XG59XG5cbiNzd2lwZWJveC1zbGlkZXIgLnNsaWRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbG9hZGVyLmdpZlwiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbn1cblxuI3N3aXBlYm94LWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xufVxuXG4jc3dpcGVib3gtY2xvc2U6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGNvbnRlbnQ6ICdcXGY0MDQnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcInNwLXRoZW1lLWljb25zXCI7XG4gIGZvbnQtc2l6ZTogNzBweDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbiNzd2lwZWJveC1jbG9zZTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgI3N3aXBlYm94LWNsb3NlIHtcbiAgICByaWdodDogMTVweDtcbiAgfVxuICAjc3dpcGVib3gtY2xvc2U6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFNpdGUgc29jaWFscyBWQyB3aWRnZXQuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwLXNpdGUtc29jaWFscyB7XG4gIG1hcmdpbjogMCAtMTJweDtcbiAgZm9udC1zaXplOiAwO1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuLnNwLXNpdGUtc29jaWFscyA+IGEge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICBvcGFjaXR5OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IDIzcHg7XG4gIHBhZGRpbmc6IDAgMTJweDtcbn1cblxuLnNwLXNpdGUtc29jaWFscyA+IGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5zcC1zaXRlLXNvY2lhbHMuYWxpZ25fY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3Atc2l0ZS1zb2NpYWxzLmFsaWduX2xlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc3Atc2l0ZS1zb2NpYWxzLmFsaWduX3JpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3Atc2l0ZS1zb2NpYWxzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogVmlzdWFsIENvbXBvc2VyIGN1c3RvbSB0ZXh0IHdpZGdldC4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uc3AtdGV4dC13aWRnZXQge1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgXCJNb250c2VycmF0XCIsIEFyaWFsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc3AtdGV4dC13aWRnZXQucHJpbWFyeS1mb250IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xufVxuXG4uc3AtdGV4dC13aWRnZXQuaGVhZGluZ3MtZm9udCB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJTb3VyY2UgU2FucyBQcm9cIiwgQXJpYWwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbn1cblxuLnNwLXRleHQtd2lkZ2V0ID4gcCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uc3AtdGV4dC13aWRnZXQgPiBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zcC10ZXh0LXdpZGdldCBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnNwLXRleHQtd2lkZ2V0ID4gLnNwLXNpZ25hdHVyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDIzcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBmb250LWZhbWlseTogJ1NoYWRvd3MgSW50byBMaWdodCcsIGN1cnNpdmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtM2RlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKTtcbn1cblxuLnNwLXRleHQtd2lkZ2V0ID4gLnNwLXNpZ25hdHVyZS53aGl0ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogQmFzaWMgYmxvZ3JvbGwgc3R5bGVzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1ibG9nLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbiNzcC1ibG9nLWlubmVyID4gLmNvbnRlbnQtY29sdW1uIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1pbi13aWR0aDogMDtcbn1cblxuI3NwLWJsb2ctaW5uZXIgPiAuc2lkZWJhci1jb2x1bW4ge1xuICBmbGV4OiAwIDAgMzYwcHg7XG4gIG1pbi13aWR0aDogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTUwcHg7XG59XG5cbiNzcC1ibG9nLWlubmVyID4gLnNpZGViYXItY29sdW1uLmxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xufVxuXG4jc3AtYmxvZy1pbm5lciA+IC5zaWRlYmFyLWNvbHVtbi5yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbn1cblxuI3NwLWJsb2ctaW5uZXIgPiAuc2lkZWJhci1jb2x1bW46ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI3NwLWJsb2ctaW5uZXIge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAjc3AtYmxvZy1pbm5lciA+IC5zaWRlYmFyLWNvbHVtbiwgI3NwLWJsb2ctaW5uZXIgPiAuY29udGVudC1jb2x1bW4ge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gIH1cbiAgI3NwLWJsb2ctaW5uZXIgPiAuY29udGVudC1jb2x1bW4ge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gICNzcC1ibG9nLWlubmVyID4gLnNpZGViYXItY29sdW1uIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG9yZGVyOiAyO1xuICB9XG4gICNzcC1ibG9nLWlubmVyID4gLnNpZGViYXItY29sdW1uLmxlZnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgI3NwLWJsb2ctaW5uZXIgPiAuc2lkZWJhci1jb2x1bW4ucmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uc3AtYmxvZy1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7XG59XG5cbi5zcC1ibG9nLWJsb2NrOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNwLWJsb2ctYmxvY2sgcCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnNwLWJsb2ctYmxvY2sgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctaW1hZ2UgYSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLWltYWdlIGEge1xuICAgIGhlaWdodDogMjYwcHg7XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctaW1hZ2U6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5lbnRyeS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuZW50cnktdGl0bGUgYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuZW50cnktdGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctbWV0YSB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1tZXRhIHVsIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLW1ldGEgdWwgbGk6YWZ0ZXIge1xuICBjb250ZW50OiAnLyc7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLW1ldGEgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLW1ldGEgdWwgbGkgYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uc3AtYmxvZy1ibG9jay5jaGVzcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNwLWJsb2ctYmxvY2suY2hlc3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzIC5tZXRhLWNvbHVtbiB7XG4gIHBhZGRpbmc6IDBweCA1MHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrLmNoZXNzIC5tZXRhLWNvbHVtbiB7XG4gICAgcGFkZGluZzogNTBweCAzMHB4O1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzIC5tZXRhLWNvbHVtbi5pbm5lci1jb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogNTAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNwLWJsb2ctYmxvY2suY2hlc3MgLm1ldGEtY29sdW1uLmlubmVyLWNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2suY2hlc3MgLm1ldGEtY29sdW1uIGg0IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzIC5pbWFnZS1jb2x1bW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzIC5pbWFnZS1jb2x1bW4uaW5uZXItY29sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDUwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrLmNoZXNzIC5pbWFnZS1jb2x1bW4uaW5uZXItY29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzIC5pbWFnZS1jb2x1bW4gLnNwLWJsb2ctaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3AtYmxvZy1ibG9jay5jaGVzcyAuaW1hZ2UtY29sdW1uIC5zcC1ibG9nLWltYWdlIGEge1xuICBoZWlnaHQ6IDQwMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrLmNoZXNzIC5pbWFnZS1jb2x1bW4gLnNwLWJsb2ctaW1hZ2UgYSB7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgfVxufVxuXG4uc3AtYmxvZy1ibG9jay5jaGVzcy5zdGlja3k6bnRoLWNoaWxkKGV2ZW4pIC5zcC1ibG9nLWltYWdlOmFmdGVyIHtcbiAgcmlnaHQ6IDMwcHg7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNoZXNzLnN0aWNreTpudGgtY2hpbGQoZXZlbikgLnNwLWJsb2ctaW1hZ2U6YmVmb3JlIHtcbiAgcmlnaHQ6IDMwcHg7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNsYXNzaWMge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnNwLWJsb2ctYmxvY2suY2xhc3NpYyAuc3AtYmxvZy1tZXRhLWNsYXNzaWMge1xuICBmbGV4OiAwIDAgOTBweDtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5zcC1ibG9nLWJsb2NrLmNsYXNzaWMgLnNwLWJsb2ctbWV0YS1jbGFzc2ljIC5kYXRlIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnNwLWJsb2ctYmxvY2suY2xhc3NpYyAuc3AtYmxvZy1tZXRhLWNsYXNzaWMgLnllYXIge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnNwLWJsb2ctYmxvY2suY2xhc3NpYyAuc3AtYmxvZy1pbWFnZSBhIHtcbiAgaGVpZ2h0OiAzNzVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuc3AtYmxvZy1ibG9jay5jbGFzc2ljIC5zcC1ibG9nLWltYWdlIGEge1xuICAgIGhlaWdodDogMzUwcHg7XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2subWVkaXVtIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuc3AtYmxvZy1ibG9jay5tZWRpdW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLm1lZGl1bSAuc3AtYmxvZy1pbWFnZS1tZWRpdW0ge1xuICBmbGV4OiAwIDAgMzYwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuc3AtYmxvZy1ibG9jay5tZWRpdW0gLnNwLWJsb2ctaW1hZ2UtbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLm1lZGl1bSAuc3AtYmxvZy1pbWFnZS1tZWRpdW0gLnNwLWJsb2ctaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3AtYmxvZy1ibG9jay5tZWRpdW0gLnNwLWJsb2ctaW1hZ2UtbWVkaXVtIC5zcC1ibG9nLWltYWdlIGEge1xuICBoZWlnaHQ6IDI3NXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrLm1lZGl1bSAuc3AtYmxvZy1pbWFnZS1tZWRpdW0gLnNwLWJsb2ctaW1hZ2UgYSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNwLWJsb2ctYmxvY2subWVkaXVtIC5zcC1ibG9nLWltYWdlLW1lZGl1bSAuc3AtYmxvZy1pbWFnZSBhIHtcbiAgICBoZWlnaHQ6IDI0MHB4O1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrLm1lZGl1bSAuc3AtYmxvZy1ibG9jay1tZWRpdW0gaDMge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrLm1lZGl1bSAuc3AtYmxvZy1ibG9jay1tZWRpdW0gaDMge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2suc3RpY2t5IC5zcC1ibG9nLWltYWdlOmFmdGVyIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogNDhweDtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMzBweDtcbiAgdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMTZweCBzb2xpZCAjQzNBQzZEO1xuICBib3JkZXItcmlnaHQ6IDE2cHggc29saWQgI0MzQUM2RDtcbn1cblxuLnNwLWJsb2ctYmxvY2suc3RpY2t5IC5zcC1ibG9nLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdTJztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTlweDtcbiAgY29sb3I6ICNmZmY7XG4gIGxlZnQ6IDMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTtcbiAgd2lkdGg6IDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNwLWJsb2ctYmxvY2subm8tdGh1bWJuYWlsLnN0aWNreSB7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi5zcC1ibG9nLWJsb2NrLm5vLXRodW1ibmFpbC5zdGlja3kgLnNwLWJsb2ctbWV0YS1jbGFzc2ljIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogQmxvZ3JvbGwgcG9zdCBmb3JtYXRzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyOiA0cHggc29saWQgI2VlZTtcbiAgcGFkZGluZzogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctcXVvdGUgPiAucXVvdGUtaWNvbiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBmb250LXNpemU6IDczcHg7XG4gIGNvbG9yOiAjQzNBQzZEO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1xdW90ZSA+IC5xdW90ZS1pbm5lciB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlID4gLnF1b3RlLWlubmVyIHAge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctcXVvdGUgPiAucXVvdGUtaW5uZXIgLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1xdW90ZSA+IC5xdW90ZS1pbm5lciAuYmxvY2txdW90ZS1mb290ZXIgY2l0ZSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctcXVvdGUgPiAucXVvdGUtaW5uZXIgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlID4gLnF1b3RlLWljb24ge1xuICAgIHBhZGRpbmc6IDAgMCAxcmVtO1xuICB9XG4gIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlID4gLnF1b3RlLWljb24sIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlID4gLnF1b3RlLWlubmVyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxuICAuc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1xdW90ZSA+IC5xdW90ZS1pbm5lciBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNlZWU7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1saW5rOmJlZm9yZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBjb250ZW50OiAnXFxmM2Q5JztcbiAgZm9udC1mYW1pbHk6IFwic3AtdGhlbWUtaWNvbnNcIjtcbiAgZm9udC1zaXplOiA3MHB4O1xuICBjb2xvcjogI0MzQUM2RDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctbGluayBhIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1pbi13aWR0aDogMDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogIzMzMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLWxpbmsge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctbGluazpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxuICAuc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1saW5rIGEge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG4uc3AtYmxvZy1ibG9jayAuc3AtYmxvZy1pbWFnZSAuY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1zbGljay1wb3N0LWdhbGxlcnkgLnNsaWNrLXNsaWRlIC5jYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1cHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1zbGljay1wb3N0LWdhbGxlcnkgLnNsaWNrLXNsaWRlLnNsaWNrLWFuaW1hdGVkIC5jYXB0aW9uIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc3AtYmxvZy1ibG9jayAuc3Atc2luZ2xlLWVtYmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEJsb2cgc2lkZWJhciBkZXNpZ24gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uc3Atc2lkZWJhciB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG4uc3Atc2lkZWJhciBhIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zcC1zaWRlYmFyIGE6aG92ZXIge1xuICBjb2xvcjogI0MzQUM2RDtcbn1cblxuLnNwLXNpZGViYXIgLnNwLXdpZGdldC1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7XG59XG5cbi5zcC1zaWRlYmFyIC5zcC13aWRnZXQtYmxvY2s6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc3Atc2lkZWJhciAuc3Atd2lkZ2V0LWJsb2NrOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3Atc2lkZWJhciAuc3Atd2lkZ2V0LWJsb2NrID4gLndpZGdldC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1jYXRlZ29yeSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uc3Atc2lkZWJhciAuc3AtY2F0ZWdvcnkgbGkge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uc3Atc2lkZWJhciAuc3AtY2F0ZWdvcnkgbGkgc3BhbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgd2lkdGg6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMXB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNwLXNpZGViYXIgLnNwLXBvcHVsYXItcG9zdHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNwLXNpZGViYXIgLnNwLXBvcHVsYXItcG9zdHMgPiBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1wb3B1bGFyLXBvc3RzID4gbGk6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1wb3B1bGFyLXBvc3RzID4gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1wb3B1bGFyLXBvc3RzID4gbGkgPiAucG9zdC1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnNwLXNpZGViYXIgLnNwLXBvcHVsYXItcG9zdHMgPiBsaSA+IC5wb3N0LWxpbmsgPiAuaW1hZ2Uge1xuICBmbGV4OiAwIDAgMTAwcHg7XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1wb3B1bGFyLXBvc3RzID4gbGkgPiAucG9zdC1saW5rID4gLmNvbnRlbnQge1xuICBmbGV4OiAxO1xufVxuXG4uc3Atc2lkZWJhciAuc3AtcG9wdWxhci1wb3N0cyA+IGxpIC5pbWFnZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnNwLXNpZGViYXIgLnNwLXBvcHVsYXItcG9zdHMgPiBsaSAuaW1hZ2UgPiBpbWcge1xuICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyO1wiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2NXB4O1xufVxuXG4uc3Atc2lkZWJhciAuc3AtcG9wdWxhci1wb3N0cyA+IGxpIC5jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uc3Atc2lkZWJhciAuc3AtcG9wdWxhci1wb3N0cyA+IGxpIC5jb250ZW50IGg1IHtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4uc3Atc2lkZWJhciAuc3AtcG9wdWxhci1wb3N0cyA+IGxpIC5jb250ZW50IHNwYW4ge1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogQmxvZ3JvbGwgc2luZ2xlIHBhZ2Ugc3R5bGVzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNwLWludHJvLnNpbmdsZS1wb3N0IC5pbnRyby10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCAuc3Atc2luZ2xlLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4uc3AtaW50cm8uc2luZ2xlLXBvc3QgLnNwLXNpbmdsZS1tZXRhIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCAuc3Atc2luZ2xlLW1ldGEgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCAuc3Atc2luZ2xlLW1ldGEgdWwgbGk6YWZ0ZXIge1xuICBjb250ZW50OiAnLyc7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCAuc3Atc2luZ2xlLW1ldGEgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5zcC1pbnRyby5zaW5nbGUtcG9zdCAuc3Atc2luZ2xlLW1ldGEgdWwgbGkgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUgLnNwLWJsb2ctYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUgLnNwLWJsb2ctaW1hZ2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUgLnNwLWJsb2ctaW1hZ2UgLmNhcHRpb24ge1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNwLWJsb2ctYmxvY2suc2luZ2xlIC5zcC1zaW5nbGUtdGFncyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnNwLWJsb2ctYmxvY2suc2luZ2xlIC5zcC1zaW5nbGUtdGFncyBpIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogIzMzMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG59XG5cbi5zcC1ibG9nLWJsb2NrLnNpbmdsZSAuc3Atc2luZ2xlLXRhZ3MgYSB7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi5zcC1ibG9nLWJsb2NrLnNpbmdsZSAuc3Atc2luZ2xlLXRhZ3MgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUgLnNwLXNpbmdsZS1zb2MgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiAwO1xuICBtYXJnaW46IC01cHggLTE1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5zcC1ibG9nLWJsb2NrLnNpbmdsZSAuc3Atc2luZ2xlLXNvYyB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnNwLWJsb2ctYmxvY2suc2luZ2xlIC5zcC1zaW5nbGUtc29jIHVsIGxpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICMyMjI7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUgLnNwLXNpbmdsZS1zb2MgdWwgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjQzNBQzZEO1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEhlbHBlciBtaXhpbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIGxpc3Qgd2l0aCBpY29ucyBpbnN0ZWFkIG9mIGJ1bGxldHNcbkBtaXhpbiBpY29uaWMtbGlzdCgkaWNvbi13aWR0aDogMmVtKSB7XG4gIHBhZGRpbmctbGVmdCAgICA6IDA7XG4gIG1hcmdpbi1sZWZ0ICAgICA6ICRpY29uLXdpZHRoO1xuICBsaXN0LXN0eWxlLXR5cGUgOiBub25lO1xuXG4gID4gbGkgeyBwb3NpdGlvbiA6IHJlbGF0aXZlOyB9XG5cbiAgPiBsaSAubGktaWNvbiB7XG4gICAgcG9zaXRpb24gICA6IGFic29sdXRlO1xuICAgIGxlZnQgICAgICAgOiAtJGljb24td2lkdGg7XG4gICAgd2lkdGggICAgICA6ICRpY29uLXdpZHRoO1xuICAgIHRvcCAgICAgICAgOiAwO1xuICAgIHRleHQtYWxpZ24gOiBsZWZ0O1xuICB9XG59XG5cbi8vIG92ZXJsYXkgc2hvcnRoYW5kXG5AbWl4aW4gb3ZlcmxheS1iYXNlKCRwb3NpdGlvbjogYWJzb2x1dGUpIHtcbiAgcG9zaXRpb24gOiAkcG9zaXRpb247XG4gIHRvcCAgICAgIDogMDsgYm90dG9tIDogMDtcbiAgcmlnaHQgICAgOiAwOyBsZWZ0IDogMDtcbiAgd2lkdGggICAgOiAxMDAlOyBoZWlnaHQgOiAxMDAlO1xufVxuXG4vLyBzaG9ydGhhbmQgZm9yIGJnIHNpemUgY292ZXIgZGVjbGFyYXRpb25cbkBtaXhpbiBjb3Zlci1iZy1iYXNlKCkge1xuICBiYWNrZ3JvdW5kLXNpemUgICAgIDogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0ICAgOiBuby1yZXBlYXQ7XG59XG5cbi8vIHNob3J0aGFuZCBmb3Igb2JqZWN0LWZpdCBwcmVmaXhpemVkIGRlZmluaXRpb25cbkBtaXhpbiBvYmplY3QtZml0KCR2YWx1ZTogY292ZXIpIHtcbiAgLW8tb2JqZWN0LWZpdCA6ICR2YWx1ZTtcbiAgb2JqZWN0LWZpdCAgICA6ICR2YWx1ZTtcblxuICBAaWYgJHZhbHVlICE9IG5vbmUge1xuICAgIGZvbnQtZmFtaWx5IDogJ29iamVjdC1maXQ6ICN7JHZhbHVlfTsnXG4gIH1cblxuICBAaWYgJHZhbHVlID09IG5vbmUge1xuICAgIGZvbnQtZmFtaWx5IDogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBib3ggbW9kZWwgcmVzZXQgaGVscGVyXG5AbWl4aW4gcmVzZXQtYm94LW1vZGVsKCR1bC1yZXNldDogZmFsc2UpIHtcbiAgbWFyZ2luICA6IDA7XG4gIHBhZGRpbmcgOiAwO1xuICBib3JkZXIgIDogMDtcblxuICBAaWYgJHVsLXJlc2V0ID09IHRydWUge1xuICAgIGxpc3Qtc3R5bGUgOiBub25lO1xuICB9XG59XG5cbi8vIG1ha2VzIHRleHQgaW52aXNpYmxlXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250ICAgICAgICAgICAgIDogI3snMC8wJ30gYTtcbiAgY29sb3IgICAgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdyAgICAgIDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvciA6IHRyYW5zcGFyZW50O1xuICBib3JkZXIgICAgICAgICAgIDogMDtcbn1cblxuLy8gc2hvcnRoYW5kIGZvciBwcmVmaXhlZCBwbGFjZWhvbGRlciBzdHlsZXNcbkBtaXhpbiBwbGFjZWhvbGRlci1zdHlsZXMoKSB7XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudCB9XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgeyBAY29udGVudCB9XG4gICY6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50IH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudCB9XG59XG5cbi8vIG1ha2UgZWxlbWVudCB2aXNpYmxlIG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzXG5AbWl4aW4gb25seS1mb3Itc3IoKSB7XG4gIGNsaXAgICAgICAgIDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwb3NpdGlvbiAgICA6IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlIDogbm93cmFwO1xuICBoZWlnaHQgICAgICA6IDFweDtcbiAgd2lkdGggICAgICAgOiAxcHg7XG4gIG92ZXJmbG93ICAgIDogaGlkZGVuO1xufVxuXG4vLyBib3JkZXItcmFkaXVzIHNob3J0aGFuZFxuQG1peGluIF9ib3JkZXItcmFkaXVzLWV4dGVuZGVkKCR0b3BMZWZ0OiAwLCAkdG9wUmlnaHQ6IDAsICRib3R0b21SaWdodDogMCwgJGJvdHRvbUxlZnQ6IDApIHtcbiAgQGlmICR0b3BMZWZ0ICE9IDAgeyBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkdG9wTGVmdDsgfVxuICBAaWYgJHRvcFJpZ2h0ICE9IDAgeyBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHRvcFJpZ2h0OyB9XG4gIEBpZiAkYm90dG9tUmlnaHQgIT0gMCB7IGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm90dG9tUmlnaHQ7IH1cbiAgQGlmICRib3R0b21MZWZ0ICE9IDAgeyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm90dG9tTGVmdDsgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkc2l6ZS4uLikge1xuICBAaWYgbGVuZ3RoKCRzaXplKSA9PSAxIHtcbiAgICBib3JkZXItcmFkaXVzOiAkc2l6ZTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgX2JvcmRlci1yYWRpdXMtZXh0ZW5kZWQoJHNpemUuLi4pO1xuICB9XG59XG5cbi8vIHNob3J0aGFuZCBoZWxwZXIgZm9yIHByZWZpeGluZyB2YXJpYWJsZXNcbkBtaXhpbiBwcmVmaXgoJHByb3BlcnR5LCAkdmFsdWUsICRwcmVmaXhlczogKHdlYmtpdCBtcyBtb3ogbykpIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICN7Jy0nICsgJHByZWZpeCArICctJyArICRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgfVxuXG4gIC8vIE91dHB1dCBzdGFuZGFyZCBub24tcHJlZml4ZWQgZGVjbGFyYXRpb25cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG59XG5cbi8vIHNob3J0aGFuZCBtaXhpbiBmb3IgZXF1aXBwaW5nIGljb25zIGZyb20gZm9udHNcbkBtaXhpbiBlcXVpcC1pY29uKCRjaGFyY29kZSwgJGZvbnQ6ICRpY29uLWZvbnQtZmFtaWx5KSB7XG4gIGZvbnQtZmFtaWx5ICAgICAgICAgICAgIDogJGZvbnQ7XG4gIGZvbnQtc3R5bGUgICAgICAgICAgICAgIDogbm9ybWFsO1xuICBmb250LXdlaWdodCAgICAgICAgICAgICA6IG5vcm1hbDtcbiAgc3BlYWsgICAgICAgICAgICAgICAgICAgOiBub25lO1xuICBkaXNwbGF5ICAgICAgICAgICAgICAgICA6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uICAgICAgICAgOiBpbmhlcml0O1xuICB3aWR0aCAgICAgICAgICAgICAgICAgICA6IDFlbTtcbiAgdGV4dC1hbGlnbiAgICAgICAgICAgICAgOiBjZW50ZXI7XG4gIGZvbnQtdmFyaWFudCAgICAgICAgICAgIDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybSAgICAgICAgICA6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMWVtO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nICA6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZyA6IGdyYXlzY2FsZTtcbiAgY29udGVudCAgICAgICAgICAgICAgICAgOiAkY2hhcmNvZGU7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEJvb3RzdHJhcCBzdHlsZSBjdXN0b21pemF0aW9ucy4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBncmlkIHJvd3MgKi9cbi5yb3cgeyBtYXgtd2lkdGggOiBub25lICFpbXBvcnRhbnQ7IH1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gYnV0dG9ucyBhbmQgb3RoZXIgZm9ybSBjb250cm9scyAqL1xuLmJ0biB7XG4gIGN1cnNvciA6IHBvaW50ZXI7XG59XG5cbi5idG4tbGcge1xuICBmb250LXNpemUgICA6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0IDogNDAwO1xufVxuXG4uYnRuLXdoaXRlIHtcbiAgY29sb3IgICAgICAgICAgICA6ICMzMzM7XG4gIGJhY2tncm91bmQtY29sb3IgOiAjZmZmO1xuICBib3JkZXItY29sb3IgICAgIDogI2ZmZjtcbn1cblxuLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHsgLy8gcmVtb3ZlIHllbGxvdyBhdXRvZmlsbCBjaHJvbWUgaGlnaGxpZ2h0XG4gIC13ZWJraXQtdHJhbnNpdGlvbiA6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdyA6IDAgMCAwIDMwcHggJGlucHV0LWJnIGluc2V0O1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBjYXJvdXNlbHMgKi9cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHsgbWFyZ2luLWJvdHRvbSA6IDJyZW07IH1cblxuLmNhcm91c2VsLWluZGljYXRvcnMgbGkge1xuICBib3JkZXItcmFkaXVzICAgIDogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yIDogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIHRyYW5zaXRpb24gICAgICAgOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzO1xuXG4gICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDogJGJyYW5kLXByaW1hcnk7XG4gIH1cbn1cblxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWlubmVyIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cbiAgLmNhcm91c2VsLWl0ZW0sXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gcHJvZ3Jlc3MgYmFyICovXG4ucHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yIDogI2RkZDtcbiAgYm9yZGVyLXJhZGl1cyAgICA6IDA7XG5cbiAgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvciA6ICMyMjI7XG4gICAgaGVpZ2h0ICAgICAgICAgICA6IDVweDtcbiAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBpbnB1dCBncm91cHMgKi9cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCAuZm9udC1zaXplLFxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgei1pbmRleCA6IDEwO1xufSIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIENvcHkgc2V0dGluZ3MgZnJvbSB0aGlzIGZpbGUgaW50byB0aGUgcHJvdmlkZWQgYF9jdXN0b20uc2Nzc2AgdG8gb3ZlcnJpZGVcbi8vIHRoZSBCb290c3RyYXAgZGVmYXVsdHMgd2l0aG91dCBtb2RpZnlpbmcga2V5LCB2ZXJzaW9uZWQgZmlsZXMuXG5cblxuLy8gVGFibGUgb2YgQ29udGVudHNcbi8vXG4vLyBDb2xvcnNcbi8vIE9wdGlvbnNcbi8vIFNwYWNpbmdcbi8vIEJvZHlcbi8vIExpbmtzXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vIEdyaWQgY29sdW1uc1xuLy8gRm9udHNcbi8vIENvbXBvbmVudHNcbi8vIFRhYmxlc1xuLy8gQnV0dG9uc1xuLy8gRm9ybXNcbi8vIERyb3Bkb3duc1xuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy8gTmF2YmFyXG4vLyBOYXZzXG4vLyBQYWdpbmF0aW9uXG4vLyBKdW1ib3Ryb25cbi8vIEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vIENhcmRzXG4vLyBUb29sdGlwc1xuLy8gUG9wb3ZlcnNcbi8vIEJhZGdlc1xuLy8gTW9kYWxzXG4vLyBBbGVydHNcbi8vIFByb2dyZXNzIGJhcnNcbi8vIExpc3QgZ3JvdXBcbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vIEZpZ3VyZXNcbi8vIEJyZWFkY3J1bWJzXG4vLyBDYXJvdXNlbFxuLy8gQ2xvc2Vcbi8vIENvZGVcblxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuXG4vLyBHZW5lcmFsIHZhcmlhYmxlIHN0cnVjdHVyZVxuLy9cbi8vIFZhcmlhYmxlIGZvcm1hdCBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1tb2RpZmllci1zdGF0ZS1wcm9wZXJ0eWAgb3JkZXIuXG5cblxuLy8gQ29sb3JzXG4vL1xuLy8gR3JheXNjYWxlIGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4vLyBTdGFydCB3aXRoIGFzc2lnbmluZyBjb2xvciBuYW1lcyB0byBzcGVjaWZpYyBoZXggdmFsdWVzLlxuJHdoaXRlOiAgI2ZmZiAhZGVmYXVsdDtcbiRibGFjazogICMwMDAgIWRlZmF1bHQ7XG4kcmVkOiAgICAjZDk1MzRmICFkZWZhdWx0O1xuJG9yYW5nZTogI2YwYWQ0ZSAhZGVmYXVsdDtcbiR5ZWxsb3c6ICNmZmQ1MDAgIWRlZmF1bHQ7XG4kZ3JlZW46ICAjNWNiODVjICFkZWZhdWx0O1xuJGJsdWU6ICAgIzAyNzVkOCAhZGVmYXVsdDtcbiR0ZWFsOiAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kcGluazogICAjZmY1Yjc3ICFkZWZhdWx0O1xuJHB1cnBsZTogIzYxM2Q3YyAhZGVmYXVsdDtcblxuLy8gQ3JlYXRlIGdyYXlzY2FsZVxuJGdyYXktZGFyazogICAgICAgICAgICAgICAgICMyOTJiMmMgIWRlZmF1bHQ7XG4kZ3JheTogICAgICAgICAgICAgICAgICAgICAgIzQ2NGE0YyAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICAgICAjNjM2YzcyICFkZWZhdWx0O1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgICAgICNlY2VlZWYgIWRlZmF1bHQ7XG4kZ3JheS1saWdodGVzdDogICAgICAgICAgICAgI2Y3ZjdmOSAhZGVmYXVsdDtcblxuLy8gUmVhc3NpZ24gY29sb3IgdmFycyB0byBzZW1hbnRpYyBjb2xvciBzY2hlbWVcbiRicmFuZC1wcmltYXJ5OiAgICAgICAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAgICAgJHRlYWwgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAgICAgJG9yYW5nZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGJyYW5kLWludmVyc2U6ICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6ICAgMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXIteDogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXIteTogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IChcbiAgICB4OiAwLFxuICAgIHk6IDBcbiAgKSxcbiAgMTogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAuMjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuMjUpXG4gICksXG4gIDI6IChcbiAgICB4OiAoJHNwYWNlci14ICogLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuNSlcbiAgKSxcbiAgMzogKFxuICAgIHg6ICRzcGFjZXIteCxcbiAgICB5OiAkc3BhY2VyLXlcbiAgKSxcbiAgNDogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAxLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAxLjUpXG4gICksXG4gIDU6IChcbiAgICB4OiAoJHNwYWNlci14ICogMyksXG4gICAgeTogKCRzcGFjZXIteSAqIDMpXG4gIClcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRpbnZlcnNlLWJnOiAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGludmVyc2UtY29sb3I6ICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZTogICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGhzOiAoXG4gIHhzOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgc206ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICBtZDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIGxnOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgeGw6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlXG4pICFkZWZhdWx0O1xuXG4vLyBGb250c1xuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXhzOiAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNSAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1oMTogMi41cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oMjogMnJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDM6IDEuNzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg0OiAxLjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg1OiAxLjI1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogMXJlbSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6IDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGFiYnItYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoOiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6IC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICg0IC8gMykgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtc20tY2VsbC1wYWRkaW5nOiAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtaW52ZXJzZS1iZzogICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kdGFibGUtaW52ZXJzZS1jb2xvcjogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgIDAgMCAwIDJweCByZ2JhKCRicmFuZC1wcmltYXJ5LCAuMjUpICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgICRidG4tcHJpbWFyeS1iZyAhZGVmYXVsdDtcblxuJGJ0bi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJnOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tc2Vjb25kYXJ5LWJvcmRlcjogICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgJGJ0bi1pbmZvLWJnICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgICRidG4tc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICAkYnRuLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICAkYnRuLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi10b29sYmFyLW1hcmdpbjogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjE1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zXG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJnLWZvY3VzOiAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93LWZvY3VzOiAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93LCByZ2JhKCRpbnB1dC1ib3JkZXItZm9jdXMsIC42KSAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvci1mb2N1czogICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtcGFkZGluZy15ICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtcGFkZGluZy15LWxnICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtcGFkZGluZy15LXNtICogMikpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6IC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogLjc1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAkc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6IDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXk6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1tYXJnaW4teTogICAoKCRsaW5lLWhlaWdodC1iYXNlICogMXJlbSkgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gLTIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6IGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I6ICAgICAgICAgICAgICRjdXJzb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnOiAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWRlc2NyaXB0aW9uLWNvbG9yOiAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYmc6ICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWZvY3VzLWluZGljYXRvci1ib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwIDNweCAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYmc6ICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtY2hlY2tlZC1pY29uOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZzogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW5kaWNhdG9yLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLXJhZGl1czogNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1jaGVja2VkLWljb246IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAyNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpLCAwIDAgNXB4IHJnYmEoJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXNtLXBhZGRpbmcteTogIC4ycmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3Qtc20tZm9udC1zaXplOiAgNzUlICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgMi41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXdpZHRoOiAgICAgICAgICAgIDE0cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIC4wNzVyZW0gJHdoaXRlLCAwIDAgMCAuMnJlbSAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgMS41ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgaW5zZXQgMCAuMnJlbSAuNHJlbSByZ2JhKCRibGFjaywuMDUpICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgcGxhY2Vob2xkZXI6IChcbiAgICBlbjogXCJDaG9vc2UgZmlsZS4uLlwiXG4gICksXG4gIGJ1dHRvbi1sYWJlbDogKFxuICAgIGVuOiBcIkJyb3dzZVwiXG4gIClcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uIGljb25zXG4kZm9ybS1pY29uLXN1Y2Nlc3MtY29sb3I6ICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0taWNvbi1zdWNjZXNzOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24tc3VjY2Vzcy1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0taWNvbi13YXJuaW5nLWNvbG9yOiAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRmb3JtLWljb24td2FybmluZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skZm9ybS1pY29uLXdhcm5pbmctY29sb3J9JyBkPSdNNC40IDUuMzI0aC0uOHYtMi40NmguOHptMCAxLjQyaC0uOFY1Ljg5aC44ek0zLjc2LjYzTC4wNCA3LjA3NWMtLjExNS4yLjAxNi40MjUuMjYuNDI2aDcuMzk3Yy4yNDIgMCAuMzcyLS4yMjYuMjU4LS40MjZDNi43MjYgNC45MjQgNS40NyAyLjc5IDQuMjUzLjYzYy0uMTEzLS4xNzQtLjM5LS4xNzQtLjQ5NCAweicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLWRhbmdlci1jb2xvcjogJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRmb3JtLWljb24tZGFuZ2VyOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0taWNvbi1kYW5nZXItY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2Q5NTM0ZicgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNFJTNDY2lyY2xlIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1tYXJnaW4tdG9wOiAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bi1iYWNrZHJvcDogIDk5MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLC41KSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICByZ2JhKCR3aGl0ZSwxKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlci1iZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMyIDMyJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1pbnZlcnNlLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJvcmRlcjogICAgICAgIHJnYmEoJHdoaXRlLC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJnOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXI6ICAgICAgIHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWl0ZW0tbWFyZ2luOiAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJG5hdi1pdGVtLWlubGluZS1zcGFjZXI6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAuNWVtIDFlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkc3RhdGUtc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkc3RhdGUtaW5mby1iZywgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKCRzdGF0ZS13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXI6IGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgKCRncmlkLWd1dHRlci13aWR0aC1iYXNlIC8gMikgIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgIDhweCAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgIDNweCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCA1cHggMTBweCByZ2JhKCRibGFjaywuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcblxuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg6ICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXk6ICAgICAgICAgICA5cHggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMXB4KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJhZGdlLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYmFkZ2Utc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRiYWRnZS1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJhZGdlLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYmFkZ2UtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLXNtLXVwLW1hcmdpbi15OiAzMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3c6ICAgIDAgM3B4IDlweCByZ2JhKCRibGFjaywuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1zbS11cC1ib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoJGJsYWNrLC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICRzcGFjZXIteSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1hY3RpdmUtY29sb3I6ICAgJGxpc3QtZ3JvdXAtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1iZzogICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6IDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNNCAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNMS41IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kY29kZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteTogICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2JkNDE0NyAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXN0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogUHJpbWFyeSBzaXRlIHByZWxvYWRlci4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiNzcC1wcmVsb2FkZXIge1xuICAgIEBpbmNsdWRlIG92ZXJsYXktYmFzZShmaXhlZCk7XG4gICAgei1pbmRleCAgICA6IDE1MDAwO1xuICAgIGJhY2tncm91bmQgOiAjZmZmO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTI1cHhcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBhbmltYXRpb246IDEuMTVzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgICBhbmltYXRpb24tbmFtZTogc3Atc2l0ZS1sb2FkZXI7XG5cbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiAxLjE1cyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH0gICAgXG59XG5cbkBrZXlmcmFtZXMgc3Atc2l0ZS1sb2FkZXIge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICBvcGFjaXR5OiAxXG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMFxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogU2Nyb2xsIHRvcCBidXR0b24uICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3Atc2Nyb2xsLXRvcCB7XG4gIHBvc2l0aW9uICAgICAgICAgOiBmaXhlZDtcbiAgcGFkZGluZyAgICAgICAgICA6IDEwcHg7XG4gIHRleHQtYWxpZ24gICAgICAgOiBjZW50ZXI7XG4gIHJpZ2h0ICAgICAgICAgICAgOiAzMHB4O1xuICBib3R0b20gICAgICAgICAgIDogMzBweDtcbiAgY29sb3IgICAgICAgICAgICA6ICNmZmY7XG4gIHRyYW5zZm9ybSAgICAgICAgOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgdHJhbnNpdGlvbiAgICAgICA6IGFsbCAwLjU1cyBlYXNlO1xuICB6LWluZGV4ICAgICAgICAgIDogMTAwMDtcbiAgYm9yZGVyLXJhZGl1cyAgICA6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3IgOiAkYnJhbmQtcHJpbWFyeTtcbiAgb3BhY2l0eSAgICAgICAgICA6IDA7XG4gIGxpbmUtaGVpZ2h0ICAgICAgOiAxO1xuICB2aXNpYmlsaXR5ICAgICAgIDogaGlkZGVuO1xuICAmLnNjcm9sbC10b3AtdmlzaWJsZSB7XG4gICAgdHJhbnNmb3JtICA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHkgICAgOiAxO1xuICAgIHZpc2liaWxpdHkgOiB2aXNpYmxlO1xuICB9XG5cbiAgPiBpIHtcbiAgICB3aWR0aCAgICAgICAgICA6IDIwcHg7XG4gICAgaGVpZ2h0ICAgICAgICAgOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0ICAgIDogMjBweDtcbiAgICBjb2xvciAgICAgICAgICA6ICNmZmY7XG4gICAgZGlzcGxheSAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgb3BhY2l0eSAgICAgICAgOiAxO1xuICAgIGZvbnQtc2l6ZSAgICAgIDogMjBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbiA6IG1pZGRsZTtcbiAgfVxuXG4gID4gLmFubm8tdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0ICAgOiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQgIDogNXB4O1xuICAgIHdoaXRlLXNwYWNlICAgIDogbm93cmFwO1xuICAgIGRpc3BsYXkgICAgICAgIDogbm9uZTtcbiAgICBmb250LXNpemUgICAgICA6IDE0cHg7XG4gICAgdGV4dC10cmFuc2Zvcm0gOiB1cHBlcmNhc2U7XG4gICAgdmVydGljYWwtYWxpZ24gOiBtaWRkbGU7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kIDogIzIyMjtcbiAgICBjb2xvciAgICAgIDogI2ZmZjtcbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIHBhZ2luYXRpb24uICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtcGFnaW5hdGlvbiB7XG4gIHRleHQtYWxpZ24gOiBjZW50ZXI7XG4gIC8vbWFyZ2luLXRvcCA6IDU1cHg7XG4gIGZvbnQtc2l6ZSAgOiAwO1xuXG4gIHVsIHtcbiAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG5cbiAgICBsaSB7XG4gICAgICBmb250LXdlaWdodCA6IGJvbGQ7XG4gICAgICBkaXNwbGF5ICAgICA6IGlubGluZTtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplIDogMThweDtcbiAgICAgICAgcGFkZGluZyAgIDogMTBweCAyNXB4O1xuICAgICAgICBjb2xvciAgICAgOiAjMzMzO1xuICAgICAgfVxuXG4gICAgICAmLmN1cnJlbnQsICY6aG92ZXIge1xuICAgICAgICBhIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkgeyBtYXJnaW4tdG9wIDogMDsgfVxufSIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb24gICAgICAgICAgICAgICAgICAgIDogcmVsYXRpdmU7XG4gIGRpc3BsYXkgICAgICAgICAgICAgICAgICAgICA6IGJsb2NrO1xuICBib3gtc2l6aW5nICAgICAgICAgICAgICAgICAgOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQgICAgICAgOiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0ICAgICAgICAgOiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3QgICAgICAgICAgOiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0ICAgICAgICAgICAgOiBub25lO1xuICAtbXMtdXNlci1zZWxlY3QgICAgICAgICAgICAgOiBub25lO1xuICB1c2VyLXNlbGVjdCAgICAgICAgICAgICAgICAgOiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uICAgICAgICAgICAgOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uICAgICAgICAgICAgICAgIDogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvciA6IHRyYW5zcGFyZW50O1xuXG4gICY6aG92ZXIgLnNsaWNrLWFycm93LmNpcmNsZSB7XG4gICAgJi5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0ICAgOiAxNXB4O1xuICAgICAgb3BhY2l0eSA6IDE7XG4gICAgfVxuICAgICYuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0ICAgIDogMTVweDtcbiAgICAgIG9wYWNpdHkgOiAxO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gIG92ZXJmbG93IDogaGlkZGVuO1xuICBkaXNwbGF5ICA6IGJsb2NrO1xuICBtYXJnaW4gICA6IDA7XG4gIHBhZGRpbmcgIDogMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lIDogbm9uZTtcbiAgfVxuXG4gICYuZHJhZ2dpbmcge1xuICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgY3Vyc29yIDogaGFuZDtcbiAgfVxufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICBsZWZ0ICAgICA6IDA7XG4gIHRvcCAgICAgIDogMDtcbiAgZGlzcGxheSAgOiBibG9jaztcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudCA6IFwiXCI7XG4gICAgZGlzcGxheSA6IHRhYmxlO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY2xlYXIgOiBib3RoO1xuICB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eSA6IGhpZGRlbjtcbiAgfVxufVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdCAgICAgIDogbGVmdDtcbiAgaGVpZ2h0ICAgICA6IDEwMCU7XG4gIG1pbi1oZWlnaHQgOiAxcHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZmxvYXQgOiByaWdodDtcbiAgfVxuICBpbWcge1xuICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGggOiAxMDAlOyBoZWlnaHQgOiBhdXRvO1xuICB9XG4gICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXkgOiBub25lO1xuICB9XG5cbiAgZGlzcGxheSAgICA6IG5vbmU7XG5cbiAgJi5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzIDogbm9uZTtcbiAgfVxuXG4gIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICBkaXNwbGF5IDogYmxvY2s7XG4gIH1cblxuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICB2aXNpYmlsaXR5IDogaGlkZGVuO1xuICB9XG5cbiAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgIGRpc3BsYXkgOiBibG9jaztcbiAgICBoZWlnaHQgIDogYXV0bztcbiAgICBib3JkZXIgIDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5IDogbm9uZTtcbn1cblxuLnNsaWNrLWFycm93IHtcbiAgcG9zaXRpb24gICAgICAgICAgIDogYWJzb2x1dGU7XG4gIGxlZnQgICAgICAgICAgICAgICA6IDA7IHRvcCA6IDA7IGJvdHRvbSA6IDA7XG4gIHdpZHRoICAgICAgICAgICAgICA6IDE1JTtcbiAgb3BhY2l0eSAgICAgICAgICAgIDogMC42O1xuICBjb2xvciAgICAgICAgICAgICAgOiBpbmhlcml0O1xuICBib3JkZXIgICAgICAgICAgICAgOiAwO1xuICBvdXRsaW5lICAgICAgICAgICAgOiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWFwcGVhcmFuY2UgOiBub25lO1xuICBmb250LXNpemUgICAgICAgICAgOiAwO1xuICBkaXNwbGF5ICAgICAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmcgICAgICAgICAgICA6IDA7XG4gIGxpbmUtaGVpZ2h0ICAgICAgICA6IDE7XG4gIHotaW5kZXggICAgICAgICAgICA6IDEwMDtcblxuICAmOmhvdmVyIHsgb3BhY2l0eSA6IDE7IH1cblxuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHkgOiAkaWNvbi1mb250LWZhbWlseTtcbiAgICBjb250ZW50ICAgICA6IFwiXFxmM2QyXCI7XG4gICAgZm9udC1zaXplICAgOiA0MHB4O1xuICB9XG5cbiAgJi5zbGljay1uZXh0IHtcbiAgICBsZWZ0ICA6IGF1dG87XG4gICAgcmlnaHQgOiAwO1xuXG4gICAgJjpiZWZvcmUgeyBjb250ZW50IDogJ1xcZjNkMycgfVxuICB9XG5cbiAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eSAgICAgICAgOiAwLjI7XG4gICAgLy92aXNpYmlsaXR5IDogaGlkZGVuO1xuICAgIHBvaW50ZXItZXZlbnRzIDogbm9uZTtcbiAgfVxuXG4gICYuY2lyY2xlIHtcbiAgICBmb250LXNpemUgICAgICAgOiAxOHB4O1xuICAgIGJhY2tncm91bmQgICAgICA6ICNmZmY7XG4gICAgY3Vyc29yICAgICAgICAgIDogcG9pbnRlcjtcbiAgICBwb3NpdGlvbiAgICAgICAgOiBhYnNvbHV0ZTtcbiAgICB0b3AgICAgICAgICAgICAgOiA1MCU7XG4gICAgdGV4dC1hbGlnbiAgICAgIDogY2VudGVyO1xuICAgIG1hcmdpbi10b3AgICAgICA6IC0xOHB4O1xuICAgIHRyYW5zaXRpb24gICAgICA6IGFsbCAwLjI1cztcbiAgICB0ZXh0LWRlY29yYXRpb24gOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXMgICA6IDUwJTtcbiAgICB3aWR0aCAgICAgICAgICAgOiAzNnB4O1xuICAgIGhlaWdodCAgICAgICAgICA6IDM2cHg7XG4gICAgbGluZS1oZWlnaHQgICAgIDogMzZweDtcblxuICAgICY6YmVmb3JlIHsgY29udGVudCA6IG5vbmU7IH1cblxuICAgID4gaSB7XG4gICAgICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICAgICAgY29sb3IgICAgOiAjMzMzO1xuICAgIH1cblxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kIDogJGJyYW5kLXByaW1hcnk7IH1cbiAgICAmOmhvdmVyIGkgeyBjb2xvciA6ICNmZmY7IH1cblxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICByaWdodCAgIDogMDtcbiAgICAgIG9wYWNpdHkgOiAwO1xuICAgIH1cbiAgICAmLnNsaWNrLXByZXYge1xuICAgICAgbGVmdCAgICA6IDA7XG4gICAgICBvcGFjaXR5IDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLWRvdHMge1xuICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG4gIG1hcmdpbi10b3AgIDogMzBweDtcbiAgbGVmdCAgICAgICAgOiAwOyB3aWR0aCA6IDEwMCU7XG4gIHRleHQtYWxpZ24gIDogY2VudGVyO1xuICB6LWluZGV4ICAgICA6IDE1MDtcbiAgbGluZS1oZWlnaHQgOiAxO1xuICBmb250LXNpemUgICA6IDA7XG5cbiAgPiBsaSB7IGRpc3BsYXkgOiBpbmxpbmUtYmxvY2s7IH1cblxuICBidXR0b24ge1xuICAgIGNvbG9yICAgICAgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtaW5kZW50ICAgICAgICA6IC05OTk5cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlIDogbm9uZTtcbiAgICBkaXNwbGF5ICAgICAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0ICAgICAgICAgICAgIDogMWVtO1xuICAgIHdpZHRoICAgICAgICAgICAgICA6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQgICAgICAgOiAuNGVtO1xuICAgIG1hcmdpbi1sZWZ0ICAgICAgICA6IC40ZW07XG4gICAgcGFkZGluZyAgICAgICAgICAgIDogMDtcbiAgICBib3JkZXIgICAgICAgICAgICAgOiAwO1xuICAgIG91dGxpbmUgICAgICAgICAgICA6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzICAgICAgOiA1MCU7XG4gICAgYmFja2dyb3VuZCAgICAgICAgIDogI2RkZDtcbiAgICB0cmFuc2l0aW9uICAgICAgICAgOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzO1xuICAgIGZvbnQtc2l6ZSAgICAgICAgICA6IDAuOTM3NXJlbTtcbiAgfVxuXG4gID4gbGk6aG92ZXIgYnV0dG9uLCA+IGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3IgOiAkYnJhbmQtcHJpbWFyeTtcbiAgfVxufVxuXG4uc2xpY2stZG90cy1pbnNpZGUgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gIGJvdHRvbSAgICAgOiAyLjYyNXJlbTtcbiAgbWFyZ2luLXRvcCA6IDA7XG5cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kIDogI2ZmZjtcbiAgICBmb250LXNpemUgIDogMXJlbTtcbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaXRlIGhlYWRlciBjb21tb25zLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1oZWFkZXIge1xuICBwb3NpdGlvbiAgICAgIDogYWJzb2x1dGU7XG4gIHRvcCAgICAgICAgICAgOiAwOyBsZWZ0IDogMDtcbiAgcmlnaHQgICAgICAgICA6IDA7XG4gIHdpZHRoICAgICAgICAgOiAxMDAlO1xuICB6LWluZGV4ICAgICAgIDogJHppbmRleC1maXhlZCArIDIwO1xuICBiYWNrZ3JvdW5kICAgIDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yICAgICAgICAgOiAjZmZmO1xuICBwYWRkaW5nICAgICAgIDogMjBweCAzMHB4O1xuICBib3JkZXItYm90dG9tIDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4jc3AtaGVhZGVyLWlubmVyIHtcbiAgZGlzcGxheSAgICAgOiBmbGV4O1xuICBhbGlnbi1pdGVtcyA6IGNlbnRlcjtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSGVhZGVyIGVsZW1lbnRzIChsb2dvLCBleHRyYXMsIGV0YykgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtaGVhZGVyLWlubmVyID4gLmJyYW5kLWxvZ28ge1xuICB1c2VyLXNlbGVjdCAgOiBub25lO1xuICBjb2xvciAgICAgICAgOiBpbmhlcml0O1xuICBmb250LXNpemUgICAgOiAyLjFyZW07XG4gIG1hcmdpbi1yaWdodCA6IGF1dG87XG4gIG1pbi13aWR0aCAgICA6IDA7XG4gIGxpbmUtaGVpZ2h0ICA6IDE7IFxuXG4gID4gaDEge1xuICAgIEBpbmNsdWRlIHJlc2V0LWJveC1tb2RlbCgpO1xuICAgIGZvbnQtc2l6ZSA6IGluaGVyaXQ7XG4gICAgY29sb3IgICAgIDogaW5oZXJpdDtcbiAgfVxuXG4gID4gaDEgPiBzcGFuIHsgY29sb3I6ICRicmFuZC1wcmltYXJ5OyB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGggOiAxMDAlO1xuICAgIGhlaWdodCAgICA6IGF1dG87XG4gICAgJi5sb2dvLWRhcmsgeyBkaXNwbGF5IDogbm9uZTsgfVxuICB9XG59XG5cbiNzcC1oZWFkZXItaW5uZXIgPiAuaGVhZGVyLWV4dHJhcyB7XG4gIGZvbnQtc2l6ZSAgICA6IDA7XG4gIGxpbmUtaGVpZ2h0ICA6IDE7XG4gIG1hcmdpbi1sZWZ0ICA6IDMwcHg7XG4gIG1hcmdpbi1yaWdodCA6IC0xMHB4O1xuICBib3JkZXItbGVmdCAgOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICBwYWRkaW5nLWxlZnQgOiAyMHB4O1xuXG4gID4gKiB7XG4gICAgdmVydGljYWwtYWxpZ24gOiBtaWRkbGU7XG4gIH1cblxuICA+IGEge1xuICAgIHBhZGRpbmcgICA6IDVweCAxMHB4O1xuICAgIGNvbG9yICAgICA6IGluaGVyaXQ7XG4gICAgZGlzcGxheSAgIDogaW5saW5lLWJsb2NrO1xuXG4gICAgPiBpIHsgZm9udC1zaXplIDogMjJweDsgfVxuICAgICY6aG92ZXIgeyBvcGFjaXR5IDogMC42OyB9XG4gIH1cblxuICA+IC52LXNlcGFyYXRvciB7XG4gICAgZGlzcGxheSAgICA6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aCAgICAgIDogMXB4O1xuICAgIGhlaWdodCAgICAgOiAyMnB4O1xuICAgIGJhY2tncm91bmQgOiBjdXJyZW50Q29sb3I7XG4gICAgbWFyZ2luICAgICA6IDAgMzBweDtcbiAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBIZWFkZXIgZGVza3RvcCBuYXZpZ2F0aW9uLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNzcC1wcmltYXJ5LW5hdiB7XG4gIHRleHQtYWxpZ24gIDogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0IDogMTtcbn1cblxuI3NwLXByaW1hcnktbmF2ID4gLm5hdl9tZW51IHtcbiAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luICAgIDogMCAtMTdweDtcbiAgZm9udC1zaXplIDogMDtcblxuICAvLyByb290LWxldmVsIG1lbnUgaXRlbXNcbiAgPiBsaSB7XG4gICAgcG9zaXRpb24gIDogcmVsYXRpdmU7XG4gICAgZGlzcGxheSAgIDogaW5saW5lLWJsb2NrO1xuXG4gICAgPiBhIHtcbiAgICAgIGRpc3BsYXkgICAgICAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemUgICAgICAgICAgIDogMTZweDtcbiAgICAgIHdoaXRlLXNwYWNlICAgICAgICAgOiBub3dyYXA7XG4gICAgICBwYWRkaW5nICAgICAgICAgICAgIDogMTVweCAxN3B4O1xuICAgICAgZm9udC13ZWlnaHQgICAgICAgICA6IDQwMDtcbiAgICAgIGNvbG9yICAgICAgICAgICAgICAgOiBpbmhlcml0O1xuICAgICAgdGV4dC10cmFuc2Zvcm0gICAgICA6IHVwcGVyY2FzZTtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHkgOiBvcGFjaXR5LCBjb2xvciwgYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdCA6IDdweDtcbiAgICAgIGNvbnRlbnQgICAgICA6ICdcXGU4MjEnO1xuICAgICAgZm9udC1zaXplICAgIDogMTRweDtcbiAgICAgIGZvbnQtZmFtaWx5ICA6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgIH1cblxuICAgICY6aG92ZXIgPiBhIHsgb3BhY2l0eTogMC42OyB9XG5cbiAgICAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiBhIHtcbiAgICAgIG9wYWNpdHkgICAgOiAxO1xuICAgICAgYmFja2dyb3VuZCA6ICNmZmY7XG4gICAgICBjb2xvciAgICAgIDogIzMzMztcbiAgICB9XG4gIH1cblxuICAvLyBkcm9wLWRvd25zXG4gIC5zdWItbWVudSB7XG4gICAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuICAgIHRyYW5zZm9ybSAgOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgdHJhbnNpdGlvbiA6IHRyYW5zZm9ybSAwLjM1cywgb3BhY2l0eSAwLjI1cywgdmlzaWJpbGl0eSAwLjM1cztcbiAgICBvcGFjaXR5ICAgIDogMDtcbiAgICB2aXNpYmlsaXR5IDogaGlkZGVuO1xuICAgIHBvc2l0aW9uICAgOiBhYnNvbHV0ZTtcbiAgICB0b3AgICAgICAgIDogMTAwJTsgbGVmdCA6IDA7XG4gICAgYm94LXNoYWRvdyA6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE3NSk7XG4gICAgYmFja2dyb3VuZCA6ICNmZmY7XG4gICAgdGV4dC1hbGlnbiA6IGxlZnQ7XG5cbiAgICAmLmludmVydC1hdHRhY2gtcG9pbnQge1xuICAgICAgbGVmdCAgOiBhdXRvO1xuICAgICAgcmlnaHQgOiAwO1xuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheSAgOiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuXG4gICAgICA+IGEge1xuICAgICAgICBwb3NpdGlvbiAgICAgICAgICAgIDogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXkgICAgICAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmcgICAgICAgICAgICAgOiAxMHB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZSAgICAgICAgICAgOiAxNXB4O1xuICAgICAgICBjb2xvciAgICAgICAgICAgICAgIDogIzMzMztcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgICA6IDIyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodCAgICAgICAgIDogMS43NTtcbiAgICAgICAgd2hpdGUtc3BhY2UgICAgICAgICA6IG5vcm1hbDtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eSA6IGJhY2tncm91bmQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtICAgICAgOiBjYXBpdGFsaXplO1xuICAgICAgICBib3JkZXItdG9wICAgICAgICAgIDogMXB4IHNvbGlkICNlZWU7XG4gICAgICB9XG5cbiAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6YWZ0ZXIge1xuICAgICAgICByaWdodCAgICAgICAgOiAyMHB4O1xuICAgICAgICBwb3NpdGlvbiAgICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0IDogN3B4O1xuICAgICAgICBjb250ZW50ICAgICAgOiAnXFxlODFmJztcbiAgICAgICAgZm9udC1zaXplICAgIDogMTRweDtcbiAgICAgICAgZm9udC1mYW1pbHkgIDogJGljb24tZm9udC1mYW1pbHk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIgPiBhIHsgYmFja2dyb3VuZCA6ICNmNWY1ZjU7IH1cbiAgICB9XG5cbiAgICAvLyBkZWVwLWxldmVsIGRyb3AtZG93bnNcbiAgICAuc3ViLW1lbnUge1xuICAgICAgdHJhbnNmb3JtIDogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgICAgbGVmdCAgICAgIDogMTAwJTtcbiAgICAgIHRvcCAgICAgICA6IDA7XG5cbiAgICAgICYuaW52ZXJ0LWF0dGFjaC1wb2ludCB7XG4gICAgICAgIHRyYW5zZm9ybSA6IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgICAgICByaWdodCAgICAgOiAxMDAlO1xuICAgICAgICBsZWZ0ICAgICAgOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIG11bHRpLWNvbHVtbiBtb2Rlc1xuICA+IGxpLnNwLW1lZ2EtbWVudSA+IHVsIHtcbiAgICBib3JkZXItdG9wIDogMXB4IHNvbGlkICNlZWU7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICB3aWR0aCAgICAgICAgIDogMjAwcHg7XG4gICAgICBib3JkZXItdG9wICAgIDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20gOiAxcHggc29saWQgI2VlZTtcbiAgICAgIGJvcmRlci1yaWdodCAgOiAxcHggc29saWQgI2VlZTtcbiAgICB9XG4gIH1cbiAgPiBsaS5zcC1tZWdhLW1lbnUubWVnYS0yLWNvbHVtbnMgPiB1bCB7IEBpbmNsdWRlIHByZWZpeChjb2x1bW5zLCAyLCB3ZWJraXQgbW96KTsgfVxuICA+IGxpLnNwLW1lZ2EtbWVudS5tZWdhLTMtY29sdW1ucyA+IHVsIHsgQGluY2x1ZGUgcHJlZml4KGNvbHVtbnMsIDMsIHdlYmtpdCBtb3opOyB9XG5cbiAgLy8gaG92ZXIgZWZmZWN0XG4gIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuc3ViLW1lbnUge1xuICAgIHRyYW5zZm9ybSAgOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5ICAgIDogMTtcbiAgICB2aXNpYmlsaXR5IDogdmlzaWJsZTtcbiAgfVxufSIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBGdWxsc2NyZWVuIG1vYmlsZSBuYXZpZ2F0aW9uLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuI3NwLW1vYmlsZS1uYXYtYmcsICNzcC1tb2JpbGUtbmF2LWNvbnRhaW5lciB7XG4gIHRyYW5zaXRpb24gOiBvcGFjaXR5IDAuM3MsIHZpc2liaWxpdHkgMC4zcztcbiAgb3BhY2l0eSAgICA6IDA7XG4gIHZpc2liaWxpdHkgOiBoaWRkZW47XG59XG5cbiNzcC1tb2JpbGUtbmF2LWJnIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKCk7XG4gIHotaW5kZXggICAgOiAkemluZGV4LWZpeGVkO1xuICBiYWNrZ3JvdW5kIDogcmdiYSgjMDAwLCAwLjg1KTtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKCk7XG4gIHotaW5kZXggICAgICAgOiAkemluZGV4LWZpeGVkICsgMTA7XG4gIGJvcmRlci10b3AgICAgOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tIDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3cgICAgICA6IGhpZGRlbjtcbn1cblxuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyID4gLm92ZXJsYXktaW5uZXItd3JhcCB7XG4gIHBvc2l0aW9uICAgIDogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybSAgIDogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wICAgICAgICAgOiA1MCU7IGxlZnQgOiA1MCU7XG4gIG1hcmdpbi1sZWZ0IDogLTIwMHB4O1xuICB3aWR0aCAgICAgICA6IDQwMHB4O1xuICBtYXgtaGVpZ2h0ICA6IDEwMCU7XG4gIG92ZXJmbG93LXggIDogaGlkZGVuO1xuICBvdmVyZmxvdy15ICA6IGF1dG87XG4gIHRleHQtYWxpZ24gIDogY2VudGVyO1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBmbiBtZW51IHRvZ2dsZSAqL1xuI3NwLXByaW1hcnktbmF2ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIge1xuICBkaXNwbGF5ICAgICAgICA6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ24gOiBtaWRkbGU7XG4gIHBvc2l0aW9uICAgICAgIDogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZSAgICAgIDogMThweDtcbiAgei1pbmRleCAgICAgICAgOiAkemluZGV4LWZpeGVkICsgMTA7XG4gIG1hcmdpbiAgICAgICAgIDogMTVweCAwO1xuICB3aWR0aCAgICAgICAgICA6IDEuNWVtO1xuICBoZWlnaHQgICAgICAgICA6IDFlbTtcbiAgY29sb3IgICAgICAgICAgOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uICAgICA6IG5vbmU7XG5cbiAgPiBzcGFuIHtcbiAgICBkaXNwbGF5ICAgIDogYmxvY2s7XG4gICAgcG9zaXRpb24gICA6IGFic29sdXRlO1xuICAgIGhlaWdodCAgICAgOiAycHg7XG4gICAgd2lkdGggICAgICA6IDEwMCU7XG4gICAgYmFja2dyb3VuZCA6IGN1cnJlbnRDb2xvcjtcbiAgICBvcGFjaXR5ICAgIDogMTtcbiAgICBsZWZ0ICAgICAgIDogMDtcbiAgICB0cmFuc2Zvcm0gIDogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb24gOiBhbGwgLjNzIGVhc2UtaW4tb3V0LCBjb2xvciAwLjI1cztcblxuICAgICY6bnRoLWNoaWxkKDEpIHsgdG9wOiAwOyB9XG4gICAgJjpudGgtY2hpbGQoMiksICY6bnRoLWNoaWxkKDMpIHsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAmOm50aC1jaGlsZCg0KSB7IGJvdHRvbTogMDsgfVxuICB9XG5cbiAgLnNwLWFjdGl2ZS1idXJnZXItbWVudSAmID4gc3BhbiB7XG4gICAgJjpudGgtY2hpbGQoMSkgeyB0b3A6IDUwJTsgd2lkdGg6IDA7IGxlZnQ6IDUwJTsgfVxuICAgICY6bnRoLWNoaWxkKDIpIHsgdHJhbnNmb3JtIDogcm90YXRlKDQ1ZGVnKTsgfVxuICAgICY6bnRoLWNoaWxkKDMpIHsgdHJhbnNmb3JtIDogcm90YXRlKC00NWRlZyk7IH1cbiAgICAmOm50aC1jaGlsZCg0KSB7IGJvdHRvbTogNTAlOyB3aWR0aDogMDsgbGVmdDogNTAlOyB9XG4gIH1cblxuICAvLyY6aG92ZXIgeyBvcGFjaXR5OiAwLjY7IH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IHNvY2lhbCBpY29ucyAqL1xuI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIC5zcC1zb2MtaWNvbnMge1xuICBtYXJnaW4tdG9wIDogMTVweDtcbiAgZm9udC1zaXplICA6IDA7XG4gIG9wYWNpdHkgICAgOiAwO1xuXG4gID4gYSB7XG4gICAgZGlzcGxheSAgIDogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yICAgICA6ICRicmFuZC1wcmltYXJ5O1xuICAgIHBhZGRpbmcgICA6IDAgMTVweDtcbiAgICBvcGFjaXR5ICAgOiAxO1xuICAgIGZvbnQtc2l6ZSA6IDIzcHg7XG5cbiAgICAmOmhvdmVyIHsgY29sb3IgOiAjZmZmOyB9XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGlubmVyIG5hdiBtZW51ICovXG4jc3AtbW9iaWxlLW5hdi1jb250YWluZXIgLm5hdl9tZW51IHtcbiAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuXG4gIGxpID4gYS5zdWItYWN0aXZlIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuXG4gIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHsgcG9zaXRpb24gOiByZWxhdGl2ZTsgfVxuICBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gICAgY29udGVudCAgICAgOiAnXFxmM2QwJztcbiAgICBmb250LWZhbWlseSA6ICRpY29uLWZvbnQtZmFtaWx5O1xuICAgIG1hcmdpbi1sZWZ0IDogNXB4O1xuICAgIGZvbnQtc2l6ZSAgIDogMTJweDtcbiAgICBwb3NpdGlvbiAgICA6IGFic29sdXRlO1xuICAgIHRvcCAgICAgICAgIDogNTAlO1xuICAgIG1hcmdpbi10b3AgIDogMnB4O1xuICAgIGxpbmUtaGVpZ2h0IDogMTtcbiAgICB0cmFuc2Zvcm0gICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICA+IGxpIHtcbiAgICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICAgIG9wYWNpdHkgIDogMDtcblxuICAgID4gYSB7XG4gICAgICBmb250LXNpemUgICAgICA6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodCAgICA6IDM1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybSA6IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b20gIDogMTVweDtcbiAgICAgIGRpc3BsYXkgICAgICAgIDogYmxvY2s7XG4gICAgICBjb2xvciAgICAgICAgICA6ICNmZmY7XG4gICAgICBmb250LXdlaWdodCAgICA6IDQwMDtcblxuICAgICAgJjpob3ZlciB7IGNvbG9yIDogJGJyYW5kLXByaW1hcnk7IH1cbiAgICB9XG4gIH1cblxuICAuc3ViLW1lbnUge1xuICAgIEBpbmNsdWRlIHJlc2V0LWJveC1tb2RlbCh0cnVlKTtcbiAgICBwYWRkaW5nICA6IDAgMCAxNXB4O1xuICAgIGRpc3BsYXkgOiBub25lO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemUgICAgICA6IDE2cHg7XG4gICAgICBmb250LXdlaWdodCAgICA6IDQwMDtcbiAgICAgIHRleHQtYWxpZ24gICAgIDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbSAgOiAxMHB4O1xuICAgICAgY29sb3IgICAgICAgICAgOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm0gOiBub25lO1xuICAgICAgZGlzcGxheSAgICAgICAgOiBibG9jaztcblxuICAgICAgJjpob3ZlciB7IGNvbG9yIDogJGJyYW5kLXByaW1hcnk7IH1cbiAgICB9XG5cbiAgICAuc3ViLW1lbnUgeyBwYWRkaW5nLXRvcCA6IDVweDsgfVxuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBhY3RpdmUgc3RhdGUgKi9cbmh0bWwuc3AtYWN0aXZlLWJ1cmdlci1tZW51IHtcbiAgJiwgPiBib2R5IHtcbiAgICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICAgIGhlaWdodCAgIDogMTAwJTtcbiAgICBvdmVyZmxvdyA6IGhpZGRlbjtcbiAgfVxuXG4gICNzcC1tb2JpbGUtbmF2LWJnLCAjc3AtbW9iaWxlLW5hdi1jb250YWluZXIge1xuICAgIG9wYWNpdHkgICAgOiAxO1xuICAgIHZpc2liaWxpdHkgOiB2aXNpYmxlO1xuICB9XG5cbiAgI3NwLW1vYmlsZS1uYXYtY29udGFpbmVyIHtcbiAgICAubmF2X21lbnUgPiBsaSwgLnNwLXNvYy1pY29ucyB7XG4gICAgICBAaW5jbHVkZSBwcmVmaXgoYW5pbWF0aW9uLCBzcC1tZW51LWVmZmVjdCAwLjRzIGxpbmVhciBmb3J3YXJkcywgd2Via2l0KTtcbiAgICB9XG4gIH1cblxuICAjc3AtaGVhZGVyLmhlYWRlci1zdHVjayAuYnJhbmQtbG9nbyB7XG4gICAgLmxvZ28tZGFyayB7IGRpc3BsYXkgOiBub25lOyB9XG4gICAgLmxvZ28td2hpdGUgeyBkaXNwbGF5IDogYmxvY2s7IH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwLW1lbnUtZWZmZWN0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eSAgICA6IDA7XG4gICAgdmlzaWJpbGl0eSA6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm0gIDogdHJhbnNsYXRlWSgxNXB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eSAgICA6IDE7XG4gICAgdmlzaWJpbGl0eSA6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtICA6IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogRnVsbHNjcmVlbiBzZWFyY2guICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI3NwLXNlYXJjaC1ibG9jay1jb250YWluZXIge1xuICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwoKTtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKGZpeGVkKTtcbiAgb3BhY2l0eSAgICAgICAgICAgICA6IDA7XG4gIGJhY2tncm91bmQgICAgICAgICAgOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB2aXNpYmlsaXR5ICAgICAgICAgIDogaGlkZGVuO1xuICB0cmFuc2l0aW9uICAgICAgICAgIDogYWxsIDAuMjVzIGxpbmVhcjtcbiAgei1pbmRleCAgICAgICAgICAgICA6IDEwMDAwO1xuICBkaXNwbGF5ICAgICAgICAgICAgIDogZmxleDtcbiAganVzdGlmeS1jb250ZW50ICAgICA6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXMgICAgICAgICA6IGNlbnRlcjtcblxuICA+IC5zZWFyY2gtYmxvY2staW5uZXIge1xuICAgIHBhZGRpbmcgICAgICAgICAgOiAwICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuICAgIHRyYW5zZm9ybSAgICAgICAgOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICB3aWR0aCAgICAgICAgICAgIDogNjAwcHg7XG4gICAgdHJhbnNpdGlvbiAgICAgICA6IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXM7XG4gICAgdHJhbnNpdGlvbi1kZWxheSA6IDAuMjVzO1xuICAgIHRleHQtYWxpZ24gICAgICAgOiBjZW50ZXI7XG4gICAgb3BhY2l0eSAgICAgICAgICA6IDA7XG5cbiAgICA+IGZvcm0geyBwb3NpdGlvbiA6IHJlbGF0aXZlOyB9XG4gIH1cblxuICAuc2VhcmNoLWlucHV0IHtcbiAgICBwb3NpdGlvbiAgICAgICAgICAgOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4ICAgICAgICAgICAgOiAxMDAwNTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2UgOiBub25lO1xuICAgIGJhY2tncm91bmQgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmcgICAgICAgICAgICA6IDE1cHggNDVweCAxNXB4IDA7XG4gICAgYm9yZGVyICAgICAgICAgICAgIDogbm9uZTtcbiAgICBmb250LXNpemUgICAgICAgICAgOiAzMHB4O1xuICAgIHdpZHRoICAgICAgICAgICAgICA6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbSAgICAgIDogMXB4IHNvbGlkICNmZmY7XG4gICAgb3V0bGluZSAgICAgICAgICAgIDogbm9uZTtcbiAgICBjb2xvciAgICAgICAgICAgICAgOiAjZmZmO1xuXG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXItc3R5bGVzIHsgY29sb3I6ICNmZmY7IH1cbiAgfVxuXG4gIC5zZWFyY2gtYnRuIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2UgOiBub25lO1xuICAgIGJvcmRlciAgICAgICAgICAgICA6IG5vbmU7XG4gICAgYmFja2dyb3VuZCAgICAgICAgIDogdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZSAgICAgICAgICAgIDogMDtcbiAgICBjdXJzb3IgICAgICAgICAgICAgOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZSAgICAgICAgICA6IDM1cHg7XG4gICAgY29sb3IgICAgICAgICAgICAgIDogI2ZmZjtcbiAgICB0cmFuc2l0aW9uICAgICAgICAgOiBvcGFjaXR5IDAuMjVzO1xuICAgIG9wYWNpdHkgICAgICAgICAgICA6IDAuODU7XG4gICAgcGFkZGluZyAgICAgICAgICAgIDogMDtcbiAgICBwb3NpdGlvbiAgICAgICAgICAgOiBhYnNvbHV0ZTtcbiAgICB0b3AgICAgICAgICAgICAgICAgOiAwO1xuICAgIGJvdHRvbSAgICAgICAgICAgICA6IDA7XG4gICAgcmlnaHQgICAgICAgICAgICAgIDogMDtcbiAgICB3aWR0aCAgICAgICAgICAgICAgOiA0NXB4O1xuICAgIHRleHQtYWxpZ24gICAgICAgICA6IHJpZ2h0O1xuICAgIHotaW5kZXggICAgICAgICAgICA6IDEwMDEwO1xuXG4gICAgJjpob3ZlciB7IG9wYWNpdHk6IDE7IH1cbiAgfVxuXG4gIC5jbG9zZS1zZWFyY2gge1xuICAgIHBvc2l0aW9uICAgIDogYWJzb2x1dGU7XG4gICAgdG9wICAgICAgICAgOiAxMHB4O1xuICAgIHJpZ2h0ICAgICAgIDogMzBweDtcbiAgICBsaW5lLWhlaWdodCA6IDE7XG4gICAgdHJhbnNpdGlvbiAgOiBvcGFjaXR5IDAuMjVzO1xuXG4gICAgaSB7XG4gICAgICBmb250LXNpemUgOiA3MHB4O1xuICAgICAgY29sb3IgICAgIDogI2ZmZjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHkgOiAwLjY7XG4gICAgfVxuICB9XG5cbiAgJi5vcGVuIHtcbiAgICBvcGFjaXR5ICAgIDogMTtcbiAgICB2aXNpYmlsaXR5IDogdmlzaWJsZTtcblxuICAgID4gLnNlYXJjaC1ibG9jay1pbm5lciB7XG4gICAgICB0cmFuc2Zvcm0gOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgIG9wYWNpdHkgICA6IDE7XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEhlYWRlciBzdHVjayBzdGF0ZS4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc3AtaGVhZGVyIHtcbiAgcG9zaXRpb24gICA6IGZpeGVkO1xuICB0cmFuc2l0aW9uIDogYWxsIDAuMjVzIGxpbmVhcjtcblxuICBhIHsgdHJhbnNpdGlvbi1kdXJhdGlvbiA6IDAuMjVzOyB9XG5cbiAgYm9keS5hZG1pbi1iYXIgJiB7IHRvcDogMzJweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzgycHgpIHsgYm9keS5hZG1pbi1iYXIgJiB7IHRvcDogNDZweDsgfSB9XG59XG5cbiNzcC1oZWFkZXIuaGVhZGVyLXN0dWNrIHtcbiAgcG9zaXRpb24gICAgICAgOiBmaXhlZDtcbiAgcGFkZGluZy10b3AgICAgOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbSA6IDE1cHg7XG5cbiAgLmJyYW5kLWxvZ28ge1xuICAgIGZvbnQtc2l6ZSA6IDJyZW07XG5cbiAgICAubG9nby1kYXJrIHsgZGlzcGxheSA6IGJsb2NrOyB9XG4gICAgLmxvZ28td2hpdGUgeyBkaXNwbGF5IDogbm9uZTsgfVxuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBzbGlkZS1pbiBzY3JvbGwgYW5pbWF0aW9uICovXG4jc3AtaGVhZGVyLnN0dWNrLXNsaWRlaW4ge1xuICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb24gOiBub25lO1xuXG4gICY6bm90KC5oZWFkZXItc3R1Y2spIHtcbiAgICB0b3AgOiAwO1xuICB9XG5cbiAgJi5oZWFkZXItc3R1Y2sge1xuICAgIHBvc2l0aW9uICA6IGZpeGVkO1xuICAgIGFuaW1hdGlvbiA6IHNwLWhlYWRlci1zdHVjay1zbGlkZWluIDUwMG1zIDEgZm9yd2FyZHM7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcC1oZWFkZXItc3R1Y2stc2xpZGVpbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybSA6IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICBvcGFjaXR5ICAgOiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybSA6IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHkgICA6IDE7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IHNjcm9sbCBzdHlsZXMgKi9cbmJvZHk6bm90KC5zcC1hY3RpdmUtYnVyZ2VyLW1lbnUpICNzcC1oZWFkZXIuaGVhZGVyLXN0dWNrIHtcbiAgYmFja2dyb3VuZCAgICAgICAgICA6ICNmZmY7XG4gIGJvcmRlci1ib3R0b20tY29sb3IgOiAjZWVlO1xuICBjb2xvciAgICAgICAgICAgICAgIDogIzMzMztcbiAgYm94LXNoYWRvdyAgICAgICAgICA6IDAgM3B4IDIwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSGVhZGVyIHJlc3BvbnNpdmVuZXNzLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAjc3AtcHJpbWFyeS1uYXYgPiAubmF2X21lbnUgeyBkaXNwbGF5IDogbm9uZTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICNzcC1wcmltYXJ5LW5hdiA+ICNzcC1tb2JpbGUtbmF2LXRyaWdnZXIgeyBkaXNwbGF5IDogbm9uZTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgI3NwLWhlYWRlciB7IHBhZGRpbmcgOiAxMHB4IDE1cHggIWltcG9ydGFudDsgfVxuICAjc3AtaGVhZGVyLWlubmVyID4gLmJyYW5kLWxvZ28geyBmb250LXNpemUgOiAxLjZyZW0gIWltcG9ydGFudDsgcGFkZGluZy1yaWdodCA6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlOyB9XG4gICNzcC1oZWFkZXItaW5uZXIgPiAuaGVhZGVyLWV4dHJhcyB7IGRpc3BsYXkgOiBub25lOyB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFNpdGUgZm9vdGVyIHN0eWxlcy4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiNzcC1mb290ZXItc2l6aW5nLWhlbHBlciB7XG4gIGRpc3BsYXkgOiBub25lO1xufVxuXG4jc3AtZm9vdGVyIHtcbiAgYmFja2dyb3VuZCA6ICMyMjI7XG4gIHdpZHRoICAgICAgOiAxMDAlO1xuXG4gICYuc3AtZm9vdGVyLWZpeGVkIHtcbiAgICBwb3NpdGlvbiA6IGZpeGVkO1xuICAgIGJvdHRvbSAgIDogMDsgbGVmdCA6IDA7XG5cbiAgICAmICsgI3NwLWZvb3Rlci1zaXppbmctaGVscGVyIHtcbiAgICAgIGRpc3BsYXkgOiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQgIDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0IDogMjVweDtcbiAgICAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0ICA6IC0yNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0IDogLTI1cHg7XG4gICAgICBbY2xhc3MqPSdjb2wtJ10ge1xuICAgICAgICBwYWRkaW5nLWxlZnQgIDogMjVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodCA6IDI1cHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkgeyBwYWRkaW5nLXRvcCA6IDI1cHg7IHBhZGRpbmctYm90dG9tIDogMjVweDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jc3AtZm9vdGVyID4gLnNwLW1haW4tZm9vdGVyIHtcbiAgcG9zaXRpb24gICAgICAgOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3AgICAgOiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b20gOiAxMDBweDtcbiAgYm9yZGVyLWJvdHRvbSAgOiAxcHggc29saWQgIzMzMztcbiAgY29sb3IgICAgICAgICAgOiAjZmZmO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkgeyBwYWRkaW5nLXRvcCA6IDgwcHg7IHBhZGRpbmctYm90dG9tIDogODBweDsgdGV4dC1hbGlnbiA6IGNlbnRlciB9XG5cbiAgLnRpdGxlLWJsb2NrIGg0IHsgY29sb3IgOiAjZmZmOyB9XG5cbiAgLnNvY2xpbmstYmxvY2sge1xuICAgIHVsIHtcbiAgICAgIHBhZGRpbmcgICAgICAgOiAwcHg7XG4gICAgICBtYXJnaW4tdG9wICAgIDogMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b20gOiAwO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5ICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaXN0LXN0eWxlICAgIDogbm9uZTtcbiAgICAgICAgcGFkZGluZy1yaWdodCA6IDIwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yICAgICAgICAgOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDogNTAlO1xuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgOiAyM3B4O1xuICAgICAgICAgIGRpc3BsYXkgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbiAgICA6IGNlbnRlcjtcbiAgICAgICAgICB0cmFuc2l0aW9uICAgIDogYWxsIC4zcyBsaW5lYXI7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvciAgICAgIDogI2ZmZjtcbiAgICAgICAgICAgIHRyYW5zaXRpb24gOiBhbGwgLjNzIGxpbmVhcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudHdpdHRlci1ibG9jayB7XG4gICAgdWwgeyBwYWRkaW5nLWxlZnQgOiA1MHB4OyBtYXJnaW4gOiAwO1xuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlIDogbm9uZTsgcGFkZGluZy1ib3R0b20gOiAxLjNyZW07XG4gICAgICAgICY6bGFzdC1jaGlsZCB7IHBhZGRpbmctYm90dG9tIDogMDsgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudCAgICAgICAgICAgICAgICAgOiAnXFxmMjQyJztcbiAgICAgICAgICBmb250LWZhbWlseSAgICAgICAgICAgICA6ICdzcC10aGVtZS1pY29ucyc7XG4gICAgICAgICAgY29sb3IgICAgICAgICAgICAgICAgICAgOiAjYzNhYzZkO1xuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgICAgICAgICAgIDogMzBweDtcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nICA6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nIDogZ3JheXNjYWxlO1xuICAgICAgICAgIHRvcCAgICAgICAgICAgICAgICAgICAgIDogNXB4O1xuICAgICAgICAgIGRpc3BsYXkgICAgICAgICAgICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uICAgICAgICAgICAgICAgIDogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0ICAgICAgICAgICAgOiAyMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgICAgICAgICAgIDogMTtcbiAgICAgICAgICBoZWlnaHQgICAgICAgICAgICAgICAgICA6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQgICAgICAgICAgICAgOiAtNTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnN0YWdyYW0tYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0IDogLTVweDtcblxuICAgIHVsIHsgcGFkZGluZyA6IDA7IG1hcmdpbiA6IDA7XG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGUgOiBub25lO1xuICAgICAgICBmbG9hdCAgICAgIDogbGVmdDtcbiAgICAgICAgd2lkdGggICAgICA6IDI1JTtcbiAgICAgICAgcGFkZGluZyAgICA6IDVweDtcbiAgICAgICAgaW1nIHsgbWF4LXdpZHRoIDogMTAwJTsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGEgeyBkaXNwbGF5IDogaW5saW5lLWJsb2NrOyB0cmFuc2l0aW9uLXByb3BlcnR5IDogb3BhY2l0eTsgfVxuICAgIGE6aG92ZXIgeyBvcGFjaXR5IDogMC42OyB9XG4gIH1cbn1cblxuI3NwLWZvb3RlciA+IC5zcC1lbmQtZm9vdGVyIHtcbiAgcG9zaXRpb24gICAgOiByZWxhdGl2ZTtcbiAgcGFkZGluZyAgICAgOiAyNXB4IDA7XG4gIGNvbG9yICAgICAgIDogI2ZmZjtcbiAgZm9udC1zaXplICAgOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0IDogMTtcblxuICA+IC5jb250YWluZXIge1xuICAgIGRpc3BsYXkgICAgIDogZmxleDtcbiAgICBhbGlnbi1pdGVtcyA6IGNlbnRlcjtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yIDogI2ZmZjtcbiAgICAmOmhvdmVyIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuICB9XG5cbiAgLm1lbnUtYmxvY2sge1xuICAgIG1hcmdpbi1sZWZ0IDogYXV0bztcblxuICAgIHVsIHsgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpOyB9XG4gICAgdWwgbGkge1xuICAgICAgZGlzcGxheSA6IGlubGluZTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQgOiAnfCc7XG4gICAgICAgIHBhZGRpbmcgOiAwIDEwcHg7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7IGRpc3BsYXkgOiBub25lIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICB0ZXh0LWFsaWduIDogY2VudGVyO1xuICAgID4gLmNvbnRhaW5lciB7IGZsZXgtd3JhcCA6IHdyYXA7IH1cbiAgICAuZW5kLWZvb3Rlci1ibG9jayB7IGZsZXgtYmFzaXMgOiAxMDAlOyB9XG4gICAgLmVuZC1mb290ZXItYmxvY2sgKyAuZW5kLWZvb3Rlci1ibG9jayB7IHBhZGRpbmctdG9wIDogMjBweDsgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFBhZ2UgaW50cm8gYmxvY2suICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gaW50cm8gY29tbW9ucyAqL1xuLnNwLWludHJvIHtcbiAgcG9zaXRpb24gICAgOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cgICAgOiBoaWRkZW47XG4gIHRleHQtYWxpZ24gIDogY2VudGVyO1xuICB3aWR0aCAgICAgICA6IDEwMCU7XG4gIGNvbG9yICAgICAgIDogI2ZmZjtcbiAgdGV4dC1zaGFkb3cgOiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB1c2VyLXNlbGVjdCA6IG5vbmU7XG5cbiAgLmludHJvLWJnIHtcbiAgICBAaW5jbHVkZSBvdmVybGF5LWJhc2UoKTtcbiAgICBAaW5jbHVkZSBjb3Zlci1iZy1iYXNlKCk7XG4gICAgei1pbmRleCA6IDEwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKCk7XG4gICAgICBiYWNrZ3JvdW5kIDogIzAwMDtcbiAgICAgIG9wYWNpdHkgICAgOiAwLjU1O1xuICAgICAgY29udGVudCAgICA6ICcnO1xuICAgICAgei1pbmRleCAgICA6IDE1O1xuICAgIH1cblxuICAgICYubm8tb3ZlcmxheTpiZWZvcmUge1xuICAgICAgZGlzcGxheSA6IG5vbmU7XG4gICAgfVxuXG4gICAgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgpO1xuICAgICAgd2lkdGggOiAxMDAlO1xuICAgICAgaGVpZ2h0IDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaW50cm8tZG90dGVkLWJnIHtcbiAgICBAaW5jbHVkZSBvdmVybGF5LWJhc2UoKTtcbiAgICBiYWNrZ3JvdW5kIDogdXJsKCcuLi9pbWFnZXMvZG90dGVkLWJnLXBhdHRlcm4ucG5nJyk7XG4gICAgei1pbmRleCAgICA6IDE3O1xuICB9XG5cbiAgLmludHJvLWJvZHkge1xuICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgei1pbmRleCAgOiAyMDtcbiAgICBwYWRkaW5nICA6IDUwcHggMjVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykgeyBwYWRkaW5nIDogNTBweCAxNXB4OyB9XG5cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBhIHsgY29sb3IgOiAjZmZmOyB9XG5cbiAgICAuYnRuLXdoaXRlIHtcbiAgICAgIGNvbG9yIDogIzMzMztcbiAgICB9XG5cbiAgICAuYnRuLWJvcmRlciB7XG4gICAgICBib3JkZXIgOiAycHggc29saWQgICNmZmY7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IzMzMztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdC1pbmxpbmUge1xuICAgICAgbWFyZ2luOiAwIC0xMHB4IC0yMHB4O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoICAgICAgICAgOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoICAgICA6IDcwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQgICA6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQgIDogYXV0bztcbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b20gOiAwOyB9XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICB0ZXh0LXNoYWRvdyAgIDogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXMgOiAzMHB4O1xuICAgICAgcGFkZGluZyAgICAgICA6IDhweCAyMnB4O1xuICAgICAgYm94LXNoYWRvdyAgICA6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuXG4gICAgLnNwLWludHJvLWltYWdlLWljb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgIH1cblxuICAgIC5pY29uLWJpZyB7XG4gICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgICBsaW5lLWhlaWdodDogOTBweDtcbiAgICB9XG4gIH1cblxuICAmLmZ1bGxzY3JlZW4ge1xuICAgIGhlaWdodCA6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDQ1MHB4O1xuICAgIC5pbnRyby1ib2R5IHtcbiAgICAgIHBhZGRpbmcgIDogNzVweCAyNXB4IDc1cHggMjVweDtcbiAgICB9XG4gIH1cblxuICAmLmtlbmJ1cm5zIC5pbnRyby1iZyB7XG4gICAgYW5pbWF0aW9uICAgICAgICAgICAgICAgICA6IHNwLWludHJvLWtlbmJ1cm5zIDMwcztcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50IDogMTtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlICAgICAgIDogZm9yd2FyZHM7XG4gIH1cblxuICAmOm5vdCguZnVsbHNjcmVlbik6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nLXRvcDogNTBweDsgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwLWludHJvLWtlbmJ1cm5zIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybSA6IHNjYWxlKDEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtIDogc2NhbGUoMS4xNSk7XG4gIH1cbn1cblxuLnNwLWludHJvIC5pbnRyby10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0ICAgIDogMTtcbiAgZm9udC1mYW1pbHkgICAgOiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIC8vbWFyZ2luLWJvdHRvbSAgOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQgICAgOiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIHRleHQtdHJhbnNmb3JtIDogY2FwaXRhbGl6ZTtcbiAgbWFyZ2luLWJvdHRvbSAgOiAyLjVyZW07XG5cbiAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbSA6IDA7IH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICYuaW50cm8tdGl0bGUtI3skaX0geyBmb250LXNpemUgOiAoNC4zcmVtIC8gJGkpOyB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgJi5pbnRyby10aXRsZS0jeyRpfSB7IGZvbnQtc2l6ZSA6ICg0cmVtIC8gJGkgLyAxLjI1KTsgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAmLmludHJvLXRpdGxlLSN7JGl9IHsgZm9udC1zaXplIDogKDQuNXJlbSAvICRpIC8gMS41KTsgfVxuICAgIH1cbiAgfVxufVxuXG4uc3AtaW50cm8gLmludHJvLXJlZ3VsYXItdGV4dCB7XG4gIGxpbmUtaGVpZ2h0ICAgIDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtdHJhbnNmb3JtIDogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbSAgOiAyLjVyZW07XG59XG5cbi5zcC1pbnRybyAuc3Atc2Nyb2xsLWRvd24tY3RhIHtcbiAgcG9zaXRpb24gICA6IHJlbGF0aXZlO1xuICBkaXNwbGF5ICAgIDogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQgICAgIDogNDBweDtcbiAgd2lkdGggICAgICA6IDMwcHg7XG4gIG1hcmdpbi10b3AgOiAycmVtO1xuXG4gIGkgeyBmb250LXNpemUgOiA0MHB4OyBsaW5lLWhlaWdodCA6IDE7IH1cblxuICA+IHNwYW4ge1xuICAgIHBvc2l0aW9uICAgOiBhYnNvbHV0ZTtcbiAgICB0b3AgICAgICAgIDogMDtcbiAgICBsZWZ0ICAgICAgIDogMDsgd2lkdGggOiAxMDAlO1xuICAgIHRleHQtYWxpZ24gOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uICA6IHNwLXNjcm9sbGRvd24tYXJyb3cgMi41cyBpbmZpbml0ZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIG1hcmdpbi10b3AgOiAxcmVtO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Atc2Nyb2xsZG93bi1hcnJvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAzMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGltYWdlIGludHJvICovXG4uc3AtaW50cm8uc3AtaW50cm8taW1hZ2Uge1xuICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xuICBhbGlnbi1pdGVtcyAgICAgOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudCA6IGNlbnRlcjtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gY2Fyb3VzZWwgaW50cm8gKi9cbi5zcC1pbnRyby5zcC1pbnRyby1jYXJvdXNlbCB7XG4gIC5zbGlkZXItaXRlbSB7XG4gICAgcG9zaXRpb24gICAgICAgIDogcmVsYXRpdmU7XG4gICAgZGlzcGxheSAgICAgICAgIDogZmxleDtcbiAgICBhbGlnbi1pdGVtcyAgICAgOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50IDogY2VudGVyO1xuXG4gICAgLy8gZm9yIHRoZSBzbGlkZSB0cmFuc2l0aW9uOlxuICAgIC8vIG9wYWNpdHkgICAgICAgICA6IDA7XG4gICAgLy8gdHJhbnNpdGlvbiAgICAgIDogb3BhY2l0eSAxcztcbiAgICAvLyAmLnNsaWNrLWFjdGl2ZSB7IG9wYWNpdHkgOiAxIH1cbiAgfVxuXG4gICYuZnVsbHNjcmVlbiAuc2xpZGVyLWl0ZW0ge1xuICAgIGhlaWdodCA6IDEwMHZoOyBtaW4taGVpZ2h0IDogNDUwcHg7XG4gIH1cblxuICAuc2xpY2stYXJyb3cge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXM7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7IGRpc3BsYXkgOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIC5zbGljay1kb3RzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtkaXNwbGF5IDogbm9uZSAhaW1wb3J0YW50O31cbiAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSB2aWRlbyBpbnRybyAqL1xuLnNwLWludHJvLnNwLWludHJvLXZpZGVvIHtcbiAgcG9zaXRpb24gICAgICAgIDogcmVsYXRpdmU7XG4gIGRpc3BsYXkgICAgICAgICA6IGZsZXg7XG4gIGFsaWduLWl0ZW1zICAgICA6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50IDogY2VudGVyO1xuXG4gID4gLmludHJvLWJvZHkgeyB6LWluZGV4IDogMzA7IH1cblxuICA+IC52aWRlby1jb250YWluZXIsID4gLnZpZGVvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgQGluY2x1ZGUgb3ZlcmxheS1iYXNlKCk7XG4gIH1cblxuICA+IC52aWRlby1jb250YWluZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQgOiAjMDAwO1xuICAgIG9wYWNpdHkgICAgOiAwLjU7XG4gICAgY29udGVudCAgICA6ICcnO1xuICAgIHotaW5kZXggICAgOiAxNTtcbiAgfVxuXG4gID4gLnZpZGVvLWNvbnRhaW5lciA+IC52aWRlby1wbGFjZWhvbGRlciB7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgpO1xuICAgIHdpZHRoICAgIDogMTAwJTtcbiAgICBoZWlnaHQgICA6IDEwMCU7XG4gICAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4ICA6IDEwO1xuICB9XG5cbiAgPiAudmlkZW8tY29udGFpbmVyID4gLnZpZGVvLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbiAgICA6IGFic29sdXRlO1xuICAgIGJvdHRvbSAgICAgIDogMjVweDtcbiAgICByaWdodCAgICAgICA6IDMwcHg7XG4gICAgbWFyZ2luICAgICAgOiAwIC0xMHB4O1xuICAgIGxpbmUtaGVpZ2h0IDogMTtcbiAgICB6LWluZGV4ICAgICA6IDIwO1xuICAgIGRpc3BsYXkgICAgIDogbm9uZTtcblxuICAgID4gYSB7XG4gICAgICBkaXNwbGF5ICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgICBtaW4td2lkdGggOiA0NnB4O1xuICAgICAgY29sb3IgICAgIDogaW5oZXJpdDtcbiAgICAgIG9wYWNpdHkgICA6IDAuNTtcbiAgICAgIGZvbnQtc2l6ZSA6IDI4cHg7XG4gICAgICBwYWRkaW5nICAgOiA1cHggMTBweDtcblxuICAgICAgJjpob3ZlciB7IG9wYWNpdHkgOiAxOyB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7IGRpc3BsYXkgOiBub25lOyB9XG4gIH1cbn0iLCJcbi8qIEFib3V0IFVzICovXG4jc3AtYWJvdXQgcCB7bWFyZ2luLWJvdHRvbTogMHB4O31cbnNwYW4uc3Atc2lnbmF0dXJlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjNweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiAnU2hhZG93cyBJbnRvIExpZ2h0JywgY3Vyc2l2ZTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtM2RlZykgIWltcG9ydGFudDtcbn0iLCIvKiBTZXJ2aWNlcyAqL1xuXG4uc3Atc2VydmljZXMtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbSA6IC01MHB4O1xuXG4gIC5zcC1zZXJ2aWNlcy1ibG9jayB7IG1hcmdpbi1ib3R0b20gOiA1MHB4OyB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgbWFyZ2luLWJvdHRvbSA6IC0zMHB4O1xuICAgIC5zcC1zZXJ2aWNlcy1ibG9jayB7IG1hcmdpbi1ib3R0b20gOiAzMHB4OyB9XG4gIH1cbn1cblxuLnNwLXNlcnZpY2VzLWJsb2NrIHtcbiAgLmljb24geyBmb250LXNpemUgOiA2NXB4OyBtYXJnaW4tYm90dG9tIDogMXJlbTsgY29sb3IgOiAjMTExOyB9XG4gIC50aXRsZSBoNCB7IGZvbnQtc2l6ZSA6IDE5cHg7IG1hcmdpbi1ib3R0b20gOiAxcmVtIH1cbiAgLnRleHQgeyBtYXJnaW4tYm90dG9tIDogMDsgfVxufSIsIi8qIFRlYW0gKi9cblxuLnNwLXRlYW0tYmxvY2sge1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHQuaW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMTUpO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzIGxpbmVhcjtcblx0XHR9XG5cdFx0aW1nIHtcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHR9XG5cdFx0LnNvYy1saW5rcyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206MDtcblx0XHRcdGxlZnQ6MDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0dWwge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0ICAgIHBhZGRpbmc6IDA7XG5cdFx0XHQgICAgbWFyZ2luOiAwO1xuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTsgXG5cdFx0XHRcdFx0bWFyZ2luOiAwIDEwcHg7XG4gICAgXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xuICAgIFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzIGxpbmVhcjtcbiAgICBcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwyMHB4LDApO1xuICAgIFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRjb2xvcjojZmZmO1xuXHRcdFx0XHRcdFx0Jjpob3ZlciB7b3BhY2l0eTogMC43NTt9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC50aXRsZSBoNCB7Zm9udC1zaXplOiAyMXB4O21hcmdpbi1ib3R0b206IDAuNXJlbX1cblx0LnR5cGUge2NvbG9yOiM5OTk7fVxuXHQmOmhvdmVyIC5pbWFnZSB7XG5cdFx0dWwgbGkge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNXM7XG5cdFx0XHQmOmZpcnN0LWNoaWxkIHt0cmFuc2l0aW9uLWRlbGF5OiAwLjE1czt9XG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7dHJhbnNpdGlvbi1kZWxheTogMC4yMHM7fVxuXHRcdFx0JjpudGgtY2hpbGQoMykge3RyYW5zaXRpb24tZGVsYXk6IDAuMjVzO31cblx0XHRcdCY6bnRoLWNoaWxkKDQpIHt0cmFuc2l0aW9uLWRlbGF5OiAwLjMwczt9XG5cdFx0fVxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG5cdFx0fVxuXHR9XG59XG5cblxuXG5cbiAgICAgIFxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiIsIi8qIEZ1biBGYWN0ICovXG5cbi5zcC1hbmltYXRlLW51bWJlcnMge1xuXHQmLndoaXRlIHtcblx0XHRoMiB7Y29sb3I6I2ZmZjt9XG5cdFx0cCB7Y29sb3I6I2ZmZjt9XG5cdH1cbiAgXHRoMiB7XG4gIFx0XHRmb250LXNpemU6IDU1cHg7XG4gIFx0XHRsaW5lLWhlaWdodDogOTBweDtcbiAgXHRcdGxldHRlci1zcGFjaW5nOiA3cHg7XG4gIFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuICBcdH1cbiAgXHRwIHtcbiAgXHRcdGZvbnQtc2l6ZTogMjFweDtcbiAgXHRcdG1hcmdpbi1ib3R0b206IDA7XG4gIFx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBQb3J0Zm9saW8gbGlzdGluZy4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5zcC1wb3J0Zm9saW8tYmxvY2sge1xuICBvdmVyZmxvdyA6IGhpZGRlbjtcbiAgd2lkdGggICAgOiAxMDAlO1xuXG4gIC5zcC1wb3J0Zm9saW8tc29ydGluZyB7XG4gICAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuICAgIG1hcmdpbi1ib3R0b20gOiA1MHB4O1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheSA6IGlubGluZS1ibG9jaztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQgICA6ICcvJztcbiAgICAgICAgcGFkZGluZyAgIDogMCAxcmVtO1xuICAgICAgICBmb250LXNpemUgOiAxNXB4O1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIgeyBjb250ZW50IDogbm9uZTsgfVxuICAgICAgYSB7IGNvbG9yIDogIzMzMzsgfVxuICAgICAgJi5hY3RpdmUgPiBhIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgbWFyZ2luLWxlZnQgIDogLTFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQgOiAtMXJlbTtcblxuICAgICAgbGk6YWZ0ZXIgeyBkaXNwbGF5IDogbm9uZTsgfVxuICAgICAgbGkgeyBwYWRkaW5nIDogMCAxcmVtOyB9XG4gICAgfVxuICB9XG5cbiAgJi5pbm5lciB7XG4gICAgLnNwLXBvcnRmb2xpby1zb3J0aW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b20gOiAxMDBweDtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4gOiAwIDEwcHggMTBweCAxMHB4O1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgZGlzcGxheSAgICAgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDogNHB4O1xuICAgICAgICAgIGJhY2tncm91bmQgICAgOiAjZWVlO1xuICAgICAgICAgIHRyYW5zaXRpb24gICAgOiBiYWNrZ3JvdW5kIDAuMjVzIGxpbmVhcjtcbiAgICAgICAgICBwYWRkaW5nICAgICAgIDogNnB4IDE4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyID4gYSxcbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7Y29udGVudDogbm9uZTt9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNwLXBvcnRmb2xpby1pdGVtcyB7XG4gICAgICBtYXJnaW4tbGVmdCAgOiAtMzBweDtcbiAgICAgIG1hcmdpbi1yaWdodCA6IC0zMHB4O1xuICAgICAgd2lkdGggICAgICAgIDogYXV0bztcblxuICAgICAgW2NsYXNzXj1cImNvbC1cIl0sIFtjbGFzcyo9XCIgY29sLVwiXSB7IHBhZGRpbmctbGVmdCA6IDE1cHg7IHBhZGRpbmctcmlnaHQgOiAxNXB4OyB9XG5cbiAgICAgIC5zcC1wb3J0Zm9saW8taXRlbSB7XG4gICAgICAgIHBhZGRpbmcgICAgICAgOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tIDogMzBweDtcbiAgICAgICAgJi54MiBhIHsgaGVpZ2h0IDogNzA4cHg7IH1cbiAgICAgICAgYSB7IGhlaWdodCA6IDM0MHB4OyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zcC1wb3J0Zm9saW8taXRlbXMge1xuICBtYXJnaW4tbGVmdCAgOiAtMTdweDtcbiAgbWFyZ2luLXJpZ2h0IDogLTE3cHg7XG4gIHdpZHRoICAgICAgICA6IGF1dG87XG4gIFtjbGFzc149XCJjb2wtXCJdLCBbY2xhc3MqPVwiIGNvbC1cIl0geyBwYWRkaW5nIDogMDsgfVxufVxuXG4uc3AtcG9ydGZvbGlvLWl0ZW0ge1xuICBwYWRkaW5nIDogMnB4O1xuICAmLngyIGEgeyBoZWlnaHQgOiA3MDRweDsgfVxuICBhIHtcbiAgICBAaW5jbHVkZSBjb3Zlci1iZy1iYXNlO1xuICAgIHdpZHRoICAgICAgICAgICAgICAgOiAxMDAlO1xuICAgIGhlaWdodCAgICAgICAgICAgICAgOiAzNTBweDtcbiAgICBwb3NpdGlvbiAgICAgICAgICAgIDogcmVsYXRpdmU7XG4gICAgZGlzcGxheSAgICAgICAgICAgICA6IGJsb2NrO1xuICAgIGN1cnNvciAgICAgICAgICAgICAgOiBwb2ludGVyO1xuXG4gICAgLnBvcnRmb2xpby1ob3ZlciB7XG4gICAgICB3aWR0aCAgICAgIDogMTAwJTtcbiAgICAgIGhlaWdodCAgICAgOiAxMDAlO1xuICAgICAgcG9zaXRpb24gICA6IGFic29sdXRlO1xuICAgICAgei1pbmRleCAgICA6IDE7XG4gICAgICB0b3AgICAgICAgIDogMDsgbGVmdCA6IDA7IGJvdHRvbSA6IDA7IHJpZ2h0IDogMDtcbiAgICAgIGJhY2tncm91bmQgOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICB0cmFuc2l0aW9uIDogYWxsIDAuMjVzO1xuICAgICAgcGFkZGluZyAgICA6IDUwcHggNTBweCAwIDUwcHg7XG5cbiAgICAgIGg1IHtcbiAgICAgICAgY29sb3IgICAgICAgICA6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZSAgICAgOiAxLjRyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b20gOiAwO1xuICAgICAgICB0ZXh0LWFsaWduICAgIDogbGVmdDtcbiAgICAgICAgcG9zaXRpb24gICAgICA6IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICAgICAgICB0cmFuc2l0aW9uICAgIDogYWxsIDAuNXM7XG4gICAgICAgIG9wYWNpdHkgICAgICAgOiAwO1xuICAgICAgfVxuXG4gICAgICBzcGFuLmRlc2Mge1xuICAgICAgICBjb2xvciAgICAgIDogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbiA6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uICAgOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheSAgICA6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wIDogMjBweDtcbiAgICAgICAgd2lkdGggICAgICA6IDcwJTtcbiAgICAgICAgdHJhbnNmb3JtICA6IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgICAgICAgdHJhbnNpdGlvbiA6IGFsbCAwLjY1cztcbiAgICAgICAgb3BhY2l0eSAgICA6IDA7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ubGluayB7XG4gICAgICAgIGNvbG9yICAgICAgIDogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplICAgOiAzLjNyZW07XG4gICAgICAgIHRleHQtYWxpZ24gIDogbGVmdDtcbiAgICAgICAgcG9zaXRpb24gICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tICAgICAgOiAzMHB4O1xuICAgICAgICBsZWZ0ICAgICAgICA6IDUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0IDogMTtcbiAgICAgICAgdHJhbnNmb3JtICAgOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gICAgICAgIHRyYW5zaXRpb24gIDogYWxsIDAuNzVzO1xuICAgICAgICBvcGFjaXR5ICAgICA6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciAucG9ydGZvbGlvLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kIDogcmdiYSgwLCAwLCAwLCAuNjUpO1xuXG4gICAgaDUge1xuICAgICAgb3BhY2l0eSAgICAgICAgICA6IDE7XG4gICAgICB0cmFuc2Zvcm0gICAgICAgIDogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5IDogMHM7XG4gICAgfVxuICAgIHNwYW4uZGVzYyB7XG4gICAgICBvcGFjaXR5ICAgICAgICAgIDogMTtcbiAgICAgIHRyYW5zZm9ybSAgICAgICAgOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXkgOiAwLjJzO1xuICAgIH1cbiAgICBzcGFuLmxpbmsge1xuICAgICAgb3BhY2l0eSAgICAgICAgICA6IDE7XG4gICAgICB0cmFuc2Zvcm0gICAgICAgIDogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5IDogMC40cztcbiAgICB9XG4gIH1cblxuICBpbWcgeyBtYXgtd2lkdGggOiAxMDAlOyBoZWlnaHQgOiBhdXRvOyB9XG59XG4uc3AtcG9ydGZvbGlvLWxpc3Qge1xuICAmLnVubGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luOiAwIDIwcHh9XG4gICAgfVxuICB9XG4gIHVsIHtwYWRkaW5nOiAwO21hcmdpbjogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW46IDA7fVxuICAgICAgaSB7Zm9udC1zaXplOiAzMHB4O3BhZGRpbmctcmlnaHQ6IDhweDtwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDo1cHg7fVxuICAgIH1cbiAgfVxufVxuLnNwLXBvcnRmb2xpby1iYXItbGVmdCB7XG4gIGEge1xuICAgIGNvbG9yOiMzMzM7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgbGluZWFyO31cbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICdzcC10aGVtZS1pY29ucyc7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBjb2xvcjojMzMzO1xuICAgICAgY29udGVudDogJ1xcZjNkMic7XG4gICAgICB0b3A6MnB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgbGluZWFyO1xuICAgIH1cbiAgfVxufVxuLnNwLXBvcnRmb2xpby1iYXItcmlnaHQge1xuICBhIHtcbiAgICBjb2xvcjojMzMzO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgbGluZWFyO31cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBmb250LWZhbWlseTogJ3NwLXRoZW1lLWljb25zJztcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGNvbG9yOiMzMzM7XG4gICAgICBjb250ZW50OiAnXFxmM2QzJztcbiAgICAgIHRvcDoycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjtcbiAgICB9XG4gIH1cbn1cbi5zcC1wb3J0Zm9saW8tYmFyLWNlbnRlciB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGNvbG9yOiMzMzM7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICB9XG59XG4jc3Atc2luZ2xlLXBvcnRmb2xpbyB7XG4gIC5zcC1zaW5nbGUtaGVhZGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGgxIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDowO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogJ3NwLXRoZW1lLWljb25zJztcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgY29udGVudDogJ1xcZjNkNic7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAzcHg7XG4gICAgICB9XG4gICAgfVxuICB9ICBcbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxuICAuc3Atc2luZ2xlLXBvcnRmb2xpby1zb2Mge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgdWwge1xuICAgICAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuICAgICAgZm9udC1zaXplICA6IDA7XG4gICAgICBtYXgtd2lkdGggIDogbm9uZTtcblxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5IDogaW5saW5lO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemUgOiAxOHB4O1xuICAgICAgICAgIGNvbG9yICAgICA6ICMzMzM7XG4gICAgICAgICAgcGFkZGluZyAgIDogNXB4IDE0cHg7XG4gICAgICAgICAgJjpob3ZlciB7IGNvbG9yIDogJGJyYW5kLXByaW1hcnk7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vKiBBbmltYXRlZCBDaXJjbGUgKi9cbi5zcC1jaXJjbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDE1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEyNXB4O1xuICBwYWRkaW5nLXRvcDogNDJweDtcbiAgaGVpZ2h0OiAxMjVweDtcbiAgY2FudmFzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgc3BhbjphZnRlciB7XG4gICAgY29udGVudDogJyUnO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjFlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHttYXJnaW4tdG9wOiAxNXB4O21hcmdpbi1ib3R0b206IDA7fVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHttYXJnaW4tYm90dG9tOiAxNXB4O31cbn1cbi5zcC1jaXJjbGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7I3NwLW1hZ2ljIC50ZXh0LXJpZ2h0IHt0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudH19XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogVGVzdGltb25pYWxzIHNsaWRlci4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5zcC1zbGljay10ZXN0aW1vbmlhbHMgLnNsaWNrLWRvdHMge1xuICBtYXJnaW4tdG9wIDogMTVweDtcbn1cblxuLnNwLXRlc3RpbW9uaWFscy1ibG9jayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAudGV4dCB7IG1hcmdpbi1ib3R0b20gOiAwOyB9XG4gIC5waG90byBpbWcgeyBib3JkZXItcmFkaXVzIDogNTAlOyB3aWR0aCA6IDgwcHg7IGhlaWdodCA6IDgwcHg7IG1hcmdpbi10b3AgOiAycmVtOyB9XG4gIC5uYW1lIHsgbWFyZ2luLWJvdHRvbSA6IDFyZW07IG1hcmdpbi10b3AgOiAycmVtOyB9XG4gIC5uYW1lOmVtcHR5IHsgZGlzcGxheSA6IG5vbmU7IH1cbn0iLCIvKiBDb250YWN0cyAqL1xuXG4uc3AtY29udGFjdHMtbGlzdCB7XG4gIHVsIHtwYWRkaW5nOiAwO21hcmdpbjogMDtcbiAgICBsaSB7bGlzdC1zdHlsZTogbm9uZTttYXJnaW4tYm90dG9tOiAwLjQ1cmVtO1xuICAgICAgaSB7Zm9udC1zaXplOiAzMHB4O3BhZGRpbmctcmlnaHQ6IDhweDtwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDo1cHg7fVxuICAgIH1cbiAgfVxufSIsIi8qIE90aGVyIFN0eWxlcyAqL1xuXG4uc3Atc2xpY2stY2xpZW50cyAuaXRlbSB7XG4gIG9wYWNpdHkgICAgOiAwLjY1O1xuICB0cmFuc2l0aW9uIDogb3BhY2l0eSAwLjI1cyBsaW5lYXI7XG4gIHBhZGRpbmcgICAgOiAwIDE1cHg7XG4gIHRleHQtYWxpZ24gOiBjZW50ZXI7XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGggOiAxMDAlO1xuICAgIGhlaWdodCAgICA6IGF1dG87XG4gIH1cblxuICAmOmhvdmVyIHsgb3BhY2l0eSA6IDE7IH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHsgb3BhY2l0eTogMTsgfVxufSIsIi8qIFF1b3RlICovXG5cbiNzcC1xdW90ZSB7XG5cdC5zcC1zaWduYXR1cmUge2ZvbnQtc2l6ZTogMzBweDt9XG59XG4uc3AtcXVvdGUge1xuXHRmb250LXNpemU6IDE5cHg7XG5cdCY6YmVmb3JlLCAmOmFmdGVyIHtcblx0XHRmb250LWZhbWlseTogXCJzcC10aGVtZS1pY29uc1wiO1xuXHRcdGZvbnQtc2l6ZTogMjNweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogJ1xcZTgwZic7XG5cdFx0bGVmdDogMTVweDtcblx0XHR0b3A6IDdweDtcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJ1xcZTgwZSc7XG5cdFx0cmlnaHQ6IDE1cHg7XG5cdH1cbn1cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFRoZW1lIHByb2dyZXNzIGJhcnMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtcHJvZ3Jlc3MtYmFyIHtcbiAgbWFyZ2luIDogMXJlbSAwIDJyZW0gMDtcblxuICAudGl0bGUge1xuICAgIGRpc3BsYXkgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGggICAgICAgICA6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbSA6IDAuNXJlbTtcblxuICAgIHNwYW4ge1xuICAgICAgZmxvYXQgICAgIDogcmlnaHQ7XG4gICAgICBmb250LXNpemUgOiAxNXB4O1xuICAgICAgcG9zaXRpb24gIDogcmVsYXRpdmU7XG4gICAgICB0b3AgICAgICAgOiAycHg7XG4gICAgfVxuICB9XG5cbiAgLnByb2dyZXNzLWJhciB7XG4gICAgdHJhbnNpdGlvbiA6IG5vbmU7XG4gIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogUHJpY2luZyB0YWJsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ucHJpY2luZ190YWJsZXNfd3JhcCB7XG4gIGJhY2tncm91bmQgOiAjZmZmO1xuICB0ZXh0LWFsaWduIDogY2VudGVyO1xuICBib3JkZXIgICAgIDogMXB4IHNvbGlkICNlZWU7XG4gIHBvc2l0aW9uICAgOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cgICA6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbiA6IGJveC1zaGFkb3cgMC41cyBlYXNlO1xuXG4gID4gLnByaWNpbmdfdGFibGVzX25hbWUge1xuICAgIHRleHQtYWxpZ24gICAgOiBjZW50ZXI7XG4gICAgZm9udC1zaXplICAgICA6IDI5cHg7XG4gICAgY29sb3IgICAgICAgICA6ICRicmFuZC1wcmltYXJ5O1xuICAgIHBhZGRpbmcgICAgICAgOiAxcmVtIDA7XG4gICAgZm9udC13ZWlnaHQgICA6IDYwMDtcbiAgICBib3JkZXItYm90dG9tIDogMXB4IHNvbGlkICNlZWU7XG4gIH1cblxuICA+IC5wcmljaW5nX3RhYmxlc19wcmljZSB7XG4gICAgdGV4dC1hbGlnbiAgICA6IGNlbnRlcjtcbiAgICBmb250LXNpemUgICAgIDogNjVweDtcbiAgICBwYWRkaW5nICAgICAgIDogMXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b20gOiAxcHggc29saWQgI2VlZTtcbiAgICBtYXJnaW4tYm90dG9tIDogMDtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3IgICAgIDogIzg4ODtcbiAgICAgIGZvbnQtc2l6ZSA6IDI3cHg7XG4gICAgICBwb3NpdGlvbiAgOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQgICAgICA6IC03cHg7XG4gICAgICB0b3AgICAgICAgOiAtMjlweDtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGNvbG9yICAgICAgIDogIzg4ODtcbiAgICAgIGZvbnQtc2l6ZSAgIDogMTRweDtcbiAgICAgIHBvc2l0aW9uICAgIDogcmVsYXRpdmU7XG4gICAgICB0b3AgICAgICAgICA6IDA7XG4gICAgICBmb250LXdlaWdodCA6IDMwMDtcbiAgICB9XG4gIH1cblxuICA+IC5wcmljaW5nX3RhYmxlc19kZXNjIHtcbiAgICBwYWRkaW5nICAgICAgIDogMjBweCAzMHB4O1xuICAgIGJvcmRlci1ib3R0b20gOiAxcHggc29saWQgI2VlZTtcbiAgICB0ZXh0LWFsaWduICAgIDogY2VudGVyO1xuXG4gICAgdWwge1xuICAgICAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXkgOiBibG9jaztcbiAgICAgICAgcGFkZGluZyA6IDEwcHggMDtcbiAgICAgICAgY29sb3IgICA6ICM4ODg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAucHJpY2luZ190YWJsZXNfYnV0dG9ucyB7XG4gICAgdGV4dC1hbGlnbiA6IGNlbnRlcjtcbiAgICBwYWRkaW5nICAgIDogMjBweCAzMHB4O1xuICAgIG1hcmdpbiAgICAgOiAwIC0xMHB4O1xuXG4gICAgPiBhLCA+IC5idG4sID4gLmJ0bi1ncm91cCB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbiA6IG1pZGRsZTtcbiAgICAgIG1hcmdpbiAgICAgICAgIDogMTBweDtcbiAgICB9XG4gIH1cblxuICAvLyBibG9jayBzdGF0ZXNcbiAgJi5mZWF0dXJlZCB7XG4gICAgYm94LXNoYWRvdyA6IDAgMTVweCA1MHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuICAgIC8vIGRpZmZlcmVudCBzaGFkb3c6XG4gICAgLy8gYm94LXNoYWRvdzogMCAyMHB4IDYwcHggcmdiYSgwLDAsMCwwLjE1KSwgMCAxMHB4IDEycHggcmdiYSgwLDAsMCwwLjEwKTtcblxuICAgID4gLnByaWNpbmdfdGFibGVzX25hbWUgeyBjb2xvciA6ICMzMzM7IH1cbiAgICA+IC5wcmljaW5nX3RhYmxlc19wcmljZSB7IGNvbG9yIDogJGJyYW5kLXByaW1hcnk7IH1cbiAgfVxuXG4gIC8vIHVuY29tbWVudCB0byBlbmFibGUgc2hhZG93IG9uIGhvdmVyXG4gIC8vICY6bm90KC5mZWF0dXJlZCk6aG92ZXIge1xuICAvLyAgICBib3gtc2hhZG93IDogMCAwIDMwcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAvLyB9XG59XG4jc3AtcHJpY2luZy10YWJsZXMtZmFxIHtcbiAgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBGQVEgcGFnZS4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jYXJkLnNwLWZhcS1jYXJkIHtcbiAgYm9yZGVyICAgICAgICA6IDFweCBzb2xpZCAjZWVlO1xuICBib3JkZXItcmFkaXVzIDogMDtcbiAgdGV4dC1hbGlnbiAgICA6IGxlZnQ7XG5cbiAgJiArIC5zcC1mYXEtY2FyZCB7XG4gICAgbWFyZ2luLXRvcCA6IDE1cHg7XG4gIH1cblxuICAvLyBxdWVzdGlvbiB0aXRsZVxuICA+IC5jYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZyAgICAgICAgICA6IDAuNXJlbSAxLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvciA6ICNmZmY7XG4gICAgY3Vyc29yICAgICAgICAgICA6IHBvaW50ZXI7XG4gICAgZGlzcGxheSAgICAgICAgICA6IGZsZXg7XG4gICAgYWxpZ24taXRlbXMgICAgICA6IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tICAgIDogbm9uZTtcblxuICAgID4gLmNhcmQtdGl0bGUge1xuICAgICAgZm9udC1zaXplICA6IDEuMXJlbTtcbiAgICAgIGNvbG9yICAgICAgOiAjMzMzO1xuICAgICAgZmxleCAgICAgICA6IDEgMSBhdXRvO1xuICAgICAgbWluLXdpZHRoICA6IDA7XG4gICAgICB0cmFuc2l0aW9uIDogY29sb3IgMC4yNXM7XG4gICAgICBtYXJnaW4gICAgIDogMTBweCAwO1xuICAgIH1cblxuICAgID4gLnRvZ2dsZS1pY29uIHtcbiAgICAgIGZsZXggICAgICAgIDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdCA6IDIwcHg7XG4gICAgICBjb2xvciAgICAgICA6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgbGluZS1oZWlnaHQgOiAxO1xuICAgICAgZm9udC1zaXplICAgOiA0MHB4O1xuICAgICAgd2lsbC1jaGFuZ2UgOiB0cmFuc2Zvcm07XG4gICAgICB0cmFuc2l0aW9uICA6IHRyYW5zZm9ybSAwLjI1cztcbiAgICB9XG5cbiAgICAmOmhvdmVyID4gLmNhcmQtdGl0bGUgeyBjb2xvciA6ICRicmFuZC1wcmltYXJ5OyB9XG4gIH1cblxuICAvLyBhbnN3ZXIgZm9yIHRoZSBjdXJyZW50IHF1ZXN0aW9uXG4gID4gLmNhcmQtY29udGVudHMge1xuICAgID4gLmNhcmQtY29udGVudHMtaW5uZXIge1xuICAgICAgYm9yZGVyLXRvcCA6IDFweCBzb2xpZCAjZWVlO1xuICAgICAgcGFkZGluZyAgICA6IDFyZW0gMS41cmVtO1xuICAgIH1cblxuICAgIHAgeyBtYXJnaW4tYm90dG9tIDogMXJlbTsgfVxuICAgIHA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b20gOiAwOyB9XG4gIH1cblxuICAvLyBvcGVuIGNhcmQgc3RhdGVcbiAgJi5jYXJkLW9wZW4ge1xuICAgID4gLmNhcmQtaGVhZGVyID4gLmNhcmQtdGl0bGUgeyBjb2xvciA6ICRicmFuZC1wcmltYXJ5OyB9XG4gICAgPiAuY2FyZC1oZWFkZXIgPiAudG9nZ2xlLWljb24ge1xuICAgICAgdHJhbnNmb3JtIDogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuLnNwLWZhcS1hcnRpY2xlcyB7XG4gIGJvcmRlci10b3AgIDogMXB4IHNvbGlkICNkZGQ7XG4gIHBhZGRpbmctdG9wIDogMnJlbTtcblxuICB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtYm94LW1vZGVsKHRydWUpO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbSA6IDE1cHg7XG4gICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tIDogMDsgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQgICAgICAgOiAnXFxmM2QzJztcbiAgICAgICAgZm9udC1mYW1pbHkgICA6ICdzcC10aGVtZS1pY29ucyc7XG4gICAgICAgIGZvbnQtc2l6ZSAgICAgOiAxOHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0IDogMTBweDtcbiAgICAgICAgY29sb3IgICAgICAgICA6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3IgOiAjMzMzO1xuICAgICAgICAmOmhvdmVyIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDbGllbnRzIHBhZ2UuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtY2xpZW50cy1ncmlkIC5zcC1jbGllbnRzLWJsb2NrIHtcbiAgYmFja2dyb3VuZCAgICA6ICNmZmY7XG4gIHBhZGRpbmcgICAgICAgOiAycmVtO1xuICBtYXJnaW4tYm90dG9tIDogMzBweDtcbiAgdHJhbnNpdGlvbiAgICA6IGJveC1zaGFkb3cgMC41cztcbiAgd2lsbC1jaGFuZ2UgICA6IGJveC1zaGFkb3c7XG5cbiAgPiAuY2xpZW50LWxvZ28ge1xuICAgIHBhZGRpbmctYm90dG9tIDogMS41cmVtO1xuICAgIGRpc3BsYXkgICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgIG1heC13aWR0aCAgICAgIDogMTAwJTtcbiAgICBvcGFjaXR5ICAgICAgICA6IDAuODU7IFxuICAgIHRyYW5zaXRpb24gICAgIDogb3BhY2l0eSAwLjI1cztcbiAgICB3aWxsLWNoYW5nZSAgICA6IG9wYWNpdHk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93IDogMCAwIDI1cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuICAgID4gLmNsaWVudC1sb2dvIHsgb3BhY2l0eSA6IDE7IH1cbiAgfVxuXG4gID4gLmNsaWVudC10aXRsZSB7IG1hcmdpbi1ib3R0b20gOiAxLjVyZW07IH1cblxuICAuYnRuIHsgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZCwgYm9yZGVyOyB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIE1haWxjaGltcCBzdWJzY3JpYmUgYmxvY2suICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3Atc3Vic2NyaWJlLWZvcm0ge1xuICBwb3NpdGlvbiAgIDogcmVsYXRpdmU7XG4gIG1heC13aWR0aCAgOiA1NDBweCArICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuICBwYWRkaW5nICAgIDogMCAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZS8yO1xuICBtYXJnaW4gICAgIDogMCBhdXRvO1xuXG4gID4gLmZvcm0taW5uZXItd3JhcCB7XG4gICAgcG9zaXRpb24gICA6IHJlbGF0aXZlO1xuICAgIHotaW5kZXggICAgOiA1MDtcbiAgICB0cmFuc2l0aW9uIDogb3BhY2l0eSAwLjI1cywgdHJhbnNmb3JtIDAuMjVzO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aCAgOiAxMzBweDtcbiAgICAgIG9wYWNpdHkgICAgOiAwLjI7XG4gICAgICBtYXJnaW4tdG9wIDogMnJlbTtcbiAgICB9XG5cbiAgICBwLmFwcGVhci1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi10b3AgICAgOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbSA6IDA7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIHdpZHRoICA6IDM1MHB4O1xuICAgICAgbWFyZ2luIDogYXV0bztcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLW91dHB1dCB7XG4gICAgcG9zaXRpb24gICAgOiBhYnNvbHV0ZTtcbiAgICB0b3AgICAgICAgICA6IDUwJTsgbGVmdCA6IDA7XG4gICAgcGFkZGluZyAgICAgOiAwICRncmlkLWd1dHRlci13aWR0aC1iYXNlLzI7XG4gICAgd2lkdGggICAgICAgOiAxMDAlOyBtaW4taGVpZ2h0OiAxMThweDtcbiAgICB6LWluZGV4ICAgICA6IDEwMDtcbiAgICB2aXNpYmlsaXR5ICA6IGhpZGRlbjtcbiAgICBvcGFjaXR5ICAgICA6IDA7XG4gICAgdHJhbnNmb3JtICAgOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDAuOCk7XG4gICAgYmFja2dyb3VuZCAgOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb24gIDogYWxsIDAuMjVzO1xuICAgIHRleHQtYWxpZ24gIDogY2VudGVyO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHkgOiBcInNwLXRoZW1lLWljb25zXCI7XG4gICAgICBmb250LXNpemUgICA6IDcwcHg7XG4gICAgICBsaW5lLWhlaWdodCA6IDcwcHg7XG4gICAgICBkaXNwbGF5ICAgICA6IGJsb2NrO1xuICAgICAgbWFyZ2luICAgICAgOiAwIGF1dG8gMjBweDtcblxuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIH1cbiAgfVxuXG4gICYubWMtbG9hZGluZywgJi5tYy1pbnZhbGlkLCAmLm1jLXZhbGlkIHtcbiAgICA+IC5mb3JtLWlubmVyLXdyYXAge1xuICAgICAgb3BhY2l0eSAgIDogMDtcbiAgICAgIHRyYW5zZm9ybSA6IHNjYWxlKDAuOCk7XG4gICAgfVxuXG4gICAgPiAuZm9ybS1vdXRwdXQge1xuICAgICAgdmlzaWJpbGl0eSA6IHZpc2libGU7XG4gICAgICBvcGFjaXR5ICAgIDogMTtcbiAgICAgIHRyYW5zZm9ybSAgOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuXG4gICAgICAmOmJlZm9yZSB7IGFuaW1hdGlvbi1uYW1lOiBzcC1tYy1mb3JtLW91dHB1dC1pY29uOyB9XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1vdXRwdXQudmFsaWQ6YmVmb3JlIHsgY29udGVudDogJ1xcZjNmZCc7IGNvbG9yOiAkYnJhbmQtc3VjY2VzczsgfVxuICA+IC5mb3JtLW91dHB1dC5lcnJvcjpiZWZvcmUgeyBjb250ZW50OiAnXFxmNDA0JzsgY29sb3I6ICRicmFuZC1kYW5nZXI7IH1cblxuICAmLm1jLWxvYWRpbmcgPiAuZm9ybS1vdXRwdXQ6YmVmb3JlIHtcbiAgICBjb250ZW50ICAgOiAnXFxmNDVhJztcbiAgICBjb2xvciAgICAgOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZSA6IDU1cHg7XG4gICAgYW5pbWF0aW9uIDogc3AtbWMtbG9hZGluZy1pY29uIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwLW1jLWxvYWRpbmctaWNvbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybSA6IHJvdGF0ZSgtMzYwZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0gOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcC1tYy1mb3JtLW91dHB1dC1pY29uIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtIDogcm90YXRlKC0zNjBkZWcpIHNjYWxlKDAuNyk7XG4gICAgb3BhY2l0eSAgIDogMC4zO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybSA6IHJvdGF0ZSgwZGVnKSBzY2FsZSgxKTtcbiAgICBvcGFjaXR5ICAgOiAxO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDQwNCBwYWdlLiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuI3NwLTQwNCB7XG4gID4gLmludHJvLWJvZHkgeyBwYWRkaW5nLXRvcCA6IDUwcHg7IHBhZGRpbmctYm90dG9tIDogNTBweDsgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tIDogMnJlbTtcbiAgICBmb250LXNpemUgICAgIDogNXJlbTtcbiAgICBsaW5lLWhlaWdodCAgIDogNXJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tIDogM3JlbTtcbiAgICBmb250LXNpemUgICAgIDogMy41cmVtO1xuICAgIGZvbnQtZmFtaWx5ICAgOiAnU2hhZG93cyBJbnRvIExpZ2h0JywgY3Vyc2l2ZTtcbiAgICB0cmFuc2Zvcm0gICAgIDogcm90YXRlKC0yZGVnKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNwLXNvYy1saW5rcyB7XG4gICAgbWFyZ2luLWJvdHRvbSA6IDJyZW07XG4gICAgZm9udC1zaXplICAgICA6IDA7XG5cbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG4gICAgICBsaSB7IGRpc3BsYXkgOiBpbmxpbmU7IH1cblxuICAgICAgbGkgYSB7XG4gICAgICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZyAgIDogMCAxMnB4O1xuICAgICAgICBmb250LXNpemUgOiAyNnB4O1xuXG4gICAgICAgICY6aG92ZXIgeyBjb2xvciA6ICRicmFuZC1wcmltYXJ5OyB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNwLTQwNC1tZW51IHVsIHtcbiAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG4gICAgZm9udC1zaXplIDogMDtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXkgICAgIDogaW5saW5lO1xuICAgICAgd2hpdGUtc3BhY2UgOiBub3dyYXA7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50ICAgOiAnfCc7XG4gICAgICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luICAgIDogMCAxMHB4O1xuICAgICAgICBmb250LXNpemUgOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7IGNvbnRlbnQgOiAnJzsgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplIDogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICAmOmhvdmVyIHsgY29sb3IgOiAkYnJhbmQtcHJpbWFyeTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIGgxIHsgZm9udC1zaXplIDogMy44cmVtOyBsaW5lLWhlaWdodCA6IDMuOHJlbTsgcGFkZGluZyA6IDAgMTVweDsgfVxuICAgIGgzIHsgZm9udC1zaXplIDogM3JlbTsgcGFkZGluZyA6IDAgMTVweDsgbWFyZ2luLWJvdHRvbSA6IDJyZW07IH1cbiAgICAuc3AtNDA0LW1lbnUgdWwgeyBwYWRkaW5nIDogMCAxNXB4OyB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBoMSB7IGZvbnQtc2l6ZSA6IDNyZW07IH1cbiAgICBoMyB7IGZvbnQtc2l6ZSA6IDJyZW07IH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTaW1wbGUgdGV4dCByb3RhdG9yIHBsdWdpbiBzdHlsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtdGV4dC1yb3RhdGUge1xuICBkaXNwbGF5ICAgICA6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2UgOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7IHdoaXRlLXNwYWNlIDogbm9ybWFsOyB9XG59XG5cbi5yb3RhdGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgcHJlZml4KHRyYW5zZm9ybS1zdHlsZSwgcHJlc2VydmUtM2QsIHdlYmtpdCBtb3opO1xuICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCByb3RhdGVYKDApIHJvdGF0ZVkoMCkgcm90YXRlWigwKSwgd2Via2l0IG1veik7XG4gIEBpbmNsdWRlIHByZWZpeCh0cmFuc2l0aW9uLCAwLjVzLCB3ZWJraXQgbW96KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXg6IDUwJTtcbn1cblxuLnJvdGF0aW5nLmZsaXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yb3RhdGluZyAuZnJvbnQsIC5yb3RhdGluZyAuYmFjayB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgQGluY2x1ZGUgcHJlZml4KGJhY2tmYWNlLXZpc2liaWxpdHksIGhpZGRlbiwgd2Via2l0IG1veiBtcyk7XG59XG5cbi5yb3RhdGluZyAuZnJvbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgcHJlZml4KHRyYW5zZm9ybSwgdHJhbnNsYXRlM2QoMCwwLDFweCksIHdlYmtpdCBtb3opO1xufVxuXG4ucm90YXRpbmcuZmxpcCAuZnJvbnQge1xuICB6LWluZGV4OiAxO1xufVxuXG4ucm90YXRpbmcgLmJhY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbn1cblxuLnJvdGF0aW5nLnNwaW4ge1xuICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCByb3RhdGUoMzYwZGVnKSBzY2FsZSgwKSwgd2Via2l0IG1veik7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IGZsaXAgdHJhbnNpdGlvbnMgKi9cbi5yb3RhdGluZy5mbGlwIC5iYWNrIHtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG5cbiAgQGluY2x1ZGUgcHJlZml4KHRyYW5zZm9ybSwgcm90YXRlWSgxODBkZWcpIHRyYW5zbGF0ZTNkKDAsMCwwKSwgd2Via2l0IG1veik7XG59XG5cbi5yb3RhdGluZy5mbGlwLnVwIC5iYWNrIHtcbiAgQGluY2x1ZGUgcHJlZml4KHRyYW5zZm9ybSwgcm90YXRlWCgxODBkZWcpIHRyYW5zbGF0ZTNkKDAsMCwwKSwgd2Via2l0IG1veik7XG59XG5cbi5yb3RhdGluZy5mbGlwLmN1YmUgLmZyb250IHtcbiAgQGluY2x1ZGUgcHJlZml4KHRyYW5zZm9ybSwgdHJhbnNsYXRlM2QoMCwwLDEwMHB4KSBzY2FsZSgwLjg1LDAuODUpLCB3ZWJraXQgbW96KTtcbn1cblxuLnJvdGF0aW5nLmZsaXAuY3ViZSAuYmFjayB7XG4gIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHJvdGF0ZVkoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLDAsMTAwcHgpIHNjYWxlKDAuOSwwLjkpLCB3ZWJraXQgbW96KTtcbn1cblxuLnJvdGF0aW5nLmZsaXAuY3ViZS51cCAuYmFjayB7XG4gIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGUzZCgwLDAsMTAwcHgpIHNjYWxlKDAuOSwwLjkpLCB3ZWJraXQgbW96KTtcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogVHlwZWQganMgaW50ZWdyYXRpb24uICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udHlwZWQtY3Vyc29yIHtcbiAgYW5pbWF0aW9uIDogdHlwZWQtYmxpbmsgMC43cyBpbmZpbml0ZTtcbiAgb3BhY2l0eSAgIDogMTtcbiAgZGlzcGxheSAgIDogaW5saW5lLWJsb2NrO1xufVxuXG5Aa2V5ZnJhbWVzIHR5cGVkLWJsaW5rIHtcbiAgMCUgeyBvcGFjaXR5IDogMTsgfVxuICA1MCUgeyBvcGFjaXR5IDogMDsgfVxuICAxMDAlIHsgb3BhY2l0eSA6IDE7IH1cbn0iLCIvKiEgU3dpcGVib3ggdjEuMy4wIHwgQ29uc3RhbnRpbiBTYWd1aW4gY3NhZy5jbyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9icnV0YWxkZXNpZ24vc3dpcGVib3ggKi9cblxuaHRtbC5zd2lwZWJveC1odG1sLnN3aXBlYm94LXRvdWNoIHtcbiAgb3ZlcmZsb3cgICA6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uIDogYWxsIDAuMjVzIGxpbmVhcjtcbn1cblxuI3N3aXBlYm94LW92ZXJsYXkge1xuICB3aWR0aCAgICAgICA6IDEwMCU7XG4gIGhlaWdodCAgICAgIDogMTAwJTtcbiAgcG9zaXRpb24gICAgOiBmaXhlZDtcbiAgdG9wICAgICAgICAgOiAwO1xuICBsZWZ0ICAgICAgICA6IDA7XG4gIHotaW5kZXggICAgIDogOTk5OTkgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cgICAgOiBoaWRkZW47XG4gIHVzZXItc2VsZWN0IDogbm9uZTtcbiAgYmFja2dyb3VuZCAgOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICB0cmFuc2l0aW9uICA6IGJhY2tncm91bmQgMC4yNXMgbGluZWFyO1xufVxuXG4jc3dpcGVib3gtY29udGFpbmVyIHtcbiAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgd2lkdGggICAgOiAxMDAlO1xuICBoZWlnaHQgICA6IDEwMCU7XG59XG5cbiNzd2lwZWJveC1zbGlkZXIge1xuICB0cmFuc2l0aW9uICA6IHRyYW5zZm9ybSAwLjRzIGVhc2U7XG4gIGhlaWdodCAgICAgIDogMTAwJTtcbiAgbGVmdCAgICAgICAgOiAwO1xuICB0b3AgICAgICAgICA6IDA7XG4gIHdpZHRoICAgICAgIDogMTAwJTtcbiAgd2hpdGUtc3BhY2UgOiBub3dyYXA7XG4gIHBvc2l0aW9uICAgIDogYWJzb2x1dGU7XG4gIGRpc3BsYXkgICAgIDogbm9uZTtcblxuICAuc2xpZGUge1xuICAgIGhlaWdodCAgICAgIDogMTAwJTtcbiAgICB3aWR0aCAgICAgICA6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQgOiAxcHg7XG4gICAgdGV4dC1hbGlnbiAgOiBjZW50ZXI7XG4gICAgZGlzcGxheSAgICAgOiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50ICAgICAgOiBcIlwiO1xuICAgICAgZGlzcGxheSAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0ICAgICAgIDogNTAlO1xuICAgICAgd2lkdGggICAgICAgIDogMXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0IDogLTFweDtcbiAgICB9XG5cbiAgICAuc3dpcGVib3gtdmlkZW8tY29udGFpbmVyLFxuICAgIC5zd2lwZWJveC1pbmxpbmUtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXkgICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgICAgbWF4LWhlaWdodCAgICAgOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoICAgICAgOiAxMDAlO1xuICAgICAgbWFyZ2luICAgICAgICAgOiAwO1xuICAgICAgcGFkZGluZyAgICAgICAgOiAwO1xuICAgICAgd2lkdGggICAgICAgICAgOiBhdXRvO1xuICAgICAgaGVpZ2h0ICAgICAgICAgOiBhdXRvO1xuICAgICAgdmVydGljYWwtYWxpZ24gOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLnN3aXBlYm94LXZpZGVvLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kIDogbm9uZTtcbiAgICAgIG1heC13aWR0aCAgOiAxMTQwcHg7XG4gICAgICBtYXgtaGVpZ2h0IDogMTAwJTtcbiAgICAgIHdpZHRoICAgICAgOiAxMDAlO1xuICAgICAgcGFkZGluZyAgICA6IDIwcHggMTUwcHg7XG4gICAgICBib3gtc2l6aW5nIDogYm9yZGVyLWJveDtcblxuICAgICAgLnN3aXBlYm94LXZpZGVvIHtcbiAgICAgICAgd2lkdGggICAgICAgICAgOiAxMDAlO1xuICAgICAgICBoZWlnaHQgICAgICAgICA6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tIDogNTYuMjUlO1xuICAgICAgICBvdmVyZmxvdyAgICAgICA6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb24gICAgICAgOiByZWxhdGl2ZTtcblxuICAgICAgICBpZnJhbWUge1xuICAgICAgICAgIHdpZHRoICAgICAgOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0ICAgICA6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wICAgICAgICA6IDA7IGxlZnQgOiAwO1xuICAgICAgICAgIG1heC1oZWlnaHQgOiAxMDB2aDtcbiAgICAgICAgICBtYXgtaGVpZ2h0IDogY2FsYygxMDB2aCAtIDQwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlLWxvYWRpbmcge1xuICAgIGJhY2tncm91bmQgOiB1cmwoJy4uL2ltYWdlcy9sb2FkZXIuZ2lmJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIH1cblxufVxuXG4jc3dpcGVib3gtY2xvc2Uge1xuICBwb3NpdGlvbiAgICA6IGFic29sdXRlO1xuICB0b3AgICAgICAgICA6IDEwcHg7XG4gIHJpZ2h0ICAgICAgIDogMzBweDtcbiAgbGluZS1oZWlnaHQgOiAxO1xuICBjdXJzb3IgICAgICA6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24gIDogb3BhY2l0eSAwLjI1cztcblxuICAmOmJlZm9yZSB7XG4gICAgY29sb3IgICAgICAgICAgICAgICAgICAgOiAjZmZmO1xuICAgIGNvbnRlbnQgICAgICAgICAgICAgICAgIDogJ1xcZjQwNCc7XG4gICAgZGlzcGxheSAgICAgICAgICAgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHkgICAgICAgICAgICAgOiAkaWNvbi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemUgICAgICAgICAgICAgICA6IDcwcHg7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZyAgOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZyA6IGdyYXlzY2FsZTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHkgOiAwLjY7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDgwMHB4KSB7XG4gICNzd2lwZWJveC1jbG9zZSB7XG4gICAgcmlnaHQgOiAxNXB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZSA6IDMwcHg7XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFNpdGUgc29jaWFscyBWQyB3aWRnZXQuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3Atc2l0ZS1zb2NpYWxzIHtcbiAgbWFyZ2luICAgIDogMCAtMTJweDtcbiAgZm9udC1zaXplIDogMDtcbiAgY29sb3IgICAgIDogJGJyYW5kLXByaW1hcnk7XG5cbiAgPiBhIHtcbiAgICB0cmFuc2l0aW9uICAgIDogb3BhY2l0eSAwLjI1cztcbiAgICBvcGFjaXR5ICAgICAgIDogMTtcbiAgICBkaXNwbGF5ICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yICAgICAgICAgOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZSAgICAgOiAyM3B4O1xuICAgIHBhZGRpbmcgICAgICAgOiAwIDEycHg7XG5cbiAgICAmOmhvdmVyIHsgb3BhY2l0eSA6IDAuNjsgfVxuICB9XG5cbiAgJi5hbGlnbl9jZW50ZXIgeyB0ZXh0LWFsaWduIDogY2VudGVyOyB9XG4gICYuYWxpZ25fbGVmdCB7IHRleHQtYWxpZ24gOiBsZWZ0OyB9XG4gICYuYWxpZ25fcmlnaHQgeyB0ZXh0LWFsaWduIDogcmlnaHQ7IH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHsgdGV4dC1hbGlnbiA6IGNlbnRlciAhaW1wb3J0YW50OyB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFZpc3VhbCBDb21wb3NlciBjdXN0b20gdGV4dCB3aWRnZXQuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtdGV4dC13aWRnZXQge1xuICBsaW5lLWhlaWdodCA6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBmb250LXNpemUgICA6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC1mYW1pbHkgOiAkZm9udC1mYW1pbHktYmFzZTtcbiAgY29sb3IgICAgICAgOiAkYm9keS1jb2xvcjtcblxuICAmLnByaW1hcnktZm9udCB7IGZvbnQtZmFtaWx5IDogJGZvbnQtZmFtaWx5LWJhc2U7IH1cbiAgJi5oZWFkaW5ncy1mb250IHsgZm9udC1mYW1pbHkgOiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7IH1cblxuICA+IHAge1xuICAgIGxpbmUtaGVpZ2h0IDogaW5oZXJpdDtcbiAgICBmb250LXNpemUgICA6IGluaGVyaXQ7XG4gICAgY29sb3IgICAgICAgOiBpbmhlcml0O1xuICB9XG5cbiAgPiBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbSA6IDA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aCA6IDEwMCU7XG4gICAgaGVpZ2h0ICAgIDogYXV0bztcbiAgfVxuXG4gID4gLnNwLXNpZ25hdHVyZSB7XG4gICAgd2lkdGggICAgICAgICAgOiAxMDAlO1xuICAgIGZvbnQtc2l6ZSAgICAgIDogMjNweDtcbiAgICBkaXNwbGF5ICAgICAgICA6IGJsb2NrO1xuICAgIG1hcmdpbi10b3AgICAgIDogMjBweDtcbiAgICBmb250LWZhbWlseSAgICA6ICdTaGFkb3dzIEludG8gTGlnaHQnLCBjdXJzaXZlO1xuICAgIGZvbnQtc3R5bGUgICAgIDogaXRhbGljO1xuICAgIGxldHRlci1zcGFjaW5nIDogMnB4O1xuICAgIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHJvdGF0ZSgtM2RlZyksIHdlYmtpdCk7XG4gICAgJi53aGl0ZSB7XG4gICAgICBjb2xvcjojZmZmO1xuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCYXNpYyBibG9ncm9sbCBzdHlsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4jc3AtYmxvZy1pbm5lciB7XG5cdGRpc3BsYXkgICA6IGZsZXg7XG5cdGZsZXgtd3JhcCA6IG5vd3JhcDtcblxuXHQ+IC5jb250ZW50LWNvbHVtbiB7XG5cdFx0ZmxleCAgICAgIDogMSAxIGF1dG87XG5cdFx0bWluLXdpZHRoIDogMDtcblx0fVxuXG5cdD4gLnNpZGViYXItY29sdW1uIHtcblx0XHRmbGV4ICAgICAgICAgIDogMCAwIDM2MHB4O1xuXHRcdG1pbi13aWR0aCAgICAgOiAwO1xuXHRcdG1hcmdpbi1ib3R0b20gOiAtNTBweDtcblxuXHRcdCYubGVmdCB7IHBhZGRpbmctcmlnaHQgOiA2MHB4OyB9XG5cdFx0Ji5yaWdodCB7IHBhZGRpbmctbGVmdCA6IDYwcHg7IH1cblx0XHQmOmVtcHR5IHsgZGlzcGxheSA6IG5vbmU7IH1cblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRcdGZsZXgtd3JhcCA6IHdyYXA7XG5cblx0XHQ+IC5zaWRlYmFyLWNvbHVtbiwgPiAuY29udGVudC1jb2x1bW4geyBmbGV4LWJhc2lzIDogMTAwJTsgfVxuXG5cdFx0PiAuY29udGVudC1jb2x1bW4geyBvcmRlcjogMTsgfVxuXHRcdD4gLnNpZGViYXItY29sdW1uIHsgbWFyZ2luLXRvcCA6IDgwcHg7IG9yZGVyOiAyOyB9XG5cblx0XHQ+IC5zaWRlYmFyLWNvbHVtbi5sZWZ0IHsgcGFkZGluZy1yaWdodCA6IDA7IH1cblx0XHQ+IC5zaWRlYmFyLWNvbHVtbi5yaWdodCB7IHBhZGRpbmctbGVmdCA6IDA7IH1cblx0fVxufVxuXG4uc3AtYmxvZy1ibG9jayB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRtYXJnaW4tYm90dG9tOiA1NXB4O1xuXG5cdC8vIHN0eWxlcyByZXNldFxuXHRwIHsgbWFyZ2luLWJvdHRvbSA6IDEuNXJlbTsgfVxuXHRwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tIDogMDsgfVxuXG5cdC5zcC1ibG9nLWltYWdlIHtcblx0XHRwb3NpdGlvbiAgICAgIDogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLWJvdHRvbSA6IDEuNXJlbTtcblx0XHRvcGFjaXR5ICAgICAgIDogMTtcblx0XHR0cmFuc2l0aW9uICAgIDogb3BhY2l0eSAwLjJzIGxpbmVhcjtcblxuXHRcdGEge1xuXHRcdCAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdCAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0ICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdCAgICBoZWlnaHQ6IDI0MHB4O1xuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ICAgXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtoZWlnaHQ6IDI2MHB4O31cblx0XHR9XG5cblx0XHQmOmhvdmVyIHsgb3BhY2l0eTogMC43OyB9XG5cdH1cblxuXHQuZW50cnktdGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWg0O1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6IzMzMztcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjokYnJhbmQtcHJpbWFyeTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc3AtYmxvZy1tZXRhIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dWwge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGxpIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICcvJztcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDEwcHg7XG5cdFx0XHRcdFx0Y29sb3I6Izk5OTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQ6YWZ0ZXIge2NvbnRlbnQ6IG5vbmU7fVxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRjb2xvcjojOTk5O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5jaGVzcyB7XG5cdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgICBkaXNwbGF5OiB0YWJsZTtcblx0ICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG5cdCAgICB3aWR0aDogMTAwJTtcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG5cdCAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7ZGlzcGxheTogYmxvY2s7fVxuXHQgICAgLm1ldGEtY29sdW1uIHtcbiAgICBcdFx0cGFkZGluZzogMHB4IDUwcHg7XG4gICAgXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge3BhZGRpbmc6IDUwcHggMzBweDt9XG4gICAgXHRcdCYuaW5uZXItY29sIHtcbiAgICBcdFx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIFx0XHRcdHdpZHRoOiA1MCU7XG4gICAgXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBcdFx0XHRcdHdpZHRoOiAxMDAlO1xuICAgIFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG4gICAgXHRcdFx0fVxuICAgIFx0XHR9XG4gICAgXHRcdGg0IHtmb250LXNpemU6IDEuNXJlbTt9XG5cdCAgICB9XG5cdFx0LmltYWdlLWNvbHVtbiB7XG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcdFx0Ji5pbm5lci1jb2wge1xuICAgIFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgXHRcdFx0d2lkdGg6IDUwJTtcbiAgICBcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIFx0XHRcdFx0d2lkdGg6IDEwMCU7XG4gICAgXHRcdFx0XHRkaXNwbGF5OiBub25lOztcbiAgICBcdFx0XHR9XG4gICAgXHRcdH1cbiAgICBcdFx0LnNwLWJsb2ctaW1hZ2Uge1xuICAgIFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdCAgICBcdFx0YSB7IFxuXHQgICAgXHRcdFx0aGVpZ2h0OiA0MDBweDtcblx0ICAgIFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge2hlaWdodDogMzUwcHg7fVxuXHQgICAgXHRcdH1cbiAgICBcdFx0fVxuXHRcdH1cblx0XHQmLnN0aWNreTpudGgtY2hpbGQoZXZlbikge1xuXHRcdFx0LnNwLWJsb2ctaW1hZ2Uge1xuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ICAgIHJpZ2h0OiAzMHB4O1x0XG5cdFx0XHRcdCAgICBsZWZ0OmF1dG87XG5cdFx0XHRcdH1cblx0XHRcdCAgXHQmOmJlZm9yZSB7XG5cdFx0XHRcdCAgICByaWdodDogMzBweDtcblx0XHRcdFx0ICAgIGxlZnQ6YXV0bztcblx0XHRcdFx0fSAgXHRcdFxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmNsYXNzaWMge1xuXHRcdG1hcmdpbi1ib3R0b206IDgwcHg7XG5cdCAgICBkaXNwbGF5OiBmbGV4O1xuXHQgICAgZmxleC13cmFwOiBub3dyYXA7XG5cdFx0LnNwLWJsb2ctbWV0YS1jbGFzc2ljIHtcblx0XHQgICAgZmxleDogMCAwIDkwcHg7XG5cdFx0ICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cdFx0ICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdCAgICAuZGF0ZSB7XG5cdFx0ICAgIFx0Zm9udC1zaXplOjEuNHJlbTtcblx0XHQgICAgXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cdFx0ICAgIH1cblx0XHRcdC55ZWFyIHtcblx0XHRcdFx0Y29sb3I6Izk5OTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnNwLWJsb2ctaW1hZ2Uge1xuXHQgICAgXHRhIHsgXG5cdCAgICBcdFx0aGVpZ2h0OiAzNzVweDtcblx0ICAgIFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtoZWlnaHQ6IDM1MHB4O31cblx0ICAgIFx0fVxuICAgIFx0fVxuXHR9XG5cdCYubWVkaXVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiA4MHB4O1xuXHQgICAgZGlzcGxheTogZmxleDtcblx0ICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXHQgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7ZGlzcGxheTogYmxvY2t9XG5cdFx0LnNwLWJsb2ctaW1hZ2UtbWVkaXVtIHtcblx0XHQgICAgZmxleDogMCAwIDM2MHB4O1xuXHRcdCAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXHRcdCAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtwYWRkaW5nLXJpZ2h0OiAwO31cblx0XHRcdC5zcC1ibG9nLWltYWdlIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHQgICAgXHRhIHsgXG5cdFx0ICAgIFx0XHRoZWlnaHQ6IDI3NXB4O1xuXHRcdCAgICBcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7aGVpZ2h0OiAzMDBweDt9XG5cdFx0ICAgIFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtoZWlnaHQ6IDI0MHB4O31cblx0XHQgICAgXHR9XG5cdCAgICBcdH1cblx0XHR9XG5cdFx0LnNwLWJsb2ctYmxvY2stbWVkaXVtIHtcblx0XHRcdGgzIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxLjNyZW07XG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge21hcmdpbi10b3A6IDFyZW07fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLnN0aWNreXtcblx0XHQuc3AtYmxvZy1pbWFnZSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0d2lkdGg6IDMycHg7XG5cdFx0XHRcdGhlaWdodDogNDhweDtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMzBweDtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3JkZXItbGVmdDogMTZweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAxNnB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1x0XG5cdFx0XHR9XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdTJztcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTlweDtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdGxlZnQ6IDMwcHg7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ei1pbmRleDogOTtcblx0XHRcdFx0d2lkdGg6IDMycHg7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcdFx0XG5cdFx0XHR9ICBcdFx0XG5cdFx0fVxuXHR9XG5cdCYubm8tdGh1bWJuYWlsLnN0aWNreSB7XG5cdFx0LnNwLWJsb2ctbWV0YS1jbGFzc2ljIHt0ZXh0LWFsaWduOiBjZW50ZXJ9XG5cdFx0cGFkZGluZzogMzBweDtcblx0XHRiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuXHR9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEJsb2dyb2xsIHBvc3QgZm9ybWF0cy4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLXF1b3RlIHtcbiAgZGlzcGxheSAgICAgICA6IGZsZXg7XG4gIGJvcmRlciAgICAgICAgOiA0cHggc29saWQgI2VlZTtcbiAgcGFkZGluZyAgICAgICA6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b20gOiAycmVtO1xuXG4gID4gLnF1b3RlLWljb24ge1xuICAgIGZsZXggICAgICAgICAgOiAwIDAgYXV0bztcbiAgICBmb250LXNpemUgICAgIDogNzNweDtcbiAgICBjb2xvciAgICAgICAgIDogJGJyYW5kLXByaW1hcnk7XG4gICAgcGFkZGluZy1yaWdodCA6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQgICA6IDE7XG4gICAgbWluLXdpZHRoICAgICA6IDA7XG4gIH1cblxuICA+IC5xdW90ZS1pbm5lciB7XG4gICAgZmxleCAgICAgIDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoIDogMDtcblxuICAgIHAgeyBcbiAgICAgIGZvbnQtc2l6ZSA6IDEuMjVyZW07XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgICAuYmxvY2txdW90ZS1mb290ZXIge1xuICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgY2l0ZSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIH1cbiAgICB9XG4gICAgcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbSA6IDA7IH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICA+IC5xdW90ZS1pY29uIHsgcGFkZGluZzogMCAwIDFyZW07IH1cbiAgICA+IC5xdW90ZS1pY29uLCA+IC5xdW90ZS1pbm5lciB7IGZsZXg6IDAgMCAxMDAlOyB9XG5cbiAgICA+IC5xdW90ZS1pbm5lciBwIHsgZm9udC1zaXplOiAxcmVtOyB9XG4gIH1cbn1cblxuLnNwLWJsb2ctYmxvY2sgLnNwLWJsb2ctbGluayB7XG4gIGRpc3BsYXkgICAgICAgOiBmbGV4O1xuICBib3JkZXIgICAgICAgIDogNHB4IHNvbGlkICNlZWU7XG4gIHBhZGRpbmcgICAgICAgOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tIDogMnJlbTtcbiAgd2lkdGggICAgICAgICA6IDEwMCU7XG4gIHdoaXRlLXNwYWNlICAgOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zICAgOiBjZW50ZXI7XG5cbiAgJjpiZWZvcmUge1xuICAgIGZsZXggICAgICAgICAgOiAwIDAgYXV0bztcbiAgICBjb250ZW50ICAgICAgIDogJ1xcZjNkOSc7XG4gICAgZm9udC1mYW1pbHkgICA6IFwic3AtdGhlbWUtaWNvbnNcIjtcbiAgICBmb250LXNpemUgICAgIDogNzBweDtcbiAgICBjb2xvciAgICAgICAgIDogJGJyYW5kLXByaW1hcnk7XG4gICAgbWFyZ2luLXJpZ2h0ICA6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodCA6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQgICA6IDE7XG4gICAgYm9yZGVyLXJpZ2h0ICA6IDFweCBzb2xpZCAjZWVlO1xuICB9XG5cbiAgYSB7XG4gICAgZmxleCAgICAgICAgICA6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aCAgICAgOiAwO1xuICAgIGZvbnQtc2l6ZSAgICAgOiAycmVtO1xuICAgIGNvbG9yICAgICAgICAgOiAjMzMzO1xuICAgIGRpc3BsYXkgICAgICAgOiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2UgICA6IG5vd3JhcDtcbiAgICBvdmVyZmxvdyAgICAgIDogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3cgOiBlbGxpcHNpcztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIHBhZGRpbmcgOiAyMHB4O1xuICAgICY6YmVmb3JlIHsgZm9udC1zaXplIDogNTBweDsgcGFkZGluZy1yaWdodCA6IDE1cHg7IG1hcmdpbi1yaWdodCA6IDE1cHg7IH1cbiAgICBhIHsgZm9udC1zaXplIDogMXJlbTsgfVxuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1ibG9nLWltYWdlIHtcbiAgLmNhcHRpb24ge1xuICAgIGRpc3BsYXkgICAgOiBibG9jaztcbiAgICBtYXJnaW4tdG9wIDogNXB4O1xuICB9XG59XG5cbi5zcC1ibG9nLWJsb2NrIC5zcC1zbGljay1wb3N0LWdhbGxlcnkge1xuICAuc2xpY2stc2xpZGUgLmNhcHRpb24ge1xuICAgIG1hcmdpbi10b3AgOiA1cHg7XG4gICAgZGlzcGxheSAgICA6IGJsb2NrO1xuICAgIG9wYWNpdHkgICAgOiAwO1xuICAgIHRyYW5zZm9ybSAgOiB0cmFuc2xhdGVYKDE1cHgpO1xuICAgIHRyYW5zaXRpb24gOiBhbGwgMC4yNXM7XG4gIH1cblxuICAuc2xpY2stc2xpZGUuc2xpY2stYW5pbWF0ZWQgLmNhcHRpb24ge1xuICAgIG9wYWNpdHkgICA6IDE7XG4gICAgdHJhbnNmb3JtIDogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uc3AtYmxvZy1ibG9jayAuc3Atc2luZ2xlLWVtYmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuXG5cblxuXG5cblxuXG5cblxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogQmxvZyBzaWRlYmFyIGRlc2lnbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnNwLXNpZGViYXIge1xuICBwYWRkaW5nLWJvdHRvbSA6IDUwcHg7XG5cbiAgYSB7XG4gICAgY29sb3IgOiAjMzMzO1xuICAgICY6aG92ZXIgeyBjb2xvciA6ICRicmFuZC1wcmltYXJ5OyB9XG4gIH1cblxuICAuc3Atd2lkZ2V0LWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW4tYm90dG9tIDogNTVweDtcblxuICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b20gOiAwOyB9XG5cbiAgICA+IC53aWRnZXQtdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbSA6IDEuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZSAgICAgOiAxLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5zcC1zaWRlYmFyIC5zcC1jYXRlZ29yeSB7XG4gIEBpbmNsdWRlIHJlc2V0LWJveC1tb2RlbCh0cnVlKTtcblxuICBsaSB7XG4gICAgcGFkZGluZy1ib3R0b20gOiAxNXB4O1xuICAgIHRleHQtYWxpZ24gICAgIDogbGVmdCAhaW1wb3J0YW50O1xuXG4gICAgc3BhbiB7XG4gICAgICBmbG9hdCAgICAgIDogcmlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kIDogI2Y1ZjVmNTtcbiAgICAgIHdpZHRoICAgICAgOiAzMHB4O1xuICAgICAgZm9udC1zaXplICA6IDE0cHg7XG4gICAgICBwYWRkaW5nICAgIDogMXB4IDA7XG4gICAgICB0ZXh0LWFsaWduIDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4uc3Atc2lkZWJhciAuc3AtcG9wdWxhci1wb3N0cyB7XG4gIEBpbmNsdWRlIHJlc2V0LWJveC1tb2RlbCh0cnVlKTtcblxuICA+IGxpIHtcbiAgICBsaXN0LXN0eWxlICAgIDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tIDogMjBweDtcbiAgICB0cmFuc2l0aW9uICAgIDogb3BhY2l0eSAwLjJzIGxpbmVhcjtcblxuICAgICY6aG92ZXIgeyBvcGFjaXR5IDogMC43OyB9XG4gICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbSA6IDA7IH1cblxuICAgID4gLnBvc3QtbGluayB7XG4gICAgICBkaXNwbGF5IDogZmxleDtcblxuICAgICAgPiAuaW1hZ2UgeyBmbGV4IDogMCAwIDEwMHB4OyB9XG4gICAgICA+IC5jb250ZW50IHsgZmxleCA6IDE7IH1cbiAgICB9XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgcGFkZGluZy1yaWdodCA6IDE1cHg7XG4gICAgICBtaW4td2lkdGggICAgIDogMDtcblxuICAgICAgPiBpbWcge1xuICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCk7XG4gICAgICAgIHdpZHRoICA6IDEwMCU7XG4gICAgICAgIGhlaWdodCA6IDY1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgdGV4dC1hbGlnbiA6IGxlZnQgIWltcG9ydGFudDtcblxuICAgICAgaDUge1xuICAgICAgICBmb250LXNpemUgICAgIDogMC45MnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0ICAgOiAxLjM7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvciAgICAgOiAjOTk5O1xuICAgICAgICBmb250LXNpemUgOiAxNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBCbG9ncm9sbCBzaW5nbGUgcGFnZSBzdHlsZXMuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc3AtaW50cm8uc2luZ2xlLXBvc3Qge1xuICB0ZXh0LWFsaWduIDogY2VudGVyO1xuXG4gIC5pbnRyby10aXRsZSB7XG4gICAgbGluZS1oZWlnaHQgICAgOiAxLjM7XG4gICAgZm9udC1zaXplICAgICAgOiAzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtIDogY2FwaXRhbGl6ZTtcbiAgfVxuXG4gIC5zcC1zaW5nbGUtbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbSA6IDJyZW07XG4gICAgd2lkdGggICAgICAgICA6IDEwMCU7XG4gICAgZm9udC1zaXplICAgICA6IDA7XG5cbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheSAgICAgICAgOiBpbmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZSAgICAgIDogMThweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm0gOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQgOiAnLyc7XG4gICAgICAgICAgcGFkZGluZyA6IDAgMTBweDtcbiAgICAgICAgICBjb2xvciAgIDogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7IGNvbnRlbnQgOiBub25lOyB9XG5cbiAgICAgICAgYSB7IGNvbG9yIDogI2ZmZjsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3AtYmxvZy1ibG9jay5zaW5nbGUge1xuICAuc3AtYmxvZy1ibG9jayB7IG1hcmdpbi1ib3R0b20gOiA1MHB4OyB9XG5cbiAgLnNwLWJsb2ctaW1hZ2Uge1xuICAgICY6aG92ZXIgeyBvcGFjaXR5IDogMTsgfVxuICAgIC5jYXB0aW9uIHtcbiAgICAgIGNvbG9yICAgICA6ICM5OTk7XG4gICAgICBmb250LXNpemUgOiAxNHB4O1xuICAgICAgd2lkdGggICAgIDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuc3Atc2luZ2xlLXRhZ3Mge1xuICAgIGZvbnQtc2l6ZSA6IDE2cHg7XG4gICAgaSB7XG4gICAgICBmb250LXNpemUgICAgOiAyMnB4O1xuICAgICAgY29sb3IgICAgICAgIDogIzMzMztcbiAgICAgIHBvc2l0aW9uICAgICA6IHJlbGF0aXZlO1xuICAgICAgdG9wICAgICAgICAgIDogMXB4O1xuICAgICAgbGluZS1oZWlnaHQgIDogMS4xO1xuICAgICAgbWFyZ2luLXJpZ2h0IDogN3B4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yICAgICAgICAgOiAjMzMzO1xuICAgICAgcGFkZGluZy1yaWdodCA6IDVweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvciA6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcC1zaW5nbGUtc29jIHVsIHtcbiAgICBAaW5jbHVkZSByZXNldC1ib3gtbW9kZWwodHJ1ZSk7XG4gICAgZm9udC1zaXplICA6IDA7XG4gICAgbWFyZ2luICAgICA6IC01cHggLTE1cHg7XG4gICAgdGV4dC1hbGlnbiA6IHJpZ2h0O1xuICAgIG1heC13aWR0aCAgOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheSA6IGlubGluZTtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXkgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplIDogMThweDtcbiAgICAgICAgY29sb3IgICAgIDogIzIyMjtcbiAgICAgICAgcGFkZGluZyAgIDogNXB4IDE1cHg7XG4gICAgICAgICY6aG92ZXIgeyBjb2xvciA6ICRicmFuZC1wcmltYXJ5OyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59Il19 */
