/*!
  Theme Name: Engage
  Theme URI: http://www.decentthemes.com/products/corpo-wordpress/
  Author: Golden Plus Theme
  Author URI: http://www.mominul.me/
  Description: The Ultimate Financial / Business Template
  Version: 1.1.1
  License: GNU General Public License v2 or later
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
  Text Domain: engage
  Tags:
  */
/*--------------------------------------------------------------
  >>> TABLE OF CONTENTS:
  ----------------------------------------------------------------
  # Base rules
  # Library
    ## Example
  # Elements
    ## Accessibility
    ## Buttons
  # Navigation Menu
    # Primary Menu
  # Sections
    ## Loading
    ## Header
    ## Banner
    ## About Us
    ## Skllis
    ## Service
    ## Portfolio
    ## CountUp
    ## Team
    ## Blog
    ## Testimonial
    ## Pricing Table
    ## Brand
    ## Contact
    ## Newslatter
    ## Fotter

  # Widgets
    ## Search
    ## Dt Custom Menu
    ## Dt Download Menu
    ## Dt Tags
    ## Dt Resent Post
    ## Dt Archive
  --------------------------------------------------------------*/

@keyframes toRightFromLeft {
  49% {
    transform: translate(100%);
  }
  50% {
    opacity: 0;
    transform: translate(-100%);
  }
  51% {
    opacity: 1;
  }
}

/*--------------------------------------------------------------
  # Base rules
  --------------------------------------------------------------*/
html {
  font-size: 14px;
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  color: #6d6c6c;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  background-color: #FFFFFF;
}

p {
  color: #6d6c6c;
  font-size: 14px;
  font-size: 1em;
  line-height: 26px;
  line-height: 1.85714em;
}

.section-title {
  text-transform: uppercase;
  color: #111;
  margin-top: 0;
  position: relative;
  margin-bottom: 15px;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
  font-weight: 600;
  letter-spacing: 0.5px;
  margin-bottom: 30px;
}

.section-title:after {
  position: absolute;
  content: ' ';
  background: #33CEFF;
  width: 70px;
  height: 3px;
  left: 50%;
  bottom: 0;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
}

.caption {
  color: #000;
  margin-bottom: 40px;
  line-height: 24px;
  line-height: 1.71429em;
}

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
}

h1, h2, h3, h4, h5 {
  color: #2c3e50;
  margin-top: 0;
  font-family: 'PT Sans', sans-serif;
}

/*--------------------------------------------------------------
  # Elements
  --------------------------------------------------------------*/
/*--------------------------------------------------------------
  ## Accessibility
  --------------------------------------------------------------*/
.says,
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

/*--------------------------------------------------------------
  ## Buttons
  --------------------------------------------------------------*/
a {
  text-decoration: none !important;
}

a:focus {
  text-decoration: none;
  color: #FFF;
}

.gp-bn-btn {
  position: relative;
  background-color: #33CEFF;
  padding: 12px 50px;
  text-decoration: none;
  display: inline-block;
  margin-right: 30px;
  text-transform: uppercase;
  color: #FFF;
  font-weight: 600;
  transition: all 0.3s ease-in-out;
}

.gp-bn-btn:hover {
  background: #111;
  color: #FFF;
  text-decoration: none;
  border-color: #111;
}

.gp-bn-active {
  background-color: transparent;
  border: 1px solid #fff;
  margin-right: 0;
  padding: 11px 50px;
}

.gp-bn-active:hover {
  border-color: transparent;
}

.gp-btn {
  color: #000;
  padding: 10px 15px;
  text-transform: uppercase;
  text-decoration: none;
  border: 1px solid #33CEFF;
  display: inline-block;
  border-radius: 4px;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
  position: relative;
}

.gp-bn-btn-2 {
  background-color: transparent;
  color: #FFF;
  border: 2px solid #FFF;
}

/*--------------------------------------------------------------
  # Navigation Menu
  --------------------------------------------------------------*/
/*--------------------------------------------------------------
  ## Primary Menu
  --------------------------------------------------------------*/
#header {
  background: rgba(0, 0, 0, 0.2);
  height: 100px;
  transition: all 0.5s ease-in-out;
  z-index: 600;
}

#header.navbar-bg {
  background: #ffffff;
  box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.2);
  top: 0;
  transition: all .5s ease-in-out;
  height: 70px;
}

#header.navbar-bg .navbar-header {
  height: auto;
}

#header.navbar-bg .navbar-header .navbar-brand {
  padding: 12px 0 !important;
  width: 150px !important;
}

#header.navbar-bg .navbar-header .navbar-brand img {
  width: 100%;
}

#header.navbar-bg .navbar-header .navbar-brand.main-logo {
  display: none;
}

#header.navbar-bg .navbar-header .navbar-brand.fixed-logo {
  display: block !important;
}

#header.navbar-bg .navbar-nav {
  padding: 15px 0 !important;
  transition: all .3s ease-in-out;
}

#header.navbar-bg .navbar-nav li.gp-search:before {
  background: #111 !important;
}

#header.navbar-bg .navbar-nav li a {
  color: #000;
}

#header.navbar-bg .navbar-nav li a:hover {
  color: #33CEFF !important;
}

#header.navbar-bg .navbar-nav li .child-menu {
  top: 28px !important;
}

#header.navbar-bg .navbar-nav li .child-menu li {
  padding: 0;
}

#header.navbar-bg .navbar-nav li .child-menu li a {
  padding: 10px;
}

#header.navbar-bg .navbar-nav li .child-menu li a:hover {
  color: #FFF !important;
}

#header .navbar {
  margin-bottom: 0;
  height: auto;
  border: none;
}

#header .navbar-header {
  transition: all 0.3s ease-in-out;
}

#header .navbar-header .navbar-brand {
  padding: 20px 0;
  height: auto;
  transition: all 0.3s ease-in-out;
  width: 190px;
}

#header .navbar-header .navbar-brand img {
  width: 100%;
}

#header .navbar-header .navbar-brand.fixed-logo {
  display: none;
}

#header .navbar-nav {
  padding: 29px 0;
  transition: all 0.3s ease-in-out;
}

#header .navbar-nav li {
  padding: 0px 10px;
}

#header .navbar-nav li a {
  color: #FFF;
  text-transform: uppercase;
  padding: 10px 0;
  transition: all 0.3s ease-in-out;
  position: relative;
  font-size: 14px;
  font-size: 1em;
  font-weight: 600;
}

#header .navbar-nav li a:after {
  content: '';
  position: absolute;
  width: 0;
  height: 2px;
  background: #33CEFF;
  left: 50%;
  right: 50%;
  bottom: 0;
  transition: all 0.5s ease-in-out;
}

#header .navbar-nav li a:hover, #header .navbar-nav li a:focus {
  background-color: transparent;
  color: #33CEFF;
}

#header .navbar-nav li a:hover:after, #header .navbar-nav li a:focus:after {
  left: 0;
  right: 0;
  width: 100%;
}

#header .navbar-nav li.active a {
  color: #33CEFF !important;
}

#header .navbar-nav li.active a:after {
  left: 0;
  right: 0;
  width: 100%;
}

#header .navbar-nav li.gp-search {
  position: relative;
  padding-left: 30px;
}

#header .navbar-nav li.gp-search a:after {
  display: none;
}

#header .navbar-nav li.gp-search:before {
  background: #FFF;
  height: 14px;
  width: 2px;
  content: '';
  position: absolute;
  left: 10px;
  top: 12px;
}

#header .navbar-nav li .child-menu {
  left: 0px;
  position: absolute;
  top: 102%;
  width: 200px;
  visibility: hidden;
  opacity: 0;
  -ms-transform: translateY(50px);
      transform: translateY(50px);
  background: none 0px 0px repeat scroll #05263c;
  list-style: none outside none;
  margin: 0px;
  padding: 0px;
  transition: all 800ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

#header .navbar-nav li .child-menu li {
  padding: 10px;
  border-bottom: 1px solid #4e4e4e;
  transition: all 0.3s ease-in-out;
}

#header .navbar-nav li .child-menu li a {
  display: block;
  padding: 0;
  color: #FFF !important;
  text-transform: capitalize;
}

#header .navbar-nav li .child-menu li a:after {
  display: none;
}

#header .navbar-nav li .child-menu li:last-child {
  border-bottom: none;
}

#header .navbar-nav li .child-menu li:hover {
  background-color: #33CEFF;
}

#header .navbar-nav li .child-menu li:hover a {
  color: #FFF !important;
  display: block;
  text-decoration: none !important;
}

#header .navbar-nav li:hover .child-menu {
  -ms-transform: translateY(28px);
      transform: translateY(28px);
  visibility: visible;
  transition: all 0.5s ease-out;
  opacity: 1;
  z-index: 9999;
}

#header.headroom--pinned:not(.headroom--top) {
  background-color: #33CEFF;
  position: fixed;
  background: #ffffff;
  box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.2);
  top: 0;
  transition: all .5s ease-in-out;
}

#header.headroom--pinned:not(.headroom--top) .navbar-header {
  height: auto;
}

#header.headroom--pinned:not(.headroom--top) .navbar-header .navbar-brand {
  padding: 12px 0 !important;
  width: 150px !important;
}

#header.headroom--pinned:not(.headroom--top) .navbar-header .navbar-brand img {
  width: 100%;
}

#header.headroom--pinned:not(.headroom--top) .navbar-header .navbar-brand.main-logo {
  display: none;
}

#header.headroom--pinned:not(.headroom--top) .navbar-header .navbar-brand.fixed-logo {
  display: block !important;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav {
  padding: 15px 0 !important;
  transition: all .3s ease-in-out;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li.gp-search:before {
  background: #111 !important;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li a {
  color: #000;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li a:hover {
  color: #33CEFF !important;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li .child-menu {
  top: 28px !important;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li .child-menu li {
  padding: 0;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li .child-menu li a {
  padding: 10px;
}

#header.headroom--pinned:not(.headroom--top) .navbar-nav li .child-menu li a:hover {
  color: #FFF !important;
}

.headroom--pinned {
  transition: all 0.3s ease-in-out;
}

/*--------------------------------------------------------------
  # Top Menu
  --------------------------------------------------------------*/
.cd-auto-hide-header {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background-color: #ffffff;
  /* Force Hardware Acceleration */
  transform: translateZ(0);
  will-change: transform;
  transition: transform .5s;
}

.cd-auto-hide-header::after {
  clear: both;
  content: "";
  display: block;
}

.cd-auto-hide-header.is-hidden {
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}

.cd-auto-hide-header .logo,
.cd-auto-hide-header .nav-trigger {
  position: absolute;
  top: 50%;
  bottom: auto;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.cd-auto-hide-header .logo {
  left: 5%;
}

.cd-auto-hide-header .logo a, .cd-auto-hide-header .logo img {
  display: block;
}

.cd-auto-hide-header .nav-trigger {
  /* vertically align its content */
  display: table;
  height: 100%;
  padding: 0 1em;
  font-size: 1.2rem;
  text-transform: uppercase;
  color: #25283D;
  font-weight: bold;
  right: 0;
  border-left: 1px solid #f2f2f2;
}

.cd-auto-hide-header .nav-trigger span {
  /* vertically align inside parent element */
  display: table-cell;
  vertical-align: middle;
}

.cd-auto-hide-header .nav-trigger em, .cd-auto-hide-header .nav-trigger em::after, .cd-auto-hide-header .nav-trigger em::before {
  /* this is the menu icon */
  display: block;
  position: relative;
  height: 2px;
  width: 22px;
  background-color: #25283D;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.cd-auto-hide-header .nav-trigger em {
  /* this is the menu central line */
  margin: 6px auto 14px;
  transition: background-color .2s;
}

.cd-auto-hide-header .nav-trigger em::before, .cd-auto-hide-header .nav-trigger em::after {
  position: absolute;
  content: '';
  left: 0;
  transition: transform .2s;
}

.cd-auto-hide-header .nav-trigger em::before {
  /* this is the menu icon top line */
  -ms-transform: translateY(-6px);
  transform: translateY(-6px);
}

.cd-auto-hide-header .nav-trigger em::after {
  /* this is the menu icon bottom line */
  -ms-transform: translateY(6px);
  transform: translateY(6px);
}

@media only screen and (min-width: 1024px) {
  .cd-auto-hide-header .nav-trigger {
    display: none;
  }
}

.cd-auto-hide-header.nav-open .nav-trigger em {
  /* transform menu icon into a 'X' icon */
  background-color: rgba(255, 255, 255, 0);
}

.cd-auto-hide-header.nav-open .nav-trigger em::before {
  /* rotate top line */
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.cd-auto-hide-header.nav-open .nav-trigger em::after {
  /* rotate bottom line */
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cd-primary-nav {
  display: inline-block;
  float: right;
  height: 100%;
  padding-right: 5%;
}

.cd-primary-nav > ul {
  position: absolute;
  z-index: 2;
  top: 60px;
  left: 0;
  width: 100%;
  background-color: #ffffff;
  display: none;
  box-shadow: 0 14px 20px rgba(0, 0, 0, 0.2);
}

.cd-primary-nav > ul a {
  /* target primary-nav links */
  display: block;
  height: 50px;
  line-height: 50px;
  padding-left: 5%;
  color: #25283D;
  font-size: 1.8rem;
  border-top: 1px solid #f2f2f2;
}

.cd-primary-nav > ul a:hover, .cd-primary-nav > ul a.active {
  color: #8F3985;
}

@media only screen and (min-width: 1024px) {
  .cd-primary-nav {
    /* vertically align its content */
    display: table;
  }
  .cd-primary-nav > ul {
    /* vertically align inside parent element */
    display: table-cell;
    vertical-align: middle;
    /* reset mobile style */
    position: relative;
    width: auto;
    top: 0;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
  }
  .cd-primary-nav > ul::after {
    clear: both;
    content: "";
    display: block;
  }
  .cd-primary-nav > ul li {
    display: inline-block;
    float: left;
    margin-right: 1.5em;
  }
  .cd-primary-nav > ul li:last-of-type {
    margin-right: 0;
  }
  .cd-primary-nav > ul a {
    /* reset mobile style */
    height: auto;
    line-height: normal;
    padding: 0;
    border: none;
  }
}

.nav-open .cd-primary-nav ul,
.cd-primary-nav ul:target {
  /*
    show primary nav - mobile only
    :target is used to show navigation on no-js devices
  */
  display: block;
}

@media only screen and (min-width: 1024px) {
  .nav-open .cd-primary-nav ul,
  .cd-primary-nav ul:target {
    display: table-cell;
  }
}

/* --------------------------------

2. Auto-Hiding Navigation - with Sub Nav

-------------------------------- */
.cd-secondary-nav {
  position: relative;
  z-index: 1;
  clear: both;
  width: 100%;
  height: 50px;
  background-color: #25283D;
  /* Force Hardware Acceleration */
  transform: translateZ(0);
  will-change: transform;
  transition: transform .5s;
}

.cd-secondary-nav::after {
  /* gradient on the right - to indicate it's possible to scroll */
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  width: 35px;
  background: transparent;
  background: linear-gradient(to left, #25283D, rgba(37, 40, 61, 0));
  pointer-events: none;
  transition: opacity .2s;
}

.cd-secondary-nav.nav-end::after {
  opacity: 0;
}

.cd-secondary-nav ul, .cd-secondary-nav li, .cd-secondary-nav a {
  height: 100%;
}

.cd-secondary-nav ul {
  /* enables a flex context for all its direct children */
  display: -ms-flexbox;
  display: flex;
  padding: 0 5%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.cd-secondary-nav ul::after {
  clear: both;
  content: "";
  display: block;
}

.cd-secondary-nav li {
  display: inline-block;
  float: left;
  /* do not shrink - elements float on the right of the element */
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.cd-secondary-nav li:last-of-type {
  padding-right: 20px;
}

.cd-secondary-nav a {
  display: block;
  color: #ffffff;
  opacity: .6;
  line-height: 50px;
  padding: 0 1em;
}

.cd-secondary-nav a:hover, .cd-secondary-nav a.active {
  opacity: 1;
}

@media only screen and (min-width: 1024px) {
  .cd-secondary-nav {
    height: 70px;
    overflow: visible;
  }
  .cd-secondary-nav ul {
    /* reset mobile style */
    display: block;
    text-align: center;
  }
  .cd-secondary-nav li {
    /* reset mobile style */
    float: none;
    -ms-flex-negative: 1;
    flex-shrink: 1;
  }
  .cd-secondary-nav a {
    line-height: 70px;
  }
  .cd-secondary-nav a.active {
    box-shadow: inset 0 -3px #8F3985;
  }
}

/* --------------------------------

3. Auto-Hiding Navigation - with Sub Nav + Hero Image

-------------------------------- */
.cd-secondary-nav.fixed {
  position: fixed;
  top: 60px;
}

.cd-secondary-nav.slide-up {
  -ms-transform: translateY(-60px);
  transform: translateY(-60px);
}

@media only screen and (min-width: 1024px) {
  .cd-secondary-nav.fixed {
    top: 80px;
    /* fixes a bug where nav and subnab move with a slight delay */
    box-shadow: 0 -6px 0 #25283D;
  }
  .cd-secondary-nav.slide-up {
    -ms-transform: translateY(-80px);
    transform: translateY(-80px);
  }
}

/* --------------------------------

Main content

-------------------------------- */
.cd-main-content {
  padding: 60px 5% 2em;
  overflow: hidden;
}

.cd-main-content.sub-nav {
  /* to be used if there is sub nav */
  padding-top: 110px;
}

.cd-main-content.sub-nav-hero {
  /* to be used if there is hero image + subnav */
  padding-top: 0;
}

.cd-main-content.sub-nav-hero.secondary-nav-fixed {
  margin-top: 50px;
}

.cd-main-content p {
  max-width: 1024px;
  line-height: 1.6;
  margin: 2em auto;
  font-family: "David Libre", serif;
  color: #a5a8a9;
}

@media only screen and (min-width: 1024px) {
  .cd-main-content {
    padding-top: 80px;
  }
  .cd-main-content.sub-nav {
    padding-top: 150px;
  }
  .cd-main-content.sub-nav-hero.secondary-nav-fixed {
    margin-top: 70px;
  }
  .cd-main-content p {
    font-size: 2.4rem;
  }
}

/*
  adjust the positioning of in-page links
  http://nicolasgallagher.com/jump-links-and-viewport-positioning/
*/
.cd-main-content.sub-nav :target::before,
.cd-main-content.sub-nav-hero :target::before {
  display: block;
  content: "";
  margin-top: -50px;
  height: 50px;
  visibility: hidden;
}

@media only screen and (min-width: 1024px) {
  .cd-main-content.sub-nav :target::before,
  .cd-main-content.sub-nav-hero :target::before {
    margin-top: -70px;
    height: 70px;
  }
}

/* --------------------------------

Intro Section

-------------------------------- */
.cd-hero {
  /* vertically align its content */
  display: table;
  width: 100%;
  margin-top: 60px;
  height: 300px;
  background: url(../img/cd-hero-background.jpg) no-repeat center center;
  background-size: cover;
}

.cd-hero .cd-hero-content {
  /* vertically align inside parent element */
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .cd-hero {
    height: 400px;
  }
}

@media only screen and (min-width: 1024px) {
  .cd-hero {
    height: 600px;
    margin-top: 80px;
  }
}

/*--------------------------------------------------------------
  # Sections
  --------------------------------------------------------------*/
/*--------------------------------------------------------------
  ##  Loading
  --------------------------------------------------------------*/
.loading {
  display: block;
  position: fixed;
  z-index: 9999;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #111;
  opacity: 1;
  transition: all 1.5s 2s ease-in-out;
}

.loading .loading-wrapper {
  position: relative;
  left: calc(50% - 25px);
  top: calc(50% - 20px);
  width: 50px;
  height: 40px;
  transition: all 2s 1s ease-in-out;
}

.loading .loading-wrapper .rec {
  display: inline-block;
  height: 100%;
  width: 6px;
  background: #fff;
  animation: loading 1.2s infinite ease-in-out;
}

.loading .loading-wrapper .r2 {
  animation-delay: -1.1s;
}

.loading .loading-wrapper .r3 {
  animation-delay: -1s;
}

.loading .loading-wrapper .r4 {
  animation-delay: -.9s;
}

.loading .loading-wrapper .r5 {
  animation-delay: -.8s;
}

@keyframes loading {
  0%, 100%, 40% {
    -ms-transform: scaleY(0.5);
    transform: scaleY(0.5);
  }
  20% {
    -ms-transform: scaleY(1);
    transform: scaleY(1);
  }
}

.loading.loaded {
  visibility: hidden;
  opacity: 0;
}

.loaded .loading-wrapper {
  opacity: 0;
}

/*--------------------------------------------------------------
  ##  Header
  --------------------------------------------------------------*/
/* Back To Top */
.return-to-top {
  position: fixed;
  bottom: 50px;
  right: 50px;
  background: #33CEFF;
  width: 42px;
  height: 42px;
  text-decoration: none;
  display: none;
  transition: all 0.3s ease;
  z-index: 1000;
}

.return-to-top i {
  color: #fff;
  margin: 0;
  position: relative;
  left: 11px;
  top: 9px;
  font-size: 19px;
  transition: all 0.3s ease;
}

.return-to-top:hover {
  background: rgba(0, 0, 0, 0.9);
}

.return-to-top:hover i {
  color: #fff;
  top: 5px;
}

.back-top {
  display: block;
}

.header_wrapper {
  width: 94%;
  margin: 0 auto;
  max-width: 1140px;
  position: relative;
}

.dialog {
  position: fixed;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  pointer-events: none;
  z-index: 9999;
}

.dialog, .dialog__overlay {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.dialog--close .dialog__overlay {
  transition-duration: 0.5s;
}

.dialog--open .dialog__overlay {
  transition-duration: 0.8s;
}

.dialog--open .dialog__overlay {
  opacity: 1;
  pointer-events: auto;
}

.dialog__overlay {
  position: absolute;
  z-index: 1;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  transition: opacity 0.3s;
  -webkit-backface-visibility: hidden;
}

.dialog.dialog--open .dialog__content {
  opacity: 1;
}

.dialog--open .dialog__content {
  pointer-events: auto;
}

.dialog__content {
  padding: 0;
  background: transparent;
}

.dialog__content {
  width: 80%;
  max-width: 520px;
  min-width: 290px;
  background: #fff;
  padding: 50px;
  text-align: center;
  position: relative;
  z-index: 5;
  opacity: 0;
}

.dialog--open .dialog-inner {
  opacity: 1;
  transition: opacity 0.3s;
}

.dialog-inner {
  opacity: 0;
  background: #fff;
}

.dialog.dialog--open h2 {
  animation: anim-elem-1 0.7s ease-out both;
}

.dialog h2 {
  margin: 0;
  font-weight: 400;
  font-size: 24px;
  padding: 0 0 15px;
  text-transform: uppercase;
}

#search_popup_wrapper form {
  margin: 10px 0;
  position: relative;
}

.search-form {
  position: relative;
  width: 100%;
}

.search-form .search-field {
  width: 100%;
}

input[type="search"] {
  padding-left: 20px;
  padding-right: 35px;
  height: 45px;
  line-height: 1;
  color: #aaa;
  border: 1px solid transparent;
  transition: all 0.3s;
  box-sizing: border-box;
  background-color: #f7f7f7;
  vertical-align: top;
  color: #111;
  border: 1px solid #ddd;
  outline: none;
  transition: all 0.3s ease-in-out;
}

input[type="search"]:hover {
  border-color: #33CEFF;
}

.search-form .search-submit {
  position: absolute;
  width: 45px;
  height: 45px;
  right: 0;
  top: 0;
  padding: 0;
  font-size: 16px;
  background-color: transparent;
  color: #bababa;
  border: none;
  outline: none;
  transition: all 0.3s ease-in-out;
}

.search-form .search-submit:hover {
  color: #33CEFF;
}

.dialog.dialog--open a {
  position: absolute;
  border: none;
  top: 0;
  right: 0;
  width: 35px;
  height: 35px;
  line-height: 35px !important;
  background-color: #eee;
  color: #000;
  transition: all 0.3s ease-in-out;
}

.dialog.dialog--open a:hover {
  color: #33CEFF;
}

.navbar-toggle .icon-bar {
  background: #FFF;
}

/* Mobile Menu */
#mobile-header {
  text-align: center;
  background: rgba(0, 0, 0, 0.8);
  padding: 8px 10px;
  height: 50px;
  width: 100%;
  display: none;
  position: fixed;
  z-index: 10000;
}

#mobile-header .main-logo {
  width: 100px;
  display: inline-block;
}

#mobile-header .main-logo img {
  width: 100%;
}

.menu-container {
  float: right;
}

.cbp-spmenu-right {
  right: -270px;
}

.cbp-spmenu-vertical a {
  border-bottom: none;
}

.cbp-spmenu-vertical a:hover {
  background: none;
}

.cbp-spmenu-push-toleft:before {
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  z-index: 10000;
}

.cbp-spmenu-push-toleft {
  left: -270px;
}

.dt-social-link {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dt-social-link li {
  display: inline-block;
  margin-right: 8px;
  text-decoration: none;
  height: 25px;
  width: 25px;
  border-radius: 50%;
  text-align: center;
  border: 2px solid #33CEFF;
  transition: all 0.3s ease-in-out;
}

.dt-social-link li:last-child {
  padding: 0;
}

.dt-social-link li a {
  color: #33CEFF;
  transition: all 0.3s ease-in-out;
  display: block;
  transition: all 0.3s ease-in-out;
  padding: 0;
}

.dt-social-link li a i {
  font-size: 12px;
  font-size: 0.85714em;
  line-height: 28px;
  line-height: 2em;
}

.dt-social-link li:hover {
  background: #33CEFF !important;
}

.dt-social-link li:hover a {
  color: #FFF;
}

#mobile-wrapper {
  width: 270px;
  background: #222533;
  position: fixed;
  z-index: 1000;
  overflow-y: auto;
  overflow-x: hidden;
  top: 0;
  height: 100vh;
}

.mobile_menu {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}

.mobile_menu li {
  border-bottom: 1px solid #06191f;
  border-top: 1px solid #313131;
}

.mobile_menu li:first-child {
  border-top: none;
}

.mobile_menu li:last-child {
  border-bottom: none;
}

.mobile_menu li a {
  display: block;
  color: #FFF;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.3s ease-in-out;
}

.menu-item-has-children .sub-menu {
  display: none;
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu-item-has-children .sub-menu li {
  background: #1d1d1d;
}

.menu-item-has-children.children-menu-visible .sub-menu {
  display: block;
  transition: all 0.3s ease-in-out;
}

.mobile_menu_search {
  padding: 0 20px;
  margin-bottom: 30px;
}

.mobile_menu_search #search {
  border: 1px solid #ddd;
  position: relative;
}

.mobile_menu_search #search input[type="text"] {
  border: none;
  outline: none;
  background: transparent;
  padding: 7px 10px;
  width: 85%;
  color: #FFF;
}

.mobile_menu_search #searchsubmit {
  background-color: transparent;
  border: none;
}

.mobile_menu_search #searchsubmit:focus, .mobile_menu_search #searchsubmit:hover {
  outline: none;
}

.mobile_menu_search #searchsubmit:hover {
  color: #33CEFF;
}

.menu-toggle {
  position: relative;
  width: 30px;
  height: 23px;
  float: right;
  margin: 6px;
}

.menu-toggle:hover {
  cursor: pointer;
}

.menu-toggle > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: 1px;
  background-color: #33CEFF;
  transition: all 0.5s ease-in-out;
}

.menu-toggle > div:nth-child(2) {
  top: 50%;
  margin-top: -1px;
}

.menu-toggle > div:nth-child(3) {
  top: auto;
  bottom: 0;
}

.menu-toggle.active > div:nth-child(1) {
  -ms-transform: translateY(10px) rotate(135deg);
      transform: translateY(10px) rotate(135deg);
}

.menu-toggle.active > div:nth-child(2) {
  opacity: 0;
}

.menu-toggle.active > div:nth-child(3) {
  -ms-transform: translateY(-12px) rotate(-135deg);
      transform: translateY(-12px) rotate(-135deg);
}

/*--------------------------------------------------------------
  ##  Banner
  --------------------------------------------------------------*/
/* Banner */
.swiper-banner {
  position: relative;
  overflow: hidden;
}

.swiper-banner .swiper-slide .slider-caption-one, .swiper-banner .swiper-slide .slider-caption-two, .swiper-banner .swiper-slide .slider-caption-three {
  opacity: 0;
  transition-delay: .7s;
}

.swiper-banner .swiper-slide-active .slider-caption-one, .swiper-banner .swiper-slide-active .slider-caption-two, .swiper-banner .swiper-slide-active .slider-caption-three {
  opacity: 1;
}

.swiper-banner .swiper-slide > img {
  width: 100%;
  height: auto;
}

.swiper-banner .swiper-slide .slider-caption h3 {
  font-size: 20px;
  font-size: 1.42857em;
  color: #FFF;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.6em;
  margin-top: 0;
  text-shadow: 0px 4px 5.88px rgba(0, 0, 0, 0.2);
  margin-top: 0;
  margin-bottom: 30px;
  text-transform: uppercase;
}

.swiper-banner .swiper-slide .slider-caption h2 {
  font-size: 50px;
  font-size: 3.57143em;
  color: #FFF;
  font-weight: 700;
  text-transform: uppercase;
  text-shadow: 0px 4px 5.88px rgba(0, 0, 0, 0.2);
  margin-top: 0;
  margin-bottom: 40px;
}

.swiper-banner .swiper-slide .slider-caption p {
  color: #FFF;
  line-height: 26px;
  line-height: 1.85714em;
  margin-bottom: 50px;
}

.banner-next, .banner-prev {
  top: 50%;
  position: absolute;
  z-index: 500;
  color: #FFF;
  background: rgba(0, 0, 0, 0.7);
  height: 50px;
  width: 50px;
  transition: all 0.3s ease;
  text-align: center;
  opacity: 0;
  overflow: hidden;
  cursor: pointer;
}

.banner-next .next-btn i, .banner-next .prev-btn i, .banner-prev .next-btn i, .banner-prev .prev-btn i {
  font-size: 40px;
  font-size: 2.85714em;
}

.banner-next:hover, .banner-prev:hover {
  background: #33CEFF;
}

.banner-next {
  right: 0%;
}

.swiper-pagination {
  text-align: right;
  right: 100px;
  left: auto !important;
}

.swiper-pagination-bullet {
  width: 3px;
  height: 20px;
  border-radius: 0;
  background: #FFF;
  opacity: 1;
  margin: 0 2px !important;
}

.swiper-pagination-bullet-active {
  background: #33CEFF;
  height: 25px;
}

.overlay {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.slider-caption-one {
  text-align: center;
  top: 50% !important;
  left: 50% !important;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  width: 100%;
  position: absolute;
}

.slider-caption-one h2 {
  font-size: 70px;
  font-size: 5em;
  color: #FFF;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 0;
  position: relative;
  padding: 15px 0;
  display: block;
  letter-spacing: 1px;
  margin-bottom: 20px;
}

.slider-caption-one h2:before, .slider-caption-one h2:after {
  position: absolute;
  content: '';
  background: #33CEFF;
  width: 300px;
  height: 3px;
  left: 50%;
  right: 50%;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
  transition: all 0.3s ease-in-out;
}

.slider-caption-one h2:before {
  top: 0;
}

.slider-caption-one h2:after {
  bottom: 0;
}

.slider-caption-one h3 {
  font-size: 22px;
  color: #FFF;
  margin-bottom: 50px;
  letter-spacing: 1px;
}

.slider-caption-two {
  position: absolute;
  left: 20%;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
}

.slider-caption-two h4 {
  color: #33CEFF;
  font-size: 22px;
  font-size: 1.57143em;
  margin-top: 0;
  text-transform: uppercase;
  font-weight: 700;
}

.slider-caption-two h2 {
  font-size: 40px;
  font-size: 2.85714em;
  color: #FFF;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
}

.slider-caption-two p {
  color: #FFF;
  font-size: 16px;
  font-size: 1.14286em;
  margin-bottom: 30px;
}

.slider-caption-three {
  position: absolute;
  left: 20%;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
}

.slider-caption-three h3 {
  color: #fff;
  font-weight: 600;
  font-size: 32px;
  font-size: 2.28571em;
  letter-spacing: 1px;
  margin-bottom: 30px;
  font-weight: 600;
}

.slider-caption-three h4 {
  color: #FFF;
  font-size: 22px;
  font-size: 1.57143em;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 1px;
}

.slider-caption-three h2 {
  font-size: 50px;
  font-size: 3.57143em;
  color: #33CEFF;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 25px;
}

.slider-caption-three p {
  color: #ddd;
  font-size: 15px;
  font-size: 1.07143em;
  margin-bottom: 30px;
}

.switcher {
  position: absolute;
  bottom: 50px;
  left: 50%;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
  z-index: 500;
  display: block;
  animation: move 2.5s infinite;
}

.switcher i {
  color: #FFF;
  font-size: 30px;
}

.switcher:hover {
  text-decoration: none;
}

.swiper-banner:hover .banner-next, .swiper-banner:hover .banner-prev {
  opacity: 1;
}

@keyframes move {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(25px);
  }
  100% {
    transform: translateY(0px);
  }
}

.banner-two .banner-next, .banner-two .banner-prev {
  height: 100px;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
}

.banner-two .banner-next i, .banner-two .banner-prev i {
  line-height: 100px;
}

/*--------------------------------------------------------------
  ##  About
  --------------------------------------------------------------*/
#about {
  text-align: center;
  padding: 20px 0;
  background: #ffffff;
  overflow: hidden;
}

#about .caption {
  margin-bottom: 10px;
  color: #111;
}

.about-box {
  border-right: 10px;
  background: #FFF;
  padding: 10px 20px 20px;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
  text-align: left;
  position: relative;
}

.about-box .icon-box {
  height: 20px;
  width: 70px;
  background: #FFF;
  transition: all 0.3s ease-in-out;
  margin: 0 auto;
  border-radius: 4px;
  text-align: center;
  position: absolute;
  top: -35px;
  left: 20px;
  border: 1px solid #ddd;
}

.about-box .icon-box i {
  font-size: 30px;
  font-size: 2.14286em;
  line-height: 76px;
  color: #000;
  transition: all 0.3s ease-in-out;
}

.about-box .about-title {
  font-size: 20px;
  font-size: 1.42857em;
  color: #111;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 20px;
  transition: all 0.3s ease-in-out;
}

.about-box p {
  margin-bottom: 0;
  color: #111;
  font-size: 15px;
  font-size: 1.07143em;
}

.about-box:hover {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.about-box:hover .icon-box {
  background: #33CEFF;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 10px 1px;
}

.about-box:hover .icon-box i {
  color: #FFF;
}

.about-box:hover .about-title {
  color: #33CEFF;
}

/* Aboute Two */
.about-two {
  padding: 80px 0;
  text-align: center;
}

.about-two .about-box {
  text-align: center;
  padding: 20px;
}

.about-two .about-box i {
  font-size: 55px;
  font-size: 3.92857em;
  color: #000;
  transition: all 0.3s ease-in-out;
}

.about-two .about-box:hover i {
  color: #33CEFF;
}

/*--------------------------------------------------------------
  ##  Service
  --------------------------------------------------------------*/
#service {
  text-align: center;
  padding: 70px 0;
  position: relative;
  background: #f5f5f5;
  overflow: hidden;
}

.service-item {
  text-align: center;
}

.service-item .service {
  padding: 20px;
  transition: all 0.5s ease;
  cursor: pointer;
  text-align: center;
}

.service-item .service .icon-box {
  margin: 0 auto;
  height: 90px;
  width: 90px;
  border-radius: 50%;
  margin-bottom: 30px;
  transition: all 0.3s ease-in-out;
  background: #FFF;
  position: relative;
}

.service-item .service .icon-box i {
  font-size: 35px;
  font-size: 2.5em;
  color: #111;
  position: relative;
  z-index: 10;
  line-height: 100px;
}

.service-item .service .icon-box .icon-overlay {
  position: absolute;
  height: 30%;
  width: 30%;
  background: #33CEFF;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  z-index: -1;
  transition: all 0.3s ease-in-out;
  margin: auto;
}

.service-item .service .service_content .title {
  color: #111;
  font-size: 18px;
  font-size: 1.28571em;
  margin-top: 0;
  text-transform: uppercase;
  transition: all 0.3s ease-in-out;
  font-weight: 600;
}

.service-item .service .service_content p {
  color: #111;
  margin-bottom: 0;
}

.service-item .service:hover .icon-box {
  box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 10px 1px;
}

.service-item .service:hover .icon-box i {
  color: #FFF;
}

.service-item .service:hover .icon-box .icon-overlay {
  z-index: 1;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.service-item .service:hover .service_content .title {
  color: #33CEFF;
}

/* Service Two */
.service-two {
  padding: 100px 0;
  text-align: center;
}

.service-two .service {
  margin: 1px;
  border: 1px solid #a2a2a2;
  height: 260px;
  padding: 55px 0;
}

.service-two .service i {
  font-size: 70px;
  font-size: 5em;
  color: #33CEFF;
  display: block;
  margin-bottom: 20px;
}

.service-two .service .overlay {
  background: #33CEFF;
  padding: 50px 0;
  opacity: 0;
  -ms-transform: scaleX(0);
      transform: scaleX(0);
  transition: all 0.3s ease-in-out;
}

.service-two .service .overlay h3 {
  color: #FFF;
  font-weight: 700;
  margin-bottom: 30px;
}

.service-two .service .overlay p {
  color: #111;
}

.service-two .service:hover .overlay {
  -ms-transform: scaleX(1);
      transform: scaleX(1);
  opacity: 1;
}

/*--------------------------------------------------------------
  ##  Portfolio
  --------------------------------------------------------------*/
/* Portfolio */
.portfolio {
  padding-top: 60px;
  padding-bottom: 80px;
  text-align: center;
  overflow: hidden;
}

.portfolio .portfolioFilter {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
}

.portfolio .portfolioFilter li {
  display: inline-block;
  margin-right: 10px;
}

.portfolio .portfolioFilter li a {
  text-decoration: none;
  color: #111;
  font-size: 14px;
  padding: 6px 15px;
  border: 1px solid #eee;
  transition: all 0.3s ease-in-out;
  background: #eee;
}

.portfolio .portfolioFilter li a.current, .portfolio .portfolioFilter li a:hover {
  background-color: #33CEFF;
  color: #FFF;
  border-color: transparent;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.portfolio_container .portfolio-item {
  position: relative;
  overflow: hidden;
}

.portfolio_container .portfolio-item img {
  width: 100%;
  transition: all 0.5s ease-in-out;
}

.portfolio_container .portfolio-item .overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(53, 152, 219, 0.8);
  text-align: left;
  -ms-transform: scale(0);
      transform: scale(0);
  transition: all 0.3s ease-in-out;
  text-align: center;
}

.portfolio_container .portfolio-item .overlay:before, .portfolio_container .portfolio-item .overlay:after {
  content: "";
  opacity: 0;
  position: absolute;
  left: 15px;
  bottom: 15px;
  right: 15px;
  top: 15px;
  z-index: 1;
  transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
}

.portfolio_container .portfolio-item .overlay:before {
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  -ms-transform: scale(0, 1);
      transform: scale(0, 1);
}

.portfolio_container .portfolio-item .overlay:after {
  border-left: 1px solid #FFF;
  border-right: 1px solid #FFF;
  -ms-transform: scale(1, 0);
      transform: scale(1, 0);
}

.portfolio_container .portfolio-item .overlay .work-caption {
  position: absolute;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  z-index: 100;
}

.portfolio_container .portfolio-item .overlay .work-caption .view {
  color: #FFF;
  display: inline-block;
  color: #FFF;
  transition: all .5s ease-in-out;
  font-size: 20px;
  font-size: 1.42857em;
  height: 40px;
  width: 40px;
  padding: 5px;
  border: 1px solid #FFF;
  text-align: center;
  line-height: 20px;
  line-height: 1.42857em;
  border-radius: 50%;
  margin-bottom: 100px;
}

.portfolio_container .portfolio-item .overlay .work-caption .view:first-child {
  margin-right: 10px;
}

.portfolio_container .portfolio-item .overlay .work-caption .view:hover {
  background: #000;
  border-color: transparent;
}

.portfolio_container .portfolio-item .overlay .work-caption h2 {
  margin-top: 0;
  font-size: 22px;
  font-size: 1.57143em;
  transition: all 0.5s ease-in-out;
  -ms-transform: translateY(70px) scale(0.95);
      transform: translateY(70px) scale(0.95);
  text-transform: uppercase;
}

.portfolio_container .portfolio-item .overlay .work-caption h2 a {
  color: #FFF;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.portfolio_container .portfolio-item .overlay .work-caption h2 a:hover {
  color: #111;
}

.portfolio_container .portfolio-item .overlay .work-caption h3 {
  font-size: 16px;
  font-size: 1.14286em;
  margin: 0;
  transition: all 0.7s ease-in-out;
  -ms-transform: translateY(60px) scale(0.95);
      transform: translateY(60px) scale(0.95);
}

.portfolio_container .portfolio-item .overlay .work-caption h3 a {
  color: #FFF;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.portfolio_container .portfolio-item .overlay .work-caption h3 a:hover {
  color: #111;
}

.portfolio_container .portfolio-item:hover img {
  -ms-transform: scale(1.3);
      transform: scale(1.3);
}

.portfolio_container .portfolio-item:hover .overlay {
  -ms-transform: scale(1);
      transform: scale(1);
}

.portfolio_container .portfolio-item:hover .overlay:before {
  opacity: 1;
  -ms-transform: scale(1);
      transform: scale(1);
  transition: opacity 0.4s ease 0s, transform 0.45s ease 0.2s;
  transform: scale(1);
}

.portfolio_container .portfolio-item:hover .overlay:after {
  opacity: 1;
  -ms-transform: scale(1);
      transform: scale(1);
  transition: opacity 0.4s ease 0s, transform 0.45s ease 0.2s;
  transform: scale(1);
}

.portfolio_container .portfolio-item:hover .overlay .work-caption .view {
  margin-bottom: 30px;
}

.portfolio_container .portfolio-item:hover .overlay .work-caption h2 {
  -ms-transform: translateX(0px) scale(1);
      transform: translateX(0px) scale(1);
}

.portfolio_container .portfolio-item:hover .overlay .work-caption h3 {
  -ms-transform: translateX(0) scale(1);
      transform: translateX(0) scale(1);
}

/* Portfolio Two */
.portfolio-bg {
  background: #f5f5f5;
}

#portfolio-two .grid-item {
  width: 33%;
  padding: 10px;
  float: left;
}

.portfolio_container .mix {
  display: none;
}

#portfolio-two .portfolio-item {
  margin: 5px;
}

/*--------------------------------------------------------------
  ##  Countup
  --------------------------------------------------------------*/
.countup {
  padding: 100px 0;
  position: relative;
  background-size: cover;
  overflow: hidden;
  background-size: cover;
}

.counter-box {
  border: 3px solid #33CEFF;
  padding: 15px 0;
  background: rgba(0, 0, 0, 0.5);
}

.counter-box .count i {
  font-size: 50px;
  color: #33CEFF;
  margin-bottom: 25px;
}

.counter-box .count h2 {
  font-size: 50px;
  font-size: 3.57143em;
  color: #FFF;
  font-weight: 700;
}

.counter-box .count p {
  color: #FFF;
  font-size: 16px;
  font-size: 1.14286em;
  font-weight: 300;
}

/* CountUp Two */
.countup-two {
  padding: 100px 0;
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.countup-two .overlay {
  background: rgba(53, 152, 219, 0.5);
}

.countup-two .counter-box {
  border: none;
  background: rgba(0, 0, 0, 0.8);
}

/*--------------------------------------------------------------
  ##  Team
  --------------------------------------------------------------*/
#gp-team {
  padding: 70px 0;
  text-align: center;
  background: #f5f5f5;
  overflow: hidden;
}

#gp-team .caption {
  margin-bottom: 40px;
}

.team_member {
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
  padding: 5px;
  border: 3px solid #33CEFF;
}

.team_member .team_thumb img {
  width: 100%;
}

.team_member .team_intro {
  position: absolute;
  bottom: -75%;
  left: 0;
  background-color: rgba(53, 152, 219, 0.9);
  height: 100%;
  width: 100%;
  padding: 20px;
  text-align: left;
  border-radius: 10px;
  transition: all 0.6s cubic-bezier(0.42, -0.4, 0.57, 1.53);
}

.team_member .team_intro h4 {
  text-transform: uppercase;
  color: #111;
  margin-top: 0;
  font-size: 22px;
  font-size: 1.57143em;
  transition: all 0.3s ease-in-out;
  font-weight: 700;
}

.team_member .team_intro h5 {
  font-size: 18px;
  font-size: 1.28571em;
  color: #111;
  font-weight: 700;
}

.team_member .team_intro span {
  color: #FFF;
  display: block;
  margin-bottom: 50px;
}

.team_member .team_intro p {
  color: #fff;
}

.team_member .team_intro .team_link {
  padding: 0;
  margin: 0;
  list-style: none;
}

.team_member .team_intro .team_link li {
  display: inline-block;
  margin-right: 10px;
  height: 30px;
  width: 30px;
  border: 1px solid #FFF;
  text-align: center;
  background: transparent;
  transition: all 0.3s ease-in-out;
}

.team_member .team_intro .team_link li a i {
  font-size: 15px;
  font-size: 1.07143em;
  line-height: 28px;
  line-height: 2em;
  color: #FFF;
}

.team_member:hover .team_intro {
  bottom: 0;
  border-radius: 0;
}

.team_member:hover .team_intro h4 {
  margin-top: 40px;
}

.team_member:hover .team_intro .team_link li:hover {
  background: #111;
  border-color: transparent;
}

.team_member:hover .team_intro .team_link li:hover a i {
  color: #33CEFF;
}

/* Team Two */
.team-two .owl-carousel {
  position: relative;
}

.team-two .owl-carousel .owl-nav .owl-next, .team-two .owl-carousel .owl-nav .owl-prev {
  font-family: "dt-icons" !important;
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  background-color: transparent;
  margin: 0;
  padding: 0;
}

.team-two .owl-carousel .owl-nav .owl-next:before, .team-two .owl-carousel .owl-nav .owl-next:after, .team-two .owl-carousel .owl-nav .owl-prev:before, .team-two .owl-carousel .owl-nav .owl-prev:after {
  font-size: 70px;
  font-size: 5em;
  color: #111;
}

.team-two .owl-carousel .owl-nav .owl-next:hover, .team-two .owl-carousel .owl-nav .owl-prev:hover {
  background-color: transparent;
}

.team-two .owl-carousel .owl-nav .owl-prev {
  left: -100px;
}

.team-two .owl-carousel .owl-nav .owl-prev:before {
  content: "\e03f";
}

.team-two .owl-carousel .owl-nav .owl-next {
  right: -100px;
}

.team-two .owl-carousel .owl-nav .owl-next:after {
  content: "\e04b";
}

#team-slider .team_member {
  padding: 0;
  border: 2px solid #33CEFF;
}

#team-slider .team_member .team_thumb img {
  transition: all 0.3s ease-in-out;
}

#team-slider .team_member .team_intro {
  text-align: center !important;
  bottom: 0;
  border-radius: 0;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

#team-slider .team_member .team_intro h4 {
  margin-top: 150px;
  font-weight: 700;
  position: relative;
  padding-bottom: 15px;
  letter-spacing: 1px;
}

#team-slider .team_member .team_intro h4:after {
  position: absolute;
  content: '';
  background: #333;
  height: 2px;
  width: 70px;
  bottom: 0;
  left: 50%;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
}

#team-slider .team_member .team_intro p {
  margin-bottom: 20px;
}

#team-slider .team_member:hover .team_thumb img {
  -ms-transform: scale(1.1);
      transform: scale(1.1);
}

#team-slider .team_member:hover .team_intro {
  opacity: 1;
}

#team-slider .team_member:hover .team_intro h4 {
  margin-top: 100px;
}

/*--------------------------------------------------------------
  ##  Skills
  --------------------------------------------------------------*/
.our-skills {
  overflow: hidden;
  position: relative;
}

.our-skills .skills {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.our-skills .skills-title {
  text-align: center;
}

.our-skills .skills-title h2 {
  color: #000;
  font-weight: 700;
  font-size: 30px;
  font-size: 2.14286em;
  margin-bottom: 20px;
}

.our-skills .skills-title p {
  color: #000;
  margin-bottom: 30px;
}

.our-skills p {
  color: #000;
  margin-bottom: 10px;
}

.our-skills .skills-thumb img {
  width: 100%;
}

.skills-wrapper {
  max-width: 550px;
  margin: 0 auto;
  top: 50%;
}

.skills-heading span {
  font-size: 16px;
  font-weight: 700;
  color: #111111;
}

.skills-heading p {
  color: #000;
  float: right;
  margin-bottom: 0;
}

progress {
  border: 0;
  height: 15px;
  width: 100%;
  margin-bottom: 10px;
}

progress::-webkit-progress-bar {
  background-color: #eaeaea;
}

progress::-webkit-progress-value {
  background-color: #33CEFF;
  height: 15px;
}

/* Skills Two */
.our-skills-two {
  padding: 150px 0;
  background-size: cover;
  position: relative;
}

.our-skills-two .overlay {
  background: rgba(0, 0, 0, 0.8);
}

.our-skills-two .skill-bar {
  padding-right: 100px;
}

.our-skills-two .skill-bar .skills-title h2 {
  color: #33CEFF;
  font-weight: 700;
  margin-bottom: 30px;
}

.our-skills-two .skill-bar .skills-heading span, .our-skills-two .skill-bar .skills-heading p {
  color: #FFF;
}

.our-skills-two progress::-webkit-progress-bar {
  padding: 1px;
  border: 1px solid #FFF;
  background-color: transparent;
  height: 9px;
}

.our-skills-two progress::-webkit-progress-value {
  height: 5px;
}

.skills-description h2 {
  color: #FFF;
  margin-top: 0;
  font-weight: 700;
  margin-bottom: 30px;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
}

.skills-description h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #33CEFF;
  width: 50px;
  content: '';
  height: 4px;
}

.skills-description p {
  color: #ddd;
  margin-bottom: 45px;
}

.skills-description .gp-btn {
  color: #FFF;
  border-color: #FFF;
  border-radius: 0;
  background: #33CEFF;
  border-color: transparent;
}

.skills-description .gp-btn:hover {
  background-color: transparent;
  border-color: #FFF;
}

/*--------------------------------------------------------------
  ##  Blog
  --------------------------------------------------------------*/
#blog {
  padding: 50px 0;
  text-align: center;
  overflow: hidden;
}

.blog_post {
  text-align: left;
  border: 1px solid #ecf0f1;
  padding: 15px;
}

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

.blog_post ul li {
  display: inline-block;
}

.blog_post .blog-thumb {
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
}

.blog_post .blog-thumb img {
  width: 100%;
  transition: all 0.8s ease-in-out;
  overflow: hidden;
}

.blog_post .blog-thumb .blog-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(53, 152, 219, 0.8);
  top: 0;
  left: 0;
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

.blog_post .blog-thumb:hover img {
  -ms-transform: scale(1.2);
      transform: scale(1.2);
}

.blog_post .blog-thumb:hover .blog-overlay {
  opacity: 1;
}

.blog_post .blog_content .post_meta {
  margin-bottom: 10px;
}

.blog_post .blog_content .post_meta li {
  padding-right: 10px;
  position: relative;
}

.blog_post .blog_content .post_meta li:first-child:after {
  content: '';
  position: absolute;
  height: 12px;
  width: 2px;
  color: #DDD;
  background: #989898;
  right: 0;
  top: 4px;
}

.blog_post .blog_content .post_meta li:last-child {
  margin-left: 10px;
}

.blog_post .blog_content .post_meta li a {
  text-decoration: none;
  color: #989898;
}

.blog_post .blog_content .post_meta li a i {
  padding-right: 5px;
}

.blog_post .blog_content .blog_title {
  padding-bottom: 5px;
  border-bottom: 1px solid #f5f5f5;
  font-size: 20px;
  font-size: 1.42857em;
  text-transform: uppercase;
  font-weight: 500;
  display: block;
  font-weight: 700;
}

.blog_post .blog_content .blog_title a {
  text-decoration: none;
  color: #2c3e50;
  transition: all 0.3s ease-in-out;
}

.blog_post .blog_content .blog_title a:hover {
  color: #33CEFF;
}

.blog_post .blog_content p {
  color: #6d6c6c;
  margin-bottom: 15px;
}

.blog_post .blog_content .gp-btn {
  font-size: 12px;
  font-size: 0.85714em;
  border-radius: 0;
  padding: 6px 8px;
  margin-bottom: 20px;
  text-transform: capitalize;
  color: #000;
  background: rgba(0, 0, 0, 0.2);
  border-color: transparent;
  text-decoration: none;
  display: inline-block;
  transition: all 0.3s ease-in-out;
  font-weight: 600;
}

.blog_post .blog_content .gp-btn:hover {
  color: #FFF;
  background-color: #33CEFF;
}

.blog-comments {
  padding-top: 10px;
  border-top: 1px solid #ecf0f1;
}

.blog-comments > a {
  display: inline-block;
  text-decoration: none;
  color: #111;
}

.blog-comments > a i {
  padding-right: 10px;
}

.blog-comments .blog-social {
  float: right;
}

.blog-comments .blog-social li {
  padding: 0 5px;
}

.blog-comments .blog-social li a {
  color: #111;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.blog-comments .blog-social li a:hover {
  color: #33CEFF;
}

/* Blog Two */
.blog-two p {
  margin-bottom: 50px;
}

.blog-two .blog_post {
  margin-bottom: 20px;
  padding: 0;
}

.blog-two .blog_post .blog-thumb-left {
  float: left;
  width: 50%;
  position: relative;
}

.blog-two .blog_post .blog-thumb-left img {
  width: 100%;
}

.blog-two .blog_post .blog-thumb-left .blog-comments {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(53, 152, 219, 0.8);
  border-top: none;
  padding: 10px;
}

.blog-two .blog_post .blog-thumb-left .blog-comments a {
  color: #FFF;
  transition: all 0.3s ease-in-out;
}

.blog-two .blog_post .blog-thumb-left .blog-comments a:hover {
  color: #111;
}

.blog-two .blog_post .blog_content {
  margin-left: 290px;
  padding: 10px 0;
}

.blog-two .blog_post .blog_content .blog_title {
  border-bottom: none;
  padding-bottom: 0;
}

.blog-two .blog_post .blog_content .gp-btn {
  margin-bottom: 0;
}

.blog-two .blog_post.bolg-right .blog_content {
  margin-left: 0;
  margin-right: 290px;
  padding: 10px;
}

.blog-two .blog_post .blog-thumb-right {
  position: relative;
  float: right;
  width: 50%;
}

.blog-two .blog_post .blog-thumb-right img {
  width: 100%;
}

.blog-two .blog_post .blog-thumb-right .blog-comments {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(53, 152, 219, 0.8);
  border-top: none;
  padding: 10px;
}

.blog-two .blog_post .blog-thumb-right .blog-comments a {
  color: #FFF;
  transition: all 0.3s ease-in-out;
}

.blog-two .blog_post .blog-thumb-right .blog-comments a:hover {
  color: #111;
}

/*--------------------------------------------------------------
  ##  Testimonial
  --------------------------------------------------------------*/
#testimonial {
  padding: 50px 0;
  text-align: center;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
}

#testimonial .section-title {
  color: #FFF;
}

.testimonial-slider .testional .item {
  position: relative;
  padding: 50px 0;
  text-align: center;
}

.testimonial-slider .testional .item .cliten-thumbs {
  height: 100px;
  width: 100px;
  border-radius: 50%;
  border: 4px solid #33CEFF;
  margin: 0 auto 20px;
}

.testimonial-slider .testional .item .cliten-thumbs img {
  width: 100%;
  border-radius: 50%;
}

.testimonial-slider .testional .item .testi-content p {
  color: #ddd;
  margin-bottom: 60px;
  font-style: italic;
  letter-spacing: 1px;
}

.testimonial-slider .testional .item h4 {
  color: #33CEFF;
  text-transform: uppercase;
  font-size: 16px;
  font-size: 1.14286em;
  margin-bottom: 10px;
  font-weight: 700;
}

.testimonial-slider .testional .item span {
  color: #FFF;
}

.testimonial-slider .owl-nav {
  display: none;
}

.owl-theme .owl-dots .owl-dot span {
  transition: all 0.3s ease;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #33CEFF;
  height: 10px;
  width: 15px;
}

/* Testimonial */
#feedback-slider2 .item {
  background: rgba(255, 255, 255, 0.8);
  padding: 30px;
}

#feedback-slider2 .item .testi-content p {
  color: #111;
}

#feedback-slider2 .item h4 {
  color: #33CEFF;
}

#feedback-slider2 .item span {
  color: #333;
}

/*--------------------------------------------------------------
  ##  Pricing Table
  --------------------------------------------------------------*/
#pricing_table {
  padding: 50px 0;
  text-align: center;
  background: #f5f5f5;
  overflow: hidden;
}

.table {
  background: #FFF;
  box-shadow: 0px -3px 29px -2px rgba(0, 0, 0, 0.2);
  max-width: 350px;
  margin: 0 auto;
  margin-bottom: 20px;
}

.table .pricing_plan {
  border: 1px solid #ededed;
}

.table .pricing_plan .price {
  background: #33CEFF;
  padding-bottom: 20px;
}

.table .pricing_plan .price h4 {
  color: #111;
  text-transform: uppercase;
  font-size: 26px;
  font-size: 1.85714em;
  font-weight: 700;
  padding: 10px 0;
  background-color: rgba(255, 255, 255, 0.2);
}

.table .pricing_plan .price p {
  color: #eee;
  line-height: 24px;
  line-height: 1.71429em;
  margin-bottom: 15px;
}

.table .pricing_plan .price .plan {
  display: inline-block;
  height: 120px;
  width: 120px;
  border-radius: 50%;
  padding: 29px 0;
  background: #FFF;
}

.table .pricing_plan .price .plan h3 {
  font-size: 40px;
  font-size: 2.85714em;
  color: #000;
  font-weight: 600;
  margin-bottom: 0;
}

.table .pricing_plan .price .plan span {
  font-size: 14px;
}

.table .pricing_plan .configuration {
  padding: 0;
  margin: 0;
  list-style: none;
}

.table .pricing_plan .configuration li {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.table .pricing_plan .configuration li:nth-child(odd) {
  background: #f8f8f8;
}

.table .pricing_plan .configuration li:last-child {
  padding: 17px 0;
}

.table .pricing_plan .configuration li.none {
  color: red;
}

.table .pricing_plan .configuration li i {
  margin-right: 10px;
}

.table .pricing_plan .configuration li .gp-btn {
  border-radius: 30px;
  background: #FFF;
  transition: all 0.3s ease-in-out;
  color: #FFF;
  background: #33CEFF;
  text-decoration: none;
}

.table .pricing_plan .configuration li .gp-btn:hover {
  background: #111;
  color: #FFF;
  border-color: transparent;
}

/*--------------------------------------------------------------
  ##  brand
  --------------------------------------------------------------*/
#brand {
  text-align: center;
  padding: 50px 0;
  position: relative;
  overflow: hidden;
}

.brand {
  margin-top: 30px;
}

.brand .item {
  border: 1px solid #111;
}

.brand .owl-nav {
  display: none;
}

.owl-theme .owl-dots {
  margin-top: 20px;
}

/*--------------------------------------------------------------
  ##  Contact
  --------------------------------------------------------------*/
#contact {
  text-align: center;
  padding: 100px 0;
}

#contact .contact-inner {
  padding: 0 50px;
}

.contact-header {
  text-align: left;
  margin-bottom: 50px;
}

.contact-header h2 {
  color: #000;
  margin-bottom: 15px;
  font-size: 32px;
  font-size: 2.28571em;
  text-transform: uppercase;
  font-weight: 700;
}

.contact-form-area {
  background: #FFF;
}

.contact-form-area .contact-info {
  text-align: center;
}

.contact-form-area .contact-info .info {
  background: #FFF;
  padding: 15px 0;
  box-shadow: 0px -3px 29px -2px rgba(0, 0, 0, 0.2);
  margin-bottom: 41px;
}

.contact-form-area .contact-info .info:last-child {
  margin-bottom: 0;
}

.contact-form-area .contact-info .info span i {
  color: #33CEFF;
  font-size: 30px;
  margin-bottom: 20px;
}

.contact-form-area .contact-info .info h4 {
  color: #33CEFF;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.14286em;
  text-transform: uppercase;
}

.contact-form-area .contact-info .info p {
  color: #5a5a5a;
  margin-bottom: 0;
}

#form input[type=text] {
  width: 48%;
  border: none;
  border-bottom: 2px solid #eee;
  margin-right: 20px;
  margin-bottom: 20px;
  padding: 10px;
  outline: none;
  transition: all 0.3s ease-in-out;
}

#form input[type=text]:nth-child(2), #form input[type=text]:nth-child(4) {
  margin-right: 0;
}

#form input[type=text]:hover {
  border-color: #33CEFF;
}

#form textarea {
  width: 100%;
  padding: 10px;
  border: none;
  border-bottom: 2px solid #eee;
  outline: none;
  transition: all 0.3s ease-in-out;
  height: 210px;
}

#form textarea:hover {
  border-color: #33CEFF;
}

#form .gp-btn {
  width: 100%;
  margin-top: 25px;
  border-radius: 0;
  background: #33CEFF;
  color: #FFF;
  border: none;
  padding: 12px 0;
  transition: all 0.3s ease;
}

#form .gp-btn:hover {
  background: #111;
  color: #FFF;
  border: transparent;
}

.contact-intro {
  text-align: left;
  padding: 50px 0;
}

.contact-intro h2 {
  font-size: 22px;
  font-size: 1.57143em;
  color: #000;
}

.contact-intro p {
  color: #000;
}

/* Contact Two */
#contact.contact-two {
  position: relative;
  padding: 0;
}

#contact.contact-two .contact-header h2 {
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
}

#contact.contact-two .gmap3-area {
  height: 700px;
  width: 100%;
}

#contact.contact-two .contact-header {
  margin-bottom: 0;
}

#contact.contact-two .contact-form-area {
  padding: 50px;
  width: 40%;
  position: absolute;
  right: 100px;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.8);
}

#contact.contact-two .contact-form-area #form input[type=text], #contact.contact-two .contact-form-area #form textarea {
  border: 1px solid #111;
  transition: all 0.3s ease-in-out;
  background-color: transparent;
  color: #111;
}

#contact.contact-two .contact-form-area #form input[type=text] {
  width: 47%;
}

#contact.contact-two .contact-form-area #form input[type=text]:hover {
  border-color: #33CEFF;
}

#contact.contact-two .contact-form-area #form p {
  padding: 0 8px;
}

/*--------------------------------------------------------------
  ##  Map
  --------------------------------------------------------------*/
/* map */
.gmap3-area {
  height: 550px;
}

/*--------------------------------------------------------------
  ##  newsletter
  --------------------------------------------------------------*/
#newsletter {
  padding: 100px 0;
  text-align: center;
  background-size: cover;
}

#newsletter .news-wraper {
  max-width: 600px;
  margin: 0 auto;
}

#newsletter .news-wraper h3 {
  font-size: 35px;
  font-size: 2.5em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 30px;
  color: #33CEFF;
}

#newsletter .news-wraper form {
  border: 2px solid #33CEFF;
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

#newsletter .news-wraper form input[type=email] {
  width: 100%;
  background-color: transparent;
  border: none;
  padding: 15px 125px 15px 20px;
  outline: none;
  color: #FFF;
}

#newsletter .news-wraper form button {
  background: #33CEFF;
  padding: 15px 20px;
  color: #FFF;
  border: none;
  position: absolute;
  right: 0;
  top: 0;
  outline: none;
  transition: all 0.3s ease-in-out;
  text-transform: uppercase;
  font-weight: 600;
}

#newsletter .news-wraper form button i {
  margin-right: 10px;
}

#newsletter .news-wraper form:hover {
  border-color: #FFF;
}

#newsletter .news-wraper form:hover button {
  background: #FFF;
  color: #333;
}

/*--------------------------------------------------------------
  ##  footer
  --------------------------------------------------------------*/
#footer {
  padding-top: 50px;
  text-align: center;
  background: #33CEFF;
}

#footer h2 {
  color: #FFF;
  font-weight: 600;
  font-size: 24px;
  font-size: 1.71429em;
  margin-bottom: 30px;
}

#footer .gp-social-link {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 50px;
}

#footer .gp-social-link li {
  display: inline-block;
  padding-right: 10px;
}

#footer .gp-social-link li a {
  display: block;
  border: 1px solid #333;
  color: #333;
  height: 40px;
  width: 40px;
  font-size: 20px;
  font-size: 1.42857em;
  line-height: 40px;
  transition: all 0.3s ease-in-out;
}

#footer .gp-social-link li a:hover {
  background: #333;
  color: #FFF;
  border-color: transparent;
}

.copyright {
  padding: 20px 0;
  border-top: 1px solid #13c5fd;
  text-align: center;
}

.copyright p {
  color: #eee;
  margin-bottom: 0;
  padding-right: 10px;
}

.copyright p a {
  color: #fff;
  text-decoration: none;
  position: relative;
  padding-left: 20px;
}

.copyright p a:before {
  content: '';
  position: absolute;
  height: 15px;
  width: 2px;
  background: #ddd;
  left: 10px;
  top: 2px;
}

/* Footer Two */
#footer.footer {
  background: #03141f;
  text-align: left;
}

#footer.footer .copyright {
  border-color: #1d292d;
}

#footer.footer h3 {
  color: #FFF;
  font-weight: 700;
  font-size: 22px;
  font-size: 1.57143em;
  text-transform: uppercase;
  margin-bottom: 30px;
}

#footer.footer .info i {
  float: left;
  color: #33CEFF;
  font-size: 25px;
  font-size: 1.78571em;
  height: 40px;
  width: 40px;
}

#footer.footer .info p {
  color: #a9a9a9;
  line-height: 22px;
  line-height: 1.57143em;
  margin-bottom: 20px;
}

#footer.footer .gp-social-link {
  margin-top: 30px;
}

#footer.footer .gp-social-link li a {
  text-align: center;
  color: #FFF;
  border-color: #FFF;
  height: 35px;
  width: 35px;
  font-size: 18px;
  font-size: 1.28571em;
  line-height: 35px;
}

#footer.footer .gp-social-link li a:hover {
  background: #33CEFF;
  border-color: transparent;
}

#footer.footer .news-wrapper {
  margin-bottom: 10px;
  border-bottom: 1px solid #0a2231;
  padding-bottom: 5px;
}

#footer.footer .news-wrapper:last-child {
  border-bottom: none;
}

#footer.footer .news-wrapper > a {
  display: block;
  float: left;
  transition: all 0.3s ease-in-out;
  width: 70px;
  height: 70px;
}

#footer.footer .news-wrapper > a img {
  width: 100%;
}

#footer.footer .news-wrapper .news-content {
  margin-left: 85px;
}

#footer.footer .news-wrapper .news-content a span {
  color: #ddd;
  font-size: 20px;
  font-size: 1.42857em;
  font-weight: 700;
  margin-bottom: 10px;
  display: block;
  transition: all 0.3s ease-in-out;
  line-height: 15px;
  line-height: 1.07143em;
}

#footer.footer .news-wrapper .news-content a p {
  color: #a5a5a5;
  margin-bottom: 0;
  line-height: 22px;
  line-height: 1.57143em;
}

#footer.footer .news-wrapper:hover a:hover {
  opacity: 0.7;
}

#footer.footer .news-wrapper:hover .news-content a {
  text-decoration: none;
}

#footer.footer .news-wrapper:hover .news-content a span {
  color: #33CEFF;
}

/* Flicker */
.flicker a {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  transition: all 0.3s ease-in-out;
}

.flicker a:hover {
  opacity: 0.7;
}

.flicker .copyright {
  border-color: #0b2333;
  text-align: center;
}

.flicker .copyright p {
  color: #929292;
}

/*--------------------------------------------------------------
  ##  Blog Page
  --------------------------------------------------------------*/
.blog-page #header {
  position: relative;
  background: #03141f;
}

/* Blog Single */
.blog-single {
  padding: 70px 0;
  background: #f5f5f5;
}

.blog-wrapper .blog-thumb {
  position: relative;
  margin-bottom: 20px;
}

.blog-wrapper .blog-thumb img {
  width: 100%;
}

.blog-wrapper .blog_post {
  margin-bottom: 20px;
}

.blog-wrapper .post-meta {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 20px;
}

.blog-wrapper .post-meta li {
  display: inline;
  padding-right: 20px;
}

.blog-wrapper .post-meta li a {
  text-decoration: none;
  font-weight: 500;
  color: #33CEFF;
  font-weight: 600;
  transition: all 0.3s ease-in-out;
}

.blog-wrapper .post-meta li a i {
  margin-right: 10px;
}

.blog-wrapper h2 {
  color: #222;
  text-transform: uppercase;
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 28px;
  font-size: 2em;
}

.blog-wrapper p {
  margin-bottom: 20px;
  color: #545454;
}

.blog-wrapper blockquote {
  font-style: italic;
  color: #33ceff;
  font-weight: 600;
  border-left: none;
  border-top: 1px solid #33CEFF;
  border-bottom: 1px solid #33CEFF;
  padding: 15px;
  font-size: 16px;
  font-size: 1.14286em;
}

.blog-wrapper .tag-area i {
  margin-right: 10px;
  color: #33CEFF;
}

.blog-wrapper .tag-area a {
  text-decoration: none;
  color: #111;
  margin-right: 5px;
  transition: all 0.3s ease-in-out;
  font-weight: 700;
}

.blog-wrapper .tag-area a:hover {
  color: #33CEFF;
}

.blog-sub-title {
  font-size: 24px;
  font-size: 1.71429em;
  color: #111;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 20px;
  position: relative;
  padding-bottom: 15px;
}

.blog-sub-title:after {
  position: absolute;
  background: #33CEFF;
  left: 0;
  bottom: 0;
  height: 3px;
  width: 50px;
  content: '';
}

.athor {
  padding: 10px;
  margin-bottom: 30px;
}

.athor .athor-inner {
  border: 1px solid #ddd;
  padding: 10px;
}

.athor .athor-inner .thumb {
  float: left;
}

.athor .content {
  margin-left: 110px;
}

.athor .content h4 {
  font-size: 20px;
  font-size: 1.42857em;
  font-weight: 700;
  margin-bottom: 10px;
}

.athor .content span {
  color: #999;
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
}

ol {
  margin: 0;
  list-style: none;
}

ol.comment-list {
  padding: 0;
}

article {
  padding: 15px 0;
  position: relative;
}

article .reply {
  position: absolute;
  right: 0;
  bottom: 15px;
}

article .reply a {
  text-decoration: none;
  color: #33CEFF;
}

article .reply a i {
  margin-left: 10px;
}

article {
  border-bottom: 1px solid #eee;
  paddin: 20px 0;
}

.comment-meta img {
  float: left;
}

.comment-meta a {
  margin-left: 110px;
  text-decoration: none;
  color: #ccc;
  margin-bottom: 10px;
  display: block;
  font-weight: 600;
}

.comment-meta a i {
  margin-right: 5px;
}

.comment-meta a.url {
  font-size: 16px;
  font-size: 1.14286em;
  color: #111;
  text-decoration: none;
  font-weight: 700;
  margin-bottom: 5px;
}

.comment-content {
  margin-left: 110px;
}

.comment-content p {
  margin-bottom: 20px;
  color: #676767;
}

.comment-respond .comment-reply-title {
  font-size: 22px;
  font-size: 1.57143em;
  color: #111;
  font-weight: 700;
  margin: 20px 0;
}

.comment-respond .comment-form p {
  width: 32%;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 15px;
}

.comment-respond .comment-form p:nth-child(3) {
  margin-right: 0;
}

.comment-respond .comment-form p input {
  width: 100%;
  padding: 5px 10px;
  outline: none;
  border: 1px solid #ddd;
  transition: 0.3s ease-in-out;
}

.comment-respond .comment-form p input:hover {
  border-color: #33CEFF;
}

.comment-respond .comment-form .comment-form-comment {
  padding-right: 5px;
  width: 100%;
}

.comment-respond .comment-form .comment-form-comment textarea {
  width: 100%;
  height: 150px;
  outline: none;
  padding: 10px;
  border: 1px solid #ddd;
  transition: 0.3s ease-in-out;
}

.comment-respond .comment-form .comment-form-comment textarea:hover {
  border-color: #33CEFF;
}

.comment-respond #submit {
  background: #33CEFF;
  border: none;
  color: #FFF;
  text-transform: uppercase;
  transition: 0.3s ease-in-out;
}

.comment-respond #submit:hover, .comment-respond #submit:focus {
  background: #111;
}

.more-blog {
  display: block;
  margin: 0 auto;
  color: #FFF;
  padding: 10px 0;
  background: #33CEFF;
  margin-top: 30px;
  transition: all 0.3s ease-in-out;
  text-align: center;
  width: 150px;
  text-transform: uppercase;
  font-weight: 600;
}

.more-blog:hover {
  background: #111;
  color: #FFF;
  text-decoration: none;
}

/*--------------------------------------------------------------
  ##  responsive
  --------------------------------------------------------------*/
@media screen and (max-width: 1440px) {
  #contact.contact-two .contact-form-area {
    width: 50%;
    padding: 25px;
  }
}

@media screen and (max-width: 1280px) {
  /* Blog Two  */
  .blog-two .blog_post .blog-thumb-left, .blog-two .blog_post .blog-thumb-right {
    float: none;
    width: 100%;
  }
  .blog-two .blog_post .blog_content {
    margin: 0 15px;
  }
  .blog-two .blog_post.bolg-right .blog_content {
    margin-right: 0;
  }
}

@media screen and (max-width: 1024px) {
  /* Header */
  #header .navbar-header .navbar-brand {
    padding: 10px 0;
  }
  #header .navbar-nav {
    padding: 20px 0;
  }
  /* Banner */
  .slider-caption-one h2 {
    font-size: 50px;
    font-size: 3.57143em;
  }
  .slider-caption-one h3 {
    font-size: 20px;
    font-size: 1.42857em;
    margin-bottom: 25px;
  }
  .gp-bn-btn {
    padding: 10px 40px;
  }
  .switcher {
    bottom: 25px;
  }
  .slider-caption-two {
    left: 10%;
  }
  .slider-caption-two h2 {
    font-size: 35px;
    font-size: 2.5em;
  }
  .slider-caption-two h4 {
    margin-bottom: 0;
  }
  .slider-caption-three {
    left: 10%;
  }
  .slider-caption-three h2 {
    font-size: 35px;
    font-size: 2.5em;
  }
  .slider-caption-three h4 {
    font-size: 20px;
    font-size: 1.42857em;
    margin-bottom: 0;
  }
  .slider-caption-three h3 {
    font-size: 22px;
    font-size: 1.57143em;
    margin-bottom: 1px;
  }
  /* Skills */
  .our-skills .skills-title h2 {
    margin-bottom: 10px;
  }
  .our-skills .skills-title p {
    margin-bottom: 10px;
  }
  progress {
    height: 15px;
  }
  /* Service */
  .service-item .service .service_content p br {
    display: none;
  }
  /* Portfolio */
  .portfolio_container .portfolio-item .overlay .work-caption h2 {
    font-size: 18px;
    font-size: 1.28571em;
  }
  .portfolio_container .portfolio-item:hover .overlay .work-caption .view {
    margin-bottom: 20px;
  }
  /* Team */
  .team_member {
    border: 2px solid #33CEFF;
    padding: 5px;
  }
  .team_member .team_intro {
    padding: 10px 20px;
  }
  .team_member .team_intro span {
    margin-bottom: 10px;
  }
  .team_member .team_intro .team_link li {
    margin-right: 8px;
  }
  .team_member:hover .team_intro h4 {
    margin-top: 0;
  }
  .team_member:hover .blog-thumb-left .blog-comments {
    bottom: -34px;
    padding: 7px;
  }
  .team_member:hover .blog-thumb-left .blog-comments li {
    padding: 0 3px;
  }
  /* Team Two */
  #team-slider .team_member:hover .team_intro h4 {
    margin-top: 70px;
  }
  /* Contact */
  #form {
    /* Contact */
  }
  #form input[type=text] {
    width: 47%;
  }
  #form input[type=text] {
    width: 47%;
  }
  #form .gp-btn {
    margin-top: 18px;
  }
}

@media screen and (max-width: 991px) {
  /* Header */
  #header .navbar-header .navbar-brand {
    width: 150px;
    padding: 16px 0;
  }
  #header .navbar-nav li {
    padding: 0 6px;
  }
  /* Team Two */
  #team-slider .team_member:hover .team_intro h4 {
    margin-top: 50px;
  }
  /* Countup Two */
  .countup-two {
    padding: 50px 0;
  }
  .countup-two .counter-box {
    margin-bottom: 15px;
  }
  /* Contact Two  */
  #contact.contact-two .contact-form-area {
    right: 40px;
  }
  #contact.contact-two .gmap3-area {
    height: 600px;
  }
}

@media screen and (max-width: 768px) {
  /* Header */
  .header_wrapper {
    width: 100%;
    display: none;
  }
  #header .navbar-header .navbar-brand {
    padding: 0;
    margin-left: 20px;
  }
  #header .navbar-collapse {
    padding: 0;
  }
  #header .navbar-nav {
    text-align: center;
    margin: 0;
  }
  #mobile-header {
    display: block;
  }
  .navbar-toggle {
    margin: 12px 20px 12px 0;
  }
  .navbar-fixed-top {
    background: rgba(0, 0, 0, 0.8) !important;
  }
  .navbar-fixed-top .navbar-header .navbar-brand {
    padding: 0 !important;
  }
  .gp-primary-menu {
    background-color: transparent;
  }
  /* Banner */
  .swiper-banner .swiper-slide {
    height: 370px;
  }
  .swiper-banner .swiper-slide img {
    height: 100%;
    width: auto;
  }
  .slider-caption-one h2 {
    font-size: 30px;
    font-size: 2.14286em;
  }
  .slider-caption-one h2:before, .slider-caption-one h2:after {
    width: 165px;
  }
  .slider-caption-one h3 {
    font-size: 18px;
    font-size: 1.28571em;
  }
  .gp-bn-btn {
    padding: 10px 28px;
  }
  /* About */
  .about-box {
    margin-bottom: 50px;
  }
  /* Skills */
  .our-skills .skills {
    display: block;
  }
  .our-skills .skill-bar {
    padding: 50px 0;
  }
  /* Skills two */
  .our-skills-two {
    padding: 50px 0;
  }
  .skills-description {
    padding: 0;
  }
  .skills-description h2 {
    margin-top: 20px;
  }
  /* Service two */
  #service-two {
    padding: 50px 20px;
  }
  #service-two .service .overlay {
    padding: 50px 20px;
  }
  #service-two .service .overlay p br {
    display: none;
  }
  /* Counter */
  .counter-box {
    margin-bottom: 20px;
  }
  /* Portfolio */
  .portfolio_container .portfolio-item .overlay .work-caption {
    width: 100%;
  }
  .portfolio_container .portfolio-item .overlay .work-caption .view {
    margin-bottom: 15px !important;
  }
  /* Blog Two  */
  .blog-two .blog_post .blog-thumb-left, .blog-two .blog_post .blog-thumb-right {
    float: none;
    width: 100%;
  }
  .blog-two .blog_post .blog_content {
    margin: 0 15px;
  }
  .blog-two .blog_post.bolg-right .blog_content {
    margin-right: 0;
  }
  /* Team */
  .team_member {
    margin-bottom: 20px;
  }
  .team_member .team_intro {
    bottom: -80%;
  }
  .team_member .team_intro span {
    margin-bottom: 20px;
  }
  .team_member:hover .team_intro h4 {
    margin-top: 85px;
  }
  /* Team Two */
  #team-slider .team_member:hover .team_intro h4 {
    margin-top: 50px;
  }
  /* Contact */
  #contact .contact-inner {
    padding: 30px 0;
  }
  .contact-form-area .contact-info .info {
    margin-bottom: 20px;
  }
  /* Contact Two */
  #contact {
    padding: 0;
  }
  #contact.contact-two .gmap3-area {
    height: 300px;
  }
  #contact.contact-two .contact-form-area {
    position: static;
    -ms-transform: translateY(0);
        transform: translateY(0);
    width: 100%;
    background: #f5f5f5;
  }
  #contact.contact-two .contact-form-area #form p {
    padding: 0 14px;
  }
  /* Newsletter */
  #newsletter .news-wraper form {
    width: 400px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 500px) {
  /* Section Title */
  .section-title {
    font-size: 24px;
    font-size: 1.71429em;
  }
  /* Banner */
  .gp-bn-btn {
    margin-right: 10px;
    padding: 8px 16px;
  }
  .slider-caption-one h3 {
    font-size: 14px;
    font-size: 1em;
  }
  .slider-caption-two h2 {
    font-size: 25px;
    font-size: 1.78571em;
  }
  .slider-caption-two h4 {
    font-size: 18px;
    font-size: 1.28571em;
  }
  .slider-caption-two p {
    font-size: 14px;
    font-size: 1em;
  }
  .slider-caption-two p br {
    display: none;
  }
  .slider-caption-three h2 {
    font-size: 22px;
    font-size: 1.57143em;
    margin-bottom: 15px;
  }
  .slider-caption-three h4 {
    font-size: 18px;
    font-size: 1.28571em;
  }
  .slider-caption-three h3 {
    font-size: 20px;
    font-size: 1.42857em;
  }
  .swiper-pagination {
    right: 30px;
  }
  /* About */
  .caption br {
    display: none;
  }
  /* Skills Two */
  .our-skills-two .skill-bar {
    padding-right: 0;
  }
  /* CountUp */
  .full-width {
    width: 100%;
  }
  /* Team */
  .team_member {
    margin-bottom: 20px;
  }
  .team_member .team_intro {
    bottom: -83%;
  }
  .team_member .team_intro span {
    margin-bottom: 20px;
  }
  .team_member:hover .team_intro h4 {
    margin-top: 135px;
  }
  .portfolio .portfolioFilter li {
    margin-right: 5px;
  }
  .portfolio .portfolioFilter li a {
    padding: 6px;
  }
  /* Testimonial */
  #testimonial .section-title {
    margin-bottom: 0;
  }
  .testimonial-slider .testional .item .testi-content {
    padding-top: 0;
  }
  .testimonial-slider .testional .item .testi-content p br {
    display: none;
  }
  /* Newsletter */
  #newsletter {
    padding: 50px 0;
  }
  #newsletter .news-wraper h3 {
    font-size: 30px;
    font-size: 2.14286em;
  }
  #newsletter .news-wraper form {
    width: 310px;
    margin: 0 auto;
  }
  #newsletter .news-wraper form input[type=email] {
    padding: 10px 115px 10px 15px;
  }
  #newsletter .news-wraper form button {
    padding: 10px;
  }
  /* Contact */
  #contact .contact-inner {
    padding: 0;
  }
  #contact .contact-inner .contact-header h2 {
    margin-top: 30px;
  }
  #contact #form input[type=text] {
    width: 100%;
  }
  #contact #form .gp-btn {
    margin-bottom: 30px;
  }
  .return-to-top {
    right: 20px;
    bottom: 20px;
  }
  /* Contact Two */
  #contact.contact-two .contact-form-area {
    padding: 20px 10px;
  }
  #contact.contact-two .contact-form-area #form p {
    padding: 0;
  }
}

/* Blog Signle */
.comment-respond .comment-form p {
  margin-right: 2px;
}

/* Widget */
.widget_dt_search .search-form {
  margin-top: 30px;
}

/*--------------------------------------------------------------
  # Widgets
  --------------------------------------------------------------*/
/*--------------------------------------------------------------
  ## Search
  --------------------------------------------------------------*/
.widget_dt_search .search-form {
  width: 100%;
}

.widget_dt_search .search-form label {
  position: relative;
  width: 270px;
}

.widget_dt_search .search-form .search-icon {
  position: absolute;
  right: 6px;
  top: 12px;
}

.widget_dt_search input[type="search"] {
  width: 100%;
  border: 1px solid #eeeeee;
  outline: none;
  padding: 10px 20px;
  color: #111;
  font-size: 14px;
  font-size: 1em;
}

.widget_dt_search .search-submit {
  display: none;
}

/*--------------------------------------------------------------
  ## Dt Custom Menu
  --------------------------------------------------------------*/
/* Custom Menu */
.widget {
  margin-bottom: 50px;
}

.widget .widget-title {
  position: relative;
  font-size: 20px;
  font-size: 1.42857em;
  color: #111;
  margin-top: 0;
  margin-bottom: 40px;
  padding-bottom: 15px;
  text-transform: uppercase;
  font-weight: 700;
}

.widget .widget-title:after {
  content: '';
  position: absolute;
  width: 50px;
  height: 3px;
  left: 0;
  bottom: 0;
  background: #33CEFF;
}

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

.widget_nav_menu ul li {
  padding: 10px 0;
  border-bottom: 1px solid #ededed;
}

.widget_nav_menu ul li:last-child {
  border-bottom: none;
}

.widget_nav_menu ul li a {
  color: #6d6c6c;
  text-decoration: none;
  transition: all 0.3s ease;
  font-weight: 600;
}

.widget_nav_menu ul li a:hover {
  color: #33CEFF;
}

/*--------------------------------------------------------------
  ## Dt Tags
  --------------------------------------------------------------*/
/* Dt Tags */
.dt-tag a {
  color: #6d6c6c;
  border: 1px solid #eee;
  text-decoration: none;
  padding: 4px 8px;
  display: inline-block;
  margin-bottom: 10px;
  margin-right: 5px;
  transition: all 0.3s ease;
}

.dt-tag a:hover {
  background: #33CEFF;
  color: #FFF;
}

/*--------------------------------------------------------------
  ## Dt Resent Post
  --------------------------------------------------------------*/
/* Widget Resent Post */
.widget_recent_entries .resent-post {
  margin-bottom: 20px;
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
}

.widget_recent_entries .resent-post .post-thumbs {
  float: left;
  border-radius: 5px;
  overflow: hidden;
}

.widget_recent_entries .resent-post .post-content {
  margin-left: 90px;
}

.widget_recent_entries .resent-post .post-content h5 {
  font-size: 14px;
  font-size: 1em;
  margin-top: 0;
}

.widget_recent_entries .resent-post .post-content h5 a {
  color: #111111;
  line-height: 20px;
  line-height: 1.42857em;
  text-decoration: none;
  transition: all 0.3s ease;
  font-weight: 700;
}

.widget_recent_entries .resent-post .post-content h5 a:hover {
  color: #33CEFF;
}

.widget_recent_entries .resent-post .post-content .post-meta {
  padding: 0;
  margin-left: 0;
  list-style: none;
}

.widget_recent_entries .resent-post .post-content .post-meta li {
  display: inline;
  padding-right: 10px;
}

.widget_recent_entries .resent-post .post-content .post-meta li a {
  color: #33CEFF;
  text-decoration: none;
}

.widget_recent_entries .resent-post .post-content .post-meta li a i {
  padding-right: 10px;
}

/*--------------------------------------------------------------
  ## Dt Archive
  --------------------------------------------------------------*/
/* Widget Dt Archives */
.widget_archive ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.widget_archive ul li {
  padding: 10px 0;
  border-bottom: 1px solid #ededed;
  position: relative;
}

.widget_archive ul li a {
  color: #6d6c6c;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.widget_archive ul li a span {
  padding-left: 5px;
}

.widget_archive ul li p {
  position: absolute;
  right: 0;
  top: 10px;
  transition: all 0.3s ease-in-out;
}

.widget_archive ul li:hover a {
  color: #33CEFF;
}

.widget_archive ul li:hover p {
  color: #33CEFF;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5zYXNzIiwiYmFzZS9fbWl4aW5zLnNhc3MiLCJhcHAuY3NzIiwiYmFzZS9fYm9vdHN0cmFwLnNhc3MiLCJiYXNlL192YXJpYWJsZXMuc2FzcyIsImVsZW1lbnRzL19lbGVtZW50cy5zYXNzIiwiZWxlbWVudHMvX2FjY2Vzc2liaWxpdHkuc2FzcyIsImVsZW1lbnRzL19idXR0b25zLnNhc3MiLCJuYXZpZ2F0aW9uLW1lbnUvX25hdmlnYXRpb24uc2FzcyIsIm5hdmlnYXRpb24tbWVudS9fcHJpbWFyeS1tZW51LnNhc3MiLCJsaWIvX3RvcC1tZW50LnNjc3MiLCJzZWN0aW9ucy9fc2VjdGlvbnMuc2FzcyIsInNlY3Rpb25zL19sb2FkaW5nLnNhc3MiLCJzZWN0aW9ucy9faGVhZGVyLnNhc3MiLCJzZWN0aW9ucy9fYmFubmVyLnNhc3MiLCJzZWN0aW9ucy9fYWJvdXQuc2FzcyIsInNlY3Rpb25zL19zZXJ2aWNlLnNhc3MiLCJzZWN0aW9ucy9fcG9ydGZvbGlvLnNhc3MiLCJzZWN0aW9ucy9fY291bnR1cC5zYXNzIiwic2VjdGlvbnMvX3RlYW0uc2FzcyIsInNlY3Rpb25zL19za2lsbHMuc2FzcyIsInNlY3Rpb25zL19ibG9nLnNhc3MiLCJzZWN0aW9ucy9fdGVzdGltb25pYWwuc2FzcyIsInNlY3Rpb25zL19wcmljaW5nX3RhYmxlLnNhc3MiLCJzZWN0aW9ucy9fYnJhbmQuc2FzcyIsInNlY3Rpb25zL19jb250YWN0LnNhc3MiLCJzZWN0aW9ucy9fbWFwLnNhc3MiLCJzZWN0aW9ucy9fbmV3c2xldHRlci5zYXNzIiwic2VjdGlvbnMvX2Zvb3Rlci5zYXNzIiwic2VjdGlvbnMvX2Jsb2ctcGFnZS5zYXNzIiwic2VjdGlvbnMvX3Jlc3BvbnNpdmUuc2FzcyIsIndpZGdldHMvX3dpZGdldHMuc2FzcyIsIndpZGdldHMvX3NlYXJjaC5zYXNzIiwid2lkZ2V0cy9fZHQtY3VzdG9tLW1lbnUuc2FzcyIsIndpZGdldHMvX2R0X3RhZ3Muc2FzcyIsIndpZGdldHMvX3dpZGdldC1kdC1yZWNlbnQtcG9zdC5zYXNzIiwid2lkZ2V0cy9fd2lkZ2V0LWR0LWFyY2hpdmVzLnNhc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBV0k7QUFDSjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2tFQW9Da0U7O0FDdUJsRTtFQUNFO0lBQ0UsMkJBQW9CO0dDS3JCO0VESEQ7SUFDRSxXQUFXO0lBQ1gsNEJBQW9CO0dDS3JCO0VESEQ7SUFDRSxXQUFXO0dDS1o7Q0FDRjs7QUZoQ0Q7O2tFQUVrRTtBR3hEbEU7RUFDRSxnQkFBZ0I7Q0FBRzs7QUFFckI7RUZERSxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VFRXBDLGVDR2tCO0VERmxCLHFDQ0xvQztFRE1wQyxnQkFBZ0I7Q0FBRzs7QUFFckI7RUFDRSxlQ0ZrQjtFSDJCbEIsZ0JBQVc7RUFDWCxlQUFXO0VBUVgsa0JBQWE7RUFDYix1QkFBYTtDRWpDYzs7QUFHN0I7RUFDRSwwQkFBMEI7RUFDMUIsWUFBWTtFQUNaLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIscUJBQXFCO0VBQ3JCLGlCQUFpQjtFQUNqQixzQkFBc0I7RUFDdEIsb0JBQW9CO0NBVWM7O0FBckJwQztFQWNJLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2Isb0JDM0JpQjtFRDRCakIsWUFBWTtFQUNaLFlBQVk7RUFDWixVQUFVO0VBQ1YsVUFBVTtFQUNWLGdDQUFxQjtNQUFyQiw0QkFBcUI7Q0FBUzs7QUFHbEM7RUFDRSxZQUFZO0VBQ1osb0JBQW9CO0VGR3BCLGtCQUFhO0VBQ2IsdUJBQWE7Q0VIYzs7QUFFN0I7RUFDRSxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLGFBQWE7RUFDYixPQUFPO0VBQ1AsUUFBUTtFQUNSLCtCQUFnQjtDQUFhOztBQUUvQjtFQUNFLGVDNUNvQjtFRDZDcEIsY0FBYztFQUNkLG1DQUFtQztDQUFHOztBSEl4Qzs7a0VBRWtFO0FLN0RsRTs7a0VB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O0NBb0NzQjs7QUF4Qy9DO0VBTU0sWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixpQkFBaUI7Q0FBRzs7QUFSMUI7RUFZTSxrQkFBa0I7Q0E0QnFCOztBQXhDN0M7RWxDa0NFLGdCQUFXO0VBQ1gsZUFBVztFa0NsQkwsY0FBYztDQVFnQjs7QUF6QnRDO0VBbUJVLGVBQWU7RWxDd0J2QixrQkFBYTtFQUNiLHVCQUFhO0VrQ3ZCTCxzQkFBc0I7RUFDdEIsMEJBQTBCO0VBQzFCLGlCQUFpQjtDQUVTOztBQXpCcEM7RUF5QlksZS9CdEJTO0MrQnNCYTs7QUF6QmxDO0VBNEJRLFdBQVc7RUFDWCxlQUFlO0VBQ2YsaUJBQWlCO0NBVWtCOztBQXhDM0M7RUFnQ1UsZ0JBQWdCO0VBQ2hCLG9CQUFvQjtDQU9XOztBQXhDekM7RUFvQ1ksZS9CakNTO0UrQmtDVCxzQkFBc0I7Q0FHSzs7QUF4Q3ZDO0VBd0NjLG9CQUFvQjtDQUFHOztBSnBCckM7O2tFQUVrRTtBS3ZCbEUsd0JBQXdCO0FBQ3hCO0VBRUksV0FBVztFQUNYLFVBQVU7RUFDVixpQkFBaUI7Q0F5QmlCOztBQTdCdEM7RUFPTSxnQkFBZ0I7RUFDaEIsaUNBQWlDO0VBQ2pDLG1CQUFtQjtDQW9CVzs7QUE3QnBDO0VBV1EsZUFBZTtFQUNmLHNCQUFzQjtFQUN0QixpQ0FBaUM7Q0FHUjs7QUFoQmpDO0VBZ0JVLGtCQUFrQjtDQUFHOztBQWhCL0I7RUFrQlEsbUJBQW1CO0VBQ25CLFNBQVM7RUFDVCxVQUFVO0VBQ1YsaUNBQWlDO0NBQUc7O0FBckI1QztFQTBCVSxlaEN2Qlc7Q2dDdUJXOztBQTFCaEM7RUE2QlUsZWhDMUJXO0NnQzBCVyIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gIFRoZW1lIE5hbWU6IEVuZ2FnZVxuICBUaGVtZSBVUkk6IGh0dHA6Ly93d3cuZGVjZW50dGhlbWVzLmNvbS9wcm9kdWN0cy9jb3Jwby13b3JkcHJlc3MvXG4gIEF1dGhvcjogR29sZGVuIFBsdXMgVGhlbWVcbiAgQXV0aG9yIFVSSTogaHR0cDovL3d3dy5tb21pbnVsLm1lL1xuICBEZXNjcmlwdGlvbjogVGhlIFVsdGltYXRlIEZpbmFuY2lhbCAvIEJ1c2luZXNzIFRlbXBsYXRlXG4gIFZlcnNpb246IDEuMS4xXG4gIExpY2Vuc2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYyIG9yIGxhdGVyXG4gIExpY2Vuc2UgVVJJOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG4gIFRleHQgRG9tYWluOiBlbmdhZ2VcbiAgVGFnczpcbiAgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgPj4+IFRBQkxFIE9GIENPTlRFTlRTOlxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMgQmFzZSBydWxlc1xuICAjIExpYnJhcnlcbiAgICAjIyBFeGFtcGxlXG4gICMgRWxlbWVudHNcbiAgICAjIyBBY2Nlc3NpYmlsaXR5XG4gICAgIyMgQnV0dG9uc1xuICAjIE5hdmlnYXRpb24gTWVudVxuICAgICMgUHJpbWFyeSBNZW51XG4gICMgU2VjdGlvbnNcbiAgICAjIyBMb2FkaW5nXG4gICAgIyMgSGVhZGVyXG4gICAgIyMgQmFubmVyXG4gICAgIyMgQWJvdXQgVXNcbiAgICAjIyBTa2xsaXNcbiAgICAjIyBTZXJ2aWNlXG4gICAgIyMgUG9ydGZvbGlvXG4gICAgIyMgQ291bnRVcFxuICAgICMjIFRlYW1cbiAgICAjIyBCbG9nXG4gICAgIyMgVGVzdGltb25pYWxcbiAgICAjIyBQcmljaW5nIFRhYmxlXG4gICAgIyMgQnJhbmRcbiAgICAjIyBDb250YWN0XG4gICAgIyMgTmV3c2xhdHRlclxuICAgICMjIEZvdHRlclxuXG4gICMgV2lkZ2V0c1xuICAgICMjIFNlYXJjaFxuICAgICMjIER0IEN1c3RvbSBNZW51XG4gICAgIyMgRHQgRG93bmxvYWQgTWVudVxuICAgICMjIER0IFRhZ3NcbiAgICAjIyBEdCBSZXNlbnQgUG9zdFxuICAgICMjIER0IEFyY2hpdmVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBWYXJpYWJsZXMgYW5kIE1peGluc1xuQGltcG9ydCBcImJhc2UvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYmFzZS9taXhpbnNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIEJhc2UgcnVsZXNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImJhc2UvYm9vdHN0cmFwXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyBFbGVtZW50c1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiZWxlbWVudHMvZWxlbWVudHNcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIE5hdmlnYXRpb24gTWVudVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwibmF2aWdhdGlvbi1tZW51L25hdmlnYXRpb25cIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIFRvcCBNZW51XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJsaWIvdG9wLW1lbnRcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIFNlY3Rpb25zXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJzZWN0aW9ucy9zZWN0aW9uc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMgV2lkZ2V0c1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwid2lkZ2V0cy93aWRnZXRzXCI7XG4iLCIvLyBGb250IFNtb290aGluZ1xuQG1peGluIGZvbnQtc21vb3RoaW5nIHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cblxuLy8gRm9udCBGYWNlXG4vLyBCYXNlZCBvbiBodHRwOi8vY29kZXBlbi5pby9qYXZhc3RldmU5OS9wZW4vaER4cG5cbkBtaXhpbiBmb250LWZhY2UoJGZvbnQtZmFtaWx5LCAkZmlsZS1wYXRoLCAkZm9udC13ZWlnaHQ6IG5vcm1hbCwgJGZvbnQtc3R5bGU6IG5vcm1hbCkge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICAgIHNyYzogdXJsKCcjeyRmaWxlLXBhdGh9LmVvdCcpO1xuICAgICAgc3JjOiB1cmwoJyN7JGZpbGUtcGF0aH0uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCcjeyRmaWxlLXBhdGh9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJyN7JGZpbGUtcGF0aH0ud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJyN7JGZpbGUtcGF0aH0udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoJyN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fScpIGZvcm1hdCgnc3ZnJyk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0O1xuICAgICAgZm9udC1zdHlsZTogJGZvbnQtc3R5bGU7IH1cblxuICAgIC8vIENocm9tZSBmb3IgV2luZG93cyByZW5kZXJpbmcgZml4OiBodHRwOi8vd3d3LmFkdHJhay5jby51ay9ibG9nL2ZvbnQtZmFjZS1jaHJvbWUtcmVuZGVyaW5nL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgICAgICBzcmM6IHVybCgnI3skZmlsZS1wYXRofS5zdmcjI3skZm9udC1mYW1pbHl9JykgZm9ybWF0KCdzdmcnKTsgfSB9IH1cblxuXG5cblxuLy8gQ2xlYXIgRml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9IH1cblxuLy8gRm9udCBTaXplXG5AbWl4aW4gZm9udC1zaXplKCRwaXhlbDogMTQsICRjb250ZXh0OiAxNCApIHtcbiAgZm9udC1zaXplOiAjeyRwaXhlbH1weDtcbiAgZm9udC1zaXplOiAjeyRwaXhlbC8kY29udGV4dH1lbTsgfVxuXG4vLyBMZXR0ZXIgU3BhY2luZ1xuQG1peGluIGxldHRlci1zcGFjaW5nKCR2YWx1ZTogMSkge1xuICBsZXR0ZXItc3BhY2luZzogKCR2YWx1ZSAvIDEwMDAgKSAqIDFlbTsgfVxuXG4vLyBMaW5lIGhlaWdodFxuQG1peGluIGxpbmUtaGVpZ2h0KCRwaXhlbDogMTQsICRjb250ZXh0OiAxNCApIHtcbiAgbGluZS1oZWlnaHQ6ICN7JHBpeGVsfXB4O1xuICBsaW5lLWhlaWdodDogI3skcGl4ZWwvJGNvbnRleHR9ZW07IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRvUmlnaHRGcm9tTGVmdCB7XG4gIDQ5JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTsgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTsgfVxuXG4gIDUxJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cblxuQC1tb3ota2V5ZnJhbWVzIHRvUmlnaHRGcm9tTGVmdCB7XG4gIDQ5JSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTsgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTsgfVxuXG4gIDUxJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cblxuQGtleWZyYW1lcyB0b1JpZ2h0RnJvbUxlZnQge1xuICA0OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUpOyB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTsgfVxuXG4gIDUxJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG4iLCIvKiFcbiAgVGhlbWUgTmFtZTogRW5nYWdlXG4gIFRoZW1lIFVSSTogaHR0cDovL3d3dy5kZWNlbnR0aGVtZXMuY29tL3Byb2R1Y3RzL2NvcnBvLXdvcmRwcmVzcy9cbiAgQXV0aG9yOiBHb2xkZW4gUGx1cyBUaGVtZVxuICBBdXRob3IgVVJJOiBodHRwOi8vd3d3Lm1vbWludWwubWUvXG4gIERlc2NyaXB0aW9uOiBUaGUgVWx0aW1hdGUgRmluYW5jaWFsIC8gQnVzaW5lc3MgVGVtcGxhdGVcbiAgVmVyc2lvbjogMS4xLjFcbiAgTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcbiAgTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcbiAgVGV4dCBEb21haW46IGVuZ2FnZVxuICBUYWdzOlxuICAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICA+Pj4gVEFCTEUgT0YgQ09OVEVOVFM6XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyBCYXNlIHJ1bGVzXG4gICMgTGlicmFyeVxuICAgICMjIEV4YW1wbGVcbiAgIyBFbGVtZW50c1xuICAgICMjIEFjY2Vzc2liaWxpdHlcbiAgICAjIyBCdXR0b25zXG4gICMgTmF2aWdhdGlvbiBNZW51XG4gICAgIyBQcmltYXJ5IE1lbnVcbiAgIyBTZWN0aW9uc1xuICAgICMjIExvYWRpbmdcbiAgICAjIyBIZWFkZXJcbiAgICAjIyBCYW5uZXJcbiAgICAjIyBBYm91dCBVc1xuICAgICMjIFNrbGxpc1xuICAgICMjIFNlcnZpY2VcbiAgICAjIyBQb3J0Zm9saW9cbiAgICAjIyBDb3VudFVwXG4gICAgIyMgVGVhbVxuICAgICMjIEJsb2dcbiAgICAjIyBUZXN0aW1vbmlhbFxuICAgICMjIFByaWNpbmcgVGFibGVcbiAgICAjIyBCcmFuZFxuICAgICMjIENvbnRhY3RcbiAgICAjIyBOZXdzbGF0dGVyXG4gICAgIyMgRm90dGVyXG5cbiAgIyBXaWRnZXRzXG4gICAgIyMgU2VhcmNoXG4gICAgIyMgRHQgQ3VzdG9tIE1lbnVcbiAgICAjIyBEdCBEb3dubG9hZCBNZW51XG4gICAgIyMgRHQgVGFnc1xuICAgICMjIER0IFJlc2VudCBQb3N0XG4gICAgIyMgRHQgQXJjaGl2ZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5ALXdlYmtpdC1rZXlmcmFtZXMgdG9SaWdodEZyb21MZWZ0IHtcbiAgNDklIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTtcbiAgfVxuICA1MSUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHRvUmlnaHRGcm9tTGVmdCB7XG4gIDQ5JSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSk7XG4gIH1cbiAgNTElIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdG9SaWdodEZyb21MZWZ0IHtcbiAgNDklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUpO1xuICB9XG4gIDUxJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMgQmFzZSBydWxlc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5odG1sIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5ib2R5IHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGNvbG9yOiAjNmQ2YzZjO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5wIHtcbiAgY29sb3I6ICM2ZDZjNmM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMS44NTcxNGVtO1xufVxuXG4uc2VjdGlvbi10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMTExO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2VjdGlvbi10aXRsZTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyAnO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIGxlZnQ6IDUwJTtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi5jYXB0aW9uIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsaW5lLWhlaWdodDogMS43MTQyOWVtO1xufVxuXG4ub3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSB7XG4gIGNvbG9yOiAjMmMzZTUwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LWZhbWlseTogJ1BUIFNhbnMnLCBzYW5zLXNlcmlmO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMgRWxlbWVudHNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyBBY2Nlc3NpYmlsaXR5XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zYXlzLFxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjIEJ1dHRvbnNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5hOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmdwLWJuLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzQ0VGRjtcbiAgcGFkZGluZzogMTJweCA1MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5ncC1ibi1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItY29sb3I6ICMxMTE7XG59XG5cbi5ncC1ibi1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nOiAxMXB4IDUwcHg7XG59XG5cbi5ncC1ibi1hY3RpdmU6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZ3AtYnRuIHtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzNDRUZGO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdwLWJuLWJ0bi0yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRkZGO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMgTmF2aWdhdGlvbiBNZW51XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgUHJpbWFyeSBNZW51XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGhlaWdodDogMTAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiA2MDA7XG59XG5cbiNoZWFkZXIubmF2YmFyLWJnIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLWhlYWRlciB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuI2hlYWRlci5uYXZiYXItYmcgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCB7XG4gIHBhZGRpbmc6IDEycHggMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTUwcHggIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5uYXZiYXItYmcgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2hlYWRlci5uYXZiYXItYmcgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZC5tYWluLWxvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLWhlYWRlciAubmF2YmFyLWJyYW5kLmZpeGVkLWxvZ28ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiB7XG4gIHBhZGRpbmc6IDE1cHggMCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiBsaS5ncC1zZWFyY2g6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzExMSAhaW1wb3J0YW50O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiBsaSBhIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbiNoZWFkZXIubmF2YmFyLWJnIC5uYXZiYXItbmF2IGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzMzQ0VGRiAhaW1wb3J0YW50O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiBsaSAuY2hpbGQtbWVudSB7XG4gIHRvcDogMjhweCAhaW1wb3J0YW50O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiBsaSAuY2hpbGQtbWVudSBsaSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNoZWFkZXIubmF2YmFyLWJnIC5uYXZiYXItbmF2IGxpIC5jaGlsZC1tZW51IGxpIGEge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4jaGVhZGVyLm5hdmJhci1iZyAubmF2YmFyLW5hdiBsaSAuY2hpbGQtbWVudSBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlciAubmF2YmFyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1oZWFkZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuI2hlYWRlciAubmF2YmFyLWhlYWRlciAubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTkwcHg7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2hlYWRlciAubmF2YmFyLWhlYWRlciAubmF2YmFyLWJyYW5kLmZpeGVkLWxvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IHtcbiAgcGFkZGluZzogMjlweCAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuI2hlYWRlciAubmF2YmFyLW5hdiBsaSB7XG4gIHBhZGRpbmc6IDBweCAxMHB4O1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIGEge1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMTBweCAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIGE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbn1cblxuI2hlYWRlciAubmF2YmFyLW5hdiBsaSBhOmhvdmVyLCAjaGVhZGVyIC5uYXZiYXItbmF2IGxpIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMzM0NFRkY7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGkgYTpob3ZlcjphZnRlciwgI2hlYWRlciAubmF2YmFyLW5hdiBsaSBhOmZvY3VzOmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpLmFjdGl2ZSBhIHtcbiAgY29sb3I6ICMzM0NFRkYgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlciAubmF2YmFyLW5hdiBsaS5hY3RpdmUgYTphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2hlYWRlciAubmF2YmFyLW5hdiBsaS5ncC1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuI2hlYWRlciAubmF2YmFyLW5hdiBsaS5ncC1zZWFyY2ggYTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGkuZ3Atc2VhcmNoOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGhlaWdodDogMTRweDtcbiAgd2lkdGg6IDJweDtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAxMnB4O1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIC5jaGlsZC1tZW51IHtcbiAgbGVmdDogMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAyJTtcbiAgd2lkdGg6IDIwMHB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcbiAgYmFja2dyb3VuZDogbm9uZSAwcHggMHB4IHJlcGVhdCBzY3JvbGwgIzA1MjYzYztcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlIG5vbmU7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCA4MDBtcyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIC5jaGlsZC1tZW51IGxpIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZTRlNGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIC5jaGlsZC1tZW51IGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUgbGkgYTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNDRUZGO1xufVxuXG4jaGVhZGVyIC5uYXZiYXItbmF2IGxpIC5jaGlsZC1tZW51IGxpOmhvdmVyIGEge1xuICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNoZWFkZXIgLm5hdmJhci1uYXYgbGk6aG92ZXIgLmNoaWxkLW1lbnUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjhweCk7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4jaGVhZGVyLmhlYWRyb29tLS1waW5uZWQ6bm90KC5oZWFkcm9vbS0tdG9wKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM0NFRkY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1oZWFkZXIge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbiNoZWFkZXIuaGVhZHJvb20tLXBpbm5lZDpub3QoLmhlYWRyb29tLS10b3ApIC5uYXZiYXItaGVhZGVyIC5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbiNoZWFkZXIuaGVhZHJvb20tLXBpbm5lZDpub3QoLmhlYWRyb29tLS10b3ApIC5uYXZiYXItaGVhZGVyIC5uYXZiYXItYnJhbmQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNoZWFkZXIuaGVhZHJvb20tLXBpbm5lZDpub3QoLmhlYWRyb29tLS10b3ApIC5uYXZiYXItaGVhZGVyIC5uYXZiYXItYnJhbmQubWFpbi1sb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZC5maXhlZC1sb2dvIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYge1xuICBwYWRkaW5nOiAxNXB4IDAgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYgbGkuZ3Atc2VhcmNoOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMxMTEgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYgbGkgYSB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jaGVhZGVyLmhlYWRyb29tLS1waW5uZWQ6bm90KC5oZWFkcm9vbS0tdG9wKSAubmF2YmFyLW5hdiBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzM0NFRkYgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUge1xuICB0b3A6IDI4cHggIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUgbGkge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jaGVhZGVyLmhlYWRyb29tLS1waW5uZWQ6bm90KC5oZWFkcm9vbS0tdG9wKSAubmF2YmFyLW5hdiBsaSAuY2hpbGQtbWVudSBsaSBhIHtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuI2hlYWRlci5oZWFkcm9vbS0tcGlubmVkOm5vdCguaGVhZHJvb20tLXRvcCkgLm5hdmJhci1uYXYgbGkgLmNoaWxkLW1lbnUgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5oZWFkcm9vbS0tcGlubmVkIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyBUb3AgTWVudVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2QtYXV0by1oaWRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNXM7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cywgLXdlYmtpdC10cmFuc2Zvcm0gLjVzO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyLmlzLWhpZGRlbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5sb2dvLFxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgYm90dG9tOiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlciAubG9nbyB7XG4gIGxlZnQ6IDUlO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlciAubG9nbyBhLCAuY2QtYXV0by1oaWRlLWhlYWRlciAubG9nbyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIHtcbiAgLyogdmVydGljYWxseSBhbGlnbiBpdHMgY29udGVudCAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDFlbTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMjUyODNEO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2YyZjJmMjtcbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIHNwYW4ge1xuICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGluc2lkZSBwYXJlbnQgZWxlbWVudCAqL1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIgZW0sIC5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YWZ0ZXIsIC5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YmVmb3JlIHtcbiAgLyogdGhpcyBpcyB0aGUgbWVudSBpY29uICovXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogMjJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjgzRDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIGVtIHtcbiAgLyogdGhpcyBpcyB0aGUgbWVudSBjZW50cmFsIGxpbmUgKi9cbiAgbWFyZ2luOiA2cHggYXV0byAxNHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIGVtOjpiZWZvcmUsIC5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBsZWZ0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4ycztcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjJzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzLCAtd2Via2l0LXRyYW5zZm9ybSAuMnM7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YmVmb3JlIHtcbiAgLyogdGhpcyBpcyB0aGUgbWVudSBpY29uIHRvcCBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YWZ0ZXIge1xuICAvKiB0aGlzIGlzIHRoZSBtZW51IGljb24gYm90dG9tIGxpbmUgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyLm5hdi1vcGVuIC5uYXYtdHJpZ2dlciBlbSB7XG4gIC8qIHRyYW5zZm9ybSBtZW51IGljb24gaW50byBhICdYJyBpY29uICovXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyLm5hdi1vcGVuIC5uYXYtdHJpZ2dlciBlbTo6YmVmb3JlIHtcbiAgLyogcm90YXRlIHRvcCBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jZC1hdXRvLWhpZGUtaGVhZGVyLm5hdi1vcGVuIC5uYXYtdHJpZ2dlciBlbTo6YWZ0ZXIge1xuICAvKiByb3RhdGUgYm90dG9tIGxpbmUgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmNkLXByaW1hcnktbmF2IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogNSU7XG59XG5cbi5jZC1wcmltYXJ5LW5hdiA+IHVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDYwcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBib3gtc2hhZG93OiAwIDE0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5jZC1wcmltYXJ5LW5hdiA+IHVsIGEge1xuICAvKiB0YXJnZXQgcHJpbWFyeS1uYXYgbGlua3MgKi9cbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctbGVmdDogNSU7XG4gIGNvbG9yOiAjMjUyODNEO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMmYyZjI7XG59XG5cbi5jZC1wcmltYXJ5LW5hdiA+IHVsIGE6aG92ZXIsIC5jZC1wcmltYXJ5LW5hdiA+IHVsIGEuYWN0aXZlIHtcbiAgY29sb3I6ICM4RjM5ODU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1wcmltYXJ5LW5hdiB7XG4gICAgLyogdmVydGljYWxseSBhbGlnbiBpdHMgY29udGVudCAqL1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG4gIC5jZC1wcmltYXJ5LW5hdiA+IHVsIHtcbiAgICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGluc2lkZSBwYXJlbnQgZWxlbWVudCAqL1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiByZXNldCBtb2JpbGUgc3R5bGUgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAuY2QtcHJpbWFyeS1uYXYgPiB1bDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmNkLXByaW1hcnktbmF2ID4gdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xuICB9XG4gIC5jZC1wcmltYXJ5LW5hdiA+IHVsIGxpOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5jZC1wcmltYXJ5LW5hdiA+IHVsIGEge1xuICAgIC8qIHJlc2V0IG1vYmlsZSBzdHlsZSAqL1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5uYXYtb3BlbiAuY2QtcHJpbWFyeS1uYXYgdWwsXG4uY2QtcHJpbWFyeS1uYXYgdWw6dGFyZ2V0IHtcbiAgLypcbiAgICBzaG93IHByaW1hcnkgbmF2IC0gbW9iaWxlIG9ubHlcbiAgICA6dGFyZ2V0IGlzIHVzZWQgdG8gc2hvdyBuYXZpZ2F0aW9uIG9uIG5vLWpzIGRldmljZXNcbiAgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uYXYtb3BlbiAuY2QtcHJpbWFyeS1uYXYgdWwsXG4gIC5jZC1wcmltYXJ5LW5hdiB1bDp0YXJnZXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuMi4gQXV0by1IaWRpbmcgTmF2aWdhdGlvbiAtIHdpdGggU3ViIE5hdlxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNkLXNlY29uZGFyeS1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGNsZWFyOiBib3RoO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyODNEO1xuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNXM7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cywgLXdlYmtpdC10cmFuc2Zvcm0gLjVzO1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdjo6YWZ0ZXIge1xuICAvKiBncmFkaWVudCBvbiB0aGUgcmlnaHQgLSB0byBpbmRpY2F0ZSBpdCdzIHBvc3NpYmxlIHRvIHNjcm9sbCAqL1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAzNXB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsICMyNTI4M0QsIHJnYmEoMzcsIDQwLCA2MSwgMCkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzI1MjgzRCwgcmdiYSgzNywgNDAsIDYxLCAwKSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycztcbn1cblxuLmNkLXNlY29uZGFyeS1uYXYubmF2LWVuZDo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdiB1bCwgLmNkLXNlY29uZGFyeS1uYXYgbGksIC5jZC1zZWNvbmRhcnktbmF2IGEge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jZC1zZWNvbmRhcnktbmF2IHVsIHtcbiAgLyogZW5hYmxlcyBhIGZsZXggY29udGV4dCBmb3IgYWxsIGl0cyBkaXJlY3QgY2hpbGRyZW4gKi9cbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDAgNSU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmNkLXNlY29uZGFyeS1uYXYgdWw6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIC8qIGRvIG5vdCBzaHJpbmsgLSBlbGVtZW50cyBmbG9hdCBvbiB0aGUgcmlnaHQgb2YgdGhlIGVsZW1lbnQgKi9cbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdiBsaTpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBvcGFjaXR5OiAuNjtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDAgMWVtO1xufVxuXG4uY2Qtc2Vjb25kYXJ5LW5hdiBhOmhvdmVyLCAuY2Qtc2Vjb25kYXJ5LW5hdiBhLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1zZWNvbmRhcnktbmF2IHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLmNkLXNlY29uZGFyeS1uYXYgdWwge1xuICAgIC8qIHJlc2V0IG1vYmlsZSBzdHlsZSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBsaSB7XG4gICAgLyogcmVzZXQgbW9iaWxlIHN0eWxlICovXG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgLXdlYmtpdC1mbGV4LXNocmluazogMTtcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMTtcbiAgICBmbGV4LXNocmluazogMTtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBhIHtcbiAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBhLmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtM3B4ICM4RjM5ODU7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuMy4gQXV0by1IaWRpbmcgTmF2aWdhdGlvbiAtIHdpdGggU3ViIE5hdiArIEhlcm8gSW1hZ2VcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jZC1zZWNvbmRhcnktbmF2LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDYwcHg7XG59XG5cbi5jZC1zZWNvbmRhcnktbmF2LnNsaWRlLXVwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwcHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MHB4KTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLXNlY29uZGFyeS1uYXYuZml4ZWQge1xuICAgIHRvcDogODBweDtcbiAgICAvKiBmaXhlcyBhIGJ1ZyB3aGVyZSBuYXYgYW5kIHN1Ym5hYiBtb3ZlIHdpdGggYSBzbGlnaHQgZGVsYXkgKi9cbiAgICBib3gtc2hhZG93OiAwIC02cHggMCAjMjUyODNEO1xuICB9XG4gIC5jZC1zZWNvbmRhcnktbmF2LnNsaWRlLXVwIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5NYWluIGNvbnRlbnRcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jZC1tYWluLWNvbnRlbnQge1xuICBwYWRkaW5nOiA2MHB4IDUlIDJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNkLW1haW4tY29udGVudC5zdWItbmF2IHtcbiAgLyogdG8gYmUgdXNlZCBpZiB0aGVyZSBpcyBzdWIgbmF2ICovXG4gIHBhZGRpbmctdG9wOiAxMTBweDtcbn1cblxuLmNkLW1haW4tY29udGVudC5zdWItbmF2LWhlcm8ge1xuICAvKiB0byBiZSB1c2VkIGlmIHRoZXJlIGlzIGhlcm8gaW1hZ2UgKyBzdWJuYXYgKi9cbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5jZC1tYWluLWNvbnRlbnQuc3ViLW5hdi1oZXJvLnNlY29uZGFyeS1uYXYtZml4ZWQge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG4uY2QtbWFpbi1jb250ZW50IHAge1xuICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luOiAyZW0gYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiRGF2aWQgTGlicmVcIiwgc2VyaWY7XG4gIGNvbG9yOiAjYTVhOGE5O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2QtbWFpbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxuICAuY2QtbWFpbi1jb250ZW50LnN1Yi1uYXYge1xuICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgfVxuICAuY2QtbWFpbi1jb250ZW50LnN1Yi1uYXYtaGVyby5zZWNvbmRhcnktbmF2LWZpeGVkIHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG4gIC5jZC1tYWluLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuLypcbiAgYWRqdXN0IHRoZSBwb3NpdGlvbmluZyBvZiBpbi1wYWdlIGxpbmtzXG4gIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9qdW1wLWxpbmtzLWFuZC12aWV3cG9ydC1wb3NpdGlvbmluZy9cbiovXG4uY2QtbWFpbi1jb250ZW50LnN1Yi1uYXYgOnRhcmdldDo6YmVmb3JlLFxuLmNkLW1haW4tY29udGVudC5zdWItbmF2LWhlcm8gOnRhcmdldDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIG1hcmdpbi10b3A6IC01MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLW1haW4tY29udGVudC5zdWItbmF2IDp0YXJnZXQ6OmJlZm9yZSxcbiAgLmNkLW1haW4tY29udGVudC5zdWItbmF2LWhlcm8gOnRhcmdldDo6YmVmb3JlIHtcbiAgICBtYXJnaW4tdG9wOiAtNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuSW50cm8gU2VjdGlvblxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNkLWhlcm8ge1xuICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGl0cyBjb250ZW50ICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgaGVpZ2h0OiAzMDBweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jZC1oZXJvLWJhY2tncm91bmQuanBnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLmNkLWhlcm8gLmNkLWhlcm8tY29udGVudCB7XG4gIC8qIHZlcnRpY2FsbHkgYWxpZ24gaW5zaWRlIHBhcmVudCBlbGVtZW50ICovXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2QtaGVybyB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2QtaGVybyB7XG4gICAgaGVpZ2h0OiA2MDBweDtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyBTZWN0aW9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBMb2FkaW5nXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sb2FkaW5nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxLjVzIDJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAxLjVzIDJzIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDEuNXMgMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxLjVzIDJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMS41cyAycyBlYXNlLWluLW91dDtcbn1cblxuLmxvYWRpbmcgLmxvYWRpbmctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgdG9wOiBjYWxjKDUwJSAtIDIwcHgpO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAycyAxcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMnMgMXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMnMgMXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAycyAxcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDJzIDFzIGVhc2UtaW4tb3V0O1xufVxuXG4ubG9hZGluZyAubG9hZGluZy13cmFwcGVyIC5yZWMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDZweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgLXdlYmtpdC1hbmltYXRpb246IGxvYWRpbmcgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgLW1vei1hbmltYXRpb246IGxvYWRpbmcgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgLW1zLWFuaW1hdGlvbjogbG9hZGluZyAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAtby1hbmltYXRpb246IGxvYWRpbmcgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBsb2FkaW5nIDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG59XG5cbi5sb2FkaW5nIC5sb2FkaW5nLXdyYXBwZXIgLnIyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjFzO1xufVxuXG4ubG9hZGluZyAubG9hZGluZy13cmFwcGVyIC5yMyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTFzO1xufVxuXG4ubG9hZGluZyAubG9hZGluZy13cmFwcGVyIC5yNCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtLjlzO1xuICBhbmltYXRpb24tZGVsYXk6IC0uOXM7XG59XG5cbi5sb2FkaW5nIC5sb2FkaW5nLXdyYXBwZXIgLnI1IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uOHM7XG4gIGFuaW1hdGlvbi1kZWxheTogLS44cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwgMTAwJSwgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwgMTAwJSwgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQC1tcy1rZXlmcmFtZXMgbG9hZGluZyB7XG4gIDAlLCAxMDAlLCA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICB9XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwgMTAwJSwgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsb2FkaW5nIHtcbiAgMCUsIDEwMCUsIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gIH1cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICB9XG59XG5cbi5sb2FkaW5nLmxvYWRlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmxvYWRlZCAubG9hZGluZy13cmFwcGVyIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgSGVhZGVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEJhY2sgVG8gVG9wICovXG4ucmV0dXJuLXRvLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiA1MHB4O1xuICByaWdodDogNTBweDtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB6LWluZGV4OiAxMDAwO1xufVxuXG4ucmV0dXJuLXRvLXRvcCBpIHtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxMXB4O1xuICB0b3A6IDlweDtcbiAgZm9udC1zaXplOiAxOXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucmV0dXJuLXRvLXRvcDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLnJldHVybi10by10b3A6aG92ZXIgaSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0b3A6IDVweDtcbn1cblxuLmJhY2stdG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5oZWFkZXJfd3JhcHBlciB7XG4gIHdpZHRoOiA5NCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDExNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGlhbG9nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4uZGlhbG9nLCAuZGlhbG9nX19vdmVybGF5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uZGlhbG9nLS1jbG9zZSAuZGlhbG9nX19vdmVybGF5IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xufVxuXG4uZGlhbG9nLS1vcGVuIC5kaWFsb2dfX292ZXJsYXkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG59XG5cbi5kaWFsb2ctLW9wZW4gLmRpYWxvZ19fb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4uZGlhbG9nX19vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uZGlhbG9nLmRpYWxvZy0tb3BlbiAuZGlhbG9nX19jb250ZW50IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmRpYWxvZy0tb3BlbiAuZGlhbG9nX19jb250ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5kaWFsb2dfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmRpYWxvZ19fY29udGVudCB7XG4gIHdpZHRoOiA4MCU7XG4gIG1heC13aWR0aDogNTIwcHg7XG4gIG1pbi13aWR0aDogMjkwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZGlhbG9nLS1vcGVuIC5kaWFsb2ctaW5uZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG59XG5cbi5kaWFsb2ctaW5uZXIge1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZGlhbG9nLmRpYWxvZy0tb3BlbiBoMiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBhbmltLWVsZW0tMSAwLjdzIGVhc2Utb3V0IGJvdGg7XG4gIC1vLWFuaW1hdGlvbjogYW5pbS1lbGVtLTEgMC43cyBlYXNlLW91dCBib3RoO1xuICBhbmltYXRpb246IGFuaW0tZWxlbS0xIDAuN3MgZWFzZS1vdXQgYm90aDtcbn1cblxuLmRpYWxvZyBoMiB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBwYWRkaW5nOiAwIDAgMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI3NlYXJjaF9wb3B1cF93cmFwcGVyIGZvcm0ge1xuICBtYXJnaW46IDEwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2VhcmNoLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2FhYTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjb2xvcjogIzExMTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMzM0NFRkY7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNiYWJhYmE7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdDpob3ZlciB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4uZGlhbG9nLmRpYWxvZy0tb3BlbiBhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGNvbG9yOiAjMDAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmRpYWxvZy5kaWFsb2ctLW9wZW4gYTpob3ZlciB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4ubmF2YmFyLXRvZ2dsZSAuaWNvbi1iYXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xufVxuXG4vKiBNb2JpbGUgTWVudSAqL1xuI21vYmlsZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDA7XG59XG5cbiNtb2JpbGUtaGVhZGVyIC5tYWluLWxvZ28ge1xuICB3aWR0aDogMTAwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI21vYmlsZS1oZWFkZXIgLm1haW4tbG9nbyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1lbnUtY29udGFpbmVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2JwLXNwbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAtMjcwcHg7XG59XG5cbi5jYnAtc3BtZW51LXZlcnRpY2FsIGEge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uY2JwLXNwbWVudS12ZXJ0aWNhbCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmNicC1zcG1lbnUtcHVzaC10b2xlZnQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY29udGVudDogJyc7XG4gIHotaW5kZXg6IDEwMDAwO1xufVxuXG4uY2JwLXNwbWVudS1wdXNoLXRvbGVmdCB7XG4gIGxlZnQ6IC0yNzBweDtcbn1cblxuLmR0LXNvY2lhbC1saW5rIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZHQtc29jaWFsLWxpbmsgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMzNDRUZGO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmR0LXNvY2lhbC1saW5rIGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZHQtc29jaWFsLWxpbmsgbGkgYSB7XG4gIGNvbG9yOiAjMzNDRUZGO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZHQtc29jaWFsLWxpbmsgbGkgYSBpIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXNpemU6IDAuODU3MTRlbTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG59XG5cbi5kdC1zb2NpYWwtbGluayBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkYgIWltcG9ydGFudDtcbn1cblxuLmR0LXNvY2lhbC1saW5rIGxpOmhvdmVyIGEge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuI21vYmlsZS13cmFwcGVyIHtcbiAgd2lkdGg6IDI3MHB4O1xuICBiYWNrZ3JvdW5kOiAjMjIyNTMzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG4ubW9iaWxlX21lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1vYmlsZV9tZW51IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwNjE5MWY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzEzMTMxO1xufVxuXG4ubW9iaWxlX21lbnUgbGk6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4ubW9iaWxlX21lbnUgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5tb2JpbGVfbWVudSBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSBsaSB7XG4gIGJhY2tncm91bmQ6ICMxZDFkMWQ7XG59XG5cbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmNoaWxkcmVuLW1lbnUtdmlzaWJsZSAuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5tb2JpbGVfbWVudV9zZWFyY2gge1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5tb2JpbGVfbWVudV9zZWFyY2ggI3NlYXJjaCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1vYmlsZV9tZW51X3NlYXJjaCAjc2VhcmNoIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogN3B4IDEwcHg7XG4gIHdpZHRoOiA4NSU7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ubW9iaWxlX21lbnVfc2VhcmNoICNzZWFyY2hzdWJtaXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ubW9iaWxlX21lbnVfc2VhcmNoICNzZWFyY2hzdWJtaXQ6Zm9jdXMsIC5tb2JpbGVfbWVudV9zZWFyY2ggI3NlYXJjaHN1Ym1pdDpob3ZlciB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tb2JpbGVfbWVudV9zZWFyY2ggI3NlYXJjaHN1Ym1pdDpob3ZlciB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4ubWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDIzcHg7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA2cHg7XG59XG5cbi5tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1lbnUtdG9nZ2xlID4gZGl2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzQ0VGRjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5tZW51LXRvZ2dsZSA+IGRpdjpudGgtY2hpbGQoMikge1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLm1lbnUtdG9nZ2xlID4gZGl2Om50aC1jaGlsZCgzKSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG4ubWVudS10b2dnbGUuYWN0aXZlID4gZGl2Om50aC1jaGlsZCgxKSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KSByb3RhdGUoMTM1ZGVnKTtcbn1cblxuLm1lbnUtdG9nZ2xlLmFjdGl2ZSA+IGRpdjpudGgtY2hpbGQoMikge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubWVudS10b2dnbGUuYWN0aXZlID4gZGl2Om50aC1jaGlsZCgzKSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCkgcm90YXRlKC0xMzVkZWcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBCYW5uZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogQmFubmVyICovXG4uc3dpcGVyLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnN3aXBlci1iYW5uZXIgLnN3aXBlci1zbGlkZSAuc2xpZGVyLWNhcHRpb24tb25lLCAuc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlIC5zbGlkZXItY2FwdGlvbi10d28sIC5zd2lwZXItYmFubmVyIC5zd2lwZXItc2xpZGUgLnNsaWRlci1jYXB0aW9uLXRocmVlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjdzO1xufVxuXG4uc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc2xpZGVyLWNhcHRpb24tb25lLCAuc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc2xpZGVyLWNhcHRpb24tdHdvLCAuc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc2xpZGVyLWNhcHRpb24tdGhyZWUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlID4gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnN3aXBlci1iYW5uZXIgLnN3aXBlci1zbGlkZSAuc2xpZGVyLWNhcHRpb24gaDMge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N2VtO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LXNoYWRvdzogMHB4IDRweCA1Ljg4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlIC5zbGlkZXItY2FwdGlvbiBoMiB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiAzLjU3MTQzZW07XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXNoYWRvdzogMHB4IDRweCA1Ljg4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlIC5zbGlkZXItY2FwdGlvbiBwIHtcbiAgY29sb3I6ICNGRkY7XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMS44NTcxNGVtO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4uYmFubmVyLW5leHQsIC5iYW5uZXItcHJldiB7XG4gIHRvcDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDUwMDtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5iYW5uZXItbmV4dCAubmV4dC1idG4gaSwgLmJhbm5lci1uZXh0IC5wcmV2LWJ0biBpLCAuYmFubmVyLXByZXYgLm5leHQtYnRuIGksIC5iYW5uZXItcHJldiAucHJldi1idG4gaSB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgZm9udC1zaXplOiAyLjg1NzE0ZW07XG59XG5cbi5iYW5uZXItbmV4dDpob3ZlciwgLmJhbm5lci1wcmV2OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbn1cblxuLmJhbm5lci1uZXh0IHtcbiAgcmlnaHQ6IDAlO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcmlnaHQ6IDEwMHB4O1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogM3B4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMCAycHggIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICBoZWlnaHQ6IDI1cHg7XG59XG5cbi5vdmVybGF5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnNsaWRlci1jYXB0aW9uLW9uZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uc2xpZGVyLWNhcHRpb24tb25lIGgyIHtcbiAgZm9udC1zaXplOiA3MHB4O1xuICBmb250LXNpemU6IDVlbTtcbiAgY29sb3I6ICNGRkY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnNsaWRlci1jYXB0aW9uLW9uZSBoMjpiZWZvcmUsIC5zbGlkZXItY2FwdGlvbi1vbmUgaDI6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogM3B4O1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5zbGlkZXItY2FwdGlvbi1vbmUgaDI6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuXG4uc2xpZGVyLWNhcHRpb24tb25lIGgyOmFmdGVyIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc2xpZGVyLWNhcHRpb24tb25lIGgzIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogI0ZGRjtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLnNsaWRlci1jYXB0aW9uLXR3byB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uc2xpZGVyLWNhcHRpb24tdHdvIGg0IHtcbiAgY29sb3I6ICMzM0NFRkY7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC1zaXplOiAxLjU3MTQzZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5zbGlkZXItY2FwdGlvbi10d28gaDIge1xuICBmb250LXNpemU6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMi44NTcxNGVtO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLnNsaWRlci1jYXB0aW9uLXR3byBwIHtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2ZW07XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGlkZXItY2FwdGlvbi10aHJlZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uc2xpZGVyLWNhcHRpb24tdGhyZWUgaDMge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXNpemU6IDIuMjg1NzFlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnNsaWRlci1jYXB0aW9uLXRocmVlIGg0IHtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC1zaXplOiAxLjU3MTQzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbi5zbGlkZXItY2FwdGlvbi10aHJlZSBoMiB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiAzLjU3MTQzZW07XG4gIGNvbG9yOiAjMzNDRUZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4uc2xpZGVyLWNhcHRpb24tdGhyZWUgcCB7XG4gIGNvbG9yOiAjZGRkO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS4wNzE0M2VtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc3dpdGNoZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNTBweDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHotaW5kZXg6IDUwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGFuaW1hdGlvbjogbW92ZSAyLjVzIGluZmluaXRlO1xufVxuXG4uc3dpdGNoZXIgaSB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbi5zd2l0Y2hlcjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN3aXBlci1iYW5uZXI6aG92ZXIgLmJhbm5lci1uZXh0LCAuc3dpcGVyLWJhbm5lcjpob3ZlciAuYmFubmVyLXByZXYge1xuICBvcGFjaXR5OiAxO1xufVxuXG5Aa2V5ZnJhbWVzIG1vdmUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbi5iYW5uZXItdHdvIC5iYW5uZXItbmV4dCwgLmJhbm5lci10d28gLmJhbm5lci1wcmV2IHtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5iYW5uZXItdHdvIC5iYW5uZXItbmV4dCBpLCAuYmFubmVyLXR3byAuYmFubmVyLXByZXYgaSB7XG4gIGxpbmUtaGVpZ2h0OiAxMDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQWJvdXRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2Fib3V0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA3MHB4IDA7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNhYm91dCAuY2FwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4uYWJvdXQtYm94IHtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBwYWRkaW5nOiA2MHB4IDIwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hYm91dC1ib3ggLmljb24tYm94IHtcbiAgaGVpZ2h0OiA3MHB4O1xuICB3aWR0aDogNzBweDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0zNXB4O1xuICBsZWZ0OiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xufVxuXG4uYWJvdXQtYm94IC5pY29uLWJveCBpIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDIuMTQyODZlbTtcbiAgbGluZS1oZWlnaHQ6IDc2cHg7XG4gIGNvbG9yOiAjMDAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmFib3V0LWJveCAuYWJvdXQtdGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N2VtO1xuICBjb2xvcjogIzExMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5hYm91dC1ib3ggcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjMTExO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS4wNzE0M2VtO1xufVxuXG4uYWJvdXQtYm94OmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KSwgMCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5hYm91dC1ib3g6aG92ZXIgLmljb24tYm94IHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCAycHggMTBweCAxcHg7XG59XG5cbi5hYm91dC1ib3g6aG92ZXIgLmljb24tYm94IGkge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLmFib3V0LWJveDpob3ZlciAuYWJvdXQtdGl0bGUge1xuICBjb2xvcjogIzMzQ0VGRjtcbn1cblxuLyogQWJvdXRlIFR3byAqL1xuLmFib3V0LXR3byB7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWJvdXQtdHdvIC5hYm91dC1ib3gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5hYm91dC10d28gLmFib3V0LWJveCBpIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBmb250LXNpemU6IDMuOTI4NTdlbTtcbiAgY29sb3I6ICMwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uYWJvdXQtdHdvIC5hYm91dC1ib3g6aG92ZXIgaSB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBTZXJ2aWNlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNzZXJ2aWNlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA3MHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNlcnZpY2UtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNlcnZpY2UtaXRlbSAuc2VydmljZSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VydmljZS1pdGVtIC5zZXJ2aWNlIC5pY29uLWJveCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IDkwcHg7XG4gIHdpZHRoOiA5MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2UgLmljb24tYm94IGkge1xuICBmb250LXNpemU6IDM1cHg7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIGNvbG9yOiAjMTExO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xuICBsaW5lLWhlaWdodDogMTAwcHg7XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2UgLmljb24tYm94IC5pY29uLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMzAlO1xuICB3aWR0aDogMzAlO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgei1pbmRleDogLTE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2UgLnNlcnZpY2VfY29udGVudCAudGl0bGUge1xuICBjb2xvcjogIzExMTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuMjg1NzFlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2UgLnNlcnZpY2VfY29udGVudCBwIHtcbiAgY29sb3I6ICMxMTE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2U6aG92ZXIgLmljb24tYm94IHtcbiAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCAycHggMTBweCAxcHg7XG59XG5cbi5zZXJ2aWNlLWl0ZW0gLnNlcnZpY2U6aG92ZXIgLmljb24tYm94IGkge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLnNlcnZpY2UtaXRlbSAuc2VydmljZTpob3ZlciAuaWNvbi1ib3ggLmljb24tb3ZlcmxheSB7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLnNlcnZpY2UtaXRlbSAuc2VydmljZTpob3ZlciAuc2VydmljZV9jb250ZW50IC50aXRsZSB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4vKiBTZXJ2aWNlIFR3byAqL1xuLnNlcnZpY2UtdHdvIHtcbiAgcGFkZGluZzogMTAwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VydmljZS10d28gLnNlcnZpY2Uge1xuICBtYXJnaW46IDFweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2EyYTJhMjtcbiAgaGVpZ2h0OiAyNjBweDtcbiAgcGFkZGluZzogNTVweCAwO1xufVxuXG4uc2VydmljZS10d28gLnNlcnZpY2UgaSB7XG4gIGZvbnQtc2l6ZTogNzBweDtcbiAgZm9udC1zaXplOiA1ZW07XG4gIGNvbG9yOiAjMzNDRUZGO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnNlcnZpY2UtdHdvIC5zZXJ2aWNlIC5vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgcGFkZGluZzogNTBweCAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5zZXJ2aWNlLXR3byAuc2VydmljZSAub3ZlcmxheSBoMyB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2VydmljZS10d28gLnNlcnZpY2UgLm92ZXJsYXkgcCB7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4uc2VydmljZS10d28gLnNlcnZpY2U6aG92ZXIgLm92ZXJsYXkge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgUG9ydGZvbGlvXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIFBvcnRmb2xpbyAqL1xuLnBvcnRmb2xpbyB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucG9ydGZvbGlvIC5wb3J0Zm9saW9GaWx0ZXIge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ucG9ydGZvbGlvIC5wb3J0Zm9saW9GaWx0ZXIgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnBvcnRmb2xpbyAucG9ydGZvbGlvRmlsdGVyIGxpIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMTExO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDZweCAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZDogI2VlZTtcbn1cblxuLnBvcnRmb2xpbyAucG9ydGZvbGlvRmlsdGVyIGxpIGEuY3VycmVudCwgLnBvcnRmb2xpbyAucG9ydGZvbGlvRmlsdGVyIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNDRUZGO1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KSwgMCAycHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjgpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXk6YmVmb3JlLCAucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXk6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogMTVweDtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjM1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4zNXMgZWFzZSAwcztcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5OmJlZm9yZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLCAxKTtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkZGO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRkZGO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIDApO1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5IC53b3JrLWNhcHRpb24gLnZpZXcge1xuICBjb2xvcjogI0ZGRjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI0ZGRjtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDEuNDI4NTdlbTtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS40Mjg1N2VtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiAudmlldzpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5IC53b3JrLWNhcHRpb24gLnZpZXc6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiBoMiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC1zaXplOiAxLjU3MTQzZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzBweCkgc2NhbGUoMC45NSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbSAub3ZlcmxheSAud29yay1jYXB0aW9uIGgyIGEge1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5IC53b3JrLWNhcHRpb24gaDIgYTpob3ZlciB7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiBoMyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2ZW07XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MHB4KSBzY2FsZSgwLjk1KTtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtIC5vdmVybGF5IC53b3JrLWNhcHRpb24gaDMgYSB7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiBoMyBhOmhvdmVyIHtcbiAgY29sb3I6ICMxMTE7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbTpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbTpob3ZlciAub3ZlcmxheSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbTpob3ZlciAub3ZlcmxheTpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZSAwcywgdHJhbnNmb3JtIDAuNDVzIGVhc2UgMC4ycztcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtOmhvdmVyIC5vdmVybGF5OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjQ1cyBlYXNlIDAuMnM7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbTpob3ZlciAub3ZlcmxheSAud29yay1jYXB0aW9uIC52aWV3IHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtOmhvdmVyIC5vdmVybGF5IC53b3JrLWNhcHRpb24gaDIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSBzY2FsZSgxKTtcbn1cblxuLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtOmhvdmVyIC5vdmVybGF5IC53b3JrLWNhcHRpb24gaDMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMSk7XG59XG5cbi8qIFBvcnRmb2xpbyBUd28gKi9cbi5wb3J0Zm9saW8tYmcge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xufVxuXG4jcG9ydGZvbGlvLXR3byAuZ3JpZC1pdGVtIHtcbiAgd2lkdGg6IDMzJTtcbiAgcGFkZGluZzogMTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIC5taXgge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jcG9ydGZvbGlvLXR3byAucG9ydGZvbGlvLWl0ZW0ge1xuICBtYXJnaW46IDVweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQ291bnR1cFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY291bnR1cCB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLmNvdW50ZXItYm94IHtcbiAgYm9yZGVyOiAzcHggc29saWQgIzMzQ0VGRjtcbiAgcGFkZGluZzogMTVweCAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5jb3VudGVyLWJveCAuY291bnQgaSB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgY29sb3I6ICMzM0NFRkY7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5jb3VudGVyLWJveCAuY291bnQgaDIge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMy41NzE0M2VtO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmNvdW50ZXItYm94IC5jb3VudCBwIHtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi8qIENvdW50VXAgVHdvICovXG4uY291bnR1cC10d28ge1xuICBwYWRkaW5nOiAxMDBweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb3VudHVwLXR3byAub3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjUpO1xufVxuXG4uY291bnR1cC10d28gLmNvdW50ZXItYm94IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFRlYW1cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2dwLXRlYW0ge1xuICBwYWRkaW5nOiA3MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI2dwLXRlYW0gLmNhcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4udGVhbV9tZW1iZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMzM0NFRkY7XG59XG5cbi50ZWFtX21lbWJlciAudGVhbV90aHVtYiBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC03NSU7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjkpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC42cyBjdWJpYy1iZXppZXIoMC40MiwgLTAuNCwgMC41NywgMS41Myk7XG59XG5cbi50ZWFtX21lbWJlciAudGVhbV9pbnRybyBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMTExO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMS41NzE0M2VtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIGg1IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuMjg1NzFlbTtcbiAgY29sb3I6ICMxMTE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi50ZWFtX21lbWJlciAudGVhbV9pbnRybyBzcGFuIHtcbiAgY29sb3I6ICNGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4udGVhbV9tZW1iZXIgLnRlYW1faW50cm8gcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4udGVhbV9tZW1iZXIgLnRlYW1faW50cm8gLnRlYW1fbGluayB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIC50ZWFtX2xpbmsgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi50ZWFtX21lbWJlciAudGVhbV9pbnRybyAudGVhbV9saW5rIGxpIGEgaSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1zaXplOiAxLjA3MTQzZW07XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ludHJvIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8gaDQge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4udGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8gLnRlYW1fbGluayBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi50ZWFtX21lbWJlcjpob3ZlciAudGVhbV9pbnRybyAudGVhbV9saW5rIGxpOmhvdmVyIGEgaSB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4vKiBUZWFtIFR3byAqL1xuLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCwgLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgZm9udC1mYW1pbHk6IFwiZHQtaWNvbnNcIiAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dDpiZWZvcmUsIC50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dDphZnRlciwgLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2OmJlZm9yZSwgLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2OmFmdGVyIHtcbiAgZm9udC1zaXplOiA3MHB4O1xuICBmb250LXNpemU6IDVlbTtcbiAgY29sb3I6ICMxMTE7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dDpob3ZlciwgLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldiB7XG4gIGxlZnQ6IC0xMDBweDtcbn1cblxuLnRlYW0tdHdvIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDNmXCI7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gIHJpZ2h0OiAtMTAwcHg7XG59XG5cbi50ZWFtLXR3byAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMDRiXCI7XG59XG5cbiN0ZWFtLXNsaWRlciAudGVhbV9tZW1iZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMzNDRUZGO1xufVxuXG4jdGVhbS1zbGlkZXIgLnRlYW1fbWVtYmVyIC50ZWFtX3RodW1iIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4jdGVhbS1zbGlkZXIgLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbiN0ZWFtLXNsaWRlciAudGVhbV9tZW1iZXIgLnRlYW1faW50cm8gaDQge1xuICBtYXJnaW4tdG9wOiAxNTBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuI3RlYW0tc2xpZGVyIC50ZWFtX21lbWJlciAudGVhbV9pbnRybyBoNDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogNzBweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuI3RlYW0tc2xpZGVyIC50ZWFtX21lbWJlciAudGVhbV9pbnRybyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuI3RlYW0tc2xpZGVyIC50ZWFtX21lbWJlcjpob3ZlciAudGVhbV90aHVtYiBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbiN0ZWFtLXNsaWRlciAudGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jdGVhbS1zbGlkZXIgLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ludHJvIGg0IHtcbiAgbWFyZ2luLXRvcDogMTAwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFNraWxsc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ub3VyLXNraWxscyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm91ci1za2lsbHMgLnNraWxscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5vdXItc2tpbGxzIC5za2lsbHMtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vdXItc2tpbGxzIC5za2lsbHMtdGl0bGUgaDIge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDIuMTQyODZlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLm91ci1za2lsbHMgLnNraWxscy10aXRsZSBwIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5vdXItc2tpbGxzIHAge1xuICBjb2xvcjogIzAwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm91ci1za2lsbHMgLnNraWxscy10aHVtYiBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNraWxscy13cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA1NTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogNTAlO1xufVxuXG4uc2tpbGxzLWhlYWRpbmcgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxMTExMTE7XG59XG5cbi5za2lsbHMtaGVhZGluZyBwIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxucHJvZ3Jlc3Mge1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbnByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG59XG5cbnByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzQ0VGRjtcbiAgaGVpZ2h0OiAxNXB4O1xufVxuXG4vKiBTa2lsbHMgVHdvICovXG4ub3VyLXNraWxscy10d28ge1xuICBwYWRkaW5nOiAxNTBweCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vdXItc2tpbGxzLXR3byAub3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLm91ci1za2lsbHMtdHdvIC5za2lsbC1iYXIge1xuICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbn1cblxuLm91ci1za2lsbHMtdHdvIC5za2lsbC1iYXIgLnNraWxscy10aXRsZSBoMiB7XG4gIGNvbG9yOiAjMzNDRUZGO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ub3VyLXNraWxscy10d28gLnNraWxsLWJhciAuc2tpbGxzLWhlYWRpbmcgc3BhbiwgLm91ci1za2lsbHMtdHdvIC5za2lsbC1iYXIgLnNraWxscy1oZWFkaW5nIHAge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLm91ci1za2lsbHMtdHdvIHByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLWJhciB7XG4gIHBhZGRpbmc6IDFweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGhlaWdodDogOXB4O1xufVxuXG4ub3VyLXNraWxscy10d28gcHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBoZWlnaHQ6IDVweDtcbn1cblxuLnNraWxscy1kZXNjcmlwdGlvbiBoMiB7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi5za2lsbHMtZGVzY3JpcHRpb24gaDI6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgd2lkdGg6IDUwcHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDRweDtcbn1cblxuLnNraWxscy1kZXNjcmlwdGlvbiBwIHtcbiAgY29sb3I6ICNkZGQ7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG59XG5cbi5za2lsbHMtZGVzY3JpcHRpb24gLmdwLWJ0biB7XG4gIGNvbG9yOiAjRkZGO1xuICBib3JkZXItY29sb3I6ICNGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5za2lsbHMtZGVzY3JpcHRpb24gLmdwLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNGRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIEJsb2dcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2Jsb2cge1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJsb2dfcG9zdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlY2YwZjE7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbi5ibG9nX3Bvc3QgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5ibG9nX3Bvc3QgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5ibG9nX3Bvc3QgLmJsb2ctdGh1bWIge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ibG9nX3Bvc3QgLmJsb2ctdGh1bWIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjhzIGVhc2UtaW4tb3V0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nLXRodW1iIC5ibG9nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjgpO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nLXRodW1iOmhvdmVyIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuLmJsb2dfcG9zdCAuYmxvZy10aHVtYjpob3ZlciAuYmxvZy1vdmVybGF5IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IC5wb3N0X21ldGEge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQgLnBvc3RfbWV0YSBsaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IC5wb3N0X21ldGEgbGk6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAycHg7XG4gIGNvbG9yOiAjREREO1xuICBiYWNrZ3JvdW5kOiAjOTg5ODk4O1xuICByaWdodDogMDtcbiAgdG9wOiA0cHg7XG59XG5cbi5ibG9nX3Bvc3QgLmJsb2dfY29udGVudCAucG9zdF9tZXRhIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IC5wb3N0X21ldGEgbGkgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM5ODk4OTg7XG59XG5cbi5ibG9nX3Bvc3QgLmJsb2dfY29udGVudCAucG9zdF9tZXRhIGxpIGEgaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cblxuLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IC5ibG9nX3RpdGxlIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmNWY1ZjU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC1zaXplOiAxLjQyODU3ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQgLmJsb2dfdGl0bGUgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMyYzNlNTA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQgLmJsb2dfdGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQgcCB7XG4gIGNvbG9yOiAjNmQ2YzZjO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQgLmdwLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC1zaXplOiAwLjg1NzE0ZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDZweCA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5ibG9nX3Bvc3QgLmJsb2dfY29udGVudCAuZ3AtYnRuOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM0NFRkY7XG59XG5cbi5ibG9nLWNvbW1lbnRzIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWNmMGYxO1xufVxuXG4uYmxvZy1jb21tZW50cyA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMxMTE7XG59XG5cbi5ibG9nLWNvbW1lbnRzID4gYSBpIHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLmJsb2ctY29tbWVudHMgLmJsb2ctc29jaWFsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYmxvZy1jb21tZW50cyAuYmxvZy1zb2NpYWwgbGkge1xuICBwYWRkaW5nOiAwIDVweDtcbn1cblxuLmJsb2ctY29tbWVudHMgLmJsb2ctc29jaWFsIGxpIGEge1xuICBjb2xvcjogIzExMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmJsb2ctY29tbWVudHMgLmJsb2ctc29jaWFsIGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzMzQ0VGRjtcbn1cblxuLyogQmxvZyBUd28gKi9cbi5ibG9nLXR3byBwIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3Qge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4uYmxvZy10d28gLmJsb2dfcG9zdCAuYmxvZy10aHVtYi1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItbGVmdCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItbGVmdCAuYmxvZy1jb21tZW50cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSg1MywgMTUyLCAyMTksIDAuOCk7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5ibG9nLXR3byAuYmxvZ19wb3N0IC5ibG9nLXRodW1iLWxlZnQgLmJsb2ctY29tbWVudHMgYSB7XG4gIGNvbG9yOiAjRkZGO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItbGVmdCAuYmxvZy1jb21tZW50cyBhOmhvdmVyIHtcbiAgY29sb3I6ICMxMTE7XG59XG5cbi5ibG9nLXR3byAuYmxvZ19wb3N0IC5ibG9nX2NvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMjkwcHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2dfY29udGVudCAuYmxvZ190aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uYmxvZy10d28gLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IC5ncC1idG4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYmxvZy10d28gLmJsb2dfcG9zdC5ib2xnLXJpZ2h0IC5ibG9nX2NvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAyOTBweDtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItcmlnaHQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9nLXR3byAuYmxvZ19wb3N0IC5ibG9nLXRodW1iLXJpZ2h0IC5ibG9nLWNvbW1lbnRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDUzLCAxNTIsIDIxOSwgMC44KTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItcmlnaHQgLmJsb2ctY29tbWVudHMgYSB7XG4gIGNvbG9yOiAjRkZGO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2ctdGh1bWItcmlnaHQgLmJsb2ctY29tbWVudHMgYTpob3ZlciB7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBUZXN0aW1vbmlhbFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jdGVzdGltb25pYWwge1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cblxuI3Rlc3RpbW9uaWFsIC5zZWN0aW9uLXRpdGxlIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi50ZXN0aW1vbmlhbC1zbGlkZXIgLnRlc3Rpb25hbCAuaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXN0aW1vbmlhbC1zbGlkZXIgLnRlc3Rpb25hbCAuaXRlbSAuY2xpdGVuLXRodW1icyB7XG4gIGhlaWdodDogMTAwcHg7XG4gIHdpZHRoOiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDRweCBzb2xpZCAjMzNDRUZGO1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xufVxuXG4udGVzdGltb25pYWwtc2xpZGVyIC50ZXN0aW9uYWwgLml0ZW0gLmNsaXRlbi10aHVtYnMgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnRlc3RpbW9uaWFsLXNsaWRlciAudGVzdGlvbmFsIC5pdGVtIC50ZXN0aS1jb250ZW50IHAge1xuICBjb2xvcjogI2RkZDtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG4udGVzdGltb25pYWwtc2xpZGVyIC50ZXN0aW9uYWwgLml0ZW0gaDQge1xuICBjb2xvcjogIzMzQ0VGRjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXNpemU6IDEuMTQyODZlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRlc3RpbW9uaWFsLXNsaWRlciAudGVzdGlvbmFsIC5pdGVtIHNwYW4ge1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLnRlc3RpbW9uaWFsLXNsaWRlciAub3dsLW5hdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3BhbiwgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDE1cHg7XG59XG5cbi8qIFRlc3RpbW9uaWFsICovXG4jZmVlZGJhY2stc2xpZGVyMiAuaXRlbSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgcGFkZGluZzogMzBweDtcbn1cblxuI2ZlZWRiYWNrLXNsaWRlcjIgLml0ZW0gLnRlc3RpLWNvbnRlbnQgcCB7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4jZmVlZGJhY2stc2xpZGVyMiAuaXRlbSBoNCB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4jZmVlZGJhY2stc2xpZGVyMiAuaXRlbSBzcGFuIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFByaWNpbmcgVGFibGVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI3ByaWNpbmdfdGFibGUge1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRhYmxlIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgYm94LXNoYWRvdzogMHB4IC0zcHggMjlweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWF4LXdpZHRoOiAzNTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRlZDtcbn1cblxuLnRhYmxlIC5wcmljaW5nX3BsYW4gLnByaWNlIHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5wcmljZSBoNCB7XG4gIGNvbG9yOiAjMTExO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMS44NTcxNGVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnRhYmxlIC5wcmljaW5nX3BsYW4gLnByaWNlIHAge1xuICBjb2xvcjogI2VlZTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDI5ZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5wcmljZSAucGxhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMjBweDtcbiAgd2lkdGg6IDEyMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDI5cHggMDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbn1cblxuLnRhYmxlIC5wcmljaW5nX3BsYW4gLnByaWNlIC5wbGFuIGgzIHtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBmb250LXNpemU6IDIuODU3MTRlbTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5wcmljZSAucGxhbiBzcGFuIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4udGFibGUgLnByaWNpbmdfcGxhbiAuY29uZmlndXJhdGlvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnRhYmxlIC5wcmljaW5nX3BsYW4gLmNvbmZpZ3VyYXRpb24gbGkge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xufVxuXG4udGFibGUgLnByaWNpbmdfcGxhbiAuY29uZmlndXJhdGlvbiBsaTpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5jb25maWd1cmF0aW9uIGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nOiAxN3B4IDA7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5jb25maWd1cmF0aW9uIGxpLm5vbmUge1xuICBjb2xvcjogcmVkO1xufVxuXG4udGFibGUgLnByaWNpbmdfcGxhbiAuY29uZmlndXJhdGlvbiBsaSBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4udGFibGUgLnByaWNpbmdfcGxhbiAuY29uZmlndXJhdGlvbiBsaSAuZ3AtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi50YWJsZSAucHJpY2luZ19wbGFuIC5jb25maWd1cmF0aW9uIGxpIC5ncC1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgYnJhbmRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2JyYW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJyYW5kIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLmJyYW5kIC5pdGVtIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExMTtcbn1cblxuLmJyYW5kIC5vd2wtbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm93bC10aGVtZSAub3dsLWRvdHMge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBDb250YWN0XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNjb250YWN0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMDBweCAwO1xufVxuXG4jY29udGFjdCAuY29udGFjdC1pbm5lciB7XG4gIHBhZGRpbmc6IDAgNTBweDtcbn1cblxuLmNvbnRhY3QtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmNvbnRhY3QtaGVhZGVyIGgyIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgZm9udC1zaXplOiAyLjI4NTcxZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jb250YWN0LWZvcm0tYXJlYSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbi5jb250YWN0LWZvcm0tYXJlYSAuY29udGFjdC1pbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29udGFjdC1mb3JtLWFyZWEgLmNvbnRhY3QtaW5mbyAuaW5mbyB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgYm94LXNoYWRvdzogMHB4IC0zcHggMjlweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgbWFyZ2luLWJvdHRvbTogNDFweDtcbn1cblxuLmNvbnRhY3QtZm9ybS1hcmVhIC5jb250YWN0LWluZm8gLmluZm86bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb250YWN0LWZvcm0tYXJlYSAuY29udGFjdC1pbmZvIC5pbmZvIHNwYW4gaSB7XG4gIGNvbG9yOiAjMzNDRUZGO1xuICBmb250LXNpemU6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5jb250YWN0LWZvcm0tYXJlYSAuY29udGFjdC1pbmZvIC5pbmZvIGg0IHtcbiAgY29sb3I6ICMzM0NFRkY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb250YWN0LWZvcm0tYXJlYSAuY29udGFjdC1pbmZvIC5pbmZvIHAge1xuICBjb2xvcjogIzVhNWE1YTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI2Zvcm0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gIHdpZHRoOiA0OCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlZWU7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbiNmb3JtIGlucHV0W3R5cGU9dGV4dF06bnRoLWNoaWxkKDIpLCAjZm9ybSBpbnB1dFt0eXBlPXRleHRdOm50aC1jaGlsZCg0KSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuI2Zvcm0gaW5wdXRbdHlwZT10ZXh0XTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMzQ0VGRjtcbn1cblxuI2Zvcm0gdGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2VlZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGhlaWdodDogMjEwcHg7XG59XG5cbiNmb3JtIHRleHRhcmVhOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzNDRUZGO1xufVxuXG4jZm9ybSAuZ3AtYnRuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGNvbG9yOiAjRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEycHggMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuI2Zvcm0gLmdwLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG4gIGNvbG9yOiAjRkZGO1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xufVxuXG4uY29udGFjdC1pbnRybyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDUwcHggMDtcbn1cblxuLmNvbnRhY3QtaW50cm8gaDIge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMS41NzE0M2VtO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmNvbnRhY3QtaW50cm8gcCB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKiBDb250YWN0IFR3byAqL1xuI2NvbnRhY3QuY29udGFjdC10d28ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWhlYWRlciBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5nbWFwMy1hcmVhIHtcbiAgaGVpZ2h0OiA3MDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIHdpZHRoOiA0MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWZvcm0tYXJlYSAjZm9ybSBpbnB1dFt0eXBlPXRleHRdLCAjY29udGFjdC5jb250YWN0LXR3byAuY29udGFjdC1mb3JtLWFyZWEgI2Zvcm0gdGV4dGFyZWEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTExO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTExO1xufVxuXG4jY29udGFjdC5jb250YWN0LXR3byAuY29udGFjdC1mb3JtLWFyZWEgI2Zvcm0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gIHdpZHRoOiA0NyU7XG59XG5cbiNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWZvcm0tYXJlYSAjZm9ybSBpbnB1dFt0eXBlPXRleHRdOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzNDRUZGO1xufVxuXG4jY29udGFjdC5jb250YWN0LXR3byAuY29udGFjdC1mb3JtLWFyZWEgI2Zvcm0gcCB7XG4gIHBhZGRpbmc6IDAgOHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBNYXBcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogbWFwICovXG4uZ21hcDMtYXJlYSB7XG4gIGhlaWdodDogNTUwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIG5ld3NsZXR0ZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI25ld3NsZXR0ZXIge1xuICBwYWRkaW5nOiAxMDBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbiNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4jbmV3c2xldHRlciAubmV3cy13cmFwZXIgaDMge1xuICBmb250LXNpemU6IDM1cHg7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4jbmV3c2xldHRlciAubmV3cy13cmFwZXIgZm9ybSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMzM0NFRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbiNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciBmb3JtIGlucHV0W3R5cGU9ZW1haWxdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDE1cHggMTI1cHggMTVweCAyMHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuI25ld3NsZXR0ZXIgLm5ld3Mtd3JhcGVyIGZvcm0gYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4jbmV3c2xldHRlciAubmV3cy13cmFwZXIgZm9ybSBidXR0b24gaSB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuI25ld3NsZXR0ZXIgLm5ld3Mtd3JhcGVyIGZvcm06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNGRkY7XG59XG5cbiNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciBmb3JtOmhvdmVyIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBmb290ZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI2Zvb3RlciB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG59XG5cbiNmb290ZXIgaDIge1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXNpemU6IDEuNzE0MjllbTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI2Zvb3RlciAuZ3Atc29jaWFsLWxpbmsge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbiNmb290ZXIgLmdwLXNvY2lhbC1saW5rIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4jZm9vdGVyIC5ncC1zb2NpYWwtbGluayBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gIGNvbG9yOiAjMzMzO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N2VtO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbiNmb290ZXIgLmdwLXNvY2lhbC1saW5rIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBjb2xvcjogI0ZGRjtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmNvcHlyaWdodCB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxM2M1ZmQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvcHlyaWdodCBwIHtcbiAgY29sb3I6ICNlZWU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5jb3B5cmlnaHQgcCBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5jb3B5cmlnaHQgcCBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDJweDtcbiAgYmFja2dyb3VuZDogI2RkZDtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAycHg7XG59XG5cbi8qIEZvb3RlciBUd28gKi9cbiNmb290ZXIuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzAzMTQxZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLmNvcHlyaWdodCB7XG4gIGJvcmRlci1jb2xvcjogIzFkMjkyZDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgaDMge1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXNpemU6IDEuNTcxNDNlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLmluZm8gaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjb2xvcjogIzMzQ0VGRjtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBmb250LXNpemU6IDEuNzg1NzFlbTtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLmluZm8gcCB7XG4gIGNvbG9yOiAjYTlhOWE5O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTcxNDNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLmdwLXNvY2lhbC1saW5rIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLmdwLXNvY2lhbC1saW5rIGxpIGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGO1xuICBib3JkZXItY29sb3I6ICNGRkY7XG4gIGhlaWdodDogMzVweDtcbiAgd2lkdGg6IDM1cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjI4NTcxZW07XG4gIGxpbmUtaGVpZ2h0OiAzNXB4O1xufVxuXG4jZm9vdGVyLmZvb3RlciAuZ3Atc29jaWFsLWxpbmsgbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiNmb290ZXIuZm9vdGVyIC5uZXdzLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzBhMjIzMTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlcjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlciA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA3MHB4O1xufVxuXG4jZm9vdGVyLmZvb3RlciAubmV3cy13cmFwcGVyID4gYSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlciAubmV3cy1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDg1cHg7XG59XG5cbiNmb290ZXIuZm9vdGVyIC5uZXdzLXdyYXBwZXIgLm5ld3MtY29udGVudCBhIHNwYW4ge1xuICBjb2xvcjogI2RkZDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDEuNDI4NTdlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMDcxNDNlbTtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlciAubmV3cy1jb250ZW50IGEgcCB7XG4gIGNvbG9yOiAjYTVhNWE1O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTcxNDNlbTtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlcjpob3ZlciBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4jZm9vdGVyLmZvb3RlciAubmV3cy13cmFwcGVyOmhvdmVyIC5uZXdzLWNvbnRlbnQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI2Zvb3Rlci5mb290ZXIgLm5ld3Mtd3JhcHBlcjpob3ZlciAubmV3cy1jb250ZW50IGEgc3BhbiB7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4vKiBGbGlja2VyICovXG4uZmxpY2tlciBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmZsaWNrZXIgYTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuLmZsaWNrZXIgLmNvcHlyaWdodCB7XG4gIGJvcmRlci1jb2xvcjogIzBiMjMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZmxpY2tlciAuY29weXJpZ2h0IHAge1xuICBjb2xvcjogIzkyOTI5Mjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQmxvZyBQYWdlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ibG9nLXBhZ2UgI2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzAzMTQxZjtcbn1cblxuLyogQmxvZyBTaW5nbGUgKi9cbi5ibG9nLXNpbmdsZSB7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cblxuLmJsb2ctd3JhcHBlciAuYmxvZy10aHVtYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmJsb2ctd3JhcHBlciAuYmxvZy10aHVtYiBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJsb2ctd3JhcHBlciAuYmxvZ19wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmJsb2ctd3JhcHBlciAucG9zdC1tZXRhIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uYmxvZy13cmFwcGVyIC5wb3N0LW1ldGEgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5ibG9nLXdyYXBwZXIgLnBvc3QtbWV0YSBsaSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzMzQ0VGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5ibG9nLXdyYXBwZXIgLnBvc3QtbWV0YSBsaSBhIGkge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5ibG9nLXdyYXBwZXIgaDIge1xuICBjb2xvcjogIzIyMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLmJsb2ctd3JhcHBlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG5cbi5ibG9nLXdyYXBwZXIgYmxvY2txdW90ZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMzM2NlZmY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzMzQ0VGRjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzM0NFRkY7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2ZW07XG59XG5cbi5ibG9nLXdyYXBwZXIgLnRhZy1hcmVhIGkge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGNvbG9yOiAjMzNDRUZGO1xufVxuXG4uYmxvZy13cmFwcGVyIC50YWctYXJlYSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzExMTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYmxvZy13cmFwcGVyIC50YWctYXJlYSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzM0NFRkY7XG59XG5cbi5ibG9nLXN1Yi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC1zaXplOiAxLjcxNDI5ZW07XG4gIGNvbG9yOiAjMTExO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4uYmxvZy1zdWItdGl0bGU6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICMzM0NFRkY7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAzcHg7XG4gIHdpZHRoOiA1MHB4O1xuICBjb250ZW50OiAnJztcbn1cblxuLmF0aG9yIHtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLmF0aG9yIC5hdGhvci1pbm5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5hdGhvciAuYXRob3ItaW5uZXIgLnRodW1iIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5hdGhvciAuY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAxMTBweDtcbn1cblxuLmF0aG9yIC5jb250ZW50IGg0IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDEuNDI4NTdlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmF0aG9yIC5jb250ZW50IHNwYW4ge1xuICBjb2xvcjogIzk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbm9sIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5vbC5jb21tZW50LWxpc3Qge1xuICBwYWRkaW5nOiAwO1xufVxuXG5hcnRpY2xlIHtcbiAgcGFkZGluZzogMTVweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmFydGljbGUgLnJlcGx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxNXB4O1xufVxuXG5hcnRpY2xlIC5yZXBseSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzMzQ0VGRjtcbn1cblxuYXJ0aWNsZSAucmVwbHkgYSBpIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbmFydGljbGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbiAgcGFkZGluOiAyMHB4IDA7XG59XG5cbi5jb21tZW50LW1ldGEgaW1nIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb21tZW50LW1ldGEgYSB7XG4gIG1hcmdpbi1sZWZ0OiAxMTBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2NjYztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5jb21tZW50LW1ldGEgYSBpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5jb21tZW50LW1ldGEgYS51cmwge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NmVtO1xuICBjb2xvcjogIzExMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5jb21tZW50LWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMTEwcHg7XG59XG5cbi5jb21tZW50LWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAjNjc2NzY3O1xufVxuXG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LXJlcGx5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXNpemU6IDEuNTcxNDNlbTtcbiAgY29sb3I6ICMxMTE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuXG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gcCB7XG4gIHdpZHRoOiAzMiU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gcDpudGgtY2hpbGQoMykge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBwIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gcCBpbnB1dDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMzQ0VGRjtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tY29tbWVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWNvbW1lbnQgdGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tY29tbWVudCB0ZXh0YXJlYTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzMzQ0VGRjtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCAjc3VibWl0IHtcbiAgYmFja2dyb3VuZDogIzMzQ0VGRjtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCAjc3VibWl0OmhvdmVyLCAuY29tbWVudC1yZXNwb25kICNzdWJtaXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMTExO1xufVxuXG4ubW9yZS1ibG9nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb2xvcjogI0ZGRjtcbiAgcGFkZGluZzogMTBweCAwO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTUwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5tb3JlLWJsb2c6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICByZXNwb25zaXZlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAjY29udGFjdC5jb250YWN0LXR3byAuY29udGFjdC1mb3JtLWFyZWEge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMjVweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgLyogQmxvZyBUd28gICovXG4gIC5ibG9nLXR3byAuYmxvZ19wb3N0IC5ibG9nLXRodW1iLWxlZnQsIC5ibG9nLXR3byAuYmxvZ19wb3N0IC5ibG9nLXRodW1iLXJpZ2h0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYmxvZy10d28gLmJsb2dfcG9zdCAuYmxvZ19jb250ZW50IHtcbiAgICBtYXJnaW46IDAgMTVweDtcbiAgfVxuICAuYmxvZy10d28gLmJsb2dfcG9zdC5ib2xnLXJpZ2h0IC5ibG9nX2NvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLyogSGVhZGVyICovXG4gICNoZWFkZXIgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG4gICNoZWFkZXIgLm5hdmJhci1uYXYge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgfVxuICAvKiBCYW5uZXIgKi9cbiAgLnNsaWRlci1jYXB0aW9uLW9uZSBoMiB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMy41NzE0M2VtO1xuICB9XG4gIC5zbGlkZXItY2FwdGlvbi1vbmUgaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXNpemU6IDEuNDI4NTdlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG4gIC5ncC1ibi1idG4ge1xuICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgfVxuICAuc3dpdGNoZXIge1xuICAgIGJvdHRvbTogMjVweDtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdHdvIHtcbiAgICBsZWZ0OiAxMCU7XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLXR3byBoMiB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLXR3byBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdGhyZWUge1xuICAgIGxlZnQ6IDEwJTtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdGhyZWUgaDIge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICB9XG4gIC5zbGlkZXItY2FwdGlvbi10aHJlZSBoNCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS40Mjg1N2VtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLXRocmVlIGgzIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC1zaXplOiAxLjU3MTQzZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICB9XG4gIC8qIFNraWxscyAqL1xuICAub3VyLXNraWxscyAuc2tpbGxzLXRpdGxlIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIC5vdXItc2tpbGxzIC5za2lsbHMtdGl0bGUgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBwcm9ncmVzcyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICB9XG4gIC8qIFNlcnZpY2UgKi9cbiAgLnNlcnZpY2UtaXRlbSAuc2VydmljZSAuc2VydmljZV9jb250ZW50IHAgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogUG9ydGZvbGlvICovXG4gIC5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbSAub3ZlcmxheSAud29yay1jYXB0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiAxLjI4NTcxZW07XG4gIH1cbiAgLnBvcnRmb2xpb19jb250YWluZXIgLnBvcnRmb2xpby1pdGVtOmhvdmVyIC5vdmVybGF5IC53b3JrLWNhcHRpb24gLnZpZXcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLyogVGVhbSAqL1xuICAudGVhbV9tZW1iZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICMzM0NFRkY7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG4gIC50ZWFtX21lbWJlciAudGVhbV9pbnRybyB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICB9XG4gIC50ZWFtX21lbWJlciAudGVhbV9pbnRybyBzcGFuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIC50ZWFtX21lbWJlciAudGVhbV9pbnRybyAudGVhbV9saW5rIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxuICAudGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8gaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLnRlYW1fbWVtYmVyOmhvdmVyIC5ibG9nLXRodW1iLWxlZnQgLmJsb2ctY29tbWVudHMge1xuICAgIGJvdHRvbTogLTM0cHg7XG4gICAgcGFkZGluZzogN3B4O1xuICB9XG4gIC50ZWFtX21lbWJlcjpob3ZlciAuYmxvZy10aHVtYi1sZWZ0IC5ibG9nLWNvbW1lbnRzIGxpIHtcbiAgICBwYWRkaW5nOiAwIDNweDtcbiAgfVxuICAvKiBUZWFtIFR3byAqL1xuICAjdGVhbS1zbGlkZXIgLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ludHJvIGg0IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG4gIC8qIENvbnRhY3QgKi9cbiAgI2Zvcm0ge1xuICAgIC8qIENvbnRhY3QgKi9cbiAgfVxuICAjZm9ybSBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogNDclO1xuICB9XG4gICNmb3JtIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgIHdpZHRoOiA0NyU7XG4gIH1cbiAgI2Zvcm0gLmdwLWJ0biB7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAvKiBIZWFkZXIgKi9cbiAgI2hlYWRlciAubmF2YmFyLWhlYWRlciAubmF2YmFyLWJyYW5kIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgcGFkZGluZzogMTZweCAwO1xuICB9XG4gICNoZWFkZXIgLm5hdmJhci1uYXYgbGkge1xuICAgIHBhZGRpbmc6IDAgNnB4O1xuICB9XG4gIC8qIFRlYW0gVHdvICovXG4gICN0ZWFtLXNsaWRlciAudGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8gaDQge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbiAgLyogQ291bnR1cCBUd28gKi9cbiAgLmNvdW50dXAtdHdvIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gIH1cbiAgLmNvdW50dXAtdHdvIC5jb3VudGVyLWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuICAvKiBDb250YWN0IFR3byAgKi9cbiAgI2NvbnRhY3QuY29udGFjdC10d28gLmNvbnRhY3QtZm9ybS1hcmVhIHtcbiAgICByaWdodDogNDBweDtcbiAgfVxuICAjY29udGFjdC5jb250YWN0LXR3byAuZ21hcDMtYXJlYSB7XG4gICAgaGVpZ2h0OiA2MDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAvKiBIZWFkZXIgKi9cbiAgLmhlYWRlcl93cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNoZWFkZXIgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxuICAjaGVhZGVyIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgI2hlYWRlciAubmF2YmFyLW5hdiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAjbW9iaWxlLWhlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIG1hcmdpbjogMTJweCAyMHB4IDEycHggMDtcbiAgfVxuICAubmF2YmFyLWZpeGVkLXRvcCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1oZWFkZXIgLm5hdmJhci1icmFuZCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5ncC1wcmltYXJ5LW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC8qIEJhbm5lciAqL1xuICAuc3dpcGVyLWJhbm5lciAuc3dpcGVyLXNsaWRlIHtcbiAgICBoZWlnaHQ6IDM3MHB4O1xuICB9XG4gIC5zd2lwZXItYmFubmVyIC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLW9uZSBoMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMi4xNDI4NmVtO1xuICB9XG4gIC5zbGlkZXItY2FwdGlvbi1vbmUgaDI6YmVmb3JlLCAuc2xpZGVyLWNhcHRpb24tb25lIGgyOmFmdGVyIHtcbiAgICB3aWR0aDogMTY1cHg7XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLW9uZSBoMyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yODU3MWVtO1xuICB9XG4gIC5ncC1ibi1idG4ge1xuICAgIHBhZGRpbmc6IDEwcHggMjhweDtcbiAgfVxuICAvKiBBYm91dCAqL1xuICAuYWJvdXQtYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG4gIC8qIFNraWxscyAqL1xuICAub3VyLXNraWxscyAuc2tpbGxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAub3VyLXNraWxscyAuc2tpbGwtYmFyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gIH1cbiAgLyogU2tpbGxzIHR3byAqL1xuICAub3VyLXNraWxscy10d28ge1xuICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgfVxuICAuc2tpbGxzLWRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5za2lsbHMtZGVzY3JpcHRpb24gaDIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLyogU2VydmljZSB0d28gKi9cbiAgI3NlcnZpY2UtdHdvIHtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gIH1cbiAgI3NlcnZpY2UtdHdvIC5zZXJ2aWNlIC5vdmVybGF5IHtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gIH1cbiAgI3NlcnZpY2UtdHdvIC5zZXJ2aWNlIC5vdmVybGF5IHAgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogQ291bnRlciAqL1xuICAuY291bnRlci1ib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLyogUG9ydGZvbGlvICovXG4gIC5wb3J0Zm9saW9fY29udGFpbmVyIC5wb3J0Zm9saW8taXRlbSAub3ZlcmxheSAud29yay1jYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAucG9ydGZvbGlvX2NvbnRhaW5lciAucG9ydGZvbGlvLWl0ZW0gLm92ZXJsYXkgLndvcmstY2FwdGlvbiAudmlldyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICB9XG4gIC8qIEJsb2cgVHdvICAqL1xuICAuYmxvZy10d28gLmJsb2dfcG9zdCAuYmxvZy10aHVtYi1sZWZ0LCAuYmxvZy10d28gLmJsb2dfcG9zdCAuYmxvZy10aHVtYi1yaWdodCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmJsb2ctdHdvIC5ibG9nX3Bvc3QgLmJsb2dfY29udGVudCB7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gIH1cbiAgLmJsb2ctdHdvIC5ibG9nX3Bvc3QuYm9sZy1yaWdodCAuYmxvZ19jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLyogVGVhbSAqL1xuICAudGVhbV9tZW1iZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHtcbiAgICBib3R0b206IC04MCU7XG4gIH1cbiAgLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHNwYW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ludHJvIGg0IHtcbiAgICBtYXJnaW4tdG9wOiA4NXB4O1xuICB9XG4gIC8qIFRlYW0gVHdvICovXG4gICN0ZWFtLXNsaWRlciAudGVhbV9tZW1iZXI6aG92ZXIgLnRlYW1faW50cm8gaDQge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbiAgLyogQ29udGFjdCAqL1xuICAjY29udGFjdCAuY29udGFjdC1pbm5lciB7XG4gICAgcGFkZGluZzogMzBweCAwO1xuICB9XG4gIC5jb250YWN0LWZvcm0tYXJlYSAuY29udGFjdC1pbmZvIC5pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC8qIENvbnRhY3QgVHdvICovXG4gICNjb250YWN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gICNjb250YWN0LmNvbnRhY3QtdHdvIC5nbWFwMy1hcmVhIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG4gICNjb250YWN0LmNvbnRhY3QtdHdvIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgfVxuICAjY29udGFjdC5jb250YWN0LXR3byAuY29udGFjdC1mb3JtLWFyZWEgI2Zvcm0gcCB7XG4gICAgcGFkZGluZzogMCAxNHB4O1xuICB9XG4gIC8qIE5ld3NsZXR0ZXIgKi9cbiAgI25ld3NsZXR0ZXIgLm5ld3Mtd3JhcGVyIGZvcm0ge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuICAvKiBTZWN0aW9uIFRpdGxlICovXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5ZW07XG4gIH1cbiAgLyogQmFubmVyICovXG4gIC5ncC1ibi1idG4ge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tb25lIGgzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLXR3byBoMiB7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMS43ODU3MWVtO1xuICB9XG4gIC5zbGlkZXItY2FwdGlvbi10d28gaDQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXNpemU6IDEuMjg1NzFlbTtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdHdvIHAge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdHdvIHAgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNsaWRlci1jYXB0aW9uLXRocmVlIGgyIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC1zaXplOiAxLjU3MTQzZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdGhyZWUgaDQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXNpemU6IDEuMjg1NzFlbTtcbiAgfVxuICAuc2xpZGVyLWNhcHRpb24tdGhyZWUgaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXNpemU6IDEuNDI4NTdlbTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIHJpZ2h0OiAzMHB4O1xuICB9XG4gIC8qIEFib3V0ICovXG4gIC5jYXB0aW9uIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIFNraWxscyBUd28gKi9cbiAgLm91ci1za2lsbHMtdHdvIC5za2lsbC1iYXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLyogQ291bnRVcCAqL1xuICAuZnVsbC13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogVGVhbSAqL1xuICAudGVhbV9tZW1iZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHtcbiAgICBib3R0b206IC04MyU7XG4gIH1cbiAgLnRlYW1fbWVtYmVyIC50ZWFtX2ludHJvIHNwYW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnRlYW1fbWVtYmVyOmhvdmVyIC50ZWFtX2ludHJvIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAxMzVweDtcbiAgfVxuICAucG9ydGZvbGlvIC5wb3J0Zm9saW9GaWx0ZXIgbGkge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG4gIC5wb3J0Zm9saW8gLnBvcnRmb2xpb0ZpbHRlciBsaSBhIHtcbiAgICBwYWRkaW5nOiA2cHg7XG4gIH1cbiAgLyogVGVzdGltb25pYWwgKi9cbiAgI3Rlc3RpbW9uaWFsIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC50ZXN0aW1vbmlhbC1zbGlkZXIgLnRlc3Rpb25hbCAuaXRlbSAudGVzdGktY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgLnRlc3RpbW9uaWFsLXNsaWRlciAudGVzdGlvbmFsIC5pdGVtIC50ZXN0aS1jb250ZW50IHAgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogTmV3c2xldHRlciAqL1xuICAjbmV3c2xldHRlciB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuICB9XG4gICNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciBoMyB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMi4xNDI4NmVtO1xuICB9XG4gICNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciBmb3JtIHtcbiAgICB3aWR0aDogMzEwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgI25ld3NsZXR0ZXIgLm5ld3Mtd3JhcGVyIGZvcm0gaW5wdXRbdHlwZT1lbWFpbF0ge1xuICAgIHBhZGRpbmc6IDEwcHggMTE1cHggMTBweCAxNXB4O1xuICB9XG4gICNuZXdzbGV0dGVyIC5uZXdzLXdyYXBlciBmb3JtIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICAvKiBDb250YWN0ICovXG4gICNjb250YWN0IC5jb250YWN0LWlubmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gICNjb250YWN0IC5jb250YWN0LWlubmVyIC5jb250YWN0LWhlYWRlciBoMiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuICAjY29udGFjdCAjZm9ybSBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjY29udGFjdCAjZm9ybSAuZ3AtYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIC5yZXR1cm4tdG8tdG9wIHtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbiAgLyogQ29udGFjdCBUd28gKi9cbiAgI2NvbnRhY3QuY29udGFjdC10d28gLmNvbnRhY3QtZm9ybS1hcmVhIHtcbiAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gIH1cbiAgI2NvbnRhY3QuY29udGFjdC10d28gLmNvbnRhY3QtZm9ybS1hcmVhICNmb3JtIHAge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLyogQmxvZyBTaWdubGUgKi9cbi5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBwIHtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG5cbi8qIFdpZGdldCAqL1xuLndpZGdldF9kdF9zZWFyY2ggLnNlYXJjaC1mb3JtIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIFdpZGdldHNcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyBTZWFyY2hcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndpZGdldF9kdF9zZWFyY2ggLnNlYXJjaC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53aWRnZXRfZHRfc2VhcmNoIC5zZWFyY2gtZm9ybSBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDI3MHB4O1xufVxuXG4ud2lkZ2V0X2R0X3NlYXJjaCAuc2VhcmNoLWZvcm0gLnNlYXJjaC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNnB4O1xuICB0b3A6IDEycHg7XG59XG5cbi53aWRnZXRfZHRfc2VhcmNoIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBjb2xvcjogIzExMTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLndpZGdldF9kdF9zZWFyY2ggLnNlYXJjaC1zdWJtaXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjIER0IEN1c3RvbSBNZW51XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIEN1c3RvbSBNZW51ICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLndpZGdldCAud2lkZ2V0LXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N2VtO1xuICBjb2xvcjogIzExMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi53aWRnZXQgLndpZGdldC10aXRsZTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xufVxuXG4ud2lkZ2V0X25hdl9tZW51IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ud2lkZ2V0X25hdl9tZW51IHVsIGxpIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRlZDtcbn1cblxuLndpZGdldF9uYXZfbWVudSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLndpZGdldF9uYXZfbWVudSB1bCBsaSBhIHtcbiAgY29sb3I6ICM2ZDZjNmM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLndpZGdldF9uYXZfbWVudSB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzM0NFRkY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgRHQgVGFnc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEdCBUYWdzICovXG4uZHQtdGFnIGEge1xuICBjb2xvcjogIzZkNmM2YztcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiA0cHggOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uZHQtdGFnIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzNDRUZGO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyBEdCBSZXNlbnQgUG9zdFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaWRnZXQgUmVzZW50IFBvc3QgKi9cbi53aWRnZXRfcmVjZW50X2VudHJpZXMgLnJlc2VudC1wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIC5yZXNlbnQtcG9zdCAucG9zdC10aHVtYnMge1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIC5yZXNlbnQtcG9zdCAucG9zdC1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDkwcHg7XG59XG5cbi53aWRnZXRfcmVjZW50X2VudHJpZXMgLnJlc2VudC1wb3N0IC5wb3N0LWNvbnRlbnQgaDUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIC5yZXNlbnQtcG9zdCAucG9zdC1jb250ZW50IGg1IGEge1xuICBjb2xvcjogIzExMTExMTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLndpZGdldF9yZWNlbnRfZW50cmllcyAucmVzZW50LXBvc3QgLnBvc3QtY29udGVudCBoNSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzM0NFRkY7XG59XG5cbi53aWRnZXRfcmVjZW50X2VudHJpZXMgLnJlc2VudC1wb3N0IC5wb3N0LWNvbnRlbnQgLnBvc3QtbWV0YSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIC5yZXNlbnQtcG9zdCAucG9zdC1jb250ZW50IC5wb3N0LW1ldGEgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi53aWRnZXRfcmVjZW50X2VudHJpZXMgLnJlc2VudC1wb3N0IC5wb3N0LWNvbnRlbnQgLnBvc3QtbWV0YSBsaSBhIHtcbiAgY29sb3I6ICMzM0NFRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndpZGdldF9yZWNlbnRfZW50cmllcyAucmVzZW50LXBvc3QgLnBvc3QtY29udGVudCAucG9zdC1tZXRhIGxpIGEgaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgRHQgQXJjaGl2ZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBXaWRnZXQgRHQgQXJjaGl2ZXMgKi9cbi53aWRnZXRfYXJjaGl2ZSB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLndpZGdldF9hcmNoaXZlIHVsIGxpIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRlZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ud2lkZ2V0X2FyY2hpdmUgdWwgbGkgYSB7XG4gIGNvbG9yOiAjNmQ2YzZjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ud2lkZ2V0X2FyY2hpdmUgdWwgbGkgYSBzcGFuIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbi53aWRnZXRfYXJjaGl2ZSB1bCBsaSBwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLndpZGdldF9hcmNoaXZlIHVsIGxpOmhvdmVyIGEge1xuICBjb2xvcjogIzMzQ0VGRjtcbn1cblxuLndpZGdldF9hcmNoaXZlIHVsIGxpOmhvdmVyIHAge1xuICBjb2xvcjogIzMzQ0VGRjtcbn1cbiIsImh0bWwge1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuYm9keSB7XG4gIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nO1xuICBjb2xvcjogJGNvbG9yX3RleHQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9udF9wcmltYXJ5O1xuICBmb250LXNpemU6IDE0cHg7IH1cblxucCB7XG4gIGNvbG9yOiAkY29sb3JfdGV4dDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDE0KTtcbiAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMjYpOyB9XG5cblxuLnNlY3Rpb24tdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzExMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfSB9XG5cblxuLmNhcHRpb24ge1xuICBjb2xvcjogIzAwMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMjQpOyB9XG5cbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjcpOyB9XG5cbmgxLGgyLGgzLGg0LGg1IHtcbiAgY29sb3I6ICRjb2xvcl9oZWFkZXI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtZmFtaWx5OiAnUFQgU2FucycsIHNhbnMtc2VyaWY7IH1cblxuXG5cbiIsIi8vIEZvbnRzXG4kZm9udF9wcmltYXJ5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcblxuLy8gQ29sb3JcbiRjb2xvcl90aGVtZTogIzMzQ0VGRjtcbiRjb2xvcl90aGVtZS0xOiAjZGRkZGRkO1xuJGNvbG9yX3RoZW1lLTI6ICNmODk0MDY7XG4kY29sb3JfdGhlbWUtMzogIzY0MmQ4ODtcbiRjb2xvcl90ZXh0OiAjNmQ2YzZjO1xuJGNvbG9yX2hlYWRlcjogIzJjM2U1MDtcbiRjb2xvcl9yZ2JhOiByZ2JhKDUzLCAxNTIsIDIxOSwgMC44KTtcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgQWNjZXNzaWJpbGl0eVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiYWNjZXNzaWJpbGl0eVwiO1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgQnV0dG9uc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuIiwiLnNheXMsXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbiIsIlxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbi5ncC1ibi1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl90aGVtZTtcbiAgcGFkZGluZzogMTJweCA1MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzExMTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTExOyB9IH1cblxuLmdwLWJuLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDExcHggNTBweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuLmdwLWJ0biB7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX3RoZW1lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZ3AtYm4tYnRuLTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7IH1cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjIFByaW1hcnkgTWVudVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwicHJpbWFyeS1tZW51XCI7XG5cbiIsIiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMik7XG4gIGhlaWdodDogMTAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiA2MDA7XG5cbiAgJi5uYXZiYXItYmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgaGVpZ2h0OiA3MHB4O1xuXG4gICAgLm5hdmJhci1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAgICAgJi5tYWluLWxvZ28ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgICAmLmZpeGVkLWxvZ28ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfSB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgJi5ncC1zZWFyY2gge1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzExMSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWUgIWltcG9ydGFudDsgfSB9XG5cbiAgICAgICAgLmNoaWxkLW1lbnUge1xuICAgICAgICAgIHRvcDogMjhweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50OyB9IH0gfSB9IH0gfSB9XG5cblxuICAubmF2YmFyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgLm5hdmJhci1oZWFkZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgLm5hdmJhci1icmFuZCB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHdpZHRoOiAxOTBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICAgJi5maXhlZC1sb2dvIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9IH1cblxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICBwYWRkaW5nOiAyOXB4IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTtcblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfSB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9IH1cblxuICAgICAgJi5ncC1zZWFyY2gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgdG9wOiAxMnB4OyB9IH1cblxuICAgICAgLmNoaWxkLW1lbnUge1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDIlO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIDBweCAwcHggcmVwZWF0IHNjcm9sbCAjMDUyNjNjO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGUgbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDgwMG1zIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgwLCAtMC41NTAsIDAuMjY1LCAxLjU1MCk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0ZTRlNGU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9IH0gfSB9XG5cbiAgICAgICY6aG92ZXIge1xuXG4gICAgICAgIC5jaGlsZC1tZW51IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjhweCk7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHotaW5kZXg6IDk5OTk7IH0gfSB9IH1cblxuXG4gICYuaGVhZHJvb20tLXBpbm5lZDpub3QoLmhlYWRyb29tLS10b3ApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAubmF2YmFyLWhlYWRlciB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICAgICAmLm1haW4tbG9nbyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgICYuZml4ZWQtbG9nbyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9IH1cblxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgbGkge1xuICAgICAgICAmLmdwLXNlYXJjaCB7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTExICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZSAhaW1wb3J0YW50OyB9IH1cblxuICAgICAgICAuY2hpbGQtbWVudSB7XG4gICAgICAgICAgdG9wOiAyOHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7IH0gfSB9IH0gfSB9IH0gfVxuXG4uaGVhZHJvb20tLXBpbm5lZCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG4iLCIuY2QtYXV0by1oaWRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjVzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuNXM7XG59XG4uY2QtYXV0by1oaWRlLWhlYWRlcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY2QtYXV0by1oaWRlLWhlYWRlci5pcy1oaWRkZW4ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlciAubG9nbyxcbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLmxvZ28ge1xuICBsZWZ0OiA1JTtcbn1cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5sb2dvIGEsIC5jZC1hdXRvLWhpZGUtaGVhZGVyIC5sb2dvIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIge1xuICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGl0cyBjb250ZW50ICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMWVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMyNTI4M0Q7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICByaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZjJmMmYyO1xufVxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIHNwYW4ge1xuICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGluc2lkZSBwYXJlbnQgZWxlbWVudCAqL1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIGVtLCAuY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIgZW06OmFmdGVyLCAuY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIgZW06OmJlZm9yZSB7XG4gIC8qIHRoaXMgaXMgdGhlIG1lbnUgaWNvbiAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDIycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTI4M0Q7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbSB7XG4gIC8qIHRoaXMgaXMgdGhlIG1lbnUgY2VudHJhbCBsaW5lICovXG4gIG1hcmdpbjogNnB4IGF1dG8gMTRweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnM7XG59XG4uY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIgZW06OmJlZm9yZSwgLmNkLWF1dG8taGlkZS1oZWFkZXIgLm5hdi10cmlnZ2VyIGVtOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjJzO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuMnM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMsIC13ZWJraXQtdHJhbnNmb3JtIC4ycztcbn1cbi5jZC1hdXRvLWhpZGUtaGVhZGVyIC5uYXYtdHJpZ2dlciBlbTo6YmVmb3JlIHtcbiAgLyogdGhpcyBpcyB0aGUgbWVudSBpY29uIHRvcCBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG59XG4uY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIgZW06OmFmdGVyIHtcbiAgLyogdGhpcyBpcyB0aGUgbWVudSBpY29uIGJvdHRvbSBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2QtYXV0by1oaWRlLWhlYWRlciAubmF2LXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNkLWF1dG8taGlkZS1oZWFkZXIubmF2LW9wZW4gLm5hdi10cmlnZ2VyIGVtIHtcbiAgLyogdHJhbnNmb3JtIG1lbnUgaWNvbiBpbnRvIGEgJ1gnIGljb24gKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbn1cbi5jZC1hdXRvLWhpZGUtaGVhZGVyLm5hdi1vcGVuIC5uYXYtdHJpZ2dlciBlbTo6YmVmb3JlIHtcbiAgLyogcm90YXRlIHRvcCBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4uY2QtYXV0by1oaWRlLWhlYWRlci5uYXYtb3BlbiAubmF2LXRyaWdnZXIgZW06OmFmdGVyIHtcbiAgLyogcm90YXRlIGJvdHRvbSBsaW5lICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5jZC1wcmltYXJ5LW5hdiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDUlO1xufVxuLmNkLXByaW1hcnktbmF2ID4gdWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogNjBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMTRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5jZC1wcmltYXJ5LW5hdiA+IHVsIGEge1xuICAvKiB0YXJnZXQgcHJpbWFyeS1uYXYgbGlua3MgKi9cbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctbGVmdDogNSU7XG4gIGNvbG9yOiAjMjUyODNEO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMmYyZjI7XG59XG4uY2QtcHJpbWFyeS1uYXYgPiB1bCBhOmhvdmVyLCAuY2QtcHJpbWFyeS1uYXYgPiB1bCBhLmFjdGl2ZSB7XG4gIGNvbG9yOiAjOEYzOTg1O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLXByaW1hcnktbmF2IHtcbiAgICAvKiB2ZXJ0aWNhbGx5IGFsaWduIGl0cyBjb250ZW50ICovXG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgLmNkLXByaW1hcnktbmF2ID4gdWwge1xuICAgIC8qIHZlcnRpY2FsbHkgYWxpZ24gaW5zaWRlIHBhcmVudCBlbGVtZW50ICovXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIHJlc2V0IG1vYmlsZSBzdHlsZSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gIC5jZC1wcmltYXJ5LW5hdiA+IHVsOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY2QtcHJpbWFyeS1uYXYgPiB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07XG4gIH1cbiAgLmNkLXByaW1hcnktbmF2ID4gdWwgbGk6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmNkLXByaW1hcnktbmF2ID4gdWwgYSB7XG4gICAgLyogcmVzZXQgbW9iaWxlIHN0eWxlICovXG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLm5hdi1vcGVuIC5jZC1wcmltYXJ5LW5hdiB1bCxcbi5jZC1wcmltYXJ5LW5hdiB1bDp0YXJnZXQge1xuICAvKlxuICAgIHNob3cgcHJpbWFyeSBuYXYgLSBtb2JpbGUgb25seVxuICAgIDp0YXJnZXQgaXMgdXNlZCB0byBzaG93IG5hdmlnYXRpb24gb24gbm8tanMgZGV2aWNlc1xuICAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5uYXYtb3BlbiAuY2QtcHJpbWFyeS1uYXYgdWwsXG4gIC5jZC1wcmltYXJ5LW5hdiB1bDp0YXJnZXQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuMi4gQXV0by1IaWRpbmcgTmF2aWdhdGlvbiAtIHdpdGggU3ViIE5hdlxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNkLXNlY29uZGFyeS1uYXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGNsZWFyOiBib3RoO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyODNEO1xuICAvKiBGb3JjZSBIYXJkd2FyZSBBY2NlbGVyYXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC41cztcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjVzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuNXM7XG59XG4uY2Qtc2Vjb25kYXJ5LW5hdjo6YWZ0ZXIge1xuICAvKiBncmFkaWVudCBvbiB0aGUgcmlnaHQgLSB0byBpbmRpY2F0ZSBpdCdzIHBvc3NpYmxlIHRvIHNjcm9sbCAqL1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAzNXB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsICMyNTI4M0QsIHJnYmEoMzcsIDQwLCA2MSwgMCkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzI1MjgzRCwgcmdiYSgzNywgNDAsIDYxLCAwKSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycztcbn1cbi5jZC1zZWNvbmRhcnktbmF2Lm5hdi1lbmQ6OmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5jZC1zZWNvbmRhcnktbmF2IHVsLCAuY2Qtc2Vjb25kYXJ5LW5hdiBsaSwgLmNkLXNlY29uZGFyeS1uYXYgYSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jZC1zZWNvbmRhcnktbmF2IHVsIHtcbiAgLyogZW5hYmxlcyBhIGZsZXggY29udGV4dCBmb3IgYWxsIGl0cyBkaXJlY3QgY2hpbGRyZW4gKi9cbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDAgNSU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5jZC1zZWNvbmRhcnktbmF2IHVsOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jZC1zZWNvbmRhcnktbmF2IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgLyogZG8gbm90IHNocmluayAtIGVsZW1lbnRzIGZsb2F0IG9uIHRoZSByaWdodCBvZiB0aGUgZWxlbWVudCAqL1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgICAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG59XG4uY2Qtc2Vjb25kYXJ5LW5hdiBsaTpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuLmNkLXNlY29uZGFyeS1uYXYgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgb3BhY2l0eTogLjY7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwIDFlbTtcbn1cbi5jZC1zZWNvbmRhcnktbmF2IGE6aG92ZXIsIC5jZC1zZWNvbmRhcnktbmF2IGEuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1zZWNvbmRhcnktbmF2IHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLmNkLXNlY29uZGFyeS1uYXYgdWwge1xuICAgIC8qIHJlc2V0IG1vYmlsZSBzdHlsZSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBsaSB7XG4gICAgLyogcmVzZXQgbW9iaWxlIHN0eWxlICovXG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgLXdlYmtpdC1mbGV4LXNocmluazogMTtcbiAgICAgICAgLW1zLWZsZXgtbmVnYXRpdmU6IDE7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBhIHtcbiAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgfVxuICAuY2Qtc2Vjb25kYXJ5LW5hdiBhLmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtM3B4ICM4RjM5ODU7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuMy4gQXV0by1IaWRpbmcgTmF2aWdhdGlvbiAtIHdpdGggU3ViIE5hdiArIEhlcm8gSW1hZ2VcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jZC1zZWNvbmRhcnktbmF2LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDYwcHg7XG59XG4uY2Qtc2Vjb25kYXJ5LW5hdi5zbGlkZS11cCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MHB4KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwcHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjBweCk7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2Qtc2Vjb25kYXJ5LW5hdi5maXhlZCB7XG4gICAgdG9wOiA4MHB4O1xuICAgIC8qIGZpeGVzIGEgYnVnIHdoZXJlIG5hdiBhbmQgc3VibmFiIG1vdmUgd2l0aCBhIHNsaWdodCBkZWxheSAqL1xuICAgIGJveC1zaGFkb3c6IDAgLTZweCAwICMyNTI4M0Q7XG4gIH1cbiAgLmNkLXNlY29uZGFyeS1uYXYuc2xpZGUtdXAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcHgpO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbk1haW4gY29udGVudFxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNkLW1haW4tY29udGVudCB7XG4gIHBhZGRpbmc6IDYwcHggNSUgMmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmNkLW1haW4tY29udGVudC5zdWItbmF2IHtcbiAgLyogdG8gYmUgdXNlZCBpZiB0aGVyZSBpcyBzdWIgbmF2ICovXG4gIHBhZGRpbmctdG9wOiAxMTBweDtcbn1cbi5jZC1tYWluLWNvbnRlbnQuc3ViLW5hdi1oZXJvIHtcbiAgLyogdG8gYmUgdXNlZCBpZiB0aGVyZSBpcyBoZXJvIGltYWdlICsgc3VibmF2ICovXG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLmNkLW1haW4tY29udGVudC5zdWItbmF2LWhlcm8uc2Vjb25kYXJ5LW5hdi1maXhlZCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG4uY2QtbWFpbi1jb250ZW50IHAge1xuICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luOiAyZW0gYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiRGF2aWQgTGlicmVcIiwgc2VyaWY7XG4gIGNvbG9yOiAjYTVhOGE5O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNkLW1haW4tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbiAgLmNkLW1haW4tY29udGVudC5zdWItbmF2IHtcbiAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gIH1cbiAgLmNkLW1haW4tY29udGVudC5zdWItbmF2LWhlcm8uc2Vjb25kYXJ5LW5hdi1maXhlZCB7XG4gICAgbWFyZ2luLXRvcDogNzBweDtcbiAgfVxuICAuY2QtbWFpbi1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICB9XG59XG5cbi8qXG4gIGFkanVzdCB0aGUgcG9zaXRpb25pbmcgb2YgaW4tcGFnZSBsaW5rc1xuICBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vanVtcC1saW5rcy1hbmQtdmlld3BvcnQtcG9zaXRpb25pbmcvXG4qL1xuLmNkLW1haW4tY29udGVudC5zdWItbmF2IDp0YXJnZXQ6OmJlZm9yZSxcbi5jZC1tYWluLWNvbnRlbnQuc3ViLW5hdi1oZXJvIDp0YXJnZXQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2QtbWFpbi1jb250ZW50LnN1Yi1uYXYgOnRhcmdldDo6YmVmb3JlLFxuICAuY2QtbWFpbi1jb250ZW50LnN1Yi1uYXYtaGVybyA6dGFyZ2V0OjpiZWZvcmUge1xuICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5JbnRybyBTZWN0aW9uXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY2QtaGVybyB7XG4gIC8qIHZlcnRpY2FsbHkgYWxpZ24gaXRzIGNvbnRlbnQgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBoZWlnaHQ6IDMwMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NkLWhlcm8tYmFja2dyb3VuZC5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuLmNkLWhlcm8gLmNkLWhlcm8tY29udGVudCB7XG4gIC8qIHZlcnRpY2FsbHkgYWxpZ24gaW5zaWRlIHBhcmVudCBlbGVtZW50ICovXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNkLWhlcm8ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jZC1oZXJvIHtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIExvYWRpbmdcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImxvYWRpbmdcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgSGVhZGVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJoZWFkZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQmFubmVyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJiYW5uZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQWJvdXRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImFib3V0XCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFNlcnZpY2VcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInNlcnZpY2VcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgUG9ydGZvbGlvXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgIFwicG9ydGZvbGlvXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIENvdW50dXBcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJjb3VudHVwXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFRlYW1cbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJ0ZWFtXCI7XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgU2tpbGxzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgIFwic2tpbGxzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIEJsb2dcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJibG9nXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIFRlc3RpbW9uaWFsXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgIFwidGVzdGltb25pYWxcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgUHJpY2luZyBUYWJsZVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0ICBcInByaWNpbmdfdGFibGVcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgYnJhbmRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJicmFuZFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBDb250YWN0XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgIFwiY29udGFjdFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBNYXBcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJtYXBcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgbmV3c2xldHRlclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0ICBcIm5ld3NsZXR0ZXJcIjtcblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjICBmb290ZXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJmb290ZXJcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyAgQmxvZyBQYWdlXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgIFwiYmxvZy1wYWdlXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgIHJlc3BvbnNpdmVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCAgXCJyZXNwb25zaXZlXCI7XG5cblxuIiwiLmxvYWRpbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDEuNXMgMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDEuNXMgMnMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMS41cyAycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDEuNXMgMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAxLjVzIDJzIGVhc2UtaW4tb3V0O1xuXG4gIC5sb2FkaW5nLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgIHRvcDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMnMgMXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMnMgMXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAycyAxcyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMnMgMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDJzIDFzIGVhc2UtaW4tb3V0O1xuXG4gICAgLnJlYyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogNnB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkaW5nIDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gICAgICAtbW96LWFuaW1hdGlvbjogbG9hZGluZyAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgLW1zLWFuaW1hdGlvbjogbG9hZGluZyAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICAgICAgLW8tYW5pbWF0aW9uOiBsb2FkaW5nIDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gICAgICBhbmltYXRpb246IGxvYWRpbmcgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDsgfVxuXG4gICAgLnIyIHtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7IH1cblxuICAgIC5yMyB7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTFzO1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7IH1cblxuICAgIC5yNCB7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogIC0uOXM7XG4gICAgICBhbmltYXRpb24tZGVsYXk6ICAtLjlzOyB9XG5cbiAgICAucjUge1xuICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0uOHM7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IC0uOHM7IH0gfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsb2FkaW5nIHtcbiAgMCUsMTAwJSw0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC41KTsgfVxuXG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgfSB9XG5cblxuQC1tb3ota2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwxMDAlLDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKC41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLjUpOyB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9IH1cblxuXG5ALW1zLWtleWZyYW1lcyBsb2FkaW5nIHtcbiAgMCUsMTAwJSw0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC41KTsgfVxuXG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgfSB9XG5cblxuXG5ALW8ta2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwxMDAlLDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKC41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLjUpOyB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9IH1cblxuXG5Aa2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSwxMDAlLDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKC41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSguNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLjUpOyB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9IH1cblxuXG4ubG9hZGluZyB7XG4gICYubG9hZGVkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5sb2FkZWQge1xuICAubG9hZGluZy13cmFwcGVyIHtcblxuICAgIG9wYWNpdHk6IDA7IH0gfVxuIiwiXG4vKiBCYWNrIFRvIFRvcCAqL1xuLnJldHVybi10by10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogNTBweDtcbiAgcmlnaHQ6IDUwcHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB6LWluZGV4OiAxMDAwO1xuXG5cbiAgaSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxMXB4O1xuICAgIHRvcDogOXB4O1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuXG4gICAgaSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRvcDogNXB4OyB9IH0gfVxuXG4uYmFjay10b3Age1xuIGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLmhlYWRlcl93cmFwcGVyIHtcbiAgd2lkdGg6IDk0JTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmRpYWxvZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogOTk5OTsgfVxuXG5cbi5kaWFsb2csIC5kaWFsb2dfX292ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7IH1cblxuLmRpYWxvZy0tY2xvc2Uge1xuICAuZGlhbG9nX19vdmVybGF5IHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsgfSB9XG5cbi5kaWFsb2ctLW9wZW4ge1xuICAuZGlhbG9nX19vdmVybGF5IHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC44czsgfSB9XG5cbi5kaWFsb2ctLW9wZW4ge1xuICAuZGlhbG9nX19vdmVybGF5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9IH1cblxuLmRpYWxvZ19fb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uZGlhbG9nLmRpYWxvZy0tb3BlbiB7XG4gIC5kaWFsb2dfX2NvbnRlbnQge1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5kaWFsb2ctLW9wZW4ge1xuICAuZGlhbG9nX19jb250ZW50IHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsgfSB9XG5cbi5kaWFsb2dfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZGlhbG9nX19jb250ZW50IHtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiA1MjBweDtcbiAgbWluLXdpZHRoOiAyOTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIG9wYWNpdHk6IDA7IH1cblxuXG5cbi5kaWFsb2ctLW9wZW4ge1xuICAuZGlhbG9nLWlubmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zczsgfSB9XG5cbi5kaWFsb2ctaW5uZXIge1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5kaWFsb2cuZGlhbG9nLS1vcGVuIGgyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGFuaW0tZWxlbS0xIDAuN3MgZWFzZS1vdXQgYm90aDtcbiAgLW8tYW5pbWF0aW9uOiBhbmltLWVsZW0tMSAwLjdzIGVhc2Utb3V0IGJvdGg7XG4gIGFuaW1hdGlvbjogYW5pbS1lbGVtLTEgMC43cyBlYXNlLW91dCBib3RoOyB9XG5cbi5kaWFsb2cgaDIge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgcGFkZGluZzogMCAwIDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuI3NlYXJjaF9wb3B1cF93cmFwcGVyIGZvcm0ge1xuICBtYXJnaW46IDEwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zZWFyY2gtZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNlYXJjaC1mb3JtIHtcbiAgLnNlYXJjaC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2FhYTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjb2xvcjogIzExMTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JfdGhlbWU7IH0gfVxuXG5cblxuLnNlYXJjaC1mb3JtIHtcbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjYmFiYWJhO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfVxuXG4uZGlhbG9nIHtcbiAgJi5kaWFsb2ctLW9wZW4ge1xuICAgIGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7IH0gfSB9IH1cblxuLm5hdmJhci10b2dnbGUge1xuICAuaWNvbi1iYXIge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7IH0gfVxuXG5cbi8qIE1vYmlsZSBNZW51ICovXG5cbiNtb2JpbGUtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjgpO1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMDtcblxuICAubWFpbi1sb2dvIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9IH1cblxuLm1lbnUtY29udGFpbmVyIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cblxuLmNicC1zcG1lbnUtcmlnaHQge1xuICByaWdodDogLTI3MHB4OyB9XG5cbi5jYnAtc3BtZW51LXZlcnRpY2FsIHtcbiAgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfSB9XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDAuNSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB6LWluZGV4OiAxMDAwMDsgfSB9XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgbGVmdDogLTI3MHB4OyB9XG5cbi5kdC1zb2NpYWwtbGluayB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGhlaWdodDogMjVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvcl90aGVtZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBpIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMjgpOyB9IH1cblxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWUgIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjRkZGOyB9IH0gfSB9XG5cbiNtb2JpbGUtd3JhcHBlciB7XG4gIHdpZHRoOiAyNzBweDtcbiAgYmFja2dyb3VuZDogIzIyMjUzMztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG4ubW9iaWxlX21lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuXG4gIGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzA2MTkxZjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzMxMzEzMTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH0gfSB9XG5cbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgLnN1Yi1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgYmFja2dyb3VuZDogIzFkMWQxZDsgfSB9IH1cblxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAmLmNoaWxkcmVuLW1lbnUtdmlzaWJsZSB7XG4gICAgLnN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH0gfSB9XG5cbi5tb2JpbGVfbWVudV9zZWFyY2gge1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgI3NlYXJjaCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogN3B4IDEwcHg7XG4gICAgICB3aWR0aDogODUlO1xuICAgICAgY29sb3I6ICNGRkY7IH0gfVxuXG4gICNzZWFyY2hzdWJtaXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICY6Zm9jdXMsICY6aG92ZXIge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfVxuXG4ubWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDIzcHg7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA2cHg7XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiAgPiBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGVtZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTFweDsgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwOyB9IH1cblxuICAmLmFjdGl2ZSB7XG4gICAgPiBkaXYge1xuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCkgcm90YXRlKDEzNWRlZyk7IH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KSByb3RhdGUoLTEzNWRlZyk7IH0gfSB9IH1cblxuXG4iLCIvKiBCYW5uZXIgKi9cblxuLnN3aXBlci1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgLnNsaWRlci1jYXB0aW9uLW9uZSwgLnNsaWRlci1jYXB0aW9uLXR3bywgLnNsaWRlci1jYXB0aW9uLXRocmVlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuN3M7IH0gfVxuXG5cbiAgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIC5zbGlkZXItY2FwdGlvbi1vbmUsIC5zbGlkZXItY2FwdGlvbi10d28sIC5zbGlkZXItY2FwdGlvbi10aHJlZSB7XG4gICAgICBvcGFjaXR5OiAxOyB9IH1cblxuXG5cblxuXG4gIC5zd2lwZXItc2xpZGUge1xuXG4gICAgPiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cblxuICAgIC5zbGlkZXItY2FwdGlvbiB7XG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMCk7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZyg2MDApO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDRweCA1Ljg4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cblxuICAgICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoNTApO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDBweCA0cHggNS44OHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDI2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9IH0gfVxuXG5cbi5iYW5uZXItbmV4dCwuYmFubmVyLXByZXYge1xuICB0b3A6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA1MDA7XG4gIGNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjcpO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiA1MHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAubmV4dC1idG4sIC5wcmV2LWJ0biB7XG4gICAgaSB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoNDApOyB9IH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7IH0gfVxuXG5cbi5iYW5uZXItbmV4dCB7XG4gIHJpZ2h0OiAwJTsgfVxuXG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICByaWdodDogMTAwcHg7XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDNweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBvcGFjaXR5OiAxO1xuICBtYXJnaW46IDAgMnB4ICFpbXBvcnRhbnQ7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItdGhlbWU7XG4gIGhlaWdodDogMjVweDsgfVxuXG4ub3ZlcmxheSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLCAwLjUpOyB9XG5cblxuLnNsaWRlci1jYXB0aW9uLW9uZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg3MCk7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICByaWdodDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgdG9wOiAwOyB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDsgfSB9XG5cblxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9IH1cblxuXG5cblxuLnNsaWRlci1jYXB0aW9uLXR3byB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIGg0IHtcbiAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMik7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoNDApO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cblxuLnNsaWRlci1jYXB0aW9uLXRocmVlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAyMCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgaDMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDMyKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4gIGg0IHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMjIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG5cblxuICBoMiB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDUwKTtcbiAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuICBwIHtcbiAgICBjb2xvcjogI2RkZDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG5cbi5zd2l0Y2hlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgei1pbmRleDogNTAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYW5pbWF0aW9uOiBtb3ZlIDIuNXMgaW5maW5pdGU7XG4gIGkge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9XG5cblxuLnN3aXBlci1iYW5uZXIge1xuICAmOmhvdmVyIHtcbiAgICAuYmFubmVyLW5leHQsLmJhbm5lci1wcmV2IHtcbiAgICAgIG9wYWNpdHk6IDE7IH0gfSB9XG5cbkBrZXlmcmFtZXMgbW92ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjVweCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7IH0gfVxuXG4uYmFubmVyLXR3byB7XG4gIC5iYW5uZXItbmV4dCwgLmJhbm5lci1wcmV2IHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcblxuICAgIGkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMHB4OyB9IH0gfVxuXG5cblxuXG4iLCIjYWJvdXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICBjb2xvcjogIzExMTsgfSB9XG5cbi5hYm91dC1ib3gge1xuICBib3JkZXItcmlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHBhZGRpbmc6IDYwcHggMjBweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gIC5pY29uLWJveCB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMzVweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG5cblxuICAgIGkge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDMwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA3NnB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfSB9XG5cbiAgLmFib3V0LXRpdGxlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMjApO1xuICAgIGNvbG9yOiAjMTExO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzExMTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTUpOyB9XG5cblxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAuaWNvbi1ib3gge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCAycHggMTBweCAxcHg7XG5cblxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAjRkZGOyB9IH1cblxuICAgIC5hYm91dC10aXRsZSB7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfVxuXG5cblxuLyogQWJvdXRlIFR3byAqL1xuXG4uYWJvdXQtdHdvIHtcbiAgcGFkZGluZzogODBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuICAuYWJvdXQtYm94IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIGkge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDU1KTtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuICAgICY6aG92ZXIge1xuXG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH0gfVxuIiwiI3NlcnZpY2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cblxuLnNlcnZpY2UtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuc2VydmljZSB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuaWNvbi1ib3gge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICB3aWR0aDogOTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBpIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDM1KTtcbiAgICAgICAgY29sb3I6ICMxMTE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDBweDsgfVxuXG4gICAgICAuaWNvbi1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDMwJTtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuXG4gICAgLnNlcnZpY2VfY29udGVudCB7XG4gICAgICAudGl0bGUge1xuICAgICAgICBjb2xvcjogIzExMTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE4KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAjMTExO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLmljb24tYm94IHtcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCAycHggMTBweCAxcHg7XG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgICAgIC5pY29uLW92ZXJsYXkge1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAwOyB9IH1cblxuICAgICAgLnNlcnZpY2VfY29udGVudCB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH0gfSB9XG5cblxuXG4vKiBTZXJ2aWNlIFR3byAqL1xuXG4uc2VydmljZS10d28ge1xuICBwYWRkaW5nOiAxMDBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuICAuc2VydmljZSB7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2EyYTJhMjtcbiAgICBoZWlnaHQ6IDI2MHB4O1xuICAgIHBhZGRpbmc6IDU1cHggMDtcblxuICAgIGkge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDcwKTtcbiAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuICAgIC5vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogIzExMTsgfSB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICAgIG9wYWNpdHk6IDE7IH0gfSB9IH1cblxuIiwiLyogUG9ydGZvbGlvICovXG4ucG9ydGZvbGlvIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cblxuICAucG9ydGZvbGlvRmlsdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogIzExMTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggMTVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG5cbiAgICAgICAgJi5jdXJyZW50LCAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTsgfSB9IH0gfSB9XG5cblxuXG4ucG9ydGZvbGlvX2NvbnRhaW5lciB7XG4gIC5wb3J0Zm9saW8taXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuXG4gICAgLm92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MywxNTIsMjE5LCAuOCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjM1cyBlYXNlIDBzOyB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAsIDEpOyB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMCk7IH1cblxuICAgICAgLndvcmstY2FwdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAudmlldyB7XG4gICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDIwKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjIpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KSBzY2FsZSgwLjk1KTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxMTE7IH0gfSB9XG5cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2KTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwcHgpIHNjYWxlKDAuOTUpO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxMTE7IH0gfSB9IH0gfVxuXG5cblxuICAgICY6aG92ZXIge1xuXG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7IH1cbiAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC40NXMgZWFzZSAwLjJzO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjQ1cyBlYXNlIDAuMnM7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4gICAgICAgIC53b3JrLWNhcHRpb24ge1xuXG4gICAgICAgICAgLnZpZXcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG5cblxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDEpOyB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMSk7IH0gfSB9IH0gfSB9XG5cbi8qIFBvcnRmb2xpbyBUd28gKi9cbi5wb3J0Zm9saW8tYmcge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1OyB9XG5cbiNwb3J0Zm9saW8tdHdvIHtcblxuICAuZ3JpZC1pdGVtIHtcbiAgICB3aWR0aDogMzMlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5cbi5wb3J0Zm9saW9fY29udGFpbmVyIHtcbiAgLm1peCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiNwb3J0Zm9saW8tdHdvIHtcbiAgLnBvcnRmb2xpby1pdGVtIHtcbiAgICBtYXJnaW46IDVweDsgfSB9XG4iLCIuY291bnR1cCB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG4uY291bnRlci1ib3gge1xuICBib3JkZXI6IDNweCBzb2xpZCAkY29sb3JfdGhlbWU7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC41KTtcblxuXG4gIC5jb3VudCB7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDUwKTtcbiAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNik7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9IH0gfVxuXG4vKiBDb3VudFVwIFR3byAqL1xuLmNvdW50dXAtdHdvIHtcbiAgcGFkZGluZzogMTAwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAub3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MywgMTUyLCAyMTksIDAuNSk7IH1cblxuICAuY291bnRlci1ib3gge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuOCk7IH0gfVxuXG4iLCIjZ3AtdGVhbSB7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG5cbiAgLmNhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuXG4udGVhbV9tZW1iZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICRjb2xvcl90aGVtZTtcblxuICAudGVhbV90aHVtYiB7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuICAudGVhbV9pbnRybyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTc1JTtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTMsMTUyLDIxOSwgLjkpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC42cyBjdWJpYy1iZXppZXIoLjQyLC0wLjQsLjU3LDEuNTMpO1xuXG4gICAgaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjMTExO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuICAgIGg1IHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxOCk7XG4gICAgICBjb2xvcjogIzExMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuICAgIC50ZWFtX2xpbmsge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBhIHtcblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDI4KTtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGOyB9IH0gfSB9IH1cblxuXG4gICY6aG92ZXIge1xuICAgIC50ZWFtX2ludHJvIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4gICAgICAudGVhbV9saW5rIHtcbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7IH0gfSB9IH0gfSB9IH0gfVxuXG5cblxuLyogVGVhbSBUd28gKi9cbi50ZWFtLXR3byB7XG4gIC5vd2wtY2Fyb3VzZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAub3dsLW5hdiB7XG4gICAgICAub3dsLW5leHQsIC5vd2wtcHJldiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImR0LWljb25zXCIgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoNzApO1xuICAgICAgICAgIGNvbG9yOiAjMTExOyB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfSB9XG5cbiAgICAub3dsLW5hdiB7XG4gICAgICAub3dsLXByZXYge1xuICAgICAgICBsZWZ0OiAtMTAwcHg7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTAzZlwiOyB9IH1cblxuICAgICAgLm93bC1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IC0xMDBweDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcXGUwNGJcIjsgfSB9IH0gfSB9XG5cbiN0ZWFtLXNsaWRlciB7XG4gIC50ZWFtX21lbWJlciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3JfdGhlbWU7XG5cbiAgICAudGVhbV90aHVtYiB7XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfSB9XG4gICAgLnRlYW1faW50cm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1MHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9IH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAudGVhbV90aHVtYiB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9IH1cbiAgICAgIC50ZWFtX2ludHJvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgaDQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4OyB9IH0gfSB9IH1cblxuXG5cblxuXG5cbiIsIi5vdXItc2tpbGxzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5za2lsbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4gIC5za2lsbHMtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4gIC5za2lsbHMtdGh1bWIge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9IH1cblxuLnNraWxscy13cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA1NTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogNTAlOyB9XG5cblxuLnNraWxscy1oZWFkaW5nIHtcbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMxMTExMTE7IH1cblxuICBwIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cblxuXG5wcm9ncmVzcyB7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAxNXB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG5cblxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTsgfVxuXG5cblxuXG5wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl90aGVtZTtcbiAgaGVpZ2h0OiAxNXB4OyB9XG5cblxuLyogU2tpbGxzIFR3byAqL1xuLm91ci1za2lsbHMtdHdvIHtcbiAgcGFkZGluZzogMTUwcHggMDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjgpOyB9XG5cbiAgLnNraWxsLWJhciB7XG4gICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG5cbiAgICAuc2tpbGxzLXRpdGxlIHtcbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbiAgICAuc2tpbGxzLWhlYWRpbmcge1xuICAgICAgc3BhbiwgcCB7XG4gICAgICAgIGNvbG9yOiAjRkZGOyB9IH0gfVxuXG4gIHByb2dyZXNzIHt9XG5cblxuICBwcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICAgIHBhZGRpbmc6IDFweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogOXB4OyB9XG5cblxuICBwcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgaGVpZ2h0OiA1cHg7IH0gfVxuXG5cbi5za2lsbHMtZGVzY3JpcHRpb24ge1xuXG5cbiAgaDIge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDRweDsgfSB9XG5cblxuICBwIHtcbiAgICBjb2xvcjogI2RkZDtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG5cbiAgLmdwLWJ0biB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjRkZGOyB9IH0gfVxuIiwiI2Jsb2cge1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uYmxvZ19wb3N0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VjZjBmMTtcbiAgcGFkZGluZzogMTVweDtcblxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbiAgLmJsb2ctdGh1bWIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZS1pbi1vdXQ7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbiAgICAuYmxvZy1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3JnYmE7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuXG4gICAgICAuYmxvZy1vdmVybGF5IHtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9IH1cblxuXG5cbiAgLmJsb2dfY29udGVudCB7XG4gICAgLnBvc3RfbWV0YSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBjb2xvcjogI0RERDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5ODk4OTg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogNHB4OyB9IH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjOTg5ODk4O1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9IH0gfSB9XG4gICAgLmJsb2dfdGl0bGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjVmNWY1O1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGNvbG9yX2hlYWRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRjb2xvcl90ZXh0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG5cbiAgICAuZ3AtYnRuIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMik7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC4yKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cblxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH0gfVxuXG5cblxuLmJsb2ctY29tbWVudHMge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlY2YwZjE7XG5cblxuICA+YSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzExMTtcbiAgICBpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuXG5cbiAgLmJsb2ctc29jaWFsIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICMxMTE7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7IH0gfSB9IH0gfVxuXG5cblxuLyogQmxvZyBUd28gKi9cbi5ibG9nLXR3byB7XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuXG4gIC5ibG9nX3Bvc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5ibG9nLXRodW1iLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICAgLmJsb2ctY29tbWVudHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjgpO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzExMTsgfSB9IH0gfVxuXG4gICAgLmJsb2dfY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjkwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG5cbiAgICAgIC5ibG9nX3RpdGxlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuICAgICAgLmdwLWJ0biB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4gICAgJi5ib2xnLXJpZ2h0IHtcbiAgICAgIC5ibG9nX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyOTBweDtcbiAgICAgICAgcGFkZGluZzogMTBweDsgfSB9XG5cbiAgICAuYmxvZy10aHVtYi1yaWdodCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuICAgICAgLmJsb2ctY29tbWVudHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTMsIDE1MiwgMjE5LCAwLjgpO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzExMTsgfSB9IH0gfSB9IH1cbiIsIiN0ZXN0aW1vbmlhbCB7XG4gIHBhZGRpbmc6IDUwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBjb2xvcjogI0ZGRjsgfSB9XG5cbi50ZXN0aW1vbmlhbC1zbGlkZXIge1xuICAudGVzdGlvbmFsIHtcbiAgICAuaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuICAgICAgLmNsaXRlbi10aHVtYnMge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgJGNvbG9yX3RoZW1lO1xuICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9IH1cblxuICAgICAgLnRlc3RpLWNvbnRlbnQge1xuXG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICNkZGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfSB9XG5cblxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogI0ZGRjsgfSB9IH1cblxuICAub3dsLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5vd2wtdGhlbWUge1xuICAub3dsLWRvdHMge1xuICAgIC5vd2wtZG90IHtcbiAgICAgIHNwYW4ge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG5cbiAgICAgICYuYWN0aXZlLCAmOmhvdmVyIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICB3aWR0aDogMTVweDsgfSB9IH0gfSB9XG5cbi8qIFRlc3RpbW9uaWFsICovXG4jZmVlZGJhY2stc2xpZGVyMiB7XG4gIC5pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjgpO1xuICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAudGVzdGktY29udGVudCB7XG5cblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAjMTExOyB9IH1cblxuXG5cbiAgICBoNCB7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9XG5cblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICMzMzM7IH0gfSB9XG4iLCIjcHJpY2luZ190YWJsZSB7XG4gIHBhZGRpbmc6IDUwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi50YWJsZSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDBweCAtM3B4IDI5cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIG1heC13aWR0aDogMzUwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gIC5wcmljaW5nX3BsYW4ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgLnByaWNlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAjMTExO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuMik7IH1cblxuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDI0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4gICAgICAucGxhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgcGFkZGluZzogMjlweCAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoNDApO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9IH1cblxuICAgIC5jb25maWd1cmF0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjhmODsgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZzogMTdweCAwOyB9XG5cbiAgICAgICAgJi5ub25lIHtcbiAgICAgICAgICBjb2xvcjogcmVkOyB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbiAgICAgICAgLmdwLWJ0biB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzExMTtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9IH0gfSB9IH1cblxuIiwiI2JyYW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA1MHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5cbi5icmFuZCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIC5pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMTExOyB9XG4gIC5vd2wtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cbi5vd2wtdGhlbWUge1xuICAub3dsLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuIiwiI2NvbnRhY3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG5cbiAgLmNvbnRhY3QtaW5uZXIge1xuICAgIHBhZGRpbmc6IDAgNTBweDsgfSB9XG5cblxuLmNvbnRhY3QtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICBoMiB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMzIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4gIHAge30gfVxuXG5cbi5jb250YWN0LWZvcm0tYXJlYSB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG5cbiAgLmNvbnRhY3QtaW5mbyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmluZm8ge1xuICAgICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAtM3B4IDI5cHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICM1YTVhNWE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfSB9IH1cblxuXG4jZm9ybSB7XG5cbiAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgd2lkdGg6IDQ4JTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlZWU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpudGgtY2hpbGQoMiksICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZWVlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgaGVpZ2h0OiAyMTBweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JfdGhlbWU7IH0gfVxuXG4gIC5ncC1idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBib3JkZXI6IHRyYW5zcGFyZW50OyB9IH0gfVxuXG4uY29udGFjdC1pbnRybyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDUwcHggMDtcblxuICBoMiB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDIyKTtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjMDAwOyB9IH1cblxuXG4vKiBDb250YWN0IFR3byAqL1xuI2NvbnRhY3QuY29udGFjdC10d28ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLmNvbnRhY3QtaGVhZGVyIHtcbiAgICBoMiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH0gfVxuXG4gIC5nbWFwMy1hcmVhIHtcbiAgICBoZWlnaHQ6IDcwMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgLmNvbnRhY3QtaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgLmNvbnRhY3QtZm9ybS1hcmVhIHtcbiAgICBwYWRkaW5nOiA1MHB4O1xuICAgIHdpZHRoOiA0MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMDBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuXG4gICAgI2Zvcm0ge1xuICAgICAgaW5wdXRbdHlwZT10ZXh0XSwgdGV4dGFyZWEge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTExO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjMTExOyB9XG5cbiAgICAgIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgICAgICB3aWR0aDogNDclO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX3RoZW1lOyB9IH1cblxuICAgICAgcCB7XG4gICAgICAgIHBhZGRpbmc6IDAgOHB4OyB9IH0gfSB9XG5cblxuXG5cblxuIiwiLyogbWFwICovXG4uZ21hcDMtYXJlYSB7XG4gIGhlaWdodDogNTUwcHg7IH1cblxuXG4iLCIjbmV3c2xldHRlciB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuXG4gIC5uZXdzLXdyYXBlciB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzNSk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9XG5cblxuICAgIGZvcm0ge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yX3RoZW1lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICBpbnB1dFt0eXBlPWVtYWlsXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDEyNXB4IDE1cHggMjBweDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY29sb3I6ICNGRkY7IH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cblxuXG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICNGRkY7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICAgIGNvbG9yOiAjMzMzOyB9IH0gfSB9IH1cbiIsIiNmb290ZXIge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7XG5cbiAgaDIge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDI0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbiAgLmdwLXNvY2lhbC1saW5rIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjApO1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzMzMztcbiAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9IH0gfSB9IH1cblxuLmNvcHlyaWdodCB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxM2M1ZmQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwIHtcbiAgICBjb2xvcjogI2VlZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkZGQ7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHRvcDogMnB4OyB9IH0gfSB9XG5cbi8qIEZvb3RlciBUd28gKi9cbiNmb290ZXIuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzAzMTQxZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAuY29weXJpZ2h0IHtcbiAgICBib3JkZXItY29sb3I6ICMxZDI5MmQ7IH1cblxuICBoMyB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMjIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4gIC5pbmZvIHtcbiAgICBpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyNSk7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB3aWR0aDogNDBweDsgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogI2E5YTlhOTtcbiAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDIyKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4gIC5ncC1zb2NpYWwtbGluayB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBsaSB7XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjRkZGO1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9IH0gfVxuXG4gIC5uZXdzLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwYTIyMzE7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbiAgICA+YSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGhlaWdodDogNzBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4gICAgLm5ld3MtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogODVweDtcbiAgICAgIGEge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogI2RkZDtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjApO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBAaW5jbHVkZSBsaW5lLWhlaWdodCgxNSk7IH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBjb2xvcjogI2E1YTVhNTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDIyKTsgfSB9IH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNzsgfSB9XG4gICAgICAubmV3cy1jb250ZW50IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfSB9IH0gfVxuXG4vKiBGbGlja2VyICovXG5cbi5mbGlja2VyIHtcbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC43OyB9IH1cblxuICAuY29weXJpZ2h0IHtcbiAgICBib3JkZXItY29sb3I6ICMwYjIzMzM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgcCB7XG4gICAgICBjb2xvcjogIzkyOTI5MjsgfSB9IH1cblxuIiwiLmJsb2ctcGFnZSB7XG4gICNoZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDMxNDFmOyB9IH1cblxuLyogQmxvZyBTaW5nbGUgKi9cbi5ibG9nLXNpbmdsZSB7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTsgfVxuXG4uYmxvZy13cmFwcGVyIHtcblxuICAuYmxvZy10aHVtYiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH0gfVxuXG5cbi5ibG9nLXdyYXBwZXIge1xuXG4gIC5ibG9nX3Bvc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnBvc3QtbWV0YSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfSB9IH1cblxuXG4gIGgyIHtcbiAgICBjb2xvcjogIzIyMjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMjgpOyB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBjb2xvcjogIzU0NTQ1NDsgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogIzMzY2VmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfdGhlbWU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl90aGVtZTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNik7IH1cblxuICAudGFnLWFyZWEge1xuICAgIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfVxuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogIzExMTtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH0gfVxuXG4uYmxvZy1zdWItdGl0bGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoMjQpO1xuICBjb2xvcjogIzExMTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGNvbnRlbnQ6ICcnOyB9IH1cblxuLmF0aG9yIHtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuXG5cbiAgLmF0aG9yLWlubmVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgLnRodW1iIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuICAuY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDExMHB4O1xuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9IH1cblxuXG5cbm9sIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICYuY29tbWVudC1saXN0IHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuYXJ0aWNsZSB7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5yZXBseSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMTVweDtcbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7XG5cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9IH0gfVxuXG5cbmFydGljbGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgIHBhZGRpbjogMjBweCAwOyB9XG5cbi5jb21tZW50LW1ldGEge1xuICBpbWcge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAxMTBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cblxuXG4gICAgJi51cmwge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2KTtcbiAgICAgIGNvbG9yOiAjMTExO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9IH1cblxuLmNvbW1lbnQtY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAxMTBweDtcblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGNvbG9yOiAjNjc2NzY3OyB9IH1cblxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgLmNvbW1lbnQtcmVwbHktdGl0bGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMik7XG4gICAgY29sb3I6ICMxMTE7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDIwcHggMDsgfVxuXG4gIC5jb21tZW50LWZvcm0ge1xuICAgIHAge1xuICAgICAgd2lkdGg6IDMyJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfVxuXG4gICAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dGFyZWEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH0gfVxuXG4gICNzdWJtaXQge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTExOyB9IH0gfVxuXG4ubW9yZS1ibG9nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb2xvcjogI0ZGRjtcbiAgcGFkZGluZzogMTBweCAwO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfdGhlbWU7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxNTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9XG4iLCJAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgI2NvbnRhY3QuY29udGFjdC10d28ge1xuICAgIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMjVweDsgfSB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSB7XG4gIC8qIEJsb2cgVHdvICAqL1xuICAuYmxvZy10d28ge1xuICAgIC5ibG9nX3Bvc3Qge1xuICAgICAgLmJsb2ctdGh1bWItbGVmdCwgLmJsb2ctdGh1bWItcmlnaHQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuXG4gICAgICAuYmxvZ19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwIDE1cHg7IH1cblxuICAgICAgJi5ib2xnLXJpZ2h0IHtcbiAgICAgICAgLmJsb2dfY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfSB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cbiAgLyogSGVhZGVyICovXG4gICNoZWFkZXIge1xuICAgIC5uYXZiYXItaGVhZGVyIHtcbiAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7IH0gfVxuXG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgcGFkZGluZzogMjBweCAwOyB9IH1cblxuICAvKiBCYW5uZXIgKi9cbiAgLnNsaWRlci1jYXB0aW9uLW9uZSB7XG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDUwKTsgfVxuXG4gICAgaDMge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuXG5cbiAgLmdwLWJuLWJ0biB7XG4gICAgcGFkZGluZzogMTBweCA0MHB4OyB9XG5cbiAgLnN3aXRjaGVyIHtcbiAgICBib3R0b206IDI1cHg7IH1cblxuXG4gIC5zbGlkZXItY2FwdGlvbi10d28ge1xuICAgIGxlZnQ6IDEwJTtcblxuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzNSk7IH1cblxuICAgIGg0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4gIC5zbGlkZXItY2FwdGlvbi10aHJlZSB7XG4gICAgbGVmdDogMTAlO1xuXG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDM1KTsgfVxuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMik7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcHg7IH0gfVxuXG5cbiAgLyogU2tpbGxzICovXG4gIC5vdXItc2tpbGxzIHtcbiAgICAuc2tpbGxzLXRpdGxlIHtcbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9IH1cblxuICBwcm9ncmVzcyB7XG4gICAgaGVpZ2h0OiAxNXB4OyB9XG5cbiAgLyogU2VydmljZSAqL1xuICAuc2VydmljZS1pdGVtIHtcbiAgICAuc2VydmljZSB7XG4gICAgICAuc2VydmljZV9jb250ZW50IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9IH0gfSB9XG5cbiAgLyogUG9ydGZvbGlvICovXG4gIC5wb3J0Zm9saW9fY29udGFpbmVyIHtcbiAgICAucG9ydGZvbGlvLWl0ZW0ge1xuICAgICAgLm92ZXJsYXkge1xuICAgICAgICAud29yay1jYXB0aW9uIHtcbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTgpOyB9IH0gfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLm92ZXJsYXkge1xuICAgICAgICAgIC53b3JrLWNhcHRpb24ge1xuICAgICAgICAgICAgLnZpZXcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH0gfSB9IH0gfVxuXG5cbiAgLyogVGVhbSAqL1xuICAudGVhbV9tZW1iZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvcl90aGVtZTtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgLnRlYW1faW50cm8ge1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4gICAgICAudGVhbV9saW5rIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9IH0gfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAudGVhbV9pbnRybyB7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuICAgICAgLmJsb2ctdGh1bWItbGVmdCB7XG4gICAgICAgIC5ibG9nLWNvbW1lbnRzIHtcbiAgICAgICAgICBib3R0b206IC0zNHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDdweDtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDNweDsgfSB9IH0gfSB9XG5cbiAgLyogVGVhbSBUd28gKi9cbiAgI3RlYW0tc2xpZGVyIHtcbiAgICAudGVhbV9tZW1iZXIge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC50ZWFtX2ludHJvIHtcbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3MHB4OyB9IH0gfSB9IH1cblxuXG4gIC8qIENvbnRhY3QgKi9cbiAgI2Zvcm0ge1xuICAgIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgICAgd2lkdGg6IDQ3JTsgfVxuXG4gICAgLyogQ29udGFjdCAqLyB9XG4gICNmb3JtIHtcbiAgICBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICAgIHdpZHRoOiA0NyU7IH1cblxuICAgIC5ncC1idG4ge1xuICAgICAgbWFyZ2luLXRvcDogMThweDsgfSB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblxuICAvKiBIZWFkZXIgKi9cbiAgI2hlYWRlciB7XG4gICAgLm5hdmJhci1oZWFkZXIge1xuICAgICAgLm5hdmJhci1icmFuZCB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgcGFkZGluZzogMTZweCAwOyB9IH1cblxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMCA2cHg7IH0gfSB9XG5cbiAgLyogVGVhbSBUd28gKi9cbiAgI3RlYW0tc2xpZGVyIHtcbiAgICAudGVhbV9tZW1iZXIge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC50ZWFtX2ludHJvIHtcbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9IH0gfSB9IH1cblxuXG5cbiAgLyogQ291bnR1cCBUd28gKi9cbiAgLmNvdW50dXAtdHdvIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgLmNvdW50ZXItYm94IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuXG5cbiAgLyogQ29udGFjdCBUd28gICovXG4gICNjb250YWN0IHtcbiAgICAmLmNvbnRhY3QtdHdvIHtcbiAgICAgIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgICAgIHJpZ2h0OiA0MHB4OyB9XG5cbiAgICAgIC5nbWFwMy1hcmVhIHtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDsgfSB9IH0gfVxuXG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAvKiBIZWFkZXIgKi9cbiAgLmhlYWRlcl93cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cblxuICAjaGVhZGVyIHtcbiAgICAubmF2YmFyLWhlYWRlciB7XG4gICAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuXG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG4gICNtb2JpbGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIG1hcmdpbjogMTJweCAyMHB4IDEycHggMDsgfVxuXG4gIC5uYXZiYXItZml4ZWQtdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCkgIWltcG9ydGFudDtcbiAgICAubmF2YmFyLWhlYWRlciB7XG4gICAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9IH0gfVxuXG5cbiAgLmdwLXByaW1hcnktbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuICAvKiBCYW5uZXIgKi9cbiAgLnN3aXBlci1iYW5uZXIge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgaGVpZ2h0OiAzNzBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9IH1cblxuXG4gIC5zbGlkZXItY2FwdGlvbi1vbmUge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMCk7XG5cbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDE2NXB4OyB9IH1cblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxOCk7IH0gfVxuXG4gIC5ncC1ibi1idG4ge1xuICAgIHBhZGRpbmc6IDEwcHggMjhweDsgfVxuXG4gIC8qIEFib3V0ICovXG4gIC5hYm91dC1ib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuICAvKiBTa2lsbHMgKi9cbiAgLm91ci1za2lsbHMge1xuICAgIC5za2lsbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuICAgIC5za2lsbC1iYXIge1xuICAgICAgcGFkZGluZzogNTBweCAwOyB9IH1cblxuICAvKiBTa2lsbHMgdHdvICovXG4gIC5vdXItc2tpbGxzLXR3byB7XG4gICAgcGFkZGluZzogNTBweCAwOyB9XG5cbiAgLnNraWxscy1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4gIC8qIFNlcnZpY2UgdHdvICovXG4gICNzZXJ2aWNlLXR3byB7XG4gICAgcGFkZGluZzogNTBweCAyMHB4O1xuXG4gICAgLnNlcnZpY2Uge1xuICAgICAgLm92ZXJsYXkge1xuXG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjBweDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH0gfSB9IH1cblxuICAvKiBDb3VudGVyICovXG4gIC5jb3VudGVyLWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5cbiAgLyogUG9ydGZvbGlvICovXG4gIC5wb3J0Zm9saW9fY29udGFpbmVyIHtcbiAgICAucG9ydGZvbGlvLWl0ZW0ge1xuICAgICAgLm92ZXJsYXkge1xuICAgICAgICAud29yay1jYXB0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAudmlldyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7IH0gfSB9IH0gfVxuXG4gIC8qIEJsb2cgVHdvICAqL1xuICAuYmxvZy10d28ge1xuICAgIC5ibG9nX3Bvc3Qge1xuICAgICAgLmJsb2ctdGh1bWItbGVmdCwgLmJsb2ctdGh1bWItcmlnaHQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuXG4gICAgICAuYmxvZ19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwIDE1cHg7IH1cblxuICAgICAgJi5ib2xnLXJpZ2h0IHtcbiAgICAgICAgLmJsb2dfY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfSB9XG5cblxuXG4gIC8qIFRlYW0gKi9cblxuICAudGVhbV9tZW1iZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAudGVhbV9pbnRybyB7XG4gICAgICBib3R0b206IC04MCU7XG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC50ZWFtX2ludHJvIHtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogODVweDsgfSB9IH0gfVxuXG5cbiAgLyogVGVhbSBUd28gKi9cbiAgI3RlYW0tc2xpZGVyIHtcbiAgICAudGVhbV9tZW1iZXIge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC50ZWFtX2ludHJvIHtcbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9IH0gfSB9IH1cblxuICAvKiBDb250YWN0ICovXG4gICNjb250YWN0IHtcbiAgICAuY29udGFjdC1pbm5lciB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7IH0gfVxuXG4gIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgLmNvbnRhY3QtaW5mbyB7XG4gICAgICAuaW5mbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfSB9XG5cblxuICAvKiBDb250YWN0IFR3byAqL1xuICAjY29udGFjdCB7XG4gICAgcGFkZGluZzogMDtcbiAgICAmLmNvbnRhY3QtdHdvIHtcbiAgICAgIC5nbWFwMy1hcmVhIHtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDsgfVxuICAgICAgLmNvbnRhY3QtZm9ybS1hcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcblxuXG5cbiAgICAgICAgI2Zvcm0ge1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNHB4OyB9IH0gfSB9IH1cblxuICAvKiBOZXdzbGV0dGVyICovXG4gICNuZXdzbGV0dGVyIHtcbiAgICAubmV3cy13cmFwZXIge1xuICAgICAgZm9ybSB7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfSB9IH1cblxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwMHB4KSB7XG5cbiAgLyogU2VjdGlvbiBUaXRsZSAqL1xuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDI0KTsgfVxuXG4gIC8qIEJhbm5lciAqL1xuICAuZ3AtYm4tYnRuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7IH1cblxuICAuc2xpZGVyLWNhcHRpb24tb25lIHtcbiAgICBoMyB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQpOyB9IH1cblxuICAuc2xpZGVyLWNhcHRpb24tdHdvIHtcbiAgICBoMiB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoMjUpOyB9XG5cbiAgICBoNCB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoMTgpOyB9XG5cbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCk7XG4gICAgICBiciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9XG5cbiAgLnNsaWRlci1jYXB0aW9uLXRocmVlIHtcbiAgICBoMiB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUoMjIpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE4KTsgfVxuXG4gICAgaDMge1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTsgfSB9XG5cblxuICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIHJpZ2h0OiAzMHB4OyB9XG5cbiAgLyogQWJvdXQgKi9cblxuICAuY2FwdGlvbiB7XG4gICAgYnIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cblxuICAvKiBTa2lsbHMgVHdvICovXG4gIC5vdXItc2tpbGxzLXR3byB7XG4gICAgLnNraWxsLWJhciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuXG4gIC8qIENvdW50VXAgKi9cbiAgLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgLyogVGVhbSAqL1xuICAudGVhbV9tZW1iZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgLnRlYW1faW50cm8ge1xuICAgICAgYm90dG9tOiAtODMlO1xuICAgICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgICY6aG92ZXIge1xuICAgICAgLnRlYW1faW50cm8ge1xuICAgICAgICBoNCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTM1cHg7IH0gfSB9IH1cblxuICAucG9ydGZvbGlvIHtcbiAgICAucG9ydGZvbGlvRmlsdGVyIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDZweDsgfSB9IH0gfVxuXG4gIC8qIFRlc3RpbW9uaWFsICovXG4gICN0ZXN0aW1vbmlhbCB7XG4gICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC50ZXN0aW1vbmlhbC1zbGlkZXIge1xuICAgIC50ZXN0aW9uYWwge1xuICAgICAgLml0ZW0ge1xuICAgICAgICAudGVzdGktY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBiciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfSB9IH0gfSB9XG5cbiAgLyogTmV3c2xldHRlciAqL1xuICAjbmV3c2xldHRlciB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuICAgIC5uZXdzLXdyYXBlciB7XG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMCk7IH1cblxuICAgICAgZm9ybSB7XG4gICAgICAgIHdpZHRoOiAzMTBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgaW5wdXRbdHlwZT1lbWFpbF0ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTE1cHggMTBweCAxNXB4OyB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4OyB9IH0gfSB9XG5cblxuXG4gIC8qIENvbnRhY3QgKi9cbiAgI2NvbnRhY3Qge1xuICAgIC5jb250YWN0LWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5jb250YWN0LWhlYWRlciB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH0gfVxuXG4gICAgI2Zvcm0ge1xuICAgICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbiAgICAgIC5ncC1idG4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH0gfVxuXG5cblxuXG4gIC5yZXR1cm4tdG8tdG9wIHtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IDIwcHg7IH1cblxuICAvKiBDb250YWN0IFR3byAqL1xuICAjY29udGFjdCB7XG4gICAgJi5jb250YWN0LXR3byB7XG4gICAgICAuY29udGFjdC1mb3JtLWFyZWEge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICNmb3JtIHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfSB9IH0gfSB9XG5cbi8qIEJsb2cgU2lnbmxlICovXG4uY29tbWVudC1yZXNwb25kIHtcbiAgLmNvbW1lbnQtZm9ybSB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfSB9IH1cblxuLyogV2lkZ2V0ICovXG4ud2lkZ2V0X2R0X3NlYXJjaCB7XG4gIC5zZWFyY2gtZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjIFNlYXJjaFxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2VhcmNoXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgRHQgQ3VzdG9tIE1lbnVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcImR0LWN1c3RvbS1tZW51XCI7XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAjIyBEdCBUYWdzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJkdF90YWdzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIyMgRHQgUmVzZW50IFBvc3RcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIndpZGdldC1kdC1yZWNlbnQtcG9zdFwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICMjIER0IEFyY2hpdmVcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIndpZGdldC1kdC1hcmNoaXZlc1wiO1xuIiwiLndpZGdldF9kdF9zZWFyY2gge1xuXG4gIC5zZWFyY2gtZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMjcwcHg7IH1cblxuXG4gICAgLnNlYXJjaC1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiA2cHg7XG4gICAgICB0b3A6IDEycHg7IH0gfVxuXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgY29sb3I6ICMxMTE7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDE0KTsgfVxuXG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cbiIsIi8qIEN1c3RvbSBNZW51ICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAud2lkZ2V0LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICBjb2xvcjogIzExMTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yX3RoZW1lOyB9IH0gfVxuXG4ud2lkZ2V0X25hdl9tZW51IHtcblxuICB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGVkO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICM2ZDZjNmM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yX3RoZW1lOyB9IH0gfSB9IH1cbiIsIi8qIER0IFRhZ3MgKi9cbi5kdC10YWcge1xuICBhIHtcbiAgICBjb2xvcjogIzZkNmM2YztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl90aGVtZTtcbiAgICAgIGNvbG9yOiAjRkZGOyB9IH0gfVxuIiwiLyogV2lkZ2V0IFJlc2VudCBQb3N0ICovXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIHtcbiAgLnJlc2VudC1wb3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIC5wb3N0LXRodW1icyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuXG4gICAgLnBvc3QtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogOTBweDtcblxuICAgICAgaDUge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQpO1xuXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjMTExMTExO1xuICAgICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDIwKTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl90aGVtZTsgfSB9IH1cblxuICAgICAgLnBvc3QtbWV0YSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGhlbWU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH0gfSB9IH0gfSB9XG4iLCIvKiBXaWRnZXQgRHQgQXJjaGl2ZXMgKi9cbi53aWRnZXRfYXJjaGl2ZSB7XG4gIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICM2ZDZjNmM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7IH0gfVxuICAgICAgcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGVtZTsgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhlbWU7IH0gfSB9IH0gfVxuXG5cblxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */
