@charset "UTF-8";
/*
 * Author: Niels Buijtenhuis
 *
 * SCSS structure:
 * 0 - Vendor — Optional third party imports
 * 1 - Settings — preprocessors, fonts, variables
 * 2 - Tools — mixins, functions
 * 3 - Base — reset / normalize
 * 4 - Elements — HTML elements 
 * 5 - Components — UI components
 * 6 - Helpers - helper classes
 */
/* 
 * All colors used on the website.
 */
/* 
 * Typography
 */
/*
 * Grid, Breakpoints & Widths
 */
/*
 * Form field base
 
 gold: #bd9b60
 black: #231f20
 
 */
input[type='date'],
input[type='text'],
input[type='email'],
input[type='url'],
input[type='search'],
input[type='password'],
input[type='tel'],
textarea {
  width: 100%;
  max-width: 400px;
  padding: 0.4em 0.4em;
  border: 1px solid #787878;
  background: #fff;
  color: #787878;
  outline: 0;
  border-radius: 5px;
  font-size: 0.9rem;
}
input:focus[type='date'],
input:focus[type='text'],
input:focus[type='email'],
input:focus[type='url'],
input:focus[type='search'],
input:focus[type='password'],
input:focus[type='tel'],
textarea:focus {
  border-color: #000000;
  background: #fff;
}

select {
  width: auto;
  max-width: 400px;
  background: #fff url('../images/arrow-down-select.svg') no-repeat right 15px center;
  background-size: 15px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #000000;
  outline: 0;
  padding: 0.5em 2.4em 0.5em 1em;
  line-height: normal;
  border-radius: 5px;
  font-size: 1.125rem;
  padding-right: 35px !important;
}
select:focus {
  border-color: #000000;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* 
 * Button base
 */
/* 
 * Mixins
 */
/* 
 * Mixin for Media Queries
 */
/* 
 * Grid mixin
 */
/* 
 * Reset HTML elements and layout
 */
::-moz-selection {
  color: #fff;
  background: #000000;
}
::selection {
  color: #fff;
  background: #000000;
}

img::-moz-selection,
.quantity-input::-moz-selection {
  background: transparent;
}

img::selection,
.quantity-input::selection {
  background: transparent;
}

*,
input[type='search'] {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  font-size: 14px;
}
@media (min-width: 768px) {
  html {
    font-size: 14.5px;
  }
}
@media (min-width: 992px) {
  html {
    font-size: 15px;
  }
}

body {
  background: #fff;
  color: #000000;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}

a {
  color: #000000;
  transition: color 0.3s ease-in-out;
}
a:hover {
  color: #231f20;
  text-decoration: none;
}

li {
  font-size: 1.3rem;
  line-height: 1.8;
}

p {
  margin-bottom: 20px;
  margin-top: 0;
  font-size: 1.3rem;
  line-height: 1.8;
}
p.small {
  font-size: 1rem;
  line-height: 1.2;
  margin: 0;
  color: #5d5e5e;
}
p:last-child {
  margin-bottom: 0;
}

b,
strong {
  font-weight: 700;
}

embed,
img,
object,
video {
  display: block;
  max-width: 100%;
  height: auto;
}

/* 
 * Layout base
 */
body {
  width: 100%;
  overflow-x: hidden;
}
@media (max-width: 991px) {
  body.hidden {
    overflow: hidden;
  }
}

.layout-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: auto;
  min-height: 100vh;
  margin: 0;
  transition: transform 400ms;
}
@media (max-width: 991px) {
  .layout-container.slide-canvas {
    position: fixed;
    transform: translate(400px);
  }
}
@media (max-width: 767px) {
  .layout-container.slide-canvas {
    transform: translate(calc(100% - 60px));
  }
}

section {
  position: relative;
  padding: 40px 0;
}

.wrapper {
  width: 100%;
  height: 100%;
  max-width: 1170px;
  margin: 0 auto;
  position: relative;
  display: block;
}
@media (max-width: 1559px) {
  .wrapper {
    padding: 0 20px;
    max-width: 100%;
  }
}
@media (max-width: 1279px) {
  .wrapper {
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .wrapper {
    padding: 0 20px;
  }
}
@media (min-width: 1280px) {
  .wrapper {
    max-width: 1260px;
  }
}

.site-content {
  position: relative;
  overflow: hidden;
  padding-right: 280px;
  min-height: 400px;
}
@media (max-width: 1279px) {
  .site-content {
    padding-right: 0px;
  }
}

nav.menu {
  position: absolute;
  height: 80px;
  width: 100%;
  left: 0;
  right: 0;
  top: 90px;
  background: transparent;
  z-index: 999;
  transition: background 350ms ease-in-out;
}
nav.menu.active.up {
  transform: translateY(-300%) !important;
}
nav.menu > a img {
  display: inline-block;
  height: 100%;
}
nav.menu .hamburger {
  background: #bd9b60;
  height: 80px;
  width: 80px;
  display: inline-block;
  margin-left: -3px;
  position: relative;
  text-align: center;
  z-index: 99999;
  cursor: pointer;
  transition: all 350ms ease-in-out;
}
nav.menu .hamburger span {
  height: 3px;
  width: 45px;
  border-radius: 1.5px;
  background: #fff;
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  top: calc(50% - 3px / 2);
  transition: all 250ms ease-in-out;
}
nav.menu .hamburger span:first-child {
  margin-top: -10px;
}
nav.menu .hamburger span:last-child {
  margin-top: 10px;
  width: 35px;
  margin-left: 28px;
}
nav.menu .hamburger:hover {
  background: #8c744b;
}
nav.menu .hamburger.active {
  background: #8c744b;
  margin-left: 400px;
}
nav.menu .hamburger.active span {
  width: 0;
}
nav.menu .hamburger.active span:first-child {
  transform: rotate(-45deg);
  margin-top: 0;
  width: 45px;
}
nav.menu .hamburger.active span:last-child {
  transform: rotate(45deg);
  margin-top: 0;
  width: 45px;
  margin-left: 19px;
}
@media (max-width: 767px) {
  nav.menu .hamburger.active {
    margin-left: 0;
    position: absolute;
    right: 0;
  }
}
nav.menu .shopping-cart {
  height: 80px;
  position: absolute;
  padding-right: 50px;
  right: 280px;
  top: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding-left: 50px;
  cursor: pointer;
  transition: all 350ms ease-in-out;
  background: #bd9b60;
}
@supports (display: grid) {
  nav.menu .shopping-cart {
    background: none;
  }
}
nav.menu .shopping-cart:hover {
  background: #bd9b60;
}
@supports (display: grid) {
  nav.menu .shopping-cart:hover {
    background: rgba(255, 255, 255, 0.2);
  }
}
nav.menu .shopping-cart svg {
  width: 36px;
  height: 36px;
}
nav.menu .shopping-cart .shopping-basket {
  display: inline-block;
  position: relative;
  margin-right: 30px;
  margin-top: 20px;
  vertical-align: middle;
}
nav.menu .shopping-cart .shopping-basket .shopping-cart-items {
  position: absolute;
  background: #bd9b60;
  text-align: center;
  height: 25px;
  width: 25px;
  color: #fff;
  border-radius: 150px;
  display: block;
  font-weight: 700;
  margin-top: -20px;
  right: -10px;
  box-shadow: 0 2px 13px 0 rgba(0, 0, 0, 0.5);
}
nav.menu .shopping-cart .toggle-basket {
  display: inline-block;
  font-size: 22px;
  margin-top: -20px;
  color: #fff;
  font-weight: 700;
  vertical-align: bottom;
}
nav.menu .shopping-cart .toggle-basket svg {
  width: 16px;
  height: 16px;
  transition: all 350ms ease;
}
nav.menu .shopping-cart.open .toggle-basket svg {
  transform: rotate(180deg);
}
@media (max-width: 1279px) {
  nav.menu .shopping-cart {
    right: 0px !important;
  }
}
@media (max-width: 419px) {
  nav.menu .shopping-cart {
    border-left: none;
    padding: 0 8px !important;
  }
}
nav.menu #small-cart {
  opacity: 0;
  visibility: hidden;
  transform: translateX(100%);
  max-width: 480px;
  box-shadow: 0 5px 12px 0 rgba(0, 0, 0, 0.4);
  width: 100%;
  position: absolute;
  top: 80px;
  right: 280px;
  background: #fff;
  border-radius: 0 0 10px 10px;
  padding: 20px;
  padding-bottom: 122px;
  transition: all 400ms ease-in-out;
  -webkit-tap-highlight-color: transparent;
}
nav.menu #small-cart h3 {
  color: #1b1e24;
  font-size: 1.3rem;
  margin-bottom: 20px !important;
  display: block;
}
nav.menu #small-cart ul {
  max-height: 0px;
  transition: max-height 350ms ease-in-out;
  overflow: auto;
}
@supports (display: grid) {
  nav.menu #small-cart ul {
    overflow: scroll;
  }
}
nav.menu #small-cart ul li {
  padding: 15px 0;
  position: relative;
  border-bottom: 1px solid #d8d8d8;
}
nav.menu #small-cart ul li img {
  display: inline-block;
  width: 60px;
}
nav.menu #small-cart ul li .text {
  display: inline-block;
  font-size: 1rem;
  margin: 0 0 0 25px;
}
nav.menu #small-cart ul li .text .title {
  display: block;
  font-weight: 700;
  text-overflow: ellipsis;
  max-width: 180px;
  white-space: nowrap;
  overflow: hidden;
}
@media (max-width: 767px) {
  nav.menu #small-cart ul li .text .title {
    max-width: 80%;
  }
}
nav.menu #small-cart ul li .text .variatie {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
  display: block;
}
nav.menu #small-cart ul li .text .price {
  color: #5d5e5e;
  font-weight: 700;
  margin-right: 5px;
}
nav.menu #small-cart ul li .price {
  font-size: 1rem;
  color: #bd9b60;
  padding: 5px;
  border-radius: 8px;
  vertical-align: super;
  min-width: 60px;
  text-align: right;
  display: inline-block;
  font-weight: 600;
}
nav.menu #small-cart ul li .product-count {
  margin-top: 7px;
}
nav.menu #small-cart ul li .product-count input {
  margin-top: 5px;
}
nav.menu #small-cart ul li:first-child {
  border-top: 1px solid #d8d8d8;
}
nav.menu #small-cart ul li:last-child {
  border-bottom: none;
}
nav.menu #small-cart.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0%);
}
nav.menu #small-cart.open ul {
  max-height: 350px;
  transition-delay: 350ms;
}
nav.menu #small-cart .checkout-btn,
nav.menu #small-cart .to-cart-btn {
  background: #bd9b60;
  color: #fff;
  padding: 15px 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  text-align: center;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 5px 12px 0 rgba(0, 0, 0, 0.4);
  transition: all 350ms ease-in-out;
}
nav.menu #small-cart .checkout-btn:hover,
nav.menu #small-cart .to-cart-btn:hover {
  background: #8c744b;
}
nav.menu #small-cart .checkout-btn svg,
nav.menu #small-cart .to-cart-btn svg {
  width: 30px;
  height: 30px;
  vertical-align: middle;
}
nav.menu #small-cart .to-cart-btn {
  color: #bd9b60;
  background: #fff;
  bottom: 52px;
  border-radius: 0;
}
nav.menu #small-cart .to-cart-btn:hover {
  background: #fff;
  color: #8c744b;
}
@media (max-width: 767px) {
  nav.menu #small-cart {
    top: 80px;
    right: 0px;
  }
}
nav.menu.prepare {
  transform: translateY(0%);
  background: #fff;
  border: none !important;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.4);
  position: fixed;
  top: -120px;
  transition: transform 400ms;
  height: 80px;
  z-index: 1000000;
}
nav.menu.prepare .hamburger {
  width: 80px;
  height: 80px;
  top: 0;
}
nav.menu.prepare .hamburger.active {
  margin-left: 400px;
}
nav.menu.prepare .hamburger.active span:first-child {
  top: 40px;
}
nav.menu.prepare .hamburger.active span:last-child {
  top: 40px;
  margin-left: 18px;
}
nav.menu.prepare > img {
  height: 80px;
}
nav.menu.prepare .shopping-cart {
  height: 80px;
  padding: 0 25px;
  border-left: none;
}
nav.menu.prepare .shopping-cart .shopping-basket {
  margin-top: 15px;
  margin-right: 15px;
}
nav.menu.prepare .shopping-cart .toggle-basket span {
  display: inline-block;
}
@media (max-width: 767px) {
  nav.menu.prepare .shopping-cart .toggle-basket span {
    display: none;
  }
}
nav.menu.prepare #small-cart {
  right: 0;
}
nav.menu.prepare #small-cart.open {
  opacity: 0;
  visibility: hidden;
}
nav.menu.prepare .shopping-cart {
  border-color: #d8d8d8;
  border-bottom: none;
  right: 20px;
}
nav.menu.prepare .shopping-cart .toggle-basket {
  color: #fff;
}
@supports (display: grid) {
  nav.menu.prepare .shopping-cart .toggle-basket {
    color: #231f20;
  }
}
nav.menu.prepare .shopping-cart svg {
  filter: brightness(0%);
}
nav.menu.active {
  transform: translateY(150%);
  transition: transform 400ms;
}
nav.menu.active #small-cart.open {
  opacity: 1;
  visibility: visible;
  top: 80px;
}
nav.menu.menu-open {
  background: #fff;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.4);
}
nav.menu.menu-open .shopping-cart {
  border-color: #d8d8d8;
}
nav.menu.menu-open .shopping-cart .toggle-basket {
  color: #fff;
}
@supports (display: grid) {
  nav.menu.menu-open .shopping-cart .toggle-basket {
    color: #231f20;
  }
}
nav.menu.menu-open .shopping-cart svg {
  filter: brightness(0%);
  transition: all 350ms ease-in-out;
}
nav.menu.menu-open .shopping-cart.open .toggle-basket svg {
  transform: rotate(180deg);
}
@media (max-width: 1279px) {
  nav.menu.prepare {
    z-index: 99999999999;
  }
}
@media (max-width: 767px) {
  nav.menu {
    height: 80px;
    max-width: 100vw;
    z-index: 99999999;
  }
  nav.menu.active {
    overflow-x: visible;
    overflow-y: visible;
  }
  nav.menu #small-cart {
    position: fixed;
    top: 130px;
    z-index: 99999;
  }
  nav.menu #small-cart ul li .text {
    margin-right: 10px;
    margin-left: 10px;
  }
  nav.menu #small-cart ul li .price {
    min-width: 0;
  }
  nav.menu > a img {
    height: 80px;
  }
  nav.menu.active.up {
    transform: translateY(150%) !important;
  }
  nav.menu .hamburger {
    width: 80px;
    height: 80px;
  }
  nav.menu .hamburger.active span:first-child {
    top: 40px;
  }
  nav.menu .hamburger.active span:last-child {
    top: 40px;
    margin-left: 18px;
  }
  nav.menu > img {
    height: 80px;
  }
  nav.menu .shopping-cart {
    height: 80px;
    padding: 0 25px;
  }
  nav.menu .shopping-cart .shopping-basket {
    margin-top: 15px;
    margin-right: 15px;
  }
  nav.menu .shopping-cart .toggle-basket span {
    display: none;
  }
  nav.menu.active {
    transform: translateY(150%);
  }
}
@media (max-width: 575px) {
  nav.menu {
    border-bottom: 1px solid #fff;
  }
}
nav.menu.fixed {
  top: 0;
  position: fixed;
}
nav.menu.fixed #small-cart {
  top: 80px;
}

.empty-cart {
  font-size: 1.2rem;
  color: #d8d8d8;
  font-weight: 600;
  margin-bottom: 20px;
}

.product-nav nav {
  background: #fff;
}
.product-nav nav .shopping-cart {
  border-color: #d8d8d8;
  border-bottom: none;
}
.product-nav nav .shopping-cart .toggle-basket {
  color: #fff;
}
@supports (display: grid) {
  .product-nav nav .shopping-cart .toggle-basket {
    color: #231f20;
  }
}
.product-nav nav .shopping-cart svg {
  filter: brightness(0%);
}

.overlay.menu-overlay {
  position: fixed;
  z-index: 80;
  height: 100%;
  width: 100%;
  display: none;
}

.foldout-menu {
  background: #1b1e24;
  width: 560px;
  height: 100%;
  position: fixed;
  z-index: 9999999;
  top: 0;
  left: 0;
  padding: 0px 0 0 0;
  box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.5);
  transform: translateX(-100%);
  transition: all 450ms ease-out;
  opacity: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}
.foldout-menu .menu-title {
  padding: 0px 25px 0 25px;
  margin-bottom: 15px;
}
.foldout-menu .menu-title h3 {
  color: #fff;
}
.foldout-menu .menu-title input {
  width: 100%;
  max-width: 100%;
}
.foldout-menu ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
.foldout-menu ul > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(0px);
  margin-bottom: calc(0px);
  width: calc((100% / 2) - (0px * (2 - 1) / 2));
}
@media (max-width: 575px) {
  .foldout-menu ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .foldout-menu ul > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  .foldout-menu ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .foldout-menu ul > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  .foldout-menu ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  .foldout-menu ul > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  .foldout-menu ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  .foldout-menu ul > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  .foldout-menu ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  .foldout-menu ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [2];
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0px;
  }
  @media (min-width: 576px) {
    .foldout-menu ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 768px) {
    .foldout-menu ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    .foldout-menu ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    .foldout-menu ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .foldout-menu ul > * {
    width: 100%;
    margin: 0;
  }
}
.foldout-menu ul li a {
  transition: all 350ms ease-in-out;
  position: relative;
  display: block;
  padding: 60px 0;
  width: 100%;
  text-align: center;
  color: #fff;
  text-decoration: none;
  background-size: cover;
  background-position: center;
  font-weight: 700;
  font-size: 1.3rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.foldout-menu ul li a span {
  position: relative;
}
.foldout-menu ul li a:hover {
  opacity: 0.5;
}
@media (max-width: 767px) {
  .foldout-menu {
    width: calc(100% - 80px);
    overflow: scroll;
  }
  .foldout-menu ul li a {
    font-size: 1rem;
  }
  .foldout-menu.active {
    z-index: 999999999;
  }
}
@media (max-width: 575px) {
  .foldout-menu ul li a {
    padding: 30px 0;
    height: 100%;
  }
}
.foldout-menu.active {
  opacity: 1;
  transform: translateX(0%);
  transition-delay: 200ms;
}

.home-navigation .shopping-cart {
  right: 0 !important;
}

.home-navigation #small-cart {
  right: 0 !important;
}

#images {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  padding: 20px;
  height: 750px;
  position: relative;
}
#images > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(20px);
  margin-bottom: calc(20px);
  width: calc((100% / 1) - (20px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  #images > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #images > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  #images > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #images > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #images > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  #images > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #images > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  #images > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #images > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  #images {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }
  @media (min-width: 576px) {
    #images {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    #images {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    #images {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    #images {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #images > * {
    width: 100%;
    margin: 0;
  }
}
#images .image .image-1 {
  background: #5d5e5e;
  height: 100%;
  background-size: cover;
  background-position: center;
}
#images .images .image-1 {
  height: calc(50% - 10px);
  background: #5d5e5e;
  margin-bottom: 20px;
  background-size: cover;
  background-position: center;
}
#images .images .image-2 {
  height: calc(50% - 10px);
  background: #5d5e5e;
  background-size: cover;
  background-position: center;
}

footer {
  background-color: #231f20;
  background-size: 500px;
  background-repeat: no-repeat;
  padding: 50px 0;
  color: #fff;
  position: relative;
}
footer .wrapper h4 {
  color: #fff;
  margin-bottom: 35px !important;
}
footer .wrapper .social a {
  color: #fff;
  font-size: 26px;
  margin-right: 10px;
  opacity: 0.6;
  transition: all 350ms ease;
}
footer .wrapper .social a:hover {
  opacity: 1;
}
footer .wrapper .smartphone {
  display: none;
}
footer .wrapper p {
  opacity: 0.6;
  font-size: 0.9em;
}
footer .wrapper p a {
  color: #fff;
}
footer .wrapper > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
footer .wrapper > ul > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(50px);
  margin-bottom: calc(50px);
  width: calc((100% / 1) - (50px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  footer .wrapper > ul > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  footer .wrapper > ul > * {
    width: calc((100% / 2) - (50px * (2 - 1) / 2));
  }
  footer .wrapper > ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  footer .wrapper > ul > * {
    width: calc((100% / 4) - (50px * (4 - 1) / 4));
  }
  footer .wrapper > ul > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  footer .wrapper > ul > * {
    width: calc((100% / 4) - (50px * (4 - 1) / 4));
  }
  footer .wrapper > ul > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  footer .wrapper > ul > * {
    width: calc((100% / 4) - (50px * (4 - 1) / 4));
  }
  footer .wrapper > ul > *:nth-child(4n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  footer .wrapper > ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 50px;
  }
  @media (min-width: 576px) {
    footer .wrapper > ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 768px) {
    footer .wrapper > ul {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  @media (min-width: 992px) {
    footer .wrapper > ul {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  @media (min-width: 1280px) {
    footer .wrapper > ul {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  footer .wrapper > ul > * {
    width: 100%;
    margin: 0;
  }
}
footer .wrapper > ul ul li {
  list-style: none;
  opacity: 0.6;
  font-size: 0.9em;
}
footer .wrapper > ul ul li a {
  color: #fff;
  text-decoration: none;
}
footer .wrapper > ul ul li a:hover {
  color: #bd9b60;
  text-decoration: none;
}
@media (max-width: 575px) {
  footer .wrapper .smartphone {
    display: block;
  }
  footer .wrapper .smartphone a {
    color: #fff;
    text-decoration: none;
  }
}
footer .wrapper .search {
  background-color: #111111;
  background-size: 22px;
  background-position: 14px 12px;
  border-radius: 200px;
  margin-bottom: 20px;
  width: 100%;
  font-size: 0.9em;
}
footer .subfooter {
  width: 100%;
  background: #111111;
  color: #fff;
  text-align: center;
  padding: 20px 0;
  margin-bottom: -50px;
  margin-top: 50px;
}
footer .kk-summary-company-url a {
  margin-top: 20px !important;
  font-size: 1rem !important;
}

/* 
 * Form fields
 */
input {
  transition: all 350ms ease-in-out;
}
input.search {
  position: relative;
  background-color: transparent;
  color: #5d5e5e;
  padding: 0.7em 0.1em;
  font-size: 1.1em;
  border: none;
  background-image: url('../images/search-icon-grey.svg');
  background-repeat: no-repeat;
  background-size: 25px;
  background-position: 10px 10px;
  padding-left: 50px;
}
input.search:focus,
input.search:active {
  background: transparent;
  border: none;
  background-image: url('../images/search-icon-grey.svg');
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: 10px 10px;
}

.product-count {
  display: inline-block;
  position: absolute;
  right: 10px;
  margin-top: 10px;
  margin-top: 12px;
}
.product-count input {
  width: 35px;
  text-align: left;
  border: none;
  background: transparent;
  font-size: 1rem;
  font-weight: 700;
  color: #000000;
  pointer-events: none;
  display: inline-block;
  vertical-align: super;
  -webkit-appearance: none;
  padding-left: 7px;
}
.product-count svg {
  width: 25px;
  height: 25px;
  cursor: pointer;
}

/* 
 * Headings
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
  line-height: 1.5;
  color: #bd9b60;
}

h1 {
  font-size: 5rem;
}

h2 {
  font-size: 2rem;
}

h3 {
  font-size: 2rem;
  text-transform: uppercase;
}

h4 {
  font-size: 1.25rem;
}

/* 
 * Media
 */
/* 
 * Buttons
 */
.button,
footer .kk-summary-company-url a {
  display: inline-block;
  vertical-align: middle;
  padding: 0.7em 2.2em;
  border: 2px solid transparent;
  -webkit-appearance: none;
  font-weight: 700;
  font-size: 1.3rem;
  border-radius: 125px;
  cursor: pointer;
  transition-property: background-color, border-color, color;
  transition-duration: 0.3s;
  outline: 0;
  text-align: center;
  min-width: auto;
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  white-space: nowrap;
  text-decoration: none !important;
  line-height: initial;
  position: relative;
  background-color: #bd9b60;
  border-color: #bd9b60;
  color: #fff;
  transition: all 0.3s ease-in-out;
}
.button:hover,
footer .kk-summary-company-url a:hover,
.button:focus,
footer .kk-summary-company-url a:focus {
  color: #fff;
  background-color: #8c744b;
  border-color: #8c744b;
}
.button:focus,
footer .kk-summary-company-url a:focus {
  background-color: #5a0803;
  border-color: #5a0803;
}

.wpforms-form .wpforms-submit-container #wpforms-submit-1566 {
  display: inline-block;
  vertical-align: middle;
  padding: 0.7em 2.2em;
  border: 2px solid transparent;
  -webkit-appearance: none;
  font-weight: 700;
  font-size: 1.3rem;
  border-radius: 125px;
  cursor: pointer;
  transition-property: background-color, border-color, color;
  transition-duration: 0.3s;
  outline: 0;
  text-align: center;
  min-width: auto;
  box-shadow: 0 2px 17px 0 rgba(0, 0, 0, 0.5);
  white-space: nowrap;
  text-decoration: none !important;
  line-height: initial;
  position: relative;
  background-color: #bd9b60;
  border-color: #bd9b60;
  color: #fff;
  transition: all 0.3s ease-in-out;
}
.wpforms-form .wpforms-submit-container #wpforms-submit-1566:hover,
.wpforms-form .wpforms-submit-container #wpforms-submit-1566:focus {
  color: #fff;
  background-color: #8c744b;
  border-color: #8c744b;
}
.wpforms-form .wpforms-submit-container #wpforms-submit-1566:focus {
  background-color: #5a0803;
  border-color: #5a0803;
}

.btn-outline {
  background-color: transparent;
  border-color: #bd9b60;
  color: #bd9b60;
}
.btn-outline:hover,
.btn-outline:focus {
  background-color: #8c744b;
  border-color: #8c744b;
  color: #fff;
}
.btn-outline:focus {
  background-color: shade(#8c744b, 10%);
  border-color: shade(#8c744b, 10%);
}

.button-sm {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  box-shadow: none;
}

/* 
 * Product button with hover effect
 */
.product-button-wrap {
  background-color: #bd9b60;
  border-radius: 6px 0px 0px 6px;
  padding: 10px;
  width: 60px;
  height: 60px;
  position: absolute;
  right: 0;
  border: none;
  bottom: 0;
  box-shadow: 0 2px 11px 0 rgba(84, 84, 84, 0.5);
  transition: all 350ms ease;
  transition-delay: 300ms;
  cursor: pointer;
  overflow: visible;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 999999;
}
.product-button-wrap.single {
  bottom: 18px;
}
.product-button-wrap .count {
  opacity: 0;
  visibility: hidden;
  display: inline-block;
  position: absolute;
  top: -8px;
  width: auto;
  text-align: center;
  height: auto;
  padding: 20px;
  transform: translateY(-100%);
  transition: all 350ms ease;
  transition-delay: 200ms;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.product-button-wrap .count svg {
  width: 15px;
  height: 15px;
}
.product-button-wrap .count.min {
  left: 2px;
}
.product-button-wrap .count.add {
  right: 50px;
}
.product-button-wrap input {
  opacity: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  visibility: hidden;
  display: inline-block;
  position: absolute;
  top: 9px;
  min-height: 40px;
  background: none;
  color: #fff;
  border: none;
  left: 0;
  right: 50px;
  margin: 0 auto;
  text-align: center;
  width: 50px;
  font-weight: 600;
  pointer-events: none;
  font-size: 1.3rem;
  transform: translateY(-100%);
  transition: all 350ms ease;
  transition-delay: 200ms;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 0px;
  height: 25px;
}
.product-button-wrap .single_add_to_cart_button {
  background: url('../images/shopping-cart-add.svg') no-repeat center;
  background-size: 30px;
  width: 60px;
  height: 55px;
  right: 0px;
  top: 0;
  transition: all 350ms ease;
  display: inline-block;
  box-shadow: none;
  padding: 0;
  position: absolute;
  overflow: visible;
  border-radius: 0;
  border: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.product-button-wrap .single_add_to_cart_button.disabled {
  cursor: default;
  pointer-events: none;
}
.product-button-wrap .single_add_to_cart_button:hover {
  border-color: #bd9b60;
}
.product-button-wrap .single_add_to_cart_button:focus,
.product-button-wrap .single_add_to_cart_button:active {
  border: none;
}
.product-button-wrap .single_add_to_cart_button.loading:after {
  content: ' ';
  width: 40px;
  height: 40px;
  display: block;
  position: absolute;
  background: #bd9b60;
  border-radius: 100%;
  z-index: 99999;
  box-shadow: 0 2px 11px 0 rgba(84, 84, 84, 0.5);
  animation: shopping 500ms ease;
  filter: blur(80%);
  right: 10px;
  opacity: 0;
}
.product-button-wrap .single_add_to_cart_button.loading:before {
  content: 'Toegevoegd!';
  background: #bd9b60;
  font-size: 14px;
  position: absolute;
  top: 8px;
  left: -150px;
  border-radius: 10px;
  padding: 10px 35px;
  transition: all 350ms ease;
  display: block;
  text-align: center;
  opacity: 0;
  animation: feedback 1.1s ease;
}
@media (max-width: 767px) {
  .product-button-wrap .single_add_to_cart_button.loading:before {
    left: -180px;
    width: 120%;
    text-align: left;
  }
}
@media (max-width: 419px) {
  .product-button-wrap .single_add_to_cart_button.loading:before {
    left: -160px;
    width: 120%;
  }
}

@keyframes feedback {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes shopping {
  0% {
    top: -50px;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
  100% {
    top: -300px;
  }
}
.product-button-wrap .single_add_to_cart_button.disabled {
  pointer-events: none !important;
}
.product-button-wrap.hover:hover {
  width: 210px;
  transition-delay: 100ms;
}
.product-button-wrap.hover:hover input,
.product-button-wrap.hover:hover .count {
  visibility: visible;
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 400ms;
}
.product-button-wrap.hover:hover .count {
  transition-delay: 300ms;
}
@media (max-width: 767px) {
  .product-button-wrap.hover {
    width: 90%;
    margin: 15px auto 0 auto;
    position: relative;
    border-radius: 5px;
    padding: 10px 10px 10px 0px;
    text-align: center;
    bottom: 0;
  }
  .product-button-wrap.hover input,
  .product-button-wrap.hover .count {
    visibility: visible;
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 400ms;
    top: 5px !important;
    position: relative;
    display: inline-block;
    right: 0 !important;
    left: 0 !important;
    width: calc(25% - 10px);
    text-align: center;
    vertical-align: middle;
    margin-top: -26px;
    font-size: 22px;
  }
  .product-button-wrap.hover input svg,
  .product-button-wrap.hover .count svg {
    width: 20px;
    height: 20px;
  }
  .product-button-wrap.hover .count {
    top: 8px !important;
    height: auto;
  }
  .product-button-wrap.hover .single_add_to_cart_button {
    position: relative;
    display: inline-block;
    right: 0 !important;
    left: 0 !important;
    vertical-align: text-top;
    width: 21%;
    margin-top: -22px;
  }
  .product-button-wrap.hover .count {
    transition-delay: 300ms;
  }
  .product-button-wrap.hover:hover {
    width: 90%;
  }
}
@media (hover: none) {
  .product-button-wrap.hover {
    width: 90%;
    margin: 15px auto 0 auto;
    position: relative;
    border-radius: 5px;
    padding: 10px 10px 10px 0px;
    text-align: center;
    bottom: 0;
  }
  .product-button-wrap.hover input,
  .product-button-wrap.hover .count {
    visibility: visible;
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 400ms;
    top: 5px !important;
    position: relative;
    display: inline-block;
    right: 0 !important;
    left: 0 !important;
    width: calc(25% - 10px);
    text-align: center;
    vertical-align: middle;
    margin-top: -26px;
    font-size: 22px;
  }
  .product-button-wrap.hover input svg,
  .product-button-wrap.hover .count svg {
    width: 20px;
    height: 20px;
  }
  .product-button-wrap.hover .count {
    top: 8px !important;
    height: auto;
  }
  .product-button-wrap.hover .single_add_to_cart_button {
    position: relative;
    display: inline-block;
    right: 0 !important;
    left: 0 !important;
    vertical-align: text-top;
    width: 25%;
    margin-top: -22px;
  }
  .product-button-wrap.hover .count {
    transition-delay: 300ms;
  }
  .product-button-wrap.hover:hover {
    width: 90%;
  }
}
.product-button-wrap.hover.loading .count {
  opacity: 0;
  visibility: hidden;
  transition: all 100ms ease;
  transition-delay: 10ms;
}
.product-button-wrap.hover.loading .text {
  opacity: 0;
  visibility: hidden;
  transition: all 100ms ease;
  transition-delay: 10ms;
}
.product-button-wrap.open {
  width: 100%;
  position: relative;
  border-radius: 0px 0px 5px 5px;
  margin-top: -45px;
  padding: 10px 10px 10px 0px;
  text-align: center;
}
.product-button-wrap.open input,
.product-button-wrap.open .count {
  visibility: visible;
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 400ms;
  top: 3px !important;
  position: relative;
  display: inline-block;
  right: 0 !important;
  left: 0 !important;
  width: calc(27% - 10px);
  min-height: 40px;
  text-align: center;
  vertical-align: middle;
  margin-top: -22px;
  font-size: 22px;
}
.product-button-wrap.open input svg,
.product-button-wrap.open .count svg {
  width: 20px;
  height: 20px;
}
.product-button-wrap.open .count {
  top: 6px !important;
  height: auto;
}
.product-button-wrap.open .single_add_to_cart_button {
  position: relative;
  display: inline-block;
  right: 0 !important;
  left: 0 !important;
  vertical-align: text-top;
  width: 21%;
  margin-top: -24px;
}
.product-button-wrap.open .single_add_to_cart_button:before {
  left: -158px;
}
.product-button-wrap.open .count {
  transition-delay: 300ms;
}
.product-button-wrap.open:hover {
  width: 100%;
}
.product-button-wrap.loading .count {
  opacity: 0;
  visibility: hidden;
  transition: all 100ms ease;
}
.product-button-wrap.loading .text {
  opacity: 0;
  visibility: hidden;
  transition: all 100ms ease;
}
@media (max-width: 767px) {
  .product-button-wrap.single {
    bottom: 0px !important;
  }
}

.woocommerce-variation-add-to-cart-disabled {
  pointer-events: none;
}
.woocommerce-variation-add-to-cart-disabled .product-button-wrap {
  background-color: #d8d8d8;
}

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: '';
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir='rtl'] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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

/*!
 * fullPage 3.0.3
 * https://github.com/alvarotrigo/fullPage.js
 *
 * @license GPLv3 for open source use only
 * or Fullpage Commercial License for commercial use
 * http://alvarotrigo.com/fullPage/pricing/
 *
 * Copyright (C) 2018 http://alvarotrigo.com/fullPage - A project by Alvaro Trigo
 */
html.fp-enabled,
.fp-enabled body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  /*Avoid flicker on slides transitions for mobile phones #336 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.fp-section {
  position: relative;
  /* Safari<=5 Android<=3 */
  /* <=28 */
  box-sizing: border-box;
}

.fp-slide {
  float: left;
}

.fp-slide,
.fp-slidesContainer {
  height: 100%;
  display: block;
}

.fp-slides {
  z-index: 1;
  height: 100%;
  overflow: hidden;
  position: relative;
  /* Safari<=6 Android<=4.3 */
  transition: all 0.3s ease-out;
}

.fp-section.fp-table,
.fp-slide.fp-table {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.fp-tableCell {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

.fp-slidesContainer {
  float: left;
  position: relative;
}

.fp-controlArrow {
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -khtml-user-select: none;
  /* webkit (konqueror) browsers */
  -ms-user-select: none;
  /* IE10+ */
  position: absolute;
  z-index: 4;
  top: 50%;
  cursor: pointer;
  width: 0;
  height: 0;
  border-style: solid;
  margin-top: -38px;
  transform: translate3d(0, 0, 0);
}

.fp-controlArrow.fp-prev {
  left: 15px;
  width: 0;
  border-width: 38.5px 34px 38.5px 0;
  border-color: transparent #fff transparent transparent;
}

.fp-controlArrow.fp-next {
  right: 15px;
  border-width: 38.5px 0 38.5px 34px;
  border-color: transparent transparent transparent #fff;
}

.fp-scrollable {
  overflow: hidden;
  position: relative;
}

.fp-scroller {
  overflow: hidden;
}

.iScrollIndicator {
  border: 0 !important;
}

.fp-notransition {
  transition: none !important;
}

#fp-nav {
  position: fixed;
  z-index: 100;
  margin-top: -32px;
  top: 50%;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
}

#fp-nav.fp-right {
  right: 17px;
}

#fp-nav.fp-left {
  left: 17px;
}

.fp-slidesNav {
  position: absolute;
  z-index: 4;
  opacity: 1;
  transform: translate3d(0, 0, 0);
  left: 0 !important;
  right: 0;
  margin: 0 auto !important;
}

.fp-slidesNav.fp-bottom {
  bottom: 17px;
}

.fp-slidesNav.fp-top {
  top: 17px;
}

#fp-nav ul,
.fp-slidesNav ul {
  margin: 0;
  padding: 0;
}

#fp-nav ul li,
.fp-slidesNav ul li {
  display: block;
  width: 14px;
  height: 13px;
  margin: 7px;
  position: relative;
}

.fp-slidesNav ul li {
  display: inline-block;
}

#fp-nav ul li a,
.fp-slidesNav ul li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
}

#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span,
#fp-nav ul li:hover a.active span,
.fp-slidesNav ul li:hover a.active span {
  height: 12px;
  width: 12px;
  margin: -6px 0 0 -6px;
  border-radius: 100%;
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  height: 4px;
  width: 4px;
  border: 0;
  background: #333;
  left: 50%;
  top: 50%;
  margin: -2px 0 0 -2px;
  transition: all 0.1s ease-in-out;
}

#fp-nav ul li:hover a span,
.fp-slidesNav ul li:hover a span {
  width: 10px;
  height: 10px;
  margin: -5px 0px 0px -5px;
}

#fp-nav ul li .fp-tooltip {
  position: absolute;
  top: -2px;
  color: #fff;
  font-size: 14px;
  font-family: arial, helvetica, sans-serif;
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
  display: block;
  opacity: 0;
  width: 0;
  cursor: pointer;
}

#fp-nav ul li:hover .fp-tooltip,
#fp-nav.fp-show-active a.active + .fp-tooltip {
  transition: opacity 0.2s ease-in;
  width: auto;
  opacity: 1;
}

#fp-nav ul li .fp-tooltip.fp-right {
  right: 20px;
}

#fp-nav ul li .fp-tooltip.fp-left {
  left: 20px;
}

.fp-auto-height.fp-section,
.fp-auto-height .fp-slide,
.fp-auto-height .fp-tableCell {
  height: auto !important;
}

.fp-responsive .fp-auto-height-responsive.fp-section,
.fp-responsive .fp-auto-height-responsive .fp-slide,
.fp-responsive .fp-auto-height-responsive .fp-tableCell {
  height: auto !important;
}

/*Only display content to screen readers*/
.fp-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.woocommerce-MyAccount-navigation ul {
  border-bottom: 1px solid #787878;
  margin-bottom: 20px !important;
  display: block;
  width: 100%;
}
.woocommerce-MyAccount-navigation ul li {
  display: inline-block;
  margin-right: 10px;
}
.woocommerce-MyAccount-navigation ul li a {
  text-decoration: none;
  font-weight: 700;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li:hover a {
  color: #bd9b60;
}

#piggy-check {
  background: #f8f8f8;
}
#piggy-check h4 {
  margin: 0;
  margin-bottom: 10px;
}
#piggy-check input {
  padding: 15px;
  border: 1px solid #d8d8d8;
  border-radius: 3px;
  font-size: 1rem;
}
#piggy-check input.submit {
  display: inline-block;
  margin-left: 20px;
  -webkit-appearance: none;
  background: #bd9b60;
  border-color: #bd9b60;
  color: #fff;
}
#piggy-check p {
  margin-top: 40px;
  font-size: 1.125rem;
  font-weight: 700;
}

/*
 * (Responsive) Full video container
 */
.full-video {
  height: 100vh;
}
.full-video .video-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  z-index: 0;
  min-width: 100vw;
  height: 100vh;
}
.full-video .video-container video {
  position: absolute;
  width: auto;
  top: 50%;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  max-width: none;
  transform: translate(-50%, -50%);
}
@media (max-width: 575px) {
  .full-video .video-container video {
    max-height: 100%;
  }
}
.full-video .video-container::after {
  content: '';
  position: absolute;
  background: rgba(39, 39, 39, 0.6);
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.usp {
  background: #231f20;
  color: #fff;
  height: 50px;
  position: relative;
  z-index: 10000;
  top: 40px;
}
.usp ul {
  text-align: center;
}
.usp ul li {
  display: inline-block;
  margin-right: 6%;
  line-height: 50px;
  font-size: 0.875rem;
}
.usp ul li:last-child {
  margin-right: 0;
}
.usp ul li svg {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  margin-right: 10px;
}
.usp a {
  position: absolute;
  right: 20px;
  top: 10px;
}
.usp a i {
  color: #fff;
  font-size: 2rem;
}
@media (max-width: 991px) {
  .usp ul li:nth-child(2),
  .usp ul li:last-child {
    display: none;
  }
  .usp a {
    right: 10px;
  }
}

/*
 * Cookie bar
 */
#cookie {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9;
  background: rgba(255, 255, 255, 0.8);
  padding: 30px 0;
  border-bottom: 1px solid #d8d8d8;
  border-top: 1px solid #d8d8d8;
  z-index: 9999999999;
}
#cookie .image {
  width: calc(20% - 10px);
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
}
#cookie .image img {
  width: 100%;
}
#cookie .text {
  width: calc(60% - 20px);
  display: inline-block;
}
#cookie .text a {
  text-decoration: none;
  font-weight: 600;
}
#cookie .close {
  vertical-align: top;
  display: inline-block;
  width: 15%;
  text-align: right;
}
@media (max-width: 991px) {
  #cookie .text,
  #cookie .image {
    width: 100%;
    display: block;
  }
  #cookie .image {
    width: 50%;
    margin: 0 auto 20px auto;
  }
  #cookie .close {
    width: 100%;
    display: block;
    text-align: left;
    margin-top: 20px;
  }
}

/*
 * WP paging styling
 */
.paging .page-numbers {
  list-style: none;
  margin: 0;
  padding: 0;
}
.paging .page-numbers li {
  float: left;
  margin-right: 10px;
}
.paging .page-numbers li:last-child {
  margin-right: 0;
}
.paging .page-numbers li span,
.paging .page-numbers li a {
  background: #fff;
  display: inline-block;
  padding: 10px;
  width: 50px;
  height: 50px;
  text-align: center;
  text-decoration: none;
  transition: background 400ms;
}
.paging .page-numbers li span.current,
.paging .page-numbers li span:hover,
.paging .page-numbers li a.current,
.paging .page-numbers li a:hover {
  background-color: #bd9b60;
  color: #fff;
}
.paging .page-numbers li span.next,
.paging .page-numbers li span.prev,
.paging .page-numbers li a.next,
.paging .page-numbers li a.prev {
  width: auto;
}

.paging.center .wrapper {
  text-align: center;
}
.paging.center .wrapper .page-numbers {
  margin: 0 auto;
  display: inline-block;
}

.paging.right .wrapper .page-numbers {
  float: right;
}

#hero {
  height: 460px;
  position: relative;
  clear: both;
}
@media (max-width: 1279px) {
  #hero {
    height: 400px;
  }
}
#hero .video-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  min-width: 100vw;
  height: 100%;
}
#hero .video-container video {
  position: absolute;
  width: auto;
  top: 50%;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  max-width: none;
  transform: translate(-50%, -50%);
}
#hero.full {
  height: calc(100vh - 50px);
}
@media (min-width: 992px) {
  #hero.full {
    background: #000000;
  }
}
#hero.full .overlay-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
#hero.full .overlay-text h1 {
  font-family: eloquent-jf-pro, serif;
  font-size: 8rem;
  font-weight: 400;
  color: #fff;
}
@media (max-width: 767px) {
  #hero.full .overlay-text h1 {
    font-size: 5rem;
  }
}
#hero.full .overlay-text .mobilebutton {
  display: none;
  max-width: 240px;
  margin: 0 auto;
}
@media (max-width: 991px) {
  #hero.full .overlay-text {
    width: 100%;
  }
  #hero.full .overlay-text h1 {
    font-size: 4rem;
    line-height: 1.2;
  }
  #hero.full .overlay-text .mobilebutton {
    display: block;
  }
  #hero.full .top {
    display: none;
  }
}
#hero.standard .overlay-text h1 {
  color: #fff;
  font-size: 4rem;
  position: relative;
  margin-bottom: 25px;
}
#hero.standard .overlay-text h1:after {
  content: ' ';
  display: block;
  width: 80px;
  bottom: 0;
  height: 3px;
  margin: 0 auto;
  background: #bd9b60;
}
#hero .scroll-down {
  text-decoration: none;
}
#hero .scroll-down .top {
  bottom: 0px;
  width: 280px;
  right: 0;
  border-radius: 8px 8px 0 0;
  background: #bd9b60;
  height: 70px;
  line-height: 70px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  text-align: left;
  position: absolute;
  padding-left: 35px;
  transition: all 250ms ease-in-out;
}
#hero .scroll-down .top .icon {
  width: 85px;
  border-radius: 0px 8px 0 0;
  height: 85px;
  right: 0;
  top: 0;
  background: #8c744b;
  position: absolute;
  text-align: center;
  padding-top: 5px;
}
#hero .scroll-down .top .icon svg {
  width: 25px;
  height: 25px;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 991px) {
  #hero .scroll-down .top {
    width: 140px;
  }
  #hero .scroll-down .top .icon {
    display: none;
  }
}

#bonbons {
  margin-bottom: 20px;
}
#bonbons ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
#bonbons ul > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(20px);
  margin-bottom: calc(20px);
  width: calc((100% / 1) - (20px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  #bonbons ul > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #bonbons ul > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #bonbons ul > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #bonbons ul > * {
    width: calc((100% / 4) - (20px * (4 - 1) / 4));
  }
  #bonbons ul > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  #bonbons ul > * {
    width: calc((100% / 4) - (20px * (4 - 1) / 4));
  }
  #bonbons ul > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  #bonbons ul > * {
    width: calc((100% / 5) - (20px * (5 - 1) / 5));
  }
  #bonbons ul > *:nth-child(5n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  #bonbons ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }
  @media (min-width: 576px) {
    #bonbons ul {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 768px) {
    #bonbons ul {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  @media (min-width: 992px) {
    #bonbons ul {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  @media (min-width: 1280px) {
    #bonbons ul {
      -ms-grid-columns: (1fr) [5];
      grid-template-columns: repeat(5, 1fr);
    }
  }
  #bonbons ul > * {
    width: 100%;
    margin: 0;
  }
}
#bonbons ul li {
  background: #fff;
  padding: 0 20px;
}
#bonbons ul li .product {
  position: relative;
  padding: 10px;
}
#bonbons ul li .product img {
  width: auto;
}
#bonbons ul li .product .product-count {
  display: block;
  position: relative;
  right: 0;
  margin-top: 0px;
  text-align: center;
  border-top: 1px solid #d8d8d8;
  padding-top: 20px;
}
#bonbons ul li .product .product-count .quantity-input-up {
  margin-left: -13px;
}
#bonbons ul li .product span {
  font-weight: 600;
  font-size: 1rem;
  color: #5d5e5e;
}
#bonbons ul li .product .product-info > span {
  line-height: 1;
  margin-bottom: 20px;
  display: inherit;
}
#bonbons ul li .product h4 {
  margin: 15px 0 0px 0;
}
#bonbons .progress-bar {
  width: 100%;
  height: 40px;
  border-radius: 20px;
  overflow: hidden;
  background: #d8d8d8;
  position: relative;
  transition: all 350ms ease;
  margin: 0 auto;
  margin-bottom: 20px;
}
#bonbons .progress-bar .current {
  position: absolute;
  left: 10px;
  top: 8px;
  color: #fff;
  z-index: 10;
  padding: 0 10px;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
}
#bonbons .progress-bar .progress {
  position: absolute;
  left: 0;
  width: 0%;
  height: 100%;
  background: #bd9b60;
  transition: width 400ms;
}
#bonbons .progress-bar .max {
  position: absolute;
  right: 10px;
  top: 8px;
  color: #fff;
  z-index: 10;
  padding: 0 10px;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
}
#bonbons .progress-bar.fixed {
  position: fixed;
  top: 100px;
  max-width: 320px;
  left: 20px;
  transform-style: preserve-3d;
  z-index: 12;
  transition: all 350ms ease;
  box-shadow: 0px 2px 10px 1px rgba(0, 0, 0, 0.2);
}
@media (max-width: 767px) {
  #bonbons .progress-bar.fixed {
    width: 90%;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: auto;
    bottom: 30px;
  }
}

.quantity {
  display: inline-block;
  margin-right: 25px;
}
.quantity input {
  font-size: 1.3rem;
  padding: 10px 10px;
  max-width: 70px;
  display: inline-block;
}

.product_cat-bonbonbox-vullen .product-header {
  height: auto !important;
  z-index: 10;
  position: relative;
}

.product_cat-bonbonbox-vullen .woocommerce-product-gallery,
.product_cat-bonbonbox-vullen .woocommerce-tabs,
.product_cat-bonbonbox-vullen .shop_attributes {
  display: none !important;
}

.product_cat-bonbonbox-vullen .summary {
  width: 100% !important;
}

.product_cat-bonbonbox-vullen .product-button-wrap {
  margin: 0 auto;
}
.product_cat-bonbonbox-vullen .product-button-wrap.disabled {
  background-color: #d8d8d8;
}
.product_cat-bonbonbox-vullen .product-button-wrap.disabled .single_add_to_cart_button {
  cursor: default;
}

.category-toggle {
  position: absolute;
  z-index: 9999999;
  right: 0px;
  top: 100px;
  width: 95px;
  height: 80px;
  background: #bd9b60;
  display: block;
  border-radius: 0px 0px 0px 9px;
  text-align: center;
  padding-top: 14px;
  cursor: pointer;
  transition: all 350ms ease;
  box-shadow: 0 2px 17px 0 rgba(27, 30, 36, 0.5);
  display: none;
}
.category-toggle:hover {
  background-color: #8c744b;
}
.category-toggle .icon svg {
  width: 30px;
  height: 30px;
  transform: rotate(90deg);
  transition: all 350ms ease;
}
.category-toggle span {
  color: #fff;
  font-weight: 600;
}
.category-toggle.open {
  right: 280px;
  top: 0;
  z-index: 99999999999999;
}
.category-toggle.open .icon svg {
  transform: rotate(-90deg);
}
.category-toggle.active {
  position: fixed;
  top: 80px;
}
@media (max-width: 1279px) {
  .category-toggle {
    top: 80px;
    display: block;
  }
}
@media (max-width: 767px) {
  .category-toggle {
    top: 80px;
  }
  .category-toggle.open {
    right: 70%;
  }
}

.site-content-home .category-toggle {
  position: absolute;
  top: 0;
}
.site-content-home .category-toggle.active {
  position: fixed;
  top: 80px;
}

.categories {
  position: fixed;
  z-index: 999;
  background: #fff;
  width: 280px;
  right: 0;
  top: 0;
  padding-top: 60px;
  box-shadow: 0 2px 18px 0 rgba(0, 0, 0, 0.2);
  transition: all 350ms ease;
  transform: translateX(0%);
  opacity: 1;
  height: 100%;
}
.categories .content {
  background: #fff;
  height: -webkit-fill-available;
  bottom: 0;
  padding: 40px 0 0 0;
  position: relative;
}
.categories .content .search {
  background-color: #f8f8f8;
  background-size: 25px;
  background-position: 14px 12px;
  border-radius: 200px;
  margin-bottom: 20px;
  width: 92%;
  margin-left: 10px;
}
.categories .content h2 {
  color: #231f20;
  font-size: 26px;
  font-weight: 600;
  padding: 0 20px !important;
}
.categories .content ul {
  margin-top: 25px;
  padding: 20px 0px;
  max-height: calc(100vh - 260px);
  overflow-y: scroll;
  position: relative;
}
.categories .content ul li {
  border-bottom: 1px solid #d8d8d8;
  position: relative;
  transition: all 550ms ease-in-out;
  overflow: hidden;
  padding: 5px 20px;
  max-height: 49px;
}
.categories .content ul li > a {
  text-decoration: none;
  color: #787878;
  padding: 10px 35px 10px 5px;
}
.categories .content ul li > a:after {
  content: ' ';
  display: block;
  width: 100%;
  height: 50px;
  position: absolute;
  top: 0;
  background: transparent;
}
.categories .content ul li > a:hover,
.categories .content ul li > a.active {
  color: #bd9b60;
}
.categories .content ul li.active {
  max-height: 5000px;
}
.categories .content ul li.active > a {
  color: #bd9b60;
}
.categories .content ul li svg {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  margin-left: 10px;
  cursor: pointer;
  transition: all 350ms ease-in-out;
  display: none;
  right: 25px;
  position: absolute;
  top: 15px;
}
.categories .content ul li > ul {
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  padding: 0px 5px;
  transition: all 350ms ease-in-out;
  transform: translateX(100%);
}
.categories .content ul li > ul li {
  padding: 0px 10px;
  border-bottom: none;
  max-height: 49px;
  font-size: 1.125rem;
}
.categories .content ul li > ul li svg {
  display: none;
}
.categories .content ul li > ul li:first-child {
  padding-top: 0;
}
.categories .content ul li > ul li:last-child {
  padding-bottom: 0;
}
.categories .content ul li.dropdown > svg {
  display: inline-block;
}
.categories .content ul li.dropdown.active > svg {
  transform: rotate(180deg);
}
.categories .content ul li.dropdown.active > ul {
  opacity: 1;
  visibility: visible;
  transform: translateX(0%);
}
@media (max-width: 1279px) {
  .categories {
    transform: translateX(100%);
    opacity: 0;
    padding-top: 0;
  }
  .categories .top {
    display: none;
  }
  .categories.open {
    position: fixed;
    z-index: 99999999999;
    transform: translateX(0%);
    opacity: 1;
  }
}
@media (max-width: 767px) {
  .categories {
    width: 70%;
    right: 0;
  }
}

.site-content-home {
  position: relative;
}
.site-content-home .categories {
  position: absolute;
  padding-top: 0px;
  top: 0;
}
.site-content-home .categories.active {
  position: fixed;
  padding-top: 70px;
}

.product-content-wrapper .categories {
  margin-top: 0px;
}
.product-content-wrapper .categories.active {
  top: 60px;
  padding-top: 0;
}

@media (max-width: 575px) {
  .site-content .category-toggle.open {
    right: 70%;
  }
}

@media (max-width: 991px) {
  #slider {
    padding-top: 100px;
  }
}

#slider .carousel {
  position: relative;
  overflow: hidden;
  margin-bottom: 40px;
}
#slider .carousel .slick-list {
  overflow: visible;
}
#slider .carousel .slick-btn {
  position: absolute;
  z-index: 2;
  width: 60px;
  height: 60px;
  background: #bd9b60;
  top: 50%;
  margin-top: -60px;
  outline: none;
  cursor: pointer;
  border-color: #bd9b60;
}
#slider .carousel .slick-btn:after {
  content: ' ';
  position: absolute;
  width: 100%;
  height: 100%;
  top: calc(50% - 16px);
  left: calc(50% - 16px);
  z-index: -1;
  background: url('../images/arrow-left.png') 0 0 no-repeat;
  background-size: 30px;
}
#slider .carousel .slick-btn.slick-next {
  right: 0;
  border-radius: 8px 0 0 8px;
}
#slider .carousel .slick-btn.slick-next:after {
  background: url('../images/arrow-right.png') 0 0 no-repeat;
  background-size: 30px;
}
#slider .carousel .slick-btn.slick-prev {
  left: 0;
  border-radius: 0 8px 8px 0;
}
@media (max-width: 991px) {
  #slider .carousel .slick-btn {
    top: auto;
    bottom: 10px;
    width: 40px;
    height: 40px;
  }
  #slider .carousel .slick-btn:after,
  #slider .carousel .slick-btn.slick-next:after {
    background-size: 20px;
    top: calc(50% - 11px);
    left: calc(50% - 11px);
  }
}
#slider .carousel .item {
  background: #d8d8d8;
  overflow: visible;
  position: relative;
  background-size: cover;
  background-position: center;
  outline: none;
}
#slider .carousel .item .carousel-label {
  position: absolute;
  bottom: -40px;
  margin: 0 auto;
  max-width: 650px;
  width: 95%;
  left: 0;
  right: 0;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 2px 17px 0 rgba(157, 157, 157, 0.5);
  padding: 20px;
  opacity: 0;
  transition: all 350ms ease-in-out;
  transform: translateY(-100%);
}
#slider .carousel .item .carousel-label h2 {
  color: #1b1e24;
  font-weight: 600;
  font-size: 26px;
}
#slider .carousel .item .carousel-label span {
  text-transform: uppercase;
  font-size: 600;
  padding-left: 15px;
  position: relative;
}
#slider .carousel .item .carousel-label span:after {
  content: ' ';
  display: inline-block;
  position: absolute;
  left: 0;
  top: 6px;
  width: 10px;
  height: 10px;
  background: #bd9b60;
  opacity: 0.6;
}
#slider .carousel .item.slick-active .carousel-label {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 400ms;
}

#slider .highlight-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
#slider .highlight-wrapper > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(40px);
  margin-bottom: calc(40px);
  width: calc((100% / 1) - (40px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  #slider .highlight-wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #slider .highlight-wrapper > * {
    width: calc((100% / 1) - (40px * (1 - 1) / 1));
  }
  #slider .highlight-wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #slider .highlight-wrapper > * {
    width: calc((100% / 2) - (40px * (2 - 1) / 2));
  }
  #slider .highlight-wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  #slider .highlight-wrapper > * {
    width: calc((100% / 2) - (40px * (2 - 1) / 2));
  }
  #slider .highlight-wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  #slider .highlight-wrapper > * {
    width: calc((100% / 2) - (40px * (2 - 1) / 2));
  }
  #slider .highlight-wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  #slider .highlight-wrapper {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 40px;
  }
  @media (min-width: 576px) {
    #slider .highlight-wrapper {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    #slider .highlight-wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    #slider .highlight-wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    #slider .highlight-wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #slider .highlight-wrapper > * {
    width: 100%;
    margin: 0;
  }
}
#slider .highlight-wrapper a {
  display: block;
  text-decoration: none;
}
#slider .highlight-wrapper a .highlight-block {
  text-align: center;
  position: relative;
  height: 320px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-direction: column;
  flex-direction: column;
  border-radius: 5px;
  overflow: hidden;
  background-size: cover;
}
#slider .highlight-wrapper a .highlight-block .overlay-text {
  position: relative;
  z-index: 10;
  text-transform: uppercase;
  letter-spacing: 2px;
}
#slider .highlight-wrapper a .highlight-block .overlay-text h3 {
  color: #fff;
}
#slider .highlight-wrapper a .highlight-block .overlay-text h4 {
  color: #fff;
  font-weight: 600;
}

section#blocks .block-title span {
  text-transform: uppercase;
  color: #787878;
  font-size: 1.2em;
  letter-spacing: 2px;
  display: block;
}

section#blocks .block-title h2 {
  text-transform: uppercase;
  color: #1b1e24;
  font-size: 2.8em;
  letter-spacing: 2px;
  padding: 0;
  margin: -5px 0 25px 0;
}

section#blocks .block-title.white span {
  color: #fff;
}

section#blocks .block-title.white h2 {
  color: #fff;
}

section#blocks .blocks-header {
  height: 500px;
  background-size: cover;
  background-color: #d8d8d8;
  margin-bottom: -80px;
  position: relative;
}
section#blocks .blocks-header .wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-direction: column;
  flex-direction: column;
}

section#blocks .block {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  height: 650px;
  background: #f8f8f8;
  position: relative;
}
section#blocks .block > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(0px);
  margin-bottom: calc(0px);
  width: calc((100% / 1) - (0px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  section#blocks .block > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  section#blocks .block > * {
    width: calc((100% / 1) - (0px * (1 - 1) / 1));
  }
  section#blocks .block > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  section#blocks .block > * {
    width: calc((100% / 1) - (0px * (1 - 1) / 1));
  }
  section#blocks .block > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  section#blocks .block > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  section#blocks .block > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  section#blocks .block > * {
    width: calc((100% / 2) - (0px * (2 - 1) / 2));
  }
  section#blocks .block > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  section#blocks .block {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 0px;
  }
  @media (min-width: 576px) {
    section#blocks .block {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    section#blocks .block {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 992px) {
    section#blocks .block {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    section#blocks .block {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  section#blocks .block > * {
    width: 100%;
    margin: 0;
  }
}
section#blocks .block .text {
  padding: 65px;
  position: relative;
}
section#blocks .block .image {
  background: #5d5e5e;
  background-size: cover;
  background-position: center;
}
section#blocks .block .block-btn {
  display: block;
  position: absolute;
  width: 100px;
  height: 100px;
  background: #fff;
  box-sizing: border-box;
  right: -50px;
  text-align: center;
  border-radius: 100%;
  top: calc(50% - 50px);
  text-decoration: none;
  transition: all 350ms ease-in-out;
  box-shadow: 0 2px 18px 0 rgba(36, 36, 36, 0.295);
}
section#blocks .block .block-btn span {
  color: #bba391;
  text-transform: uppercase;
  font-size: 1.3em;
  font-weight: 600;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -15px;
}
section#blocks .block .block-btn:after {
  content: ' ';
  width: 84px;
  height: 84px;
  border: 2px solid #bba391;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-radius: 100%;
  top: calc(50% - 44.5px);
}
section#blocks .block .block-btn:hover {
  background: #bba391;
}
section#blocks .block .block-btn:hover span {
  color: #fff;
}
section#blocks .block .block-btn:hover:after {
  border-color: #fff;
}
@media (max-width: 1559px) {
  section#blocks .block {
    height: 100%;
  }
  section#blocks .block .text {
    padding: 35px 55px;
  }
  section#blocks .block .text h2 {
    font-size: 2em;
  }
}
@media (min-width: 992px) {
  @supports (display: grid) {
    section#blocks .block {
      grid-template-areas: 'left right';
    }
    section#blocks .block.block-right .image {
      grid-area: left;
    }
    section#blocks .block.block-right .block-btn {
      right: inherit;
      left: -50px;
    }
  }
}
@media (max-width: 991px) {
  section#blocks .block {
    margin-bottom: 20px;
  }
  section#blocks .block .block-btn {
    top: inherit;
    bottom: -50px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  section#blocks .block .image {
    height: 320px;
    width: 100%;
  }
  section#blocks .block .text {
    padding: 20px;
  }
  section#blocks .block .text h2 {
    font-size: 1.6em;
    letter-spacing: 1px;
  }
}

#woocommerce.products .woocommerce-notices-wrapper {
  display: none;
}

section.products {
  padding-top: 0;
  background: #f8f8f8;
}
section.products .term-description {
  margin-bottom: 40px;
}
section.products .term-description p {
  font-size: 1.125rem;
}

.reset_variations {
  display: none;
}

.woocommerce-Price-currencySymbol {
  display: none;
}

ul.products {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
ul.products > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(40px);
  margin-bottom: calc(40px);
  width: calc((100% / 1) - (40px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  ul.products > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  ul.products > * {
    width: calc((100% / 2) - (40px * (2 - 1) / 2));
  }
  ul.products > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  ul.products > * {
    width: calc((100% / 2) - (40px * (2 - 1) / 2));
  }
  ul.products > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  ul.products > * {
    width: calc((100% / 3) - (40px * (3 - 1) / 3));
  }
  ul.products > *:nth-child(3n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  ul.products > * {
    width: calc((100% / 4) - (40px * (4 - 1) / 4));
  }
  ul.products > *:nth-child(4n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  ul.products {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 40px;
  }
  @media (min-width: 576px) {
    ul.products {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 768px) {
    ul.products {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    ul.products {
      -ms-grid-columns: (1fr) [3];
      grid-template-columns: repeat(3, 1fr);
    }
  }
  @media (min-width: 1280px) {
    ul.products {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  ul.products > * {
    width: 100%;
    margin: 0;
  }
}
ul.products li {
  background: #fff;
  padding-bottom: 20px;
  position: relative;
  min-width: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}
ul.products li .description {
  display: none;
}
ul.products li .img-holder {
  height: 0;
  padding-top: 72%;
  overflow: hidden;
  position: relative;
}
ul.products li .img-holder img {
  position: absolute;
  top: 36%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  max-width: 72% !important;
  max-height: calc(100% - 50px);
  border: 0;
  margin: 25px auto;
}
ul.products li a {
  text-decoration: none;
}
ul.products li h3 {
  border-bottom: 1px solid #d8d8d8;
  position: relative;
  box-shadow: none !important;
  text-align: center;
  color: #111111;
  height: 45px;
  font-size: 1.125rem;
  line-height: 1.2;
  max-width: 80%;
  font-weight: 600;
  width: 100%;
  padding: 0;
  margin: 0 10%;
  text-transform: none;
  transition: all 350ms ease;
}
ul.products li h3 a {
  padding: 10px 0;
  display: inline-block;
  position: absolute;
  max-width: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
}
ul.products li .price {
  color: #bd9b60;
  font-weight: 600;
  padding: 0 20px;
  font-size: 2.1rem;
  line-height: 2.1rem;
  font-weight: 700;
}
ul.products li .variations_form {
  padding: 0px 20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex: auto;
  flex: auto;
}
@supports (display: grid) {
  ul.products li .variations_form {
    -ms-flex: 1;
    flex: 1;
  }
}
ul.products li .variations_form table {
  margin-top: auto;
}
ul.products li .variations label,
ul.products li .variations .reset_variations {
  display: none;
}
ul.products li .variations select {
  background-color: transparent;
  border: 0;
  padding: 0;
  font-weight: 600;
  font-size: 0.9rem;
}
@media (max-width: 767px) {
  ul.products li .variations select {
    font-size: 1.1rem;
    width: 100%;
  }
}
ul.products li .single_variation_wrap .woocommerce-variation-availability {
  display: none;
}
ul.products li form {
  position: relative;
  padding: 10px;
}
ul.products li form .price {
  padding: 0;
  display: inline-block;
}
ul.products li .edit-product,
ul.products li .fpd-catalog-customize {
  background: url('../images/bonbon-box.svg') no-repeat;
  background-size: 30px;
  background-position: right 17px center;
  padding: 15px 50px 20px 15px;
  background-color: #bd9b60;
  border-radius: 6px 0px 0px 6px;
  width: 55px;
  height: 60px;
  position: absolute;
  right: 0;
  border: none;
  bottom: 18px;
  overflow: hidden;
  text-indent: -1000px;
}
ul.products li .edit-product:hover,
ul.products li .fpd-catalog-customize:hover {
  transition: all 400ms;
  text-indent: -10px;
  width: 210px;
}
ul.products li .fpd-catalog-customize {
  background-image: url('../images/cake-birthday.svg');
}
ul.products li .description {
  padding: 10px;
}
@media (max-width: 767px) {
  ul.products li .variations_form {
    padding-bottom: 80px;
  }
  ul.products li .woocommerce-variation-add-to-cart-enabled .product-button-wrap,
  ul.products li .woocommerce-variation-add-to-cart-disabled .product-button-wrap {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  ul.products li .variations_button {
    margin-top: auto;
  }
}
@media (hover: none) {
  ul.products li .variations_form {
    padding-bottom: 80px;
  }
  ul.products li .woocommerce-variation-add-to-cart-enabled .product-button-wrap,
  ul.products li .woocommerce-variation-add-to-cart-disabled .product-button-wrap {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  ul.products li .variations_button {
    margin-top: auto;
  }
}

#woocommerce {
  min-height: 550px;
}

.product-content-wrapper .categories .scroll-down {
  display: none !important;
}

.out-of-stock {
  font-size: 1rem;
  padding-left: 10px;
}

.woocommerce-tabs h4 {
  font-size: 1.25em;
  font-weight: 700;
  color: #1b1e24;
  margin-bottom: 5px;
}

.woocommerce-tabs p {
  font-size: 1.125rem;
}

.woocommerce-tabs li {
  font-size: 1.125rem;
}

.fancy .fpd-container {
  margin: 0 auto;
  margin-top: 40px;
}

.filter-allergenen {
  padding-top: 30px;
}
.filter-allergenen p {
  display: block;
  font-size: 1rem;
  background: #fff;
  border-radius: 35px;
  box-shadow: 0 2px 18px 0 rgba(0, 0, 0, 0.2);
  margin-top: 0px;
  padding: 5px 20px;
}
.filter-allergenen p .fas {
  margin-right: 5px;
}
.filter-allergenen p span {
  font-weight: 600;
  color: #bd9b60;
  cursor: pointer;
}

.wccpf-fields-container {
  padding: 0 20px;
}
.wccpf-fields-container .wccpf_label,
.wccpf-fields-container .wccpf-validation-message {
  display: none;
}

@media (max-width: 767px) {
  .woocommerce-message .button,
  .woocommerce-message footer .kk-summary-company-url a,
  footer .kk-summary-company-url .woocommerce-message a {
    font-size: 0.875rem;
    padding: 10px;
    display: block;
  }
}

.taart-tekst {
  padding: 0 20px;
  display: none;
}
.taart-tekst input {
  padding: 10px;
  border-color: #d8d8d8;
}

form.tekst-open {
  margin-top: 30px;
  position: relative !important;
}

.woocommerce-variation-add-to-cart > .taart-tekst {
  padding: 0;
  width: 250px;
  position: absolute;
  top: -50px;
}

.product-breadcrumb {
  margin-top: 120px;
}

@media (max-width: 1279px) {
  .product-header {
    padding-right: 15px;
  }
}

#woocommerce .product-header {
  background-color: #f8f8f8;
  background-size: 400px;
  background-repeat: no-repeat;
  background-position: right;
  padding-bottom: 50px;
  height: auto;
}
#woocommerce .product-header .woocommerce-variation-add-to-cart {
  margin-top: -35px;
}
#woocommerce .product-header .woocommerce-variation-add-to-cart .product-button-wrap {
  width: 250px;
  z-index: 7;
  padding-top: 15px;
}
#woocommerce .product-header .woocommerce-variation-price {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.8;
  margin-top: 25px;
}
#woocommerce .product-header .stock {
  /* display: none; */
}
#woocommerce .product-header .quantity input {
  display: none;
}
@media (max-width: 767px) {
  #woocommerce .product-header {
    height: auto;
    background-position: 300px;
  }
}
@media (max-width: 419px) {
  #woocommerce .product-header .variations {
    width: 100% !important;
  }
  #woocommerce .product-header .woocommerce-variation-add-to-cart {
    position: relative;
  }
  #woocommerce .product-header .product-button-wrap {
    width: 100% !important;
    z-index: 7;
  }
}

#woocommerce .product .category-toggle {
  display: none !important;
}

#woocommerce .product .onsale {
  position: absolute;
  background: #bd9b60;
  color: #fff;
  padding: 15px;
  bottom: 0px;
  left: 0;
  border-radius: 20px;
  font-weight: 700;
}
@media (max-width: 767px) {
  #woocommerce .product .onsale {
    display: none;
  }
}

#woocommerce .product .woocommerce-product-gallery {
  width: calc(50% - 20px);
  display: inline-block;
  vertical-align: top;
  margin-top: 10%;
}

#woocommerce .product .tabs {
  width: 100%;
  border-bottom: 2px solid #d8d8d8;
  margin-top: 50px !important;
}
#woocommerce .product .tabs li {
  display: inline-block;
  margin-bottom: -2px;
  margin-right: 20px;
  border-bottom: 2px solid #d8d8d8;
  transition: all 350ms ease-in-out;
}
#woocommerce .product .tabs li a {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 700;
  color: #5d5e5e;
}
#woocommerce .product .tabs li.active {
  border-bottom: 2px solid #bd9b60;
}
#woocommerce .product .tabs li.active a {
  color: #1b1e24;
}
@media (max-width: 575px) {
  #woocommerce .product .tabs {
    border-bottom: none;
  }
  #woocommerce .product .tabs li {
    border-bottom: 0px;
    border-left: 2px solid #d8d8d8;
    display: block;
    padding: 15px 15px;
    margin-left: 0;
  }
  #woocommerce .product .tabs li.active {
    border-left: 2px solid #bd9b60;
    border-bottom: none;
  }
}

#woocommerce .product .woocommerce-Tabs-panel--description {
  margin-top: 25px;
}
#woocommerce .product .woocommerce-Tabs-panel--description h2 {
  font-size: 1.2em;
  font-weight: 700;
  color: #1b1e24;
  margin-bottom: 5px;
}
#woocommerce .product .woocommerce-Tabs-panel--description p {
  font-size: 1.2rem;
  line-height: 2rem;
}

#woocommerce .product .summary {
  width: calc(50% - 20px);
  display: inline-block;
}
#woocommerce .product .summary h1 {
  color: #111111;
  font-size: 4rem;
  line-height: 1.5;
  position: relative;
  margin-bottom: 25px;
}
#woocommerce .product .summary h1:after {
  content: ' ';
  display: block;
  width: 80px;
  bottom: 0;
  height: 3px;
  background: #bd9b60;
}
@media (max-width: 767px) {
  #woocommerce .product .summary h1 {
    font-size: 2.5rem;
  }
}
#woocommerce .product .summary .price {
  color: #bd9b60;
  font-size: 2.4rem;
}
#woocommerce .product .summary .label {
  display: none;
}
#woocommerce .product .summary .product_meta {
  margin-bottom: 20px;
  display: block;
  color: #231f20;
  font-weight: 600;
}
#woocommerce .product .summary .product_meta .sku_wrapper {
  display: none;
}
#woocommerce .product .summary form.cart .product-button-wrap {
  width: 250px;
  margin-top: 10px;
  z-index: 7;
  min-height: 60px;
}
#woocommerce .product .summary form.cart .product-button-wrap.rounded {
  border-radius: 6px;
}
#woocommerce .product .summary form.cart .woocommerce-product-details__short-description {
  color: #231f20;
  font-weight: 600;
  margin-bottom: 25px;
  display: block;
}
#woocommerce .product .summary form.cart .woocommerce-product-details__short-description p {
  font-size: 1rem;
}
#woocommerce .product .summary .variations {
  background: #fff;
  border-radius: 6px;
  padding: 0;
  box-shadow: 0 0 14px 0 rgba(154, 154, 154, 0.5);
  width: 250px;
  margin-bottom: -4px;
  z-index: 10;
  position: relative;
}
#woocommerce .product .summary .variations select {
  width: 100%;
  border: none;
  font-size: 1rem;
  color: #111111;
  font-weight: 600;
  border-bottom: 1px solid #d8d8d8;
  border-radius: 0px;
  padding: 15px 10px;
}
#woocommerce .product .summary .variations tr:last-child select {
  border-bottom: none;
}
#woocommerce .product .summary .variations .reset_variations {
  display: none !important;
}
#woocommerce .product .summary .stock {
  color: #d9534f;
  margin-bottom: 15px;
  font-size: 1.1rem;
  font-weight: 600;
}
#woocommerce .product .summary .stock.in-stock {
  color: #5cb85c;
}

#woocommerce .product.product-type-simple .product_meta {
  margin-bottom: 40px;
}

@media (max-width: 767px) {
  #woocommerce .product .woocommerce-product-gallery {
    width: 100%;
  }
  #woocommerce .product .summary {
    width: 100%;
  }
}

#woocommerce .product.product_cat-fototaart .summary,
#woocommerce .product.product_cat-fotogebak .summary,
#woocommerce .product.product_cat-fotobonbons .summary {
  width: 100%;
}

#woocommerce .product.product_cat-fototaart form,
#woocommerce .product.product_cat-fotogebak form,
#woocommerce .product.product_cat-fotobonbons form {
  display: none;
  margin-top: 40px;
}

#woocommerce .product.product_cat-fototaart #fpd-ready,
#woocommerce .product.product_cat-fotogebak #fpd-ready,
#woocommerce .product.product_cat-fotobonbons #fpd-ready {
  margin-top: 40px;
}

.amount.sale {
  text-decoration: line-through;
  margin-right: 10px;
  opacity: 0.5;
}

.cent {
  font-size: 0.9rem;
  display: inline-block;
  vertical-align: super;
  margin-left: -3px;
  margin-top: 4px;
}

.product-count .price {
  font-size: 1.1rem !important;
}
.product-count .price .cent {
  font-size: 0.7rem;
}

.related.products,
.upsells.products {
  border-top: 1px solid #d8d8d8;
  padding-top: 0px;
  margin-top: 60px;
}
.related.products h2,
.upsells.products h2 {
  text-transform: uppercase;
  color: #231f20;
  font-size: 1.6rem;
  letter-spacing: 1px;
  margin: 30px 0;
}

.variations .select {
  background: none;
  border: none;
  font-size: 1rem;
  padding: 3px 0px !important;
  cursor: pointer;
  transition: 350ms ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.variations .select .fas {
  margin-left: 5px;
}
.variations .select:hover {
  opacity: 0.8;
}

.variations .select-type {
  display: none;
  position: absolute;
  z-index: 99999;
  background: #fff;
  font-size: 1.1rem;
  width: calc(100% - 20px);
  box-shadow: 0px 2px 10px 1px rgba(17, 17, 17, 0.1);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: all 350ms ease;
}
.variations .select-type.activer {
  z-index: 999999999;
}
.variations .select-type select {
  display: none;
}
.variations .select-type li {
  box-shadow: none;
  padding: 10px;
  font-size: 1.1rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  transition: all 350ms ease;
}
.variations .select-type li::after {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f00c';
  font-size: 15px;
  transition: all 350ms ease;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
}
.variations .select-type li:hover {
  background-color: #f8f8f8;
}
.variations .select-type li:hover::after {
  opacity: 0.6;
}
.variations .select-type li.active {
  background-color: #f8f8f8;
}
.variations .select-type li.active::after {
  opacity: 1;
  color: #bd9b60;
}

@media (max-width: 991px) {
  .product-header {
    padding-right: 0;
  }
}

.product-header .single .summary .variations {
  border-radius: 6px 6px 0px 0px !important;
}
.product-header .single .summary .variations tr .select {
  font-size: 1.2rem;
  padding: 10px 15px !important;
  border-bottom: 1px solid #d8d8d8;
}
.product-header .single .summary .variations tr:last-child .select {
  border-bottom: none;
}
.product-header .single .summary .variations .select-type {
  z-index: 99999999 !important;
}

.woocommerce-product-details__short-description {
  margin-bottom: 25px;
}

p.price {
  font-size: 2rem;
  font-weight: 700;
}

.product_meta {
  display: none !important;
}

.fpd-product-designer-wrapper {
  padding-top: 40px;
}
@media (max-width: 991px) {
  .fpd-product-designer-wrapper {
    max-width: 60% !important;
    margin: 0 auto;
  }
}
@media (max-width: 767px) {
  .fpd-product-designer-wrapper {
    max-width: 100% !important;
  }
}
.fpd-product-designer-wrapper .fpd-topbar .fpd-navigation > div {
  max-width: 33.33%;
}
.fpd-product-designer-wrapper .fpd-topbar .fpd-navigation > div .fpd-label {
  white-space: normal;
}

#woocommerce .fpd-modal-overlay.fpd-fullscreen > .fpd-modal-wrapper {
  width: 80%;
  height: 80%;
  top: 50%;
  overflow: auto;
  transform: translate(-50%, -50%);
}
#woocommerce .fpd-modal-overlay.fpd-fullscreen > .fpd-modal-wrapper .fpd-container {
  width: 100% !important;
}
#woocommerce .fpd-modal-overlay.fpd-fullscreen > .fpd-modal-wrapper .fpd-modal-price {
  display: none;
}
#woocommerce .fpd-modal-overlay.fpd-fullscreen > .fpd-modal-wrapper .fpd-done {
  background-color: #bd9b60;
  text-transform: none;
  border-radius: 6px;
  font-size: 1.125rem;
  padding: 10px 20px;
  float: right;
}

#fpd-start-customizing-button {
  background-color: #bd9b60;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  width: 250px;
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 40px !important;
}
#fpd-start-customizing-button:hover {
  background-color: #950d25;
}

.breadcrumbs {
  background: #fff;
  position: relative;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  padding: 16px 0px;
  z-index: 5;
  font-size: 1.1rem;
  color: #5d5e5e;
}
.breadcrumbs .fas {
  font-size: 15px;
}
.breadcrumbs .btn-outline {
  display: inline-block;
  width: 80px;
  padding-left: 0;
  padding-right: 0;
  border: none;
  color: #1b1e24;
  font-weight: 600;
  font-size: 1.2rem;
}
.breadcrumbs .btn-outline:hover,
.breadcrumbs .btn-outline:focus,
.breadcrumbs .btn-outline:active {
  background: none;
  border: none;
}
.breadcrumbs a {
  text-decoration: none;
  display: inline-block;
  margin: 0 16px;
  color: #5d5e5e;
}
.breadcrumbs a:first-child {
  margin-left: 0;
}
.breadcrumbs a:hover {
  color: #bd9b60;
}
.breadcrumbs .current {
  margin-left: 20px;
  opacity: 1;
  color: #231f20;
  font-weight: 700;
}
.breadcrumbs #crumbs {
  display: inline-block;
}
.breadcrumbs .woocommerce-ordering {
  position: absolute;
  right: 180px;
  top: 0px;
}
.breadcrumbs .woocommerce-ordering select {
  background: url('../images/caret-down-solid.svg') no-repeat right 15px center;
  background-size: 10px;
  color: #5d5e5e;
  border: none;
  font-size: 1rem;
  font-weight: 600;
  padding: 0 20px 0 0;
  direction: rtl;
}
.breadcrumbs .woocommerce-ordering .fas {
  color: #5d5e5e;
}
@media (max-width: 767px) {
  .breadcrumbs .woocommerce-ordering {
    position: absolute;
    right: 180px;
    top: -3px;
  }
}
@media (max-width: 419px) {
  .breadcrumbs .woocommerce-ordering {
    margin-right: 0px !important;
    right: 20px !important;
  }
}
.breadcrumbs .woocommerce-filtering {
  position: absolute;
  z-index: 60;
  right: 0;
  top: 0px;
}
.breadcrumbs .woocommerce-filtering a {
  cursor: pointer;
}
.breadcrumbs .woocommerce-filtering #allergenen-filter {
  font-size: 1.1rem;
  font-weight: 600;
}
.breadcrumbs .woocommerce-filtering #allergenen-filter .fas {
  vertical-align: text-top;
  font-size: 1.1rem;
  margin-left: 5px;
  margin-top: -2px;
  transition: all 350ms ease;
}
.breadcrumbs .woocommerce-filtering #allergenen-filter.active {
  color: #bd9b60;
}
.breadcrumbs .woocommerce-filtering #allergenen-filter.active .fas {
  transform: rotate(180deg);
  margin-top: 5px;
}
@media (max-width: 767px) {
  .breadcrumbs .woocommerce-filtering #allergenen-filter {
    vertical-align: sub;
  }
  .breadcrumbs .woocommerce-filtering #allergenen-filter .fas {
    margin-top: -2px;
    vertical-align: top !important;
    font-size: 1.3rem;
  }
}
.breadcrumbs .woocommerce-filtering form {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  background: #fff;
  transition: all 350ms ease;
  border-radius: 8px;
  top: 40px;
  right: 0;
  padding: 15px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.5);
  width: 350px;
  z-index: 997;
}
.breadcrumbs .woocommerce-filtering form ul {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  text-align: left;
}
.breadcrumbs .woocommerce-filtering form ul li {
  color: #231f20;
  margin-bottom: 10px;
  font-size: 1rem;
  padding-right: 10px;
}
.breadcrumbs .woocommerce-filtering form ul li input[type='checkbox'] {
  display: none;
}
.breadcrumbs .woocommerce-filtering form ul li label {
  cursor: pointer;
  position: relative;
  padding-left: 25px;
}
.breadcrumbs .woocommerce-filtering form ul li label img {
  width: 18px;
  height: 20px;
  transition: all 350ms ease;
  vertical-align: top;
  margin-right: 6px;
  filter: brightness(0%);
  position: absolute;
  left: 0;
  margin-top: 6px;
}
.breadcrumbs .woocommerce-filtering form ul li label span {
  display: inline-block;
  line-height: 1.2rem;
}
.breadcrumbs .woocommerce-filtering form ul li input[type='checkbox']:checked + label {
  color: #bd9b60;
  font-weight: 600;
}
.breadcrumbs .woocommerce-filtering form ul li input[type='checkbox']:checked + label img {
  filter: brightness(100%);
}
.breadcrumbs .woocommerce-filtering form.active {
  visibility: visible;
  opacity: 1;
}
.breadcrumbs .woocommerce-filtering form .button,
.breadcrumbs .woocommerce-filtering form footer .kk-summary-company-url a,
footer .kk-summary-company-url .breadcrumbs .woocommerce-filtering form a {
  margin-top: 15px;
}
@media (max-width: 767px) {
  .breadcrumbs .woocommerce-filtering form {
    width: 300px;
    left: -150px;
    margin: 0 auto;
  }
}
@media (max-width: 1279px) {
  .breadcrumbs .filter-btns {
    padding-right: 80px;
  }
}
@media (max-width: 767px) {
  .breadcrumbs .filter-btns {
    padding-right: 0px;
  }
}
.breadcrumbs .filter-btns {
  text-align: right;
}
@media (max-width: 767px) {
  .breadcrumbs .filter-btns {
    text-align: left;
  }
}
@media (max-width: 1279px) {
  .breadcrumbs .woocommerce-ordering {
    position: relative;
    display: inline-block;
    right: 0;
    margin-right: 25px;
  }
  .breadcrumbs .woocommerce-ordering select {
    font-size: 1rem;
  }
  .breadcrumbs .woocommerce-filtering {
    position: relative;
    display: inline-block;
    right: 0;
  }
  .breadcrumbs .woocommerce-filtering #allergenen-filter {
    font-size: 1.2rem;
  }
  .breadcrumbs .woocommerce-filtering #allergenen-filter .fas {
    vertical-align: unset;
    margin-left: 8px;
  }
  .breadcrumbs #crumbs {
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .breadcrumbs {
    padding-right: 15px;
  }
  .breadcrumbs a {
    margin: 0 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: text-bottom;
    white-space: nowrap;
    max-width: 30px;
  }
  .breadcrumbs a:first-child {
    max-width: 100%;
  }
  .breadcrumbs .current {
    margin-left: 5px;
    vertical-align: top;
  }
  .breadcrumbs .woocommerce-ordering {
    right: auto;
    left: 0;
  }
  .breadcrumbs .woocommerce-ordering select.orderby {
    direction: ltr;
    width: 150px;
  }
  .breadcrumbs .woocommerce-filtering {
    width: 100%;
  }
  .breadcrumbs .woocommerce-filtering a#allergenen-filter {
    width: 150px;
    position: relative;
  }
  .breadcrumbs .woocommerce-filtering a#allergenen-filter i {
    position: absolute;
    right: 14px;
  }
  .breadcrumbs .woocommerce-filtering form {
    left: -10px;
  }
}

.product-breadcrumb .breadcrumbs {
  z-index: 997;
}

#fp-nav ul li a span {
  background: #fff;
}

#fp-nav ul li a.active span {
  background: #bd9b60;
}

.history-button {
  position: fixed;
  bottom: 20px;
  right: 50px;
  z-index: 100;
}
.history-button a {
  display: block;
  width: 55px;
  height: 55px;
  border-radius: 100%;
  color: #fff;
  text-align: center;
  position: relative;
  margin-bottom: 30px;
  border: 2px solid #fff;
  box-sizing: border-box;
  transition: all 350ms ease;
}
.history-button a svg {
  width: 60%;
  height: 60%;
  margin-top: 9px;
  transition: all 350ms ease;
}
.history-button a.down svg {
  margin-top: 11px;
}
.history-button a:first-child svg {
  transform: rotate(180deg);
}
.history-button a:hover {
  background: #fff;
}
.history-button a:hover svg {
  filter: brightness(10%);
}
.history-button a.hide {
  pointer-events: none;
  opacity: 0.3;
}
@media (max-width: 767px) {
  .history-button {
    bottom: 80px;
    right: 20px;
  }
}

#fp-nav {
  display: none;
}

.history-menu {
  position: fixed;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99;
}
.history-menu ul li {
  margin-bottom: 20px;
  position: relative;
}
.history-menu ul li a {
  color: #fff;
  text-decoration: none;
  font-family: eloquent-jf-pro, serif;
  font-weight: 400;
  text-shadow: 0px 0px 10px rgba(27, 30, 36, 0.5);
}
.history-menu ul li a span {
  width: 15px;
  height: 15px;
  margin-right: 5px;
  border-radius: 100%;
  display: inline-block;
  vertical-align: middle;
  border: 1px solid #fff;
  transition: all 350ms ease;
}
.history-menu ul li:after {
  content: ' ';
  width: 1px;
  height: 25px;
  display: block;
  position: absolute;
  bottom: -21px;
  margin-left: 6px;
  background: #fff;
  opacity: 0.6;
}
.history-menu ul li:last-child:after {
  display: none;
}
.history-menu ul li.active a {
  color: #bd9b60;
}
.history-menu ul li.active a span {
  background: #bd9b60;
  border: 1px solid #bd9b60;
  margin-right: 15px;
}
@media only screen and (max-height: 1000px) {
  .history-menu {
    transform: translateY(-40%);
  }
  .history-menu ul li {
    line-height: 0.6;
  }
  .history-menu ul li a {
    font-size: 1.1rem;
  }
}
@media (max-width: 1559px) {
  .history-menu {
    transform: translateY(-40%);
  }
  .history-menu ul li {
    line-height: 0.6;
  }
  .history-menu ul li a {
    font-size: 1.1rem;
  }
}
@media (max-width: 767px) {
  .history-menu {
    display: none;
    transform: translateY(-50%);
    bottom: 0px;
    top: inherit;
    width: 100%;
  }
  .history-menu ul {
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .history-menu ul li {
    display: inline-block;
    width: 25%;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  .history-menu ul li:after {
    width: 20px;
    height: 1px;
  }
  .history-menu ul li a {
    text-align: center;
    position: relative;
  }
  .history-menu ul li a span {
    display: block;
    margin: 10px auto;
  }
  .history-menu ul li:after {
    display: none;
  }
  .history-menu ul li.active a span {
    margin: 10px auto;
  }
}

#fullpage .section {
  position: relative;
}
#fullpage .section .history-background {
  overflow: hidden;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
#fullpage .section .history-background .color {
  width: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  height: 100%;
  background: #1b1e24;
}
#fullpage .section .history-background .image {
  width: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  background-size: cover;
  background-position: center;
  filter: blur(15px);
  transform: scale(1.2);
  transition: transform 7s ease-out;
}
@media (max-width: 1559px) {
  #fullpage .section .history-background .color {
    width: 70%;
  }
}
@media (max-width: 1279px) {
  #fullpage .section .history-background .color {
    width: 100%;
    height: 70%;
    display: block;
    position: relative;
  }
  #fullpage .section .history-background .image {
    width: 100%;
    height: 30%;
    display: block;
    position: relative;
  }
}
#fullpage .section .content {
  position: relative;
  display: block;
}
#fullpage .section .content .wrapper {
  left: 130px;
  width: 70%;
  position: relative;
}
#fullpage .section .content .wrapper .left,
#fullpage .section .content .wrapper .right {
  overflow: auto;
}
#fullpage .section .content .wrapper .left {
  width: calc(50% - 40px);
  display: inline-block;
  text-align: right;
  position: relative;
  vertical-align: top;
  margin-right: 40px;
}
#fullpage .section .content .wrapper .left h1 {
  color: #fff;
  font-family: eloquent-jf-pro, serif;
  font-weight: lighter;
  letter-spacing: 3px;
  font-size: 8rem;
  opacity: 0;
  margin: 0;
  transform: translateY(-100%);
  transition: all 550ms ease;
  transition-delay: 500ms;
}
#fullpage .section .content .wrapper .left img {
  opacity: 0;
  transform: translateY(-100%);
  transition: all 1050ms ease;
  transition-delay: 600ms;
}
#fullpage .section .content .wrapper .right {
  max-height: 700px;
  width: calc(50% - 20px);
  display: inline-block;
  overflow-x: hidden;
  overflow-y: scroll;
  padding-right: 15px;
}
#fullpage .section .content .wrapper .right::-webkit-scrollbar {
  width: 5px;
  margin-left: 20px;
}
#fullpage .section .content .wrapper .right::-webkit-scrollbar-track {
  background: #1b1e24;
  border-radius: 10px;
}
#fullpage .section .content .wrapper .right::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.5);
  border-radius: 10px;
}
#fullpage .section .content .wrapper .right p {
  color: #fff;
  opacity: 0;
  transform: translateX(100%);
  transition: all 450ms ease;
  transition-delay: 500ms;
}
#fullpage .section .content .wrapper .right:hover::-webkit-scrollbar-thumb {
  background: white;
}
@media (max-width: 1559px) {
  #fullpage .section .content .wrapper {
    left: 0;
  }
}
@media (max-width: 1279px) {
  #fullpage .section .content .wrapper {
    width: 100%;
  }
  #fullpage .section .content .wrapper .left {
    width: 100%;
  }
  #fullpage .section .content .wrapper .left img {
    display: inline-block;
    width: 50%;
  }
  #fullpage .section .content .wrapper .left h1 {
    display: inline-block;
    font-size: 4rem;
    vertical-align: top;
    margin-right: 20px;
    margin-top: 20px;
  }
  #fullpage .section .content .wrapper .right {
    width: 100%;
    max-height: 40vh;
    margin-top: 20px;
    padding-left: 200px;
  }
  #fullpage .section .content .wrapper h1 {
    font-size: 4rem;
    margin-bottom: 25px;
    margin-top: 25px;
  }
}
@media (max-width: 767px) {
  #fullpage .section .content {
    padding-top: 100px;
  }
  #fullpage .section .content .wrapper .right {
    padding-left: 10px;
    padding-right: 60px;
    padding-bottom: 15px;
    max-height: 100%;
  }
}
#fullpage .section.active .history-background .image {
  transform: scale(1.5);
}
#fullpage .section.active .content .wrapper h1 {
  opacity: 1;
  transform: translateY(0%);
}
#fullpage .section.active .content .wrapper img {
  opacity: 1;
  transform: translateY(0%);
}
#fullpage .section.active .content .wrapper p {
  opacity: 1;
  transform: translateX(0%);
}

#history-wrapper {
  overflow-x: hidden;
}
#history-wrapper nav.menu .shopping-cart {
  right: 0;
}
#history-wrapper nav.menu #small-cart {
  right: 0;
}

.cart {
  padding-top: 0;
}
.cart .woocommerce {
  margin-top: 60px;
}
.cart .woocommerce .woocommerce-notices-wrapper {
  position: absolute;
  width: 100%;
  top: -60px;
}
.cart .quantity {
  margin-right: 0;
}
.cart .cart_item .product-thumbnail img {
  width: 100px;
}
.cart .cart_item .product-name dt {
  font-size: 0.875rem;
  color: #5d5e5e;
}
.cart .cart_item .product-name dd p {
  font-size: 0.875rem;
  color: #5d5e5e;
}
.cart .cart_totals .woocommerce-shipping-totals {
  display: none;
}
.cart .cart_totals .woocommerce-shipping-totals.shipping ul.woocommerce-shipping-methods {
  width: 100%;
}
.cart .cart_totals .woocommerce-shipping-totals.shipping > td {
  width: 100%;
}
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p {
  margin: 0;
}
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p#calc_shipping_state_field,
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p#calc_shipping_city_field,
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p#calc_shipping_country_field {
  display: none !important;
}
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p#calc_shipping_postcode_field {
  display: block;
}
.cart .cart_totals .woocommerce-shipping-totals .shipping-calculator-form > p button {
  font-size: 0.875rem;
  width: 100%;
  max-width: 320px;
}
.cart .cart_totals .woocommerce-shipping-totals .open .shipping-calculator-form {
  display: block !important;
}
.cart .customer_notes_on_cart {
  background: #d8d8d8;
  padding: 20px;
}
.cart .customer_notes_on_cart label {
  font-weight: 700;
  font-size: 1.25rem;
  width: 100%;
  color: #000000;
}
.cart .customer_notes_on_cart textarea {
  display: block;
  margin-top: 10px;
  height: 100px;
}
.cart .customer_notes_on_cart.card {
  background: #bd9b60;
}
.cart .customer_notes_on_cart.card label {
  color: #fff;
}
.cart #shipping-date h4 {
  color: #000000;
  margin-bottom: 10px;
}
.cart #shipping-date label {
  display: none;
}
.cart #shipping-date input {
  margin-bottom: 0;
}
@media (max-width: 991px) {
  .cart #shipping-date {
    position: relative;
    width: 100%;
    margin: 10px;
    margin-top: 20px;
    padding: 0;
    box-shadow: none;
  }
}

.topcart {
  position: relative;
  width: 100%;
}
.topcart .button,
.topcart footer .kk-summary-company-url a,
footer .kk-summary-company-url .topcart a {
  position: absolute;
  right: 0;
  font-size: 1rem;
  bottom: 50px;
}
@media (max-width: 991px) {
  .topcart .button,
  .topcart footer .kk-summary-company-url a,
  footer .kk-summary-company-url .topcart a {
    position: relative;
    bottom: 0;
    margin-top: 20px;
    float: right;
  }
}

#shipping-date {
  position: absolute;
  top: 0;
  right: 10px;
  background: #fff;
  padding: 10px 25px 30px 25px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.3);
  width: calc(28% - 35px);
}
#shipping-date input {
  margin-bottom: 0;
  font-family: 'Source Sans Pro', sans-serif;
  padding-left: 0.8rem;
  font-size: 0.95rem;
}
#shipping-date select {
  font-size: 0.8rem;
  border-color: #5d5e5e;
  width: 100%;
}
#shipping-date.chsh {
  position: relative;
  top: auto;
  right: auto;
  margin-top: 5px;
  width: 100%;
}

.ui-datepicker {
  background: #fff;
  border: 1px solid #111111;
  width: 240px;
  padding: 10px;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev {
  color: #bd9b60;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-next {
  color: #bd9b60;
  float: right;
}
.ui-datepicker .ui-datepicker-header .ui-state-disabled {
  color: #5d5e5e;
}
.ui-datepicker .ui-datepicker-header .ui-icon {
  cursor: pointer;
}
.ui-datepicker .ui-datepicker-title {
  font-size: 0.75rem;
}
.ui-datepicker table {
  width: 100%;
}
.ui-datepicker table td {
  background: #bd9b60;
  color: #fff;
  text-align: center;
  font-weight: 700;
}
.ui-datepicker table td a {
  color: #fff;
}
.ui-datepicker table td.ui-datepicker-unselectable {
  opacity: 0.5;
  font-weight: 100;
}

.flexbox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flexbox > div {
  width: 50%;
}

#woocommerce .woocommerce-form-login-toggle .woocommerce-info,
#woocommerce .woocommerce-form-coupon-toggle .woocommerce-info,
#woocommerce .woocommerce-error {
  display: block;
  font-size: 1rem;
  background: #fff;
  border-radius: 35px;
  box-shadow: 0 2px 18px 0 rgba(0, 0, 0, 0.2);
  margin-top: 0px;
  padding: 10px 20px;
  border-top: none;
  border-top: none;
  margin-bottom: 15px;
}
#woocommerce .woocommerce-form-login-toggle .woocommerce-info a,
#woocommerce .woocommerce-form-coupon-toggle .woocommerce-info a,
#woocommerce .woocommerce-error a {
  color: #bd9b60;
}
#woocommerce .woocommerce-form-login-toggle .woocommerce-info:before,
#woocommerce .woocommerce-form-coupon-toggle .woocommerce-info:before,
#woocommerce .woocommerce-error:before {
  position: relative;
  display: inline-block;
  margin-right: 5px;
  color: #bd9b60;
  top: 0;
  left: 0;
}

#woocommerce .woocommerce-error {
  background: #bd9b60;
  color: #fff;
}
#woocommerce .woocommerce-error a {
  color: #fff;
}
#woocommerce .woocommerce-error li {
  display: inline-block;
  width: 100%;
  font-size: 1.125rem;
}
#woocommerce .woocommerce-error::before {
  display: none;
}

#woocommerce .actions .coupon {
  margin-left: -10px;
  width: 225px !important;
}
#woocommerce .actions .coupon .button,
#woocommerce .actions .coupon footer .kk-summary-company-url a,
footer .kk-summary-company-url #woocommerce .actions .coupon a {
  display: block;
  margin-top: 10px;
  width: 100% !important;
}
#woocommerce .actions .coupon .input-text {
  width: 100% !important;
  border-color: #d8d8d8;
  height: 35px;
  display: inline-block;
  font-size: 1rem;
  margin-right: 10px;
}

@media (max-width: 767px) {
  #woocommerce .actions {
    padding: 10px 0;
  }
  #woocommerce .actions .coupon {
    width: 100% !important;
    margin: 0 !important;
  }
  #woocommerce .actions .coupon button {
    margin-bottom: 30px;
  }
}

#woocommerce .woocommerce-form-login {
  background: #fff;
  padding: 20px 35px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.3);
  border: none;
}
#woocommerce .woocommerce-form-login .form-row {
  float: none;
}
@media (max-width: 767px) {
  #woocommerce .woocommerce-form-login .form-row {
    width: 100%;
  }
}
#woocommerce .woocommerce-form-login .button,
#woocommerce .woocommerce-form-login footer .kk-summary-company-url a,
footer .kk-summary-company-url #woocommerce .woocommerce-form-login a {
  background: #bd9b60;
  color: #fff;
  font-size: 1rem;
  border-radius: 100px;
}
#woocommerce .woocommerce-form-login .lost_password a {
  font-size: 1rem;
}

#woocommerce.cart {
  background: #f8f8f8;
}
#woocommerce.cart .woocommerce {
  width: 100%;
  position: relative;
}
#woocommerce.cart .woocommerce-cart-form {
  background: #fff;
  padding: 20px 35px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.3);
  width: calc(70% - 35px);
  display: inline-block;
  position: static !important;
}
#woocommerce.cart .woocommerce-cart-form .shop_table {
  border: none !important;
}
#woocommerce.cart
  .woocommerce-cart-form
  .shop_table
  .woocommerce-cart-form__cart-item
  .product-quantity
  .quantity
  input {
  padding: 8px 0px !important;
  width: 55px;
  font-size: 1rem;
  border: 1px solid #d8d8d8;
}
#woocommerce.cart .woocommerce-cart-form .shop_table .woocommerce-cart-form__cart-item .product-name a {
  text-decoration: none;
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: -10px;
  display: block;
}
#woocommerce.cart .coupon input {
  width: 150px;
  border-color: #d8d8d8;
  height: 35px;
  display: inline-block;
  font-size: 1rem;
  margin: 0;
  margin-right: 10px;
}
#woocommerce.cart .product-remove .remove {
  visibility: hidden;
  position: relative;
}
#woocommerce.cart .product-remove .remove::before {
  content: ' ';
  visibility: visible;
  background-image: url('../images/trash.svg');
  background-size: 19px;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 20px;
  height: 25px;
  display: block;
  filter: brightness(20%);
  transition: all 350ms ease;
}
#woocommerce.cart .product-remove .remove:hover::before {
  filter: brightness(100%);
}
#woocommerce.cart .cart-collaterals {
  background: #fff;
  padding: 10px 25px 30px 25px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.3);
  width: calc(33% - 35px);
  display: inline-block;
  vertical-align: top;
  margin-left: 20px;
}
#woocommerce.cart .cart-collaterals .cart_totals {
  width: 100%;
  float: none;
}
#woocommerce.cart .cart-collaterals .cart_totals h2 {
  font-size: 20px;
  color: #1b1e24;
}
#woocommerce.cart .cart-collaterals .cart_totals .checkout-button {
  background: #bd9b60;
  border-radius: 35px;
  max-width: 320px;
  font-size: 0.875rem;
}
@media (max-width: 991px) {
  #woocommerce.cart .woocommerce-cart-form {
    width: 100%;
  }
  #woocommerce.cart .cart-collaterals {
    width: 100%;
    margin-left: 0px;
    margin-top: 20px;
  }
}

#woocommerce.checkout {
  background: #f8f8f8;
}
#woocommerce.checkout h1.centered {
  color: #1b1e24;
  font-size: 4rem;
  position: relative;
  margin-bottom: 25px;
  text-align: left;
}
#woocommerce.checkout h1.centered::after {
  content: ' ';
  display: block;
  width: 80px;
  bottom: 0;
  height: 3px;
  background: #bd9b60;
}
#woocommerce.checkout input {
  background: transparent !important;
  font-size: 1rem;
  padding: 8px 12px;
}
#woocommerce.checkout input#datepicker {
  color: #000000;
}
#woocommerce.checkout input#datepicker:-ms-input-placeholder {
  color: #000000 !important;
}
#woocommerce.checkout input#datepicker::placeholder {
  color: #000000 !important;
}
#woocommerce.checkout label {
  font-size: 0.8rem;
  text-transform: uppercase;
  font-weight: 600;
}
#woocommerce.checkout #ship-to-different-address span {
  display: inline-block;
  color: #000000;
  transform: translateY(-2px);
}
#woocommerce.checkout .cart_item .variation dt,
#woocommerce.checkout .cart_item .variation dd p {
  font-size: 0.875rem !important;
  line-height: 1.5;
  color: #5d5e5e;
}
#woocommerce.checkout #customer_details .manual,
#woocommerce.checkout #customer_details .manualSh {
  margin-bottom: 0;
}
#woocommerce.checkout #customer_details .manual label,
#woocommerce.checkout #customer_details .manualSh label {
  display: inline-block;
  transform: translate(3px, -2px);
}
#woocommerce.checkout #customer_details .col-1,
#woocommerce.checkout #customer_details .col-2 {
  width: 100%;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row {
  -ms-flex-order: 1;
  order: 1;
  padding: 3px 0;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_postcode_field {
  -ms-flex-order: 2;
  order: 2;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_address_2_field {
  -ms-flex-order: 3;
  order: 3;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_address_1_field,
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_city_field {
  -ms-flex-order: 4;
  order: 4;
  pointer-events: none;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_address_1_field
  input,
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_city_field
  input {
  background: #f8f8f8 !important;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_address_1_field
  .manual,
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_city_field
  .manual {
  pointer-events: all;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_address_1_field.open,
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_city_field.open {
  pointer-events: all;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_address_1_field.open
  input,
#woocommerce.checkout
  #customer_details
  .woocommerce-billing-fields__field-wrapper
  > .form-row#billing_city_field.open
  input {
  background: #fff !important;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_phone_field,
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#billing_email_field {
  -ms-flex-order: 5;
  order: 5;
}
#woocommerce.checkout #customer_details .woocommerce-billing-fields__field-wrapper > .form-row#store_pickup_field {
  -ms-flex-order: 6;
  order: 6;
  height: 0;
}
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper > .form-row {
  -ms-flex-order: 1;
  order: 1;
  padding: 3px 0;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_postcode_field {
  -ms-flex-order: 2;
  order: 2;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_2_field {
  -ms-flex-order: 3;
  order: 3;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_1_field,
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper > .form-row#shipping_city_field {
  -ms-flex-order: 4;
  order: 4;
  pointer-events: none;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_1_field
  input,
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_city_field
  input {
  background: #f8f8f8 !important;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_1_field
  .manualSh,
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_city_field
  .manualSh {
  pointer-events: all;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_1_field.open,
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_city_field.open {
  pointer-events: all;
}
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_address_1_field.open
  input,
#woocommerce.checkout
  #customer_details
  .woocommerce-shipping-fields__field-wrapper
  > .form-row#shipping_city_field.open
  input {
  background: #fff !important;
}
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper > .form-row#shipping_phone_field,
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper > .form-row#shipping_email_field {
  -ms-flex-order: 5;
  order: 5;
}
#woocommerce.checkout #customer_details .woocommerce-shipping-fields__field-wrapper > .form-row#store_pickup_field {
  -ms-flex-order: 6;
  order: 6;
  height: 0;
}
#woocommerce.checkout #customer_details #billing_address_1_field,
#woocommerce.checkout #customer_details #billing_address_2_field,
#woocommerce.checkout #customer_details #billing_postcode_field,
#woocommerce.checkout #customer_details #billing_city_field,
#woocommerce.checkout #customer_details #billing_phone_field,
#woocommerce.checkout #customer_details #billing_email_field,
#woocommerce.checkout #customer_details #shipping_address_1_field,
#woocommerce.checkout #customer_details #shipping_address_2_field,
#woocommerce.checkout #customer_details #shipping_postcode_field,
#woocommerce.checkout #customer_details #shipping_city_field,
#woocommerce.checkout #customer_details #shipping_phone_field,
#woocommerce.checkout #customer_details #shipping_email_field {
  width: 47%;
  display: inline-block;
}
@media (max-width: 767px) {
  #woocommerce.checkout #customer_details #billing_address_1_field,
  #woocommerce.checkout #customer_details #billing_address_2_field,
  #woocommerce.checkout #customer_details #billing_postcode_field,
  #woocommerce.checkout #customer_details #billing_city_field,
  #woocommerce.checkout #customer_details #billing_phone_field,
  #woocommerce.checkout #customer_details #billing_email_field,
  #woocommerce.checkout #customer_details #shipping_address_1_field,
  #woocommerce.checkout #customer_details #shipping_address_2_field,
  #woocommerce.checkout #customer_details #shipping_postcode_field,
  #woocommerce.checkout #customer_details #shipping_city_field,
  #woocommerce.checkout #customer_details #shipping_phone_field,
  #woocommerce.checkout #customer_details #shipping_email_field {
    width: 100%;
  }
}
#woocommerce.checkout #customer_details #shipping_address_2_field,
#woocommerce.checkout #customer_details #billing_address_2_field,
#woocommerce.checkout #customer_details #billing_city_field,
#woocommerce.checkout #customer_details #shipping_city_field,
#woocommerce.checkout #customer_details #billing_email_field,
#woocommerce.checkout #customer_details #shipping_email_field {
  float: right;
}
#woocommerce.checkout #customer_details #shipping_address_2_field .screen-reader-text,
#woocommerce.checkout #customer_details #billing_address_2_field .screen-reader-text,
#woocommerce.checkout #customer_details #billing_city_field .screen-reader-text,
#woocommerce.checkout #customer_details #shipping_city_field .screen-reader-text,
#woocommerce.checkout #customer_details #billing_email_field .screen-reader-text,
#woocommerce.checkout #customer_details #shipping_email_field .screen-reader-text {
  width: auto;
  height: auto;
  position: relative !important;
}
#woocommerce.checkout #customer_details .notes {
  display: none;
}
#woocommerce.checkout #customer_details #order_comments_field label {
  color: #bd9b60;
  font-weight: 700;
  font-size: 1.125rem;
}
#woocommerce.checkout #customer_details #order_comments_field textarea {
  font-family: 'Source Sans Pro', sans-serif;
  max-width: 50%;
}
#woocommerce.checkout #customer_details #e_deliverydate_field {
  display: none;
}
#woocommerce.checkout #customer_details #e_deliverydate_field label {
  color: #bd9b60;
  font-weight: 700;
  font-size: 1.125rem;
}
#woocommerce.checkout #customer_details #e_deliverydate_field input {
  max-width: 50%;
}
#woocommerce.checkout #customer_details h3 {
  color: #1b1e24;
  font-size: 1.8rem;
}
#woocommerce.checkout .shop_table {
  background: #fff;
  width: 100%;
  border: none;
  display: inline-table;
}
#woocommerce.checkout .shop_table .variation {
  font-size: 1rem !important;
}
#woocommerce.checkout .shop_table .variation * {
  font-size: 1rem !important;
}
#woocommerce.checkout #shipping_method li input:checked + label,
#woocommerce.checkout #shipping_method li input[type='hidden'] + label {
  display: inline-block;
}
#woocommerce.checkout #payment {
  width: 100%;
  display: inline-block;
  vertical-align: top;
}
#woocommerce.checkout #payment .woocommerce-notice {
  font-size: 0.8rem;
}
#woocommerce.checkout #payment .woocommerce-privacy-policy-text p {
  font-size: 0.8rem;
}
#woocommerce.checkout #payment .button,
#woocommerce.checkout #payment footer .kk-summary-company-url a,
footer .kk-summary-company-url #woocommerce.checkout #payment a {
  width: 100%;
  margin-top: 20px;
  background: #bd9b60;
  border-radius: 35px;
  max-width: 300px;
}
#woocommerce.checkout #customer_details {
  width: 100%;
  border: none;
}
#woocommerce.checkout #customer_details h3 {
  margin-top: 25px;
  font-size: 2rem;
  color: #bd9b60;
}
#woocommerce.checkout #customer_details h3#ship-to-different-address {
  margin-top: 0;
  margin-bottom: 0;
}
#woocommerce.checkout #customer_details h3#ship-to-different-address #ship-to-different-address-checkbox {
  margin-left: 0;
}
#woocommerce.checkout #customer_details .leftContainer {
  background: #fff;
  padding: 10px;
  border-radius: 5px;
}
#woocommerce.checkout #customer_details .woocommerce-account-fields {
  display: block;
  margin: 20px 0;
}
#woocommerce.checkout #customer_details .col-2 {
  background: #fff;
  padding: 0 10px 10px 10px;
  border-radius: 5px;
}
#woocommerce.checkout ul.wc-item-meta {
  float: left;
  width: 100%;
  padding-left: 0;
}
#woocommerce.checkout ul.wc-item-meta li {
  font-size: 1rem;
}
#woocommerce.checkout ul.wc-item-meta li p {
  font-size: 1rem;
}
@media (max-width: 767px) {
  #woocommerce.checkout #payment {
    width: 100%;
    display: block;
    margin-left: 0px;
  }
  #woocommerce.checkout .shop_table {
    width: 100%;
    display: table;
  }
}

.cart_totals .woocommerce-shipping-destination {
  display: none;
}

.cart_totals .cart-subtotal td {
  position: relative;
}
.cart_totals .cart-subtotal td::after {
  content: ' ';
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: rgba(0, 0, 0, 0.1);
}

.cart_totals .shipping-calculator-button {
  display: none;
}

.cart_totals .shipping-calculator-form {
  padding: 10px 0;
  display: block !important;
}

.cart_totals #shipping_method .woocommerce-Price-amount {
  font-size: 1rem;
}

.cart_totals #shipping_method label {
  font-size: 1rem;
}

.cart_totals #shipping_method input {
  vertical-align: baseline !important;
}

.cart_totals .shipping th {
  vertical-align: top;
}

.cart_totals .shipping-calculator-form .button,
.cart_totals .shipping-calculator-form footer .kk-summary-company-url a,
footer .kk-summary-company-url .cart_totals .shipping-calculator-form a {
  background: #bd9b60;
  color: #fff;
  font-size: 1rem;
  border-radius: 100px;
}

.select2-results__option {
  font-size: 1rem !important;
}

#shipping_method li input {
  vertical-align: baseline !important;
}

.checkout-nav nav.menu .shopping-cart {
  right: 0;
}

.checkout-nav nav.menu #small-cart {
  right: 0;
}

.woocommerce-billing-fields h4,
.woocommerce-shipping-fields h4 {
  margin-bottom: 0;
}

.woocommerce-billing-fields p,
.woocommerce-shipping-fields p {
  width: 100% !important;
}
.woocommerce-billing-fields p input,
.woocommerce-shipping-fields p input {
  max-width: 100%;
}

.form-row.store-pickup label,
.form-row.store-pickup select {
  display: none !important;
}

.pickup-locations-holder {
  background: #fff;
  margin-top: 20px;
  padding-top: 10px;
}
.pickup-locations-holder h3 {
  color: #000000;
  margin: 20px;
}
.pickup-locations-holder .pickup-locations {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
.pickup-locations-holder .pickup-locations > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(0);
  margin-bottom: calc(0);
  width: calc((100% / 1) - (0 * (1 - 1) / 1));
}
@media (max-width: 575px) {
  .pickup-locations-holder .pickup-locations > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .pickup-locations-holder .pickup-locations > * {
    width: calc((100% / 2) - (0 * (2 - 1) / 2));
  }
  .pickup-locations-holder .pickup-locations > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .pickup-locations-holder .pickup-locations > * {
    width: calc((100% / 2) - (0 * (2 - 1) / 2));
  }
  .pickup-locations-holder .pickup-locations > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  .pickup-locations-holder .pickup-locations > * {
    width: calc((100% / 4) - (0 * (4 - 1) / 4));
  }
  .pickup-locations-holder .pickup-locations > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  .pickup-locations-holder .pickup-locations > * {
    width: calc((100% / 4) - (0 * (4 - 1) / 4));
  }
  .pickup-locations-holder .pickup-locations > *:nth-child(4n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  .pickup-locations-holder .pickup-locations {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 0;
  }
  @media (min-width: 576px) {
    .pickup-locations-holder .pickup-locations {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 768px) {
    .pickup-locations-holder .pickup-locations {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    .pickup-locations-holder .pickup-locations {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  @media (min-width: 1280px) {
    .pickup-locations-holder .pickup-locations {
      -ms-grid-columns: (1fr) [4];
      grid-template-columns: repeat(4, 1fr);
    }
  }
  .pickup-locations-holder .pickup-locations > * {
    width: 100%;
    margin: 0;
  }
}
.pickup-locations-holder .pickup-locations .location {
  padding: 20px;
  cursor: pointer;
}
.pickup-locations-holder .pickup-locations .location h4 {
  margin: 0;
}
.pickup-locations-holder .pickup-locations .location p {
  font-size: 1rem;
}
.pickup-locations-holder .pickup-locations .location.active,
.pickup-locations-holder .pickup-locations .location:hover {
  background: #bd9b60;
}
.pickup-locations-holder .pickup-locations .location.active h4,
.pickup-locations-holder .pickup-locations .location.active p,
.pickup-locations-holder .pickup-locations .location:hover h4,
.pickup-locations-holder .pickup-locations .location:hover p {
  color: #fff;
}

.woocommerce-checkout-review-order-table dd p {
  line-height: 1.5;
}

.woocommerce-checkout-review-order-table select {
  font-size: 1rem;
}

@media (max-width: 767px) {
  .checkout_coupon .form-row {
    width: 100% !important;
  }
}

.notes-holder {
  background: #fff;
  width: 100%;
}
.notes-holder > div {
  width: 100%;
  display: inline-block;
  margin-top: 20px;
}
.notes-holder > div label {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  display: inline-block;
  margin-bottom: 20px;
  text-transform: none !important;
  color: #bd9b60;
}
.notes-holder > div textarea {
  border: 1px solid #787878;
  border-radius: 5px;
  min-height: 200px;
  max-width: 100%;
  width: 100%;
  font-family: 'Source Sans Pro', sans-serif !important;
}
.notes-holder > div.card {
  width: 100%;
}

form.woocommerce-checkout {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
form.woocommerce-checkout #order_review_heading {
  margin-top: 25px;
}
form.woocommerce-checkout .left {
  width: calc(50% - 20px);
  margin-right: 20px;
  display: inline-block;
}
form.woocommerce-checkout .right {
  width: calc(50% - 20px);
  margin-left: 20px;
  display: inline-block;
}
form.woocommerce-checkout > div.active {
  display: block;
  width: 100%;
}
form.woocommerce-checkout > div.steps {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 40px 0;
}
form.woocommerce-checkout > div.steps > a {
  counter-increment: line-number;
  text-decoration: none;
  font-weight: bold;
  cursor: default;
}
form.woocommerce-checkout > div.steps > a::before {
  content: counter(line-number);
  padding: 5px;
  background: #fff;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  text-align: center;
  display: inline-block;
  margin-right: 10px;
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
}
form.woocommerce-checkout > div.steps > a.active::before {
  background: #bd9b60;
  color: #fff;
}
@media (max-width: 991px) {
  form.woocommerce-checkout > div.steps {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: initial;
    justify-content: initial;
  }
  form.woocommerce-checkout > div.steps a {
    margin-bottom: 5px;
  }
}
form.woocommerce-checkout > div#customer_details {
  display: block;
}
form.woocommerce-checkout > div#customer_details .col-1 .woocommerce-billing-fields p {
  width: 100% !important;
  margin-left: 0;
  margin-right: 0;
  float: none;
  display: block;
}
form.woocommerce-checkout > div#customer_details .col-1 .woocommerce-billing-fields > h3 {
  margin-top: 0;
}
@media (max-width: 991px) {
  form.woocommerce-checkout .left {
    width: 100%;
    margin-right: 0;
  }
  form.woocommerce-checkout .right {
    width: 100%;
    margin-left: 0;
  }
}

.woocommerce-NoticeGroup-checkout {
  display: block !important;
  width: 100%;
}

.checkoutControls {
  margin: 40px 0 0 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.checkoutControls button {
  background-color: #bd9b60 !important;
  color: #fff !important;
}
.checkoutControls button:disabled {
  background: #d8d8d8 !important;
}

#woocommerce.checkout .woocommerce-order {
  border-radius: 10px;
  background: #fff;
  padding: 40px;
  box-shadow: 0 2px 18px 0 rgba(157, 157, 157, 0.3);
}
#woocommerce.checkout .woocommerce-order h2 {
  margin-top: 0;
}
#woocommerce.checkout .woocommerce-order p {
  font-size: 1.25rem;
}
#woocommerce.checkout .woocommerce-order .woocommerce-info {
  display: none;
}
#woocommerce.checkout .woocommerce-order .woocommerce-order-overview {
  margin-bottom: 20px !important;
}
#woocommerce.checkout .woocommerce-order .woocommerce-order-overview .total,
#woocommerce.checkout .woocommerce-order .woocommerce-order-overview .method {
  display: none;
}

p.create-account {
  margin: 10px 0;
}
p.create-account label {
  background: #bd9b60;
  color: #fff;
  padding: 10px;
  border-radius: 25px;
}

#recipes {
  background: #f8f8f8;
}
#recipes .recipes {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  margin-top: 25px;
}
#recipes .recipes > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(20px);
  margin-bottom: calc(20px);
  width: calc((100% / 1) - (20px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  #recipes .recipes > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #recipes .recipes > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  #recipes .recipes > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #recipes .recipes > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  #recipes .recipes > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  #recipes .recipes > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #recipes .recipes > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  #recipes .recipes > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #recipes .recipes > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  #recipes .recipes {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }
  @media (min-width: 576px) {
    #recipes .recipes {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    #recipes .recipes {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 992px) {
    #recipes .recipes {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    #recipes .recipes {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #recipes .recipes > * {
    width: 100%;
    margin: 0;
  }
}
#recipes .recipes .tag {
  font-size: 0.8rem;
  font-weight: 600;
  background: #bd9b60;
  padding: 2px 10px;
  margin-bottom: 15px;
  border-radius: 5px;
  color: #fff;
  display: inline-block;
  margin-right: 20px;
  position: absolute;
  top: 10px;
  right: -10px;
}
#recipes .recipes .recipe {
  position: relative;
  width: 100%;
  background: #fff;
  height: calc(550px / 2 - 10px);
  margin-bottom: 0px;
  transition: all 350ms ease;
}
@media (max-width: 767px) {
  #recipes .recipes .recipe {
    height: auto;
  }
}
@media (min-width: 1280px) {
  #recipes .recipes .recipe:nth-child(2) {
    -ms-grid-column: 2;
    grid-column: 2;
    grid-row: 1 / 2;
  }
  #recipes .recipes .recipe:nth-child(3) {
    -ms-grid-column: 2;
    grid-column: 2;
    grid-row: 2 / 2;
  }
}
#recipes .recipes .recipe a {
  text-decoration: none;
}
#recipes .recipes .recipe .image {
  width: calc(40% - 40px);
  height: 100%;
  background: #5d5e5e;
  background-position: center;
  background-size: cover;
  display: inline-block;
  transition: all 350ms ease;
}
#recipes .recipes .recipe .image:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  #recipes .recipes .recipe .image {
    width: 100%;
    height: 140px;
  }
}
#recipes .recipes .recipe h2 {
  margin: 0;
  padding: 0;
  font-weight: 600;
  font-size: 2rem;
  color: #1b1e24;
  margin-bottom: 20px;
  transition: all 350ms ease;
}
#recipes .recipes .recipe h2:hover {
  opacity: 0.8;
}
#recipes .recipes .recipe p {
  color: #5d5e5e;
  font-size: 1rem;
}
#recipes .recipes .recipe .content {
  width: calc(60% - 20px);
  display: inline-block;
  vertical-align: top;
  padding: 15px;
  box-sizing: border-box;
  position: relative;
  height: 100%;
}
#recipes .recipes .recipe .content p * {
  color: #5d5e5e !important;
  font-size: 1rem !important;
  line-height: 1.8;
}
@media (max-width: 767px) {
  #recipes .recipes .recipe .content {
    width: 100%;
  }
}
#recipes .recipes .recipe.month-recipe {
  position: relative;
  height: 550px;
}
@media (max-width: 767px) {
  #recipes .recipes .recipe.month-recipe {
    height: auto;
  }
}
@media (min-width: 1280px) {
  #recipes .recipes .recipe.month-recipe {
    -ms-grid-column: 1;
    grid-column: 1;
    grid-row: 1 / 3;
  }
}
#recipes .recipes .recipe.month-recipe .image {
  width: 100%;
  height: 350px;
  background: #5d5e5e;
  background-position: center;
  background-size: cover;
}
@media (max-width: 767px) {
  #recipes .recipes .recipe.month-recipe .image {
    width: 100%;
    height: 140px;
  }
}
#recipes .recipes .recipe.month-recipe .content {
  width: 100%;
  height: 200px;
  margin: 0;
  display: block;
}
#recipes .recipes .recipe.month-recipe .content p {
  margin-top: -18px;
}
#recipes .recipes .recipe.month-recipe .content > span {
  color: #5d5e5e;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.2rem;
}
#recipes .recipes .recipe.month-recipe .content .recipe-footer {
  bottom: 15px !important;
}
#recipes .recipes .recipe .recipe-footer {
  position: absolute;
  bottom: 10px;
  left: 15px;
}
#recipes .recipes .recipe .recipe-footer span {
  display: inline-block;
  color: #bd9b60;
  font-size: 1rem;
  font-weight: 600;
}
#recipes .recipes .recipe .recipe-footer span img {
  display: inline-block;
  vertical-align: sub;
}
#recipes .recipes .recipe .recipe-footer span:last-child {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid #bd9b60;
}

.single-recipe h4 img {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  width: 25px;
}

.single-recipe .video-recipe {
  display: block;
  width: 100%;
  background: #f8f8f8;
  margin-top: -50px;
}
.single-recipe .video-recipe .embed {
  max-width: 550px;
  width: 100%;
  padding: 20px;
  height: 350px;
  margin: 0 auto;
}

#location {
  padding: 50px 0;
}
#location .wrapper .location-tour {
  height: 350px;
  width: 100%;
  text-align: center;
  background: #5d5e5e;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  margin-bottom: 30px;
}
#location .wrapper .location-tour a {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  width: 320px;
}
#location .wrapper .location-tour a img {
  display: inline-block;
  width: 25px;
  margin-right: 10px;
  vertical-align: sub;
}
#location .wrapper .location-tour .overlayIframe {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.25);
  z-index: 10000;
}
#location .wrapper .location-tour .overlayIframe.open {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#location .wrapper .location-tour .pp-embed a {
  display: block;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: 99;
  position: absolute;
  background: transparent;
}
#location .wrapper .location-tour .pp-embed img {
  display: none;
}
@media (max-width: 575px) {
  #location .wrapper .location-tour a {
    width: 90%;
  }
}
#location .wrapper .content-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
#location .wrapper .content-wrapper > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(20px);
  margin-bottom: calc(20px);
  width: calc((100% / 1) - (20px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  #location .wrapper .content-wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #location .wrapper .content-wrapper > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  #location .wrapper .content-wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #location .wrapper .content-wrapper > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  #location .wrapper .content-wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  #location .wrapper .content-wrapper > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #location .wrapper .content-wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  #location .wrapper .content-wrapper > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  #location .wrapper .content-wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  #location .wrapper .content-wrapper {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }
  @media (min-width: 576px) {
    #location .wrapper .content-wrapper {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    #location .wrapper .content-wrapper {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 992px) {
    #location .wrapper .content-wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    #location .wrapper .content-wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #location .wrapper .content-wrapper > * {
    width: 100%;
    margin: 0;
  }
}
#location .wrapper .content-wrapper .contact span,
#location .wrapper .content-wrapper .contact a {
  display: block;
  font-size: 1.1rem;
  color: #1b1e24;
  font-weight: 600;
  margin-bottom: 35px;
  position: relative;
  margin-left: 35px;
}
#location .wrapper .content-wrapper .contact span::before,
#location .wrapper .content-wrapper .contact a::before {
  content: ' ';
  background-size: 20px;
  background-repeat: no-repeat;
  left: -35px;
  top: 4px;
  display: block;
  width: 25px;
  height: 25px;
  position: absolute;
}
#location .wrapper .content-wrapper .contact span.phone::before,
#location .wrapper .content-wrapper .contact a.phone::before {
  background-image: url('../images/phone.svg');
}
#location .wrapper .content-wrapper .contact span.mail::before,
#location .wrapper .content-wrapper .contact a.mail::before {
  background-image: url('../images/envelope.svg');
}
#location .wrapper .content-wrapper .contact span.address::before,
#location .wrapper .content-wrapper .contact a.address::before {
  background-image: url('../images/pin-1.svg');
}
#location .wrapper .content-wrapper .contact span.times::before,
#location .wrapper .content-wrapper .contact a.times::before {
  background-image: url('../images/time-clock-circle.svg');
}
#location .wrapper .content-wrapper .contact span p,
#location .wrapper .content-wrapper .contact a p {
  font-size: 1.1rem;
  color: #1b1e24;
  font-weight: 600;
}
#location .wrapper .content-wrapper .fascility {
  position: relative;
}
#location .wrapper .content-wrapper .fascility h4 {
  color: #1b1e24;
  margin: 0;
  margin-bottom: 15px;
  font-weight: 600;
}
#location .wrapper .content-wrapper .fascility ul {
  margin-bottom: 25px !important;
}
#location .wrapper .content-wrapper .fascility ul li {
  margin-right: 25px;
  color: #bd9b60;
  display: inline-block;
  font-weight: 600;
  font-size: 1rem;
}
#location .wrapper .content-wrapper .fascility ul li img {
  display: inline-block;
  vertical-align: sub;
  max-width: 25px;
  max-height: 20px;
  margin-right: 5px;
}
#location .wrapper .content-wrapper .fascility .embed {
  width: 100%;
  height: 400px;
}
@media (max-width: 575px) {
  #location .wrapper .content-wrapper .fascility ul li {
    display: block;
    margin-bottom: 15px;
    margin-right: 0;
  }
  #location .wrapper .content-wrapper .fascility ul li:first-child {
    margin-top: 15px;
  }
}

.locations-page .wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
.locations-page .wrapper > * {
  -ms-flex: none;
  flex: none;
  margin-right: calc(20px);
  margin-bottom: calc(20px);
  width: calc((100% / 1) - (20px * (1 - 1) / 1));
}
@media (max-width: 575px) {
  .locations-page .wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .locations-page .wrapper > * {
    width: calc((100% / 1) - (20px * (1 - 1) / 1));
  }
  .locations-page .wrapper > *:nth-child(1n) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .locations-page .wrapper > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  .locations-page .wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  .locations-page .wrapper > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  .locations-page .wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 1280px) {
  .locations-page .wrapper > * {
    width: calc((100% / 2) - (20px * (2 - 1) / 2));
  }
  .locations-page .wrapper > *:nth-child(2n) {
    margin-right: 0;
  }
}
@supports (display: grid) {
  .locations-page .wrapper {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [1];
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }
  @media (min-width: 576px) {
    .locations-page .wrapper {
      -ms-grid-columns: (1fr) [1];
      grid-template-columns: repeat(1, 1fr);
    }
  }
  @media (min-width: 768px) {
    .locations-page .wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 992px) {
    .locations-page .wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1280px) {
    .locations-page .wrapper {
      -ms-grid-columns: (1fr) [2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .locations-page .wrapper > * {
    width: 100%;
    margin: 0;
  }
}
.locations-page .wrapper .location-nav ul li {
  border-radius: 10px;
  box-shadow: 0 2px 18px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 150px;
}
.locations-page .wrapper .location-nav ul li .text {
  width: calc(80% - 10px);
  display: inline-block;
  padding: 20px;
  vertical-align: top;
}
.locations-page .wrapper .location-nav ul li .text h4 {
  color: #000000;
  margin: 0;
  padding: 0;
}
.locations-page .wrapper .location-nav ul li .text a {
  text-decoration: none;
}
.locations-page .wrapper .location-nav ul li .image {
  width: calc(20% - 10px);
  display: inline-block;
  height: 100%;
  background-size: cover;
  background-position: center;
  height: 150px;
}

#faq {
  background: #f8f8f8;
}
#faq form .search {
  margin-bottom: 30px;
  max-width: 400px;
  display: inline-block;
  background-color: #fff;
  border-radius: 35px;
}
#faq form .reset-faq-tag {
  display: inline-block;
  color: #1b1e24;
  vertical-align: middle;
  margin-left: 15px;
  cursor: pointer;
}
#faq form .button,
#faq form footer .kk-summary-company-url a,
footer .kk-summary-company-url #faq form a {
  display: inline-block;
  box-shadow: none !important;
  font-size: 1rem;
  padding: 10px 25px;
}
#faq .wrapper {
  position: relative;
  width: 100%;
}
#faq .wrapper .faq-nav {
  margin-top: 30px;
  width: calc(25% - 20px);
  display: inline-block;
  margin-right: 20px;
}
#faq .wrapper .faq-nav > ul > li {
  width: 100%;
  background: rgba(196, 17, 48, 0.1);
  color: #1b1e24;
  padding: 15px 20px;
  border-bottom: 1px solid #fff;
  transition: all 350ms ease;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
}
#faq .wrapper .faq-nav > ul > li.mixitup-control-active {
  color: #fff;
  background: #bd9b60;
}
#faq .wrapper .faq-nav > ul > li:hover {
  background: #bd9b60;
  color: #fff;
}
#faq .wrapper .faqs {
  margin-top: 30px;
  width: calc(75% - 20px);
  vertical-align: top;
  display: inline-block;
}
#faq .wrapper .faqs > ul > li {
  border-bottom: 1px solid #d8d8d8;
  color: #5d5e5e;
  background: #fff;
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  font-size: 1rem;
  position: relative;
  transition: max-height 650ms ease-out;
  max-height: 65px;
  overflow: hidden;
}
#faq .wrapper .faqs > ul > li p,
#faq .wrapper .faqs > ul > li li {
  font-size: 1rem;
}
#faq .wrapper .faqs > ul > li iframe {
  width: 100%;
  min-height: 400px;
  margin-top: 20px;
}
#faq .wrapper .faqs > ul > li:first-child {
  border-top: 1px solid #d8d8d8;
}
#faq .wrapper .faqs > ul > li > span {
  display: block;
  padding: 19px 20px;
  font-weight: 600;
}
#faq .wrapper .faqs > ul > li > ul {
  transition: opacity 350ms ease;
  opacity: 0;
}
#faq .wrapper .faqs > ul > li > ul > li {
  padding: 15px 20px;
  border: none;
  border-top: 1px solid #d8d8d8;
  max-height: 100%;
}
#faq .wrapper .faqs > ul > li.active {
  color: #1b1e24;
  max-height: 1065px;
}
#faq .wrapper .faqs > ul > li.active ul {
  opacity: 1;
  transition-delay: 200ms;
}
#faq .wrapper .faqs > ul > li.active::after {
  transform: rotate(-180deg);
}
#faq .wrapper .faqs > ul > li {
  cursor: pointer;
}
#faq .wrapper .faqs > ul > li::after {
  content: ' ';
  position: absolute;
  right: 20px;
  top: 18px;
  width: 30px;
  height: 30px;
  background-image: url('../images/arrow-down-grey.svg');
  background-position: center;
  background-size: 25px;
  background-repeat: no-repeat;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  #faq .wrapper .faqs {
    width: 100%;
    display: block;
  }
  #faq .wrapper .faqs li {
    line-height: 14px;
    padding-right: 40px;
  }
  #faq .wrapper .faq-nav {
    width: 100%;
    display: block;
  }
}

.woocommerce-pagination {
  text-align: center;
}
.woocommerce-pagination ul {
  margin: 60px auto 0 auto !important;
}
.woocommerce-pagination ul li {
  display: inline-block;
}
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
  text-decoration: none;
  padding: 5px;
  background: #f8f8f8;
  width: 50px;
  height: 50px;
  text-align: center;
  display: block;
}
.woocommerce-pagination ul li span.current {
  background: #bd9b60;
  color: #fff;
}

#wedding-cake {
  background: #f8f8f8;
}
#wedding-cake .content {
  font-size: 1.2rem;
  line-height: 1.4;
  color: #5d5e5e;
}
#wedding-cake .cakes {
  margin: 50px 0;
}
#wedding-cake .cakes a {
  width: calc(20% - 10px);
  margin: 5px;
}
#wedding-cake .cakes a.grid-item--width2 {
  width: calc(40% - 20px);
}
@media (max-width: 991px) {
  #wedding-cake .cakes a {
    width: calc(25% - 10px);
  }
  #wedding-cake .cakes a.grid-item--width2 {
    width: calc(50% - 20px);
  }
}
@media (max-width: 767px) {
  #wedding-cake .cakes a {
    width: calc(50% - 10px);
  }
  #wedding-cake .cakes a.grid-item--width2 {
    width: calc(50% - 10px);
  }
}

#workshops select {
  background: #fff url('../images/arrow-down-select.svg') no-repeat right 15px center !important;
  background-size: 10px !important;
}

#workshops .workshop {
  display: block;
  width: 100%;
  margin-top: 35px;
  padding-bottom: 35px;
  border-bottom: 1px solid #d8d8d8;
}
#workshops .workshop .image {
  width: calc(30% - 15px);
  display: inline-block;
  vertical-align: top;
}
#workshops .workshop .image img {
  width: 100%;
}
#workshops .workshop .content {
  width: calc(70% - 15px);
  display: inline-block;
  margin-left: 25px;
  padding: 0 20px;
}
#workshops .workshop .content h3 {
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  #workshops .workshop .image,
  #workshops .workshop .content {
    width: 100%;
    display: block;
  }
  #workshops .workshop .content {
    padding: 0;
    margin-top: 20px;
    margin-left: 0;
  }
}

.acf-map {
  width: 100%;
  height: 600px;
}
.acf-map h4 {
  margin: 0 0 10px 0;
  font-size: 1.25rem;
}
.acf-map p {
  font-size: 1rem;
}

.maps-part-one {
  padding: 40px 15px;
  display: inline-block;
  width: calc(30% - 20px);
  margin-right: 20px;
  vertical-align: top;
  position: relative;
}
.maps-part-one ul li a {
  text-decoration: none;
  transition: all 350ms ease;
}
.maps-part-one ul li a:hover {
  color: #bd9b60;
}

.maps-part-two {
  padding: 40px 0;
  display: inline-block;
  width: calc(70% - 20px);
}

@media (max-width: 767px) {
  .maps-part-one {
    display: block;
    width: 100%;
    margin-right: 0px;
    padding: 10px 0px 20px 0px;
    border-bottom: 1px solid #d8d8d8;
  }
  .maps-part-two {
    padding: 0px 0px 20px 0px;
    display: block;
    width: 100%;
  }
}

.search-results .wrapper > ul > li {
  margin: 10px 0;
  padding: 10px 20px 20px 20px;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 10px;
}
.search-results .wrapper > ul > li img {
  max-width: 100%;
}
.search-results .wrapper > ul > li a {
  text-decoration: none;
}
.search-results .wrapper > ul > li a h3 {
  font-size: 1.2rem;
  color: #1b1e24;
  text-transform: capitalize;
  margin: 0;
  padding: 0;
}
.search-results .wrapper > ul > li .tag {
  font-size: 0.8rem;
  font-weight: 600;
  background: #bd9b60;
  padding: 2px 10px;
  margin-bottom: 15px;
  border-radius: 5px;
  color: #fff;
  display: inline-block;
  margin-right: 20px;
}

.search-results .wrapper .products::before {
  display: none;
}

.search-results .wrapper .products .single_add_to_cart_button {
  background: url(../images/shopping-cart-add.svg) no-repeat center !important;
  background-size: 30px !important;
  width: 60px !important;
  height: 55px !important;
  right: 0px !important;
  top: 0 !important;
  transition: all 350ms ease !important;
  display: inline-block !important;
  box-shadow: none !important;
  padding: 0 !important;
  position: absolute !important;
  overflow: visible !important;
  border-radius: 0 !important;
  border: 0 !important;
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important;
}

@media (max-width: 767px) {
  .search-results .wrapper .products .single_add_to_cart_button {
    position: relative !important;
    display: inline-block !important;
    right: 0 !important;
    left: 0 !important;
    vertical-align: text-top !important;
    width: 25% !important;
    margin-top: -13px !important;
  }
}

.vacatures {
  background: #f8f8f8;
}
.vacatures ul li {
  background: #fff;
  padding: 20px;
  margin-bottom: 20px;
}
.vacatures ul li h4 {
  margin-top: 0;
  color: #000000;
}

/*
 * Helper classes
 */
.box-shadow,
#bonbons ul li,
ul.products li,
.pickup-locations-holder {
  box-shadow: 0px 2px 10px 1px #d8d8d8;
}

.text-shadow {
  text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.3);
}

@media (max-width: 991px) {
  .hide-on-mobile {
    display: none;
  }
}

@media (min-width: 992px) {
  .show-on-mobile {
    display: none;
  }
}

.centered {
  margin: 0 auto;
  text-align: center;
  display: block;
}

.centered-vertical {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.background-image {
  background-size: cover;
  background-position: center;
}
.background-image.top {
  background-position: top center;
}
.background-image.bottom {
  background-position: top bottom;
}

.no-padding {
  padding: 0;
}

.overlay::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 0;
}

.overlay-gradient::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 40%;
  width: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.67) 0%, rgba(0, 0, 0, 0) 100%);
  z-index: 0;
}

.reset,
nav.menu #small-cart h3,
nav.menu #small-cart ul,
.foldout-menu ul,
footer .wrapper h4,
footer .wrapper > ul,
footer .wrapper > ul ul,
.woocommerce-MyAccount-navigation ul,
.usp ul,
#bonbons ul,
.categories .content h2,
.categories .content ul,
#slider .carousel .item .carousel-label h2,
#slider .highlight-wrapper a .highlight-block .overlay-text h3,
#slider .highlight-wrapper a .highlight-block .overlay-text h4,
ul.products,
#woocommerce .product .tabs,
.variations .select,
.variations .select-type,
.breadcrumbs .woocommerce-filtering form ul,
.history-menu ul,
#woocommerce.checkout .woocommerce-order .woocommerce-order-overview,
#location .wrapper .content-wrapper .fascility ul,
.locations-page .wrapper .location-nav ul,
#faq .wrapper .faq-nav > ul,
#faq .wrapper .faqs > ul,
#faq .wrapper .faqs > ul > li > ul,
.woocommerce-pagination ul,
.maps-part-one ul,
.search-results .wrapper > ul,
.vacatures ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.embed {
  position: relative;
  overflow: hidden;
  padding-top: -56.25%;
}
.embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.ellipsis {
  display: -ms-grid;
  display: grid;
}
.ellipsis > * {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.shadow,
ul.products li h3 {
  box-shadow: 0 2px 4px 0 rgba(193, 193, 193, 0.5);
}

.product_title {
  color: #111111;
  font-size: 4rem;
  position: relative;
  margin-bottom: 25px;
  display: inline-block;
}
.product_title:after {
  content: ' ';
  display: block;
  width: 80px;
  bottom: 0;
  height: 3px;
  background: #bd9b60;
}

.content h4 {
  margin-bottom: 0;
}

.whatsapp-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #bd9b60;
  color: #fff;
  height: 40px;
  font-size: 0.875rem;
  text-decoration: none;
  position: relative;
  z-index: 10000;
  position: absolute;
  top: 0;
  width: 100%;
}
.whatsapp-bar:hover {
  color: #fff;
  background: #a8894f;
}
.whatsapp-bar svg {
  flex-shrink: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJhcHAuc2NzcyIsIjEgLSBzZXR0aW5ncy9fY29sb3JzLnNjc3MiLCIxIC0gc2V0dGluZ3MvX2ZvbnRzLnNjc3MiLCIxIC0gc2V0dGluZ3MvX2JyZWFrcG9pbnRzLnNjc3MiLCIxIC0gc2V0dGluZ3MvX2lucHV0cy5zY3NzIiwiMSAtIHNldHRpbmdzL19idXR0b24uc2NzcyIsIjIgLSB0b29scy9fbWl4aW5zLnNjc3MiLCIyIC0gdG9vbHMvX21lZGlhLXF1ZXJpZXMuc2NzcyIsIjIgLSB0b29scy9fZ3JpZC5zY3NzIiwiMyAtIGJhc2UvX3JlYm9vdC5zY3NzIiwiMyAtIGJhc2UvX2xheW91dC5zY3NzIiwiMyAtIGJhc2UvX25hdmlnYXRpb24uc2NzcyIsIjMgLSBiYXNlL19mb290ZXIuc2NzcyIsIjQgLSBlbGVtZW50cy9fZm9ybXMuc2NzcyIsIjQgLSBlbGVtZW50cy9faGVhZGluZ3Muc2NzcyIsIjQgLSBlbGVtZW50cy9fbWVkaWEuc2NzcyIsIjQgLSBlbGVtZW50cy9fYnV0dG9ucy5zY3NzIiwiNCAtIGVsZW1lbnRzL19zbGljay5zY3NzIiwiNCAtIGVsZW1lbnRzL19mdWxscGFnZS5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX2FjY291bnQuc2NzcyIsIjUgLSBjb21wb25lbnRzL19waWdneS5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX2Z1bGwtdmlkZW8uc2NzcyIsIjUgLSBjb21wb25lbnRzL191c3Auc2NzcyIsIjUgLSBjb21wb25lbnRzL19jb29raWUuc2NzcyIsIjUgLSBjb21wb25lbnRzL19wYWdpbmcuc2NzcyIsIjUgLSBjb21wb25lbnRzL19oZXJvLnNjc3MiLCI1IC0gY29tcG9uZW50cy9fYm9uYm9ucy5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX2NhdGVnb3JpZXMuc2NzcyIsIjUgLSBjb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIjUgLSBjb21wb25lbnRzL19ibG9ja3Muc2NzcyIsIjUgLSBjb21wb25lbnRzL19wcm9kdWN0cy5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX3Byb2R1Y3Quc2NzcyIsIjUgLSBjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX2hpc3Rvcnkuc2NzcyIsIjUgLSBjb21wb25lbnRzL19jYXJ0LnNjc3MiLCI1IC0gY29tcG9uZW50cy9fY2hlY2tvdXQuc2NzcyIsIjUgLSBjb21wb25lbnRzL19yZWNpcGVzLnNjc3MiLCI1IC0gY29tcG9uZW50cy9fbG9jYXRpb24uc2NzcyIsIjUgLSBjb21wb25lbnRzL19mYXEuc2NzcyIsIjUgLSBjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCI1IC0gY29tcG9uZW50cy9fY2FrZS5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX3dvcmtzaG9wcy5zY3NzIiwiNSAtIGNvbXBvbmVudHMvX2NvbnRhY3Quc2NzcyIsIjUgLSBjb21wb25lbnRzL19zZWFyY2guc2NzcyIsIjUgLSBjb21wb25lbnRzL192YWNhdHVyZXMuc2NzcyIsIjYgLSBoZWxwZXJzL19oZWxwZXJzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7Ozs7Ozs7OztHQVdHO0FDWEg7O0dBRUc7QUNGSDs7R0FFRztBQ0ZIOztHQUVHO0FDRkg7O0dBRUc7QUFHSDtFQUNJLFlBQVc7RUFDWCxpQkFBZ0I7RUFDaEIsbUJBQWtCO0VBQ2xCLDBCSEd5QjtFR0Z6QixpQkhOc0I7RUdPdEIsZUhDeUI7RUdBekIsV0FBVTtFQUNWLG1CQUFrQjtFQUNsQixpQkFBZ0IsRUFNakI7RUFKQztJQUNFLHNCSFp1QjtJR2F2QixpQkhkb0IsRUdlckI7O0FBSUg7RUFDRSxZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLG9GQUFxRjtFQUNyRixzQkFBcUI7RUFDckIseUJBQWdCO0tBQWhCLHNCQUFnQjtVQUFoQixpQkFBZ0I7RUFDaEIsMEJIeEJ5QjtFR3lCekIsV0FBVTtFQUNWLDZCQUE0QjtFQUM1QixvQkFBbUI7RUFDbkIsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNu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QUNYLFlBQVc7RUFDWCxtRkFBNEU7RUFDNUUsV0FBVSxFQUNiOztBQUlMO0VBQ0ksVUFBUztFQUNULFdBQVU7RUFDVixpQkFBZ0IsRUFDbkI7O0FBR0Q7RUFDSSxtQkFBa0I7RUFDbEIsaUJBQWdCO0VBQ2hCLHFCQUFvQixFQVV2QjtFQWJEO0lBTU0sbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBQ1AsWUFBVztJQUNYLGFBQVk7SUFDWixVQUFTLEVBQ1Y7O0FBSUw7RUFDSSxrQkFBYTtFQUFiLGNBQWEsRUFNaEI7RUFQRDtJQUdRLG9CQUFtQjtJQUNuQixpQkFBZ0I7SUFDaEIsd0JBQXVCLEVBQzFCOztBQUlMO0VBQ0ksaURBQTZDLEVBQ2hEOztBQTRCRDtFQUNJLGU1Q2xKeUI7RTRDbUp6QixnQkFBZTtFQUNmLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsc0JBQXFCLEVBVXhCO0VBZkQ7SUFRUSxhQUFZO0lBQ1osZUFBYztJQUNkLFlBQVc7SUFDWCxVQUFTO0lBQ1QsWUFBVztJQUNYLG9CNUNqSnFCLEU0Q2tKeEI7O0FBR0w7RUFFUSxpQkFBZ0IsRUFDbkIiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXG4gKiBBdXRob3I6IE5pZWxzIEJ1aWp0ZW5odWlzXG4gKlxuICogU0NTUyBzdHJ1Y3R1cmU6XG4gKiAwIC0gVmVuZG9y4oCK4oCU4oCKT3B0aW9uYWwgdGhpcmQgcGFydHkgaW1wb3J0c1xuICogMSAtIFNldHRpbmdz4oCK4oCU4oCKcHJlcHJvY2Vzc29ycywgZm9udHMsIHZhcmlhYmxlc1xuICogMiAtIFRvb2xz4oCK4oCU4oCKbWl4aW5zLCBmdW5jdGlvbnNcbiAqIDMgLSBCYXNl4oCK4oCU4oCKcmVzZXQgLyBub3JtYWxpemVcbiAqIDQgLSBFbGVtZW50c+KAiuKAlOKAikhUTUwgZWxlbWVudHMgXG4gKiA1IC0gQ29tcG9uZW50c+KAiuKAlOKAilVJIGNvbXBvbmVudHNcbiAqIDYgLSBIZWxwZXJzIC0gaGVscGVyIGNsYXNzZXNcbiAqL1xuLyogXG4gKiBBbGwgY29sb3JzIHVzZWQgb24gdGhlIHdlYnNpdGUuXG4gKi9cbi8qIFxuICogVHlwb2dyYXBoeVxuICovXG4vKlxuICogR3JpZCwgQnJlYWtwb2ludHMgJiBXaWR0aHNcbiAqL1xuLypcbiAqIEZvcm0gZmllbGQgYmFzZVxuICovXG5pbnB1dFt0eXBlPWRhdGVdLCBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPWVtYWlsXSwgaW5wdXRbdHlwZT11cmxdLCBpbnB1dFt0eXBlPXNlYXJjaF0sIGlucHV0W3R5cGU9cGFzc3dvcmRdLCBpbnB1dFt0eXBlPXRlbF0sIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHBhZGRpbmc6IC40ZW0gLjRlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc4Nzg3ODtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM3ODc4Nzg7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC1zaXplOiAuOXJlbTsgfVxuICBpbnB1dDpmb2N1c1t0eXBlPWRhdGVdLCBpbnB1dDpmb2N1c1t0eXBlPXRleHRdLCBpbnB1dDpmb2N1c1t0eXBlPWVtYWlsXSwgaW5wdXQ6Zm9jdXNbdHlwZT11cmxdLCBpbnB1dDpmb2N1c1t0eXBlPXNlYXJjaF0sIGlucHV0OmZvY3VzW3R5cGU9cGFzc3dvcmRdLCBpbnB1dDpmb2N1c1t0eXBlPXRlbF0sIHRleHRhcmVhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5zZWxlY3Qge1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi9pbWFnZXMvYXJyb3ctZG93bi1zZWxlY3Quc3ZnXCIpIG5vLXJlcGVhdCByaWdodCAxNXB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAuNWVtIDIuNGVtIC41ZW0gMWVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDM1cHggIWltcG9ydGFudDsgfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDsgfVxuXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKiBcbiAqIEJ1dHRvbiBiYXNlXG4gKi9cbi8qIFxuICogTWl4aW5zXG4gKi9cbi8qIFxuICogTWl4aW4gZm9yIE1lZGlhIFF1ZXJpZXNcbiAqL1xuLyogXG4gKiBHcmlkIG1peGluXG4gKi9cbi8qIFxuICogUmVzZXQgSFRNTCBlbGVtZW50cyBhbmQgbGF5b3V0XG4gKi9cbjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cblxuaW1nOjpzZWxlY3Rpb24sXG4ucXVhbnRpdHktaW5wdXQ6OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbiosXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBodG1sIHtcbiAgICAgIGZvbnQtc2l6ZTogMTQuNXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgaHRtbCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbjogMDsgfVxuXG5hIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG4gIHAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzVENUU1RTsgfVxuICBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuZW1iZWQsXG5pbWcsXG5vYmplY3QsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKiBcbiAqIExheW91dCBiYXNlXG4gKi9cbmJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGJvZHkuaGlkZGVuIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG4ubGF5b3V0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDQwMG1zOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sYXlvdXQtY29udGFpbmVyLnNsaWRlLWNhbnZhcyB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MDBweCk7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGF5b3V0LWNvbnRhaW5lci5zbGlkZS1jYW52YXMge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygxMDAlIC0gNjBweCkpOyB9IH1cblxuc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNDBweCAwOyB9XG5cbi53cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMTcwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNTU5cHgpIHtcbiAgICAud3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgcGFkZGluZzogMCA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogMTI2MHB4OyB9IH1cblxuLnNpdGUtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMjgwcHg7XG4gIG1pbi1oZWlnaHQ6IDQwMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuc2l0ZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDsgfSB9XG5cbm5hdi5tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiA1MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgei1pbmRleDogOTk5O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDM1MG1zIGVhc2UtaW4tb3V0OyB9XG4gIG5hdi5tZW51LmFjdGl2ZS51cCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAlKSAhaW1wb3J0YW50OyB9XG4gIG5hdi5tZW51ID4gYSBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgbmF2Lm1lbnUgLmhhbWJ1cmdlciB7XG4gICAgYmFja2dyb3VuZDogIzhDMEMwNDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgei1pbmRleDogOTk5OTk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDsgfVxuICAgIG5hdi5tZW51IC5oYW1idXJnZXIgc3BhbiB7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gM3B4IC8gMik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIG5hdi5tZW51IC5oYW1idXJnZXIgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4OyB9XG4gICAgICBuYXYubWVudSAuaGFtYnVyZ2VyIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjhweDsgfVxuICAgIG5hdi5tZW51IC5oYW1idXJnZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDsgfVxuICAgIG5hdi5tZW51IC5oYW1idXJnZXIuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBtYXJnaW4tbGVmdDogNDAwcHg7IH1cbiAgICAgIG5hdi5tZW51IC5oYW1idXJnZXIuYWN0aXZlIHNwYW4ge1xuICAgICAgICB3aWR0aDogMDsgfVxuICAgICAgICBuYXYubWVudSAuaGFtYnVyZ2VyLmFjdGl2ZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgd2lkdGg6IDQ1cHg7IH1cbiAgICAgICAgbmF2Lm1lbnUgLmhhbWJ1cmdlci5hY3RpdmUgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTlweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgbmF2Lm1lbnUgLmhhbWJ1cmdlci5hY3RpdmUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgcmlnaHQ6IDI4MHB4O1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQ6ICNjNDExMzA7IH1cbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfSB9XG4gICAgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0OmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH0gfVxuICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IHN2ZyB7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMzZweDsgfVxuICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IC5zaG9wcGluZy1iYXNrZXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IC5zaG9wcGluZy1iYXNrZXQgLnNob3BwaW5nLWNhcnQtaXRlbXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTNweCAwIHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIG5hdi5tZW51IC5zaG9wcGluZy1jYXJ0IC50b2dnbGUtYmFza2V0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAgICAgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQgLnRvZ2dsZS1iYXNrZXQgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICBuYXYubWVudSAuc2hvcHBpbmctY2FydC5vcGVuIC50b2dnbGUtYmFza2V0IHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQge1xuICAgICAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTlweCkge1xuICAgICAgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMCA4cHggIWltcG9ydGFudDsgfSB9XG4gIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7XG4gICAgcmlnaHQ6IDI4MHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjJweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IGgzIHtcbiAgICAgIGNvbG9yOiAjMUIxRTI0O1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIHtcbiAgICAgIG1heC1oZWlnaHQ6IDBweDtcbiAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMzUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICBvdmVyZmxvdzogYXV0bzsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIHtcbiAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9IH1cbiAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDhEOEQ4OyB9XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA2MHB4OyB9XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC50ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjVweDsgfVxuICAgICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC50ZXh0IC50aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC50ZXh0IC50aXRsZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7IH0gfVxuICAgICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC50ZXh0IC52YXJpYXRpZSB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgICBuYXYubWVudSAjc21hbGwtY2FydCB1bCBsaSAudGV4dCAucHJpY2Uge1xuICAgICAgICAgICAgY29sb3I6ICM1RDVFNUU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgdWwgbGkgLnByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgICAgICAgbWluLXdpZHRoOiA2MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC5wcm9kdWN0LWNvdW50IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7IH1cbiAgICAgICAgICBuYXYubWVudSAjc21hbGwtY2FydCB1bCBsaSAucHJvZHVjdC1jb3VudCBpbnB1dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDhEOEQ4OyB9XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICBuYXYubWVudSAjc21hbGwtY2FydC5vcGVuIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsgfVxuICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQub3BlbiB1bCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzNTBtczsgfVxuICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IC5jaGVja291dC1idG4sXG4gICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgLnRvLWNhcnQtYnRuIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0OyB9XG4gICAgICBuYXYubWVudSAjc21hbGwtY2FydCAuY2hlY2tvdXQtYnRuOmhvdmVyLFxuICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgLnRvLWNhcnQtYnRuOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzhDMEMwNDsgfVxuICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgLmNoZWNrb3V0LWJ0biBzdmcsXG4gICAgICBuYXYubWVudSAjc21hbGwtY2FydCAudG8tY2FydC1idG4gc3ZnIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IC50by1jYXJ0LWJ0biB7XG4gICAgICBjb2xvcjogI2M0MTEzMDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3R0b206IDUycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgICBuYXYubWVudSAjc21hbGwtY2FydCAudG8tY2FydC1idG46aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzhDMEMwNDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgbmF2Lm1lbnUgI3NtYWxsLWNhcnQge1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgIHJpZ2h0OiAwcHg7IH0gfVxuICBuYXYubWVudS5wcmVwYXJlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAtMTIwcHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDQwMG1zO1xuICAgIGhlaWdodDogODBweDtcbiAgICB6LWluZGV4OiAxMDAwMDAwOyB9XG4gICAgbmF2Lm1lbnUucHJlcGFyZSAuaGFtYnVyZ2VyIHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgdG9wOiAwOyB9XG4gICAgICBuYXYubWVudS5wcmVwYXJlIC5oYW1idXJnZXIuYWN0aXZlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQwMHB4OyB9XG4gICAgICAgIG5hdi5tZW51LnByZXBhcmUgLmhhbWJ1cmdlci5hY3RpdmUgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgdG9wOiA0MHB4OyB9XG4gICAgICAgIG5hdi5tZW51LnByZXBhcmUgLmhhbWJ1cmdlci5hY3RpdmUgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE4cHg7IH1cbiAgICBuYXYubWVudS5wcmVwYXJlID4gaW1nIHtcbiAgICAgIGhlaWdodDogODBweDsgfVxuICAgIG5hdi5tZW51LnByZXBhcmUgLnNob3BwaW5nLWNhcnQge1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cbiAgICAgIG5hdi5tZW51LnByZXBhcmUgLnNob3BwaW5nLWNhcnQgLnNob3BwaW5nLWJhc2tldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgICAgbmF2Lm1lbnUucHJlcGFyZSAuc2hvcHBpbmctY2FydCAudG9nZ2xlLWJhc2tldCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgbmF2Lm1lbnUucHJlcGFyZSAuc2hvcHBpbmctY2FydCAudG9nZ2xlLWJhc2tldCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBuYXYubWVudS5wcmVwYXJlICNzbWFsbC1jYXJ0IHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICBuYXYubWVudS5wcmVwYXJlICNzbWFsbC1jYXJ0Lm9wZW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICBuYXYubWVudS5wcmVwYXJlIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0Q4RDhEODtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICByaWdodDogMjBweDsgfVxuICAgICAgbmF2Lm1lbnUucHJlcGFyZSAuc2hvcHBpbmctY2FydCAudG9nZ2xlLWJhc2tldCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAgIG5hdi5tZW51LnByZXBhcmUgLnNob3BwaW5nLWNhcnQgLnRvZ2dsZS1iYXNrZXQge1xuICAgICAgICAgICAgY29sb3I6ICMyNzI3Mjc7IH0gfVxuICAgICAgbmF2Lm1lbnUucHJlcGFyZSAuc2hvcHBpbmctY2FydCBzdmcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCUpOyB9XG4gIG5hdi5tZW51LmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtczsgfVxuICAgIG5hdi5tZW51LmFjdGl2ZSAjc21hbGwtY2FydC5vcGVuIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgdG9wOiA4MHB4OyB9XG4gIG5hdi5tZW51Lm1lbnUtb3BlbiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4gICAgbmF2Lm1lbnUubWVudS1vcGVuIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0Q4RDhEODsgfVxuICAgICAgbmF2Lm1lbnUubWVudS1vcGVuIC5zaG9wcGluZy1jYXJ0IC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgbmF2Lm1lbnUubWVudS1vcGVuIC5zaG9wcGluZy1jYXJ0IC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjcyNzI3OyB9IH1cbiAgICAgIG5hdi5tZW51Lm1lbnUtb3BlbiAuc2hvcHBpbmctY2FydCBzdmcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIG5hdi5tZW51Lm1lbnUtb3BlbiAuc2hvcHBpbmctY2FydC5vcGVuIC50b2dnbGUtYmFza2V0IHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgIG5hdi5tZW51LnByZXBhcmUge1xuICAgICAgei1pbmRleDogOTk5OTk5OTk5OTk7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBuYXYubWVudSB7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgICAgei1pbmRleDogOTk5OTk5OTk7IH1cbiAgICAgIG5hdi5tZW51LmFjdGl2ZSB7XG4gICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7IH1cbiAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDEzMHB4O1xuICAgICAgICB6LWluZGV4OiA5OTk5OTsgfVxuICAgICAgICBuYXYubWVudSAjc21hbGwtY2FydCB1bCBsaSAudGV4dCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAgIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsIGxpIC5wcmljZSB7XG4gICAgICAgICAgbWluLXdpZHRoOiAwOyB9XG4gICAgICBuYXYubWVudSA+IGEgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4OyB9XG4gICAgICBuYXYubWVudS5hY3RpdmUudXAge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSkgIWltcG9ydGFudDsgfVxuICAgICAgbmF2Lm1lbnUgLmhhbWJ1cmdlciB7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgICAgICAgbmF2Lm1lbnUgLmhhbWJ1cmdlci5hY3RpdmUgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgdG9wOiA0MHB4OyB9XG4gICAgICAgIG5hdi5tZW51IC5oYW1idXJnZXIuYWN0aXZlIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4OyB9XG4gICAgICBuYXYubWVudSA+IGltZyB7XG4gICAgICAgIGhlaWdodDogODBweDsgfVxuICAgICAgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQge1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDsgfVxuICAgICAgICBuYXYubWVudSAuc2hvcHBpbmctY2FydCAuc2hvcHBpbmctYmFza2V0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgICAgICBuYXYubWVudSAuc2hvcHBpbmctY2FydCAudG9nZ2xlLWJhc2tldCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBuYXYubWVudS5hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBuYXYubWVudSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsgfSB9XG4gIG5hdi5tZW51LmZpeGVkIHtcbiAgICB0b3A6IDA7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgbmF2Lm1lbnUuZml4ZWQgI3NtYWxsLWNhcnQge1xuICAgICAgdG9wOiA4MHB4OyB9XG5cbi5lbXB0eS1jYXJ0IHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGNvbG9yOiAjRDhEOEQ4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5wcm9kdWN0LW5hdiBuYXYge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gIC5wcm9kdWN0LW5hdiBuYXYgLnNob3BwaW5nLWNhcnQge1xuICAgIGJvcmRlci1jb2xvcjogI0Q4RDhEODtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgLnByb2R1Y3QtbmF2IG5hdiAuc2hvcHBpbmctY2FydCAudG9nZ2xlLWJhc2tldCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5wcm9kdWN0LW5hdiBuYXYgLnNob3BwaW5nLWNhcnQgLnRvZ2dsZS1iYXNrZXQge1xuICAgICAgICAgIGNvbG9yOiAjMjcyNzI3OyB9IH1cbiAgICAucHJvZHVjdC1uYXYgbmF2IC5zaG9wcGluZy1jYXJ0IHN2ZyB7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCUpOyB9XG5cbi5vdmVybGF5Lm1lbnUtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogODA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvbGRvdXQtbWVudSB7XG4gIGJhY2tncm91bmQ6ICMxQjFFMjQ7XG4gIHdpZHRoOiA1NjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk5OTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMHB4IDAgMCAwO1xuICBib3gtc2hhZG93OiAwIDJweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uOiBhbGwgNDUwbXMgZWFzZS1vdXQ7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG4gIC5mb2xkb3V0LW1lbnUgLm1lbnUtdGl0bGUge1xuICAgIHBhZGRpbmc6IDBweCAyNXB4IDAgMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgLmZvbGRvdXQtbWVudSAubWVudS10aXRsZSBoMyB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5mb2xkb3V0LW1lbnUgLm1lbnUtdGl0bGUgaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmZvbGRvdXQtbWVudSB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgLmZvbGRvdXQtbWVudSB1bCA+ICoge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygwcHgpO1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmZvbGRvdXQtbWVudSB1bCA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5mb2xkb3V0LW1lbnUgdWwgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZm9sZG91dC1tZW51IHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgICAgLmZvbGRvdXQtbWVudSB1bCA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5mb2xkb3V0LW1lbnUgdWwgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5mb2xkb3V0LW1lbnUgdWwgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAuZm9sZG91dC1tZW51IHVsIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ3JpZC1nYXA6IDBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAuZm9sZG91dC1tZW51IHVsIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgLmZvbGRvdXQtbWVudSB1bCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgICAgICAgLmZvbGRvdXQtbWVudSB1bCA+ICoge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgLmZvbGRvdXQtbWVudSB1bCBsaSBhIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogNjBweCAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgICAgLmZvbGRvdXQtbWVudSB1bCBsaSBhIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5mb2xkb3V0LW1lbnUgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmZvbGRvdXQtbWVudSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9XG4gICAgICAuZm9sZG91dC1tZW51IHVsIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIC5mb2xkb3V0LW1lbnUuYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogOTk5OTk5OTk5OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmZvbGRvdXQtbWVudSB1bCBsaSBhIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIC5mb2xkb3V0LW1lbnUuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7IH1cblxuLmhvbWUtbmF2aWdhdGlvbiAuc2hvcHBpbmctY2FydCB7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLmhvbWUtbmF2aWdhdGlvbiAjc21hbGwtY2FydCB7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuI2ltYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAyMHB4O1xuICBoZWlnaHQ6IDc1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgI2ltYWdlcyA+ICoge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDIwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgyMHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgI2ltYWdlcyA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICNpbWFnZXMgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgyMHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgICAgICAjaW1hZ2VzID4gKjpudGgtY2hpbGQoMW4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAjaW1hZ2VzID4gKiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMjBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgI2ltYWdlcyA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICNpbWFnZXMgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgyMHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAjaW1hZ2VzID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICNpbWFnZXMgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgyMHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAjaW1hZ2VzID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAjaW1hZ2VzIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgZ3JpZC1nYXA6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAjaW1hZ2VzIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAjaW1hZ2VzIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAjaW1hZ2VzIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgI2ltYWdlcyB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAjaW1hZ2VzID4gKiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAjaW1hZ2VzIC5pbWFnZSAuaW1hZ2UtMSB7XG4gICAgYmFja2dyb3VuZDogIzVENUU1RTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgI2ltYWdlcyAuaW1hZ2VzIC5pbWFnZS0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgYmFja2dyb3VuZDogIzVENUU1RTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gICNpbWFnZXMgLmltYWdlcyAuaW1hZ2UtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGJhY2tncm91bmQ6ICM1RDVFNUU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFCMUUyNDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvb3Rlci1iYWNrZ3JvdW5kLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA1MDBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogNTBweCAwO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIGZvb3RlciAud3JhcHBlciBoNCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50OyB9XG4gIGZvb3RlciAud3JhcHBlciAuc29jaWFsIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgb3BhY2l0eTogMC42MDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAgIGZvb3RlciAud3JhcHBlciAuc29jaWFsIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICBmb290ZXIgLndyYXBwZXIgLnNtYXJ0cGhvbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgZm9vdGVyIC53cmFwcGVyIHAge1xuICAgIG9wYWNpdHk6IDAuNjA7XG4gICAgZm9udC1zaXplOiAwLjllbTsgfVxuICAgIGZvb3RlciAud3JhcHBlciBwIGEge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgZm9vdGVyIC53cmFwcGVyID4gdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKiB7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyg1MHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoNTBweCAqICgxIC0gMSkgLyAxKSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICg1MHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gNCkgLSAoNTBweCAqICg0IC0gMSkgLyA0KSk7IH1cbiAgICAgICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCA+ICo6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA0KSAtICg1MHB4ICogKDQgLSAxKSAvIDQpKTsgfVxuICAgICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA0KSAtICg1MHB4ICogKDQgLSAxKSAvIDQpKTsgfVxuICAgICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsID4gKjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgIGdyaWQtZ2FwOiA1MHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgIGZvb3RlciAud3JhcHBlciA+IHVsIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgZm9vdGVyIC53cmFwcGVyID4gdWwge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICBmb290ZXIgLndyYXBwZXIgPiB1bCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyB9IH1cbiAgICAgICAgZm9vdGVyIC53cmFwcGVyID4gdWwgPiAqIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIGZvb3RlciAud3JhcHBlciA+IHVsIHVsIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwLjYwO1xuICAgICAgZm9udC1zaXplOiAwLjllbTsgfVxuICAgICAgZm9vdGVyIC53cmFwcGVyID4gdWwgdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgICAgZm9vdGVyIC53cmFwcGVyID4gdWwgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGZvb3RlciAud3JhcHBlciAuc21hcnRwaG9uZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgZm9vdGVyIC53cmFwcGVyIC5zbWFydHBob25lIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9IH1cbiAgZm9vdGVyIC53cmFwcGVyIC5zZWFyY2gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTExMTE7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDE0cHggMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07IH1cbiAgZm9vdGVyIC5zdWJmb290ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICMxMTExMTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBtYXJnaW4tYm90dG9tOiAtNTBweDtcbiAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLyogXG4gKiBGb3JtIGZpZWxkc1xuICovXG5pbnB1dCB7XG4gIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDsgfVxuICBpbnB1dC5zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzVENUU1RTtcbiAgICBwYWRkaW5nOiAuN2VtIC4xZW07XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3NlYXJjaC1pY29uLWdyZXkuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwcHggMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7IH1cbiAgICBpbnB1dC5zZWFyY2g6Zm9jdXMsIGlucHV0LnNlYXJjaDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2VhcmNoLWljb24tZ3JleS5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMHB4OyB9XG5cbi5wcm9kdWN0LWNvdW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gIC5wcm9kdWN0LWNvdW50IGlucHV0IHtcbiAgICB3aWR0aDogMzVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDdweDsgfVxuICAucHJvZHVjdC1jb3VudCBzdmcge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLyogXG4gKiBIZWFkaW5nc1xuICovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjYzQxMTMwOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiA1cmVtOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbi8qIFxuICogTWVkaWFcbiAqL1xuLyogXG4gKiBCdXR0b25zXG4gKi9cbi5idXR0b24sIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nOiAuN2VtIDIuMmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogMTI1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyLWNvbG9yLCBjb2xvcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgb3V0bGluZTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtaW4td2lkdGg6IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQxMTMwO1xuICBib3JkZXItY29sb3I6ICNjNDExMzA7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAuYnV0dG9uOmhvdmVyLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgYTpob3ZlciwgLmJ1dHRvbjpmb2N1cywgZm9vdGVyIC5ray1zdW1tYXJ5LWNvbXBhbnktdXJsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4QzBDMDQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjOEMwQzA0OyB9XG4gIC5idXR0b246Zm9jdXMsIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWEwODAzO1xuICAgIGJvcmRlci1jb2xvcjogIzVhMDgwMzsgfVxuXG4ud3Bmb3Jtcy1mb3JtIC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIgI3dwZm9ybXMtc3VibWl0LTE1NjYge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IC43ZW0gMi4yZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMjVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGNvbG9yO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNDExMzA7XG4gIGJvcmRlci1jb2xvcjogI2M0MTEzMDtcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC53cGZvcm1zLWZvcm0gLndwZm9ybXMtc3VibWl0LWNvbnRhaW5lciAjd3Bmb3Jtcy1zdWJtaXQtMTU2Njpob3ZlciwgLndwZm9ybXMtZm9ybSAud3Bmb3Jtcy1zdWJtaXQtY29udGFpbmVyICN3cGZvcm1zLXN1Ym1pdC0xNTY2OmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOEMwQzA0O1xuICAgIGJvcmRlci1jb2xvcjogIzhDMEMwNDsgfVxuICAud3Bmb3Jtcy1mb3JtIC53cGZvcm1zLXN1Ym1pdC1jb250YWluZXIgI3dwZm9ybXMtc3VibWl0LTE1NjY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTA4MDM7XG4gICAgYm9yZGVyLWNvbG9yOiAjNWEwODAzOyB9XG5cbi5idG4tb3V0bGluZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNjNDExMzA7XG4gIGNvbG9yOiAjYzQxMTMwOyB9XG4gIC5idG4tb3V0bGluZTpob3ZlciwgLmJ0bi1vdXRsaW5lOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOEMwQzA0O1xuICAgIGJvcmRlci1jb2xvcjogIzhDMEMwNDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnRuLW91dGxpbmU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCM4QzBDMDQsIDEwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBzaGFkZSgjOEMwQzA0LCAxMCUpOyB9XG5cbi5idXR0b24tc20ge1xuICBwYWRkaW5nLXRvcDogMC4yZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjJlbTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKiBcbiAqIFByb2R1Y3QgYnV0dG9uIHdpdGggaG92ZXIgZWZmZWN0XG4gKi9cbi5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M0MTEzMDtcbiAgYm9yZGVyLXJhZGl1czogNnB4IDBweCAwcHggNnB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvdHRvbTogMDtcbiAgYm94LXNoYWRvdzogMCAycHggMTFweCAwIHJnYmEoODQsIDg0LCA4NCwgMC41KTtcbiAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogOTk5OTk5OyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwLnNpbmdsZSB7XG4gICAgYm90dG9tOiAxOHB4OyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwIC5jb3VudCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC04cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAucHJvZHVjdC1idXR0b24td3JhcCAuY291bnQgc3ZnIHtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4OyB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAgLmNvdW50Lm1pbiB7XG4gICAgICBsZWZ0OiAycHg7IH1cbiAgICAucHJvZHVjdC1idXR0b24td3JhcCAuY291bnQuYWRkIHtcbiAgICAgIHJpZ2h0OiA1MHB4OyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwIGlucHV0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOXB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogNTBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgaGVpZ2h0OiAyNXB4OyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvc2hvcHBpbmctY2FydC1hZGQuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICByaWdodDogMHB4O1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uLmRpc2FibGVkIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b246aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjYzQxMTMwOyB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b246Zm9jdXMsIC5wcm9kdWN0LWJ1dHRvbi13cmFwIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uOmFjdGl2ZSB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAucHJvZHVjdC1idXR0b24td3JhcCAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbi5sb2FkaW5nOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCAxMXB4IDAgcmdiYSg4NCwgODQsIDg0LCAwLjUpO1xuICAgICAgYW5pbWF0aW9uOiBzaG9wcGluZyA1MDBtcyBlYXNlO1xuICAgICAgZmlsdGVyOiBibHVyKDgwJSk7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAucHJvZHVjdC1idXR0b24td3JhcCAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbi5sb2FkaW5nOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnVG9lZ2V2b2VnZCEnO1xuICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogOHB4O1xuICAgICAgbGVmdDogLTE1MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMzVweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYW5pbWF0aW9uOiBmZWVkYmFjayAxLjFzIGVhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uLmxvYWRpbmc6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogLTE4MHB4O1xuICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxOXB4KSB7XG4gICAgICAucHJvZHVjdC1idXR0b24td3JhcCAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbi5sb2FkaW5nOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IC0xNjBweDtcbiAgICAgICAgd2lkdGg6IDEyMCU7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZlZWRiYWNrIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMzAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBzaG9wcGluZyB7XG4gIDAlIHtcbiAgICB0b3A6IC01MHB4O1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDgwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICB0b3A6IC0zMDBweDsgfSB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24uZGlzYWJsZWQge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDsgfVxuICAucHJvZHVjdC1idXR0b24td3JhcC5ob3Zlcjpob3ZlciB7XG4gICAgd2lkdGg6IDIxMHB4O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zOyB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXI6aG92ZXIgaW5wdXQsIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyOmhvdmVyIC5jb3VudCB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtczsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyOmhvdmVyIC5jb3VudCB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtczsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWFyZ2luOiAxNXB4IGF1dG8gMCBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciBpbnB1dCwgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXIgLmNvdW50IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogNDAwbXM7XG4gICAgICAgIHRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEwcHgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yNnB4O1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXIgaW5wdXQgc3ZnLCAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciAuY291bnQgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyIC5jb3VudCB7XG4gICAgICAgIHRvcDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXIgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgICAgIHdpZHRoOiAyMSU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMnB4OyB9XG4gICAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciAuY291bnQge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtczsgfVxuICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXI6aG92ZXIge1xuICAgICAgICB3aWR0aDogOTAlOyB9IH1cbiAgQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXJnaW46IDE1cHggYXV0byAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3R0b206IDA7IH1cbiAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyIGlucHV0LCAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciAuY291bnQge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtcztcbiAgICAgICAgdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTBweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTI2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgICAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciBpbnB1dCBzdmcsIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyIC5jb3VudCBzdmcge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDsgfVxuICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAuaG92ZXIgLmNvdW50IHtcbiAgICAgICAgdG9wOiA4cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3ZlciAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIycHg7IH1cbiAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmhvdmVyIC5jb3VudCB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zOyB9XG4gICAgICAucHJvZHVjdC1idXR0b24td3JhcC5ob3Zlcjpob3ZlciB7XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAucHJvZHVjdC1idXR0b24td3JhcC5ob3Zlci5sb2FkaW5nIC5jb3VudCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTBtczsgfVxuICAucHJvZHVjdC1idXR0b24td3JhcC5ob3Zlci5sb2FkaW5nIC50ZXh0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMG1zOyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDVweCA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTQ1cHg7XG4gICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW4gaW5wdXQsIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW4gLmNvdW50IHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwMG1zO1xuICAgICAgdG9wOiAzcHggIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogY2FsYygyNyUgLSAxMHB4KTtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLXRvcDogLTIycHg7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW4gaW5wdXQgc3ZnLCAucHJvZHVjdC1idXR0b24td3JhcC5vcGVuIC5jb3VudCBzdmcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAub3BlbiAuY291bnQge1xuICAgICAgdG9wOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW4gLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICAgIHdpZHRoOiAyMSU7XG4gICAgICBtYXJnaW4tdG9wOiAtMjRweDsgfVxuICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAub3BlbiAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAtMTU4cHg7IH1cbiAgICAucHJvZHVjdC1idXR0b24td3JhcC5vcGVuIC5jb3VudCB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtczsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLm9wZW46aG92ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnByb2R1Y3QtYnV0dG9uLXdyYXAubG9hZGluZyAuY291bnQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlOyB9XG4gIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmxvYWRpbmcgLnRleHQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwLnNpbmdsZSB7XG4gICAgICBib3R0b206IDBweCAhaW1wb3J0YW50OyB9IH1cblxuLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydC1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQtZGlzYWJsZWQgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEOEQ4RDg7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiFcbiAqIGZ1bGxQYWdlIDMuMC4zXG4gKiBodHRwczovL2dpdGh1Yi5jb20vYWx2YXJvdHJpZ28vZnVsbFBhZ2UuanNcbiAqXG4gKiBAbGljZW5zZSBHUEx2MyBmb3Igb3BlbiBzb3VyY2UgdXNlIG9ubHlcbiAqIG9yIEZ1bGxwYWdlIENvbW1lcmNpYWwgTGljZW5zZSBmb3IgY29tbWVyY2lhbCB1c2VcbiAqIGh0dHA6Ly9hbHZhcm90cmlnby5jb20vZnVsbFBhZ2UvcHJpY2luZy9cbiAqXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTggaHR0cDovL2FsdmFyb3RyaWdvLmNvbS9mdWxsUGFnZSAtIEEgcHJvamVjdCBieSBBbHZhcm8gVHJpZ29cbiAqL1xuaHRtbC5mcC1lbmFibGVkLFxuLmZwLWVuYWJsZWQgYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLypBdm9pZCBmbGlja2VyIG9uIHNsaWRlcyB0cmFuc2l0aW9ucyBmb3IgbW9iaWxlIHBob25lcyAjMzM2ICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgfVxuXG4uZnAtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiBTYWZhcmk8PTUgQW5kcm9pZDw9MyAqL1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDw9MjggKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4uZnAtc2xpZGUge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uZnAtc2xpZGUsIC5mcC1zbGlkZXNDb250YWluZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mcC1zbGlkZXMge1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbiAgLyogU2FmYXJpPD02IEFuZHJvaWQ8PTQuMyAqL1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDsgfVxuXG4uZnAtc2VjdGlvbi5mcC10YWJsZSwgLmZwLXNsaWRlLmZwLXRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5mcC10YWJsZUNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5mcC1zbGlkZXNDb250YWluZXIge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5mcC1jb250cm9sQXJyb3cge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAvKiB3ZWJraXQgKHNhZmFyaSwgY2hyb21lKSBicm93c2VycyAqL1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAvKiBtb3ppbGxhIGJyb3dzZXJzICovXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLyogd2Via2l0IChrb25xdWVyb3IpIGJyb3dzZXJzICovXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgLyogSUUxMCsgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICB0b3A6IDUwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBtYXJnaW4tdG9wOiAtMzhweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uZnAtY29udHJvbEFycm93LmZwLXByZXYge1xuICBsZWZ0OiAxNXB4O1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLXdpZHRoOiAzOC41cHggMzRweCAzOC41cHggMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5mcC1jb250cm9sQXJyb3cuZnAtbmV4dCB7XG4gIHJpZ2h0OiAxNXB4O1xuICBib3JkZXItd2lkdGg6IDM4LjVweCAwIDM4LjVweCAzNHB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmY7IH1cblxuLmZwLXNjcm9sbGFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZwLXNjcm9sbGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uaVNjcm9sbEluZGljYXRvciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5mcC1ub3RyYW5zaXRpb24ge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiNmcC1uYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDtcbiAgbWFyZ2luLXRvcDogLTMycHg7XG4gIHRvcDogNTAlO1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuI2ZwLW5hdi5mcC1yaWdodCB7XG4gIHJpZ2h0OiAxN3B4OyB9XG5cbiNmcC1uYXYuZnAtbGVmdCB7XG4gIGxlZnQ6IDE3cHg7IH1cblxuLmZwLXNsaWRlc05hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNDtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDsgfVxuXG4uZnAtc2xpZGVzTmF2LmZwLWJvdHRvbSB7XG4gIGJvdHRvbTogMTdweDsgfVxuXG4uZnAtc2xpZGVzTmF2LmZwLXRvcCB7XG4gIHRvcDogMTdweDsgfVxuXG4jZnAtbmF2IHVsLFxuLmZwLXNsaWRlc05hdiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4jZnAtbmF2IHVsIGxpLFxuLmZwLXNsaWRlc05hdiB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBtYXJnaW46IDdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5mcC1zbGlkZXNOYXYgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuI2ZwLW5hdiB1bCBsaSBhLFxuLmZwLXNsaWRlc05hdiB1bCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuI2ZwLW5hdiB1bCBsaSBhLmFjdGl2ZSBzcGFuLFxuLmZwLXNsaWRlc05hdiB1bCBsaSBhLmFjdGl2ZSBzcGFuLFxuI2ZwLW5hdiB1bCBsaTpob3ZlciBhLmFjdGl2ZSBzcGFuLFxuLmZwLXNsaWRlc05hdiB1bCBsaTpob3ZlciBhLmFjdGl2ZSBzcGFuIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICB3aWR0aDogMTJweDtcbiAgbWFyZ2luOiAtNnB4IDAgMCAtNnB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbiNmcC1uYXYgdWwgbGkgYSBzcGFuLFxuLmZwLXNsaWRlc05hdiB1bCBsaSBhIHNwYW4ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiA0cHg7XG4gIHdpZHRoOiA0cHg7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luOiAtMnB4IDAgMCAtMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7IH1cblxuI2ZwLW5hdiB1bCBsaTpob3ZlciBhIHNwYW4sXG4uZnAtc2xpZGVzTmF2IHVsIGxpOmhvdmVyIGEgc3BhbiB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogLTVweCAwcHggMHB4IC01cHg7IH1cblxuI2ZwLW5hdiB1bCBsaSAuZnAtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LWZhbWlseTogYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAyMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuI2ZwLW5hdiB1bCBsaTpob3ZlciAuZnAtdG9vbHRpcCxcbiNmcC1uYXYuZnAtc2hvdy1hY3RpdmUgYS5hY3RpdmUgKyAuZnAtdG9vbHRpcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMTsgfVxuXG4jZnAtbmF2IHVsIGxpIC5mcC10b29sdGlwLmZwLXJpZ2h0IHtcbiAgcmlnaHQ6IDIwcHg7IH1cblxuI2ZwLW5hdiB1bCBsaSAuZnAtdG9vbHRpcC5mcC1sZWZ0IHtcbiAgbGVmdDogMjBweDsgfVxuXG4uZnAtYXV0by1oZWlnaHQuZnAtc2VjdGlvbixcbi5mcC1hdXRvLWhlaWdodCAuZnAtc2xpZGUsXG4uZnAtYXV0by1oZWlnaHQgLmZwLXRhYmxlQ2VsbCB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5mcC1yZXNwb25zaXZlIC5mcC1hdXRvLWhlaWdodC1yZXNwb25zaXZlLmZwLXNlY3Rpb24sXG4uZnAtcmVzcG9uc2l2ZSAuZnAtYXV0by1oZWlnaHQtcmVzcG9uc2l2ZSAuZnAtc2xpZGUsXG4uZnAtcmVzcG9uc2l2ZSAuZnAtYXV0by1oZWlnaHQtcmVzcG9uc2l2ZSAuZnAtdGFibGVDZWxsIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLypPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVycyovXG4uZnAtc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDsgfVxuXG4ud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc4Nzg3ODtcbiAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCBsaS5pcy1hY3RpdmUgYSwgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyIGEge1xuICAgICAgY29sb3I6ICNjNDExMzA7IH1cblxuI3BpZ2d5LWNoZWNrIHtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODsgfVxuICAjcGlnZ3ktY2hlY2sgaDQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICNwaWdneS1jaGVjayBpbnB1dCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRDhEOEQ4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAjcGlnZ3ktY2hlY2sgaW5wdXQuc3VibWl0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgIGJvcmRlci1jb2xvcjogI2M0MTEzMDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICNwaWdneS1jaGVjayBwIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4vKlxuICogKFJlc3BvbnNpdmUpIEZ1bGwgdmlkZW8gY29udGFpbmVyXG4gKi9cbi5mdWxsLXZpZGVvIHtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuICAuZnVsbC12aWRlbyAudmlkZW8tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMDtcbiAgICBtaW4td2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7IH1cbiAgICAuZnVsbC12aWRlbyAudmlkZW8tY29udGFpbmVyIHZpZGVvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuZnVsbC12aWRlbyAudmlkZW8tY29udGFpbmVyIHZpZGVvIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9IH1cbiAgICAuZnVsbC12aWRlbyAudmlkZW8tY29udGFpbmVyOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzksIDM5LCAzOSwgMC42KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDsgfVxuXG4udXNwIHtcbiAgYmFja2dyb3VuZDogIzI3MjcyNztcbiAgY29sb3I6ICNmZmY7XG4gIGhlaWdodDogNTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwMDsgfVxuICAudXNwIHVsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudXNwIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogNiU7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgIC51c3AgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgLnVzcCB1bCBsaSBzdmcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLnVzcCBhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgLnVzcCBhIGkge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDJyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLnVzcCB1bCBsaTpudGgtY2hpbGQoMiksIC51c3AgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnVzcCBhIHtcbiAgICAgIHJpZ2h0OiAxMHB4OyB9IH1cblxuLypcbiAqIENvb2tpZSBiYXJcbiAqL1xuI2Nvb2tpZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgcGFkZGluZzogMzBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOEQ4RDg7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk7IH1cbiAgI2Nvb2tpZSAuaW1hZ2Uge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEwcHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICNjb29raWUgLmltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAjY29va2llIC50ZXh0IHtcbiAgICB3aWR0aDogY2FsYyg2MCUgLSAyMHB4KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAjY29va2llIC50ZXh0IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAjY29va2llIC5jbG9zZSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDE1JTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAjY29va2llIC50ZXh0LFxuICAgICNjb29raWUgLmltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAjY29va2llIC5pbWFnZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweCBhdXRvOyB9XG4gICAgI2Nvb2tpZSAuY2xvc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cblxuLypcbiAqIFdQIHBhZ2luZyBzdHlsaW5nXG4gKi9cbi5wYWdpbmcgLnBhZ2UtbnVtYmVycyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAucGFnaW5nIC5wYWdlLW51bWJlcnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBzcGFuLCAucGFnaW5nIC5wYWdlLW51bWJlcnMgbGkgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCA0MDBtczsgfVxuICAgICAgLnBhZ2luZyAucGFnZS1udW1iZXJzIGxpIHNwYW4uY3VycmVudCwgLnBhZ2luZyAucGFnZS1udW1iZXJzIGxpIHNwYW46aG92ZXIsIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBhLmN1cnJlbnQsIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M0MTEzMDtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBzcGFuLm5leHQsIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBzcGFuLnByZXYsIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBhLm5leHQsIC5wYWdpbmcgLnBhZ2UtbnVtYmVycyBsaSBhLnByZXYge1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuXG4ucGFnaW5nLmNlbnRlciAud3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucGFnaW5nLmNlbnRlciAud3JhcHBlciAucGFnZS1udW1iZXJzIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnBhZ2luZy5yaWdodCAud3JhcHBlciAucGFnZS1udW1iZXJzIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbiNoZXJvIHtcbiAgaGVpZ2h0OiA0NjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgI2hlcm8ge1xuICAgICAgaGVpZ2h0OiA0MDBweDsgfSB9XG4gICNoZXJvIC52aWRlby1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtaW4td2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgICNoZXJvIC52aWRlby1jb250YWluZXIgdmlkZW8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAjaGVyby5mdWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1MHB4KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgI2hlcm8uZnVsbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH0gfVxuICAgICNoZXJvLmZ1bGwgLm92ZXJsYXktdGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAjaGVyby5mdWxsIC5vdmVybGF5LXRleHQgaDEge1xuICAgICAgICBmb250LWZhbWlseTogZWxvcXVlbnQtamYtcHJvLCBzZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAjaGVyby5mdWxsIC5vdmVybGF5LXRleHQgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtOyB9IH1cbiAgICAgICNoZXJvLmZ1bGwgLm92ZXJsYXktdGV4dCAubW9iaWxlYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICNoZXJvLmZ1bGwgLm92ZXJsYXktdGV4dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICNoZXJvLmZ1bGwgLm92ZXJsYXktdGV4dCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAgICAgI2hlcm8uZnVsbCAub3ZlcmxheS10ZXh0IC5tb2JpbGVidXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAjaGVyby5mdWxsIC50b3Age1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgI2hlcm8uc3RhbmRhcmQgLm92ZXJsYXktdGV4dCBoMSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgI2hlcm8uc3RhbmRhcmQgLm92ZXJsYXktdGV4dCBoMTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDsgfVxuICAjaGVybyAuc2Nyb2xsLWRvd24ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICNoZXJvIC5zY3JvbGwtZG93biAudG9wIHtcbiAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDsgfVxuICAgICAgI2hlcm8gLnNjcm9sbC1kb3duIC50b3AgLmljb24ge1xuICAgICAgICB3aWR0aDogODVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDhweCAwIDA7XG4gICAgICAgIGhlaWdodDogODVweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogIzhDMEMwNDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgICAgICAgI2hlcm8gLnNjcm9sbC1kb3duIC50b3AgLmljb24gc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgI2hlcm8gLnNjcm9sbC1kb3duIC50b3Age1xuICAgICAgICAgIHdpZHRoOiAxNDBweDsgfVxuICAgICAgICAgICNoZXJvIC5zY3JvbGwtZG93biAudG9wIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4jYm9uYm9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgI2JvbmJvbnMgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAgICNib25ib25zIHVsID4gKiB7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDIwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4KTtcbiAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoMjBweCAqICgxIC0gMSkgLyAxKSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAjYm9uYm9ucyB1bCA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICNib25ib25zIHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgyMHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAgICNib25ib25zIHVsID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAjYm9uYm9ucyB1bCA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gNCkgLSAoMjBweCAqICg0IC0gMSkgLyA0KSk7IH1cbiAgICAgICAgICAjYm9uYm9ucyB1bCA+ICo6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgICNib25ib25zIHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA0KSAtICgyMHB4ICogKDQgLSAxKSAvIDQpKTsgfVxuICAgICAgICAgICNib25ib25zIHVsID4gKjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICNib25ib25zIHVsID4gKiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA1KSAtICgyMHB4ICogKDUgLSAxKSAvIDUpKTsgfVxuICAgICAgICAgICNib25ib25zIHVsID4gKjpudGgtY2hpbGQoNW4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAjYm9uYm9ucyB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgIGdyaWQtZ2FwOiAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICNib25ib25zIHVsIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAjYm9uYm9ucyB1bCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgI2JvbmJvbnMgdWwge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAjYm9uYm9ucyB1bCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpOyB9IH1cbiAgICAgICAgI2JvbmJvbnMgdWwgPiAqIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgICNib25ib25zIHVsIGxpIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgICAgICNib25ib25zIHVsIGxpIC5wcm9kdWN0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4OyB9XG4gICAgICAgICNib25ib25zIHVsIGxpIC5wcm9kdWN0IGltZyB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgICAgI2JvbmJvbnMgdWwgbGkgLnByb2R1Y3QgLnByb2R1Y3QtY291bnQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDhEOEQ4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gICAgICAgICAgI2JvbmJvbnMgdWwgbGkgLnByb2R1Y3QgLnByb2R1Y3QtY291bnQgLnF1YW50aXR5LWlucHV0LXVwIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTNweDsgfVxuICAgICAgICAjYm9uYm9ucyB1bCBsaSAucHJvZHVjdCBzcGFuIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBjb2xvcjogIzVENUU1RTsgfVxuICAgICAgICAjYm9uYm9ucyB1bCBsaSAucHJvZHVjdCAucHJvZHVjdC1pbmZvID4gc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0OyB9XG4gICAgICAgICNib25ib25zIHVsIGxpIC5wcm9kdWN0IGg0IHtcbiAgICAgICAgICBtYXJnaW46IDE1cHggMCAwcHggMDsgfVxuICAjYm9uYm9ucyAucHJvZ3Jlc3MtYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNEOEQ4RDg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAjYm9uYm9ucyAucHJvZ3Jlc3MtYmFyIC5jdXJyZW50IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDhweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICNib25ib25zIC5wcm9ncmVzcy1iYXIgLnByb2dyZXNzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggNDAwbXM7IH1cbiAgICAjYm9uYm9ucyAucHJvZ3Jlc3MtYmFyIC5tYXgge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB0b3A6IDhweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICNib25ib25zIC5wcm9ncmVzcy1iYXIuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAxMDBweDtcbiAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICAgIHotaW5kZXg6IDEyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICNib25ib25zIC5wcm9ncmVzcy1iYXIuZml4ZWQge1xuICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiAzMHB4OyB9IH1cblxuLnF1YW50aXR5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDI1cHg7IH1cbiAgLnF1YW50aXR5IGlucHV0IHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgbWF4LXdpZHRoOiA3MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucHJvZHVjdF9jYXQtYm9uYm9uYm94LXZ1bGxlbiAucHJvZHVjdC1oZWFkZXIge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgei1pbmRleDogMTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucHJvZHVjdF9jYXQtYm9uYm9uYm94LXZ1bGxlbiAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5LFxuLnByb2R1Y3RfY2F0LWJvbmJvbmJveC12dWxsZW4gLndvb2NvbW1lcmNlLXRhYnMsXG4ucHJvZHVjdF9jYXQtYm9uYm9uYm94LXZ1bGxlbiAuc2hvcF9hdHRyaWJ1dGVzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5wcm9kdWN0X2NhdC1ib25ib25ib3gtdnVsbGVuIC5zdW1tYXJ5IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ucHJvZHVjdF9jYXQtYm9uYm9uYm94LXZ1bGxlbiAucHJvZHVjdC1idXR0b24td3JhcCB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5wcm9kdWN0X2NhdC1ib25ib25ib3gtdnVsbGVuIC5wcm9kdWN0LWJ1dHRvbi13cmFwLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDhEOEQ4OyB9XG4gICAgLnByb2R1Y3RfY2F0LWJvbmJvbmJveC12dWxsZW4gLnByb2R1Y3QtYnV0dG9uLXdyYXAuZGlzYWJsZWQgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5jYXRlZ29yeS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTk5OTk7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogMTAwcHg7XG4gIHdpZHRoOiA5NXB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDBweCA5cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDI3LCAzMCwgMzYsIDAuNSk7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNhdGVnb3J5LXRvZ2dsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhDMEMwNDsgfVxuICAuY2F0ZWdvcnktdG9nZ2xlIC5pY29uIHN2ZyB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAuY2F0ZWdvcnktdG9nZ2xlIHNwYW4ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmNhdGVnb3J5LXRvZ2dsZS5vcGVuIHtcbiAgICByaWdodDogMjgwcHg7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk5OyB9XG4gICAgLmNhdGVnb3J5LXRvZ2dsZS5vcGVuIC5pY29uIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gIC5jYXRlZ29yeS10b2dnbGUuYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA4MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuY2F0ZWdvcnktdG9nZ2xlIHtcbiAgICAgIHRvcDogODBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhdGVnb3J5LXRvZ2dsZSB7XG4gICAgICB0b3A6IDgwcHg7IH1cbiAgICAgIC5jYXRlZ29yeS10b2dnbGUub3BlbiB7XG4gICAgICAgIHJpZ2h0OiA3MCU7IH0gfVxuXG4uc2l0ZS1jb250ZW50LWhvbWUgLmNhdGVnb3J5LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG4gIC5zaXRlLWNvbnRlbnQtaG9tZSAuY2F0ZWdvcnktdG9nZ2xlLmFjdGl2ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogODBweDsgfVxuXG4uY2F0ZWdvcmllcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB3aWR0aDogMjgwcHg7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgb3BhY2l0eTogMTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5jYXRlZ29yaWVzIC5jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGhlaWdodDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogNDBweCAwIDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY2F0ZWdvcmllcyAuY29udGVudCAuc2VhcmNoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNHB4IDEycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB3aWR0aDogOTIlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAuY2F0ZWdvcmllcyAuY29udGVudCBoMiB7XG4gICAgICBjb2xvcjogIzI3MjcyNztcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggIWltcG9ydGFudDsgfVxuICAgIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBwYWRkaW5nOiAyMHB4IDBweDtcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyNjBweCk7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsIGxpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDU1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgICAgbWF4LWhlaWdodDogNDlweDsgfVxuICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaSA+IGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzc4Nzg3ODtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDM1cHggMTBweCA1cHg7IH1cbiAgICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaSA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaSA+IGE6aG92ZXIsIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsIGxpID4gYS5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICNjNDExMzA7IH1cbiAgICAgICAgLmNhdGVnb3JpZXMgLmNvbnRlbnQgdWwgbGkuYWN0aXZlIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDAwcHg7IH1cbiAgICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaS5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYzQxMTMwOyB9XG4gICAgICAgIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsIGxpIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDE1cHg7IH1cbiAgICAgICAgLmNhdGVnb3JpZXMgLmNvbnRlbnQgdWwgbGkgPiB1bCB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBwYWRkaW5nOiAwcHggNXB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbiAgICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaSA+IHVsIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQ5cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaSA+IHVsIGxpIHN2ZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsIGxpID4gdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgICAgICAgLmNhdGVnb3JpZXMgLmNvbnRlbnQgdWwgbGkgPiB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAgICAgLmNhdGVnb3JpZXMgLmNvbnRlbnQgdWwgbGkuZHJvcGRvd24gPiBzdmcge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAuY2F0ZWdvcmllcyAuY29udGVudCB1bCBsaS5kcm9wZG93bi5hY3RpdmUgPiBzdmcge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAgICAgLmNhdGVnb3JpZXMgLmNvbnRlbnQgdWwgbGkuZHJvcGRvd24uYWN0aXZlID4gdWwge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuY2F0ZWdvcmllcyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgIC5jYXRlZ29yaWVzIC50b3Age1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuY2F0ZWdvcmllcy5vcGVuIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXRlZ29yaWVzIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICByaWdodDogMDsgfSB9XG5cbi5zaXRlLWNvbnRlbnQtaG9tZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2l0ZS1jb250ZW50LWhvbWUgLmNhdGVnb3JpZXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgIHRvcDogMDsgfVxuICAgIC5zaXRlLWNvbnRlbnQtaG9tZSAuY2F0ZWdvcmllcy5hY3RpdmUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgcGFkZGluZy10b3A6IDcwcHg7IH1cblxuLnByb2R1Y3QtY29udGVudC13cmFwcGVyIC5jYXRlZ29yaWVzIHtcbiAgbWFyZ2luLXRvcDogMHB4OyB9XG4gIC5wcm9kdWN0LWNvbnRlbnQtd3JhcHBlciAuY2F0ZWdvcmllcy5hY3RpdmUge1xuICAgIHRvcDogNjBweDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnNpdGUtY29udGVudCAuY2F0ZWdvcnktdG9nZ2xlLm9wZW4ge1xuICAgIHJpZ2h0OiA3MCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgI3NsaWRlciB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4OyB9IH1cblxuI3NsaWRlciAuY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgI3NsaWRlciAuY2Fyb3VzZWwgLnNsaWNrLWxpc3Qge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICNzbGlkZXIgLmNhcm91c2VsIC5zbGljay1idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1jb2xvcjogI2M0MTEzMDsgfVxuICAgICNzbGlkZXIgLmNhcm91c2VsIC5zbGljay1idG46YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAxNnB4KTtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTZweCk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9hcnJvdy1sZWZ0LnBuZ1wiKSAwIDAgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG4gICAgI3NsaWRlciAuY2Fyb3VzZWwgLnNsaWNrLWJ0bi5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDAgMCA4cHg7IH1cbiAgICAgICNzbGlkZXIgLmNhcm91c2VsIC5zbGljay1idG4uc2xpY2stbmV4dDphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9hcnJvdy1yaWdodC5wbmdcIikgMCAwIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4OyB9XG4gICAgI3NsaWRlciAuY2Fyb3VzZWwgLnNsaWNrLWJ0bi5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgI3NsaWRlciAuY2Fyb3VzZWwgLnNsaWNrLWJ0biB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyB9XG4gICAgICAgICNzbGlkZXIgLmNhcm91c2VsIC5zbGljay1idG46YWZ0ZXIsICNzbGlkZXIgLmNhcm91c2VsIC5zbGljay1idG4uc2xpY2stbmV4dDphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDExcHgpOyB9IH1cbiAgI3NsaWRlciAuY2Fyb3VzZWwgLml0ZW0ge1xuICAgIGJhY2tncm91bmQ6ICNEOEQ4RDg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAjc2xpZGVyIC5jYXJvdXNlbCAuaXRlbSAuY2Fyb3VzZWwtbGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoMTU3LCAxNTcsIDE1NywgMC41KTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuICAgICAgI3NsaWRlciAuY2Fyb3VzZWwgLml0ZW0gLmNhcm91c2VsLWxhYmVsIGgyIHtcbiAgICAgICAgY29sb3I6ICMxQjFFMjQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfVxuICAgICAgI3NsaWRlciAuY2Fyb3VzZWwgLml0ZW0gLmNhcm91c2VsLWxhYmVsIHNwYW4ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDYwMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgI3NsaWRlciAuY2Fyb3VzZWwgLml0ZW0gLmNhcm91c2VsLWxhYmVsIHNwYW46YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgICAgICBvcGFjaXR5OiAwLjYwOyB9XG4gICAgI3NsaWRlciAuY2Fyb3VzZWwgLml0ZW0uc2xpY2stYWN0aXZlIC5jYXJvdXNlbC1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwMG1zOyB9XG5cbiNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgPiAqIHtcbiAgICBmbGV4OiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg0MHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDQwcHgpO1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoNDBweCAqICgxIC0gMSkgLyAxKSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyID4gKjpudGgtY2hpbGQoMW4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICg0MHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICg0MHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyID4gKiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoNDBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgPiAqOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICg0MHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICBncmlkLWdhcDogNDBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciA+ICoge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgYSAuaGlnaGxpZ2h0LWJsb2NrIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAgICNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyIGEgLmhpZ2hsaWdodC1ibG9jayAub3ZlcmxheS10ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuICAgICAgICAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciBhIC5oaWdobGlnaHQtYmxvY2sgLm92ZXJsYXktdGV4dCBoMyB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgI3NsaWRlciAuaGlnaGxpZ2h0LXdyYXBwZXIgYSAuaGlnaGxpZ2h0LWJsb2NrIC5vdmVybGF5LXRleHQgaDQge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuc2VjdGlvbiNibG9ja3MgLmJsb2NrLXRpdGxlIHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzc4Nzg3ODtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuc2VjdGlvbiNibG9ja3MgLmJsb2NrLXRpdGxlIGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMxQjFFMjQ7XG4gIGZvbnQtc2l6ZTogMi44ZW07XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTVweCAwIDI1cHggMDsgfVxuXG5zZWN0aW9uI2Jsb2NrcyAuYmxvY2stdGl0bGUud2hpdGUgc3BhbiB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbnNlY3Rpb24jYmxvY2tzIC5ibG9jay10aXRsZS53aGl0ZSBoMiB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbnNlY3Rpb24jYmxvY2tzIC5ibG9ja3MtaGVhZGVyIHtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q4RDhEODtcbiAgbWFyZ2luLWJvdHRvbTogLTgwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2tzLWhlYWRlciAud3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbnNlY3Rpb24jYmxvY2tzIC5ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBoZWlnaHQ6IDY1MHB4O1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgc2VjdGlvbiNibG9ja3MgLmJsb2NrID4gKiB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDBweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrID4gKiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoMHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgZ3JpZC1nYXA6IDBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrID4gKiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgLnRleHQge1xuICAgIHBhZGRpbmc6IDY1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIHNlY3Rpb24jYmxvY2tzIC5ibG9jayAuaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6ICM1RDVFNUU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5ibG9jay1idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcmlnaHQ6IC01MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDM2LCAzNiwgMzYsIDAuMjk1KTsgfVxuICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayAuYmxvY2stYnRuIHNwYW4ge1xuICAgICAgY29sb3I6ICNCQkEzOTE7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9XG4gICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5ibG9jay1idG46YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB3aWR0aDogODRweDtcbiAgICAgIGhlaWdodDogODRweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNCQkEzOTE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSA0NC41cHgpOyB9XG4gICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5ibG9jay1idG46aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI0JCQTM5MTsgfVxuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5ibG9jay1idG46aG92ZXIgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgLmJsb2NrLWJ0bjpob3ZlcjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTU1OXB4KSB7XG4gICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC50ZXh0IHtcbiAgICAgICAgcGFkZGluZzogMzVweCA1NXB4OyB9XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayAudGV4dCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdsZWZ0IHJpZ2h0JzsgfVxuICAgICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2suYmxvY2stcmlnaHQgLmltYWdlIHtcbiAgICAgICAgICBncmlkLWFyZWE6IGxlZnQ7IH1cbiAgICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrLmJsb2NrLXJpZ2h0IC5ibG9jay1idG4ge1xuICAgICAgICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIGxlZnQ6IC01MHB4OyB9IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5ibG9jay1idG4ge1xuICAgICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgc2VjdGlvbiNibG9ja3MgLmJsb2NrIC5pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBzZWN0aW9uI2Jsb2NrcyAuYmxvY2sgLnRleHQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgICAgIHNlY3Rpb24jYmxvY2tzIC5ibG9jayAudGV4dCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9IH1cblxuI3dvb2NvbW1lcmNlLnByb2R1Y3RzIC53b29jb21tZXJjZS1ub3RpY2VzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbnNlY3Rpb24ucHJvZHVjdHMge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODsgfVxuICBzZWN0aW9uLnByb2R1Y3RzIC50ZXJtLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgc2VjdGlvbi5wcm9kdWN0cyAudGVybS1kZXNjcmlwdGlvbiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLnJlc2V0X3ZhcmlhdGlvbnMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxudWwucHJvZHVjdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICB1bC5wcm9kdWN0cyA+ICoge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoNDBweCk7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICg0MHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgdWwucHJvZHVjdHMgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICB1bC5wcm9kdWN0cyA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDQwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIHVsLnByb2R1Y3RzID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICB1bC5wcm9kdWN0cyA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDQwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIHVsLnByb2R1Y3RzID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgdWwucHJvZHVjdHMgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAzKSAtICg0MHB4ICogKDMgLSAxKSAvIDMpKTsgfVxuICAgICAgICB1bC5wcm9kdWN0cyA+ICo6bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICB1bC5wcm9kdWN0cyA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDQpIC0gKDQwcHggKiAoNCAtIDEpIC8gNCkpOyB9XG4gICAgICAgIHVsLnByb2R1Y3RzID4gKjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICB1bC5wcm9kdWN0cyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgIGdyaWQtZ2FwOiA0MHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgdWwucHJvZHVjdHMge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICB1bC5wcm9kdWN0cyB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyB9IH1cbiAgICAgIHVsLnByb2R1Y3RzID4gKiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICB1bC5wcm9kdWN0cyBsaSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIHVsLnByb2R1Y3RzIGxpIC5kZXNjcmlwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgdWwucHJvZHVjdHMgbGkgLmltZy1ob2xkZXIge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy10b3A6IDcyJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIHVsLnByb2R1Y3RzIGxpIC5pbWctaG9sZGVyIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzNiU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDcyJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtYXJnaW46IDI1cHggYXV0bzsgfVxuICAgIHVsLnByb2R1Y3RzIGxpIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgdWwucHJvZHVjdHMgbGkgaDMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogIzExMTExMTtcbiAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwIDEwJTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAgIHVsLnByb2R1Y3RzIGxpIGgzIGEge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIHVsLnByb2R1Y3RzIGxpIC5wcmljZSB7XG4gICAgICBjb2xvcjogI2M0MTEzMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjFyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgdWwucHJvZHVjdHMgbGkgLnZhcmlhdGlvbnNfZm9ybSB7XG4gICAgICBwYWRkaW5nOiAwcHggMjBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleDogYXV0bzsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIHVsLnByb2R1Y3RzIGxpIC52YXJpYXRpb25zX2Zvcm0ge1xuICAgICAgICAgIGZsZXg6IDE7IH0gfVxuICAgICAgdWwucHJvZHVjdHMgbGkgLnZhcmlhdGlvbnNfZm9ybSB0YWJsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87IH1cbiAgICB1bC5wcm9kdWN0cyBsaSAudmFyaWF0aW9ucyBsYWJlbCwgdWwucHJvZHVjdHMgbGkgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnMge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIHVsLnByb2R1Y3RzIGxpIC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICB1bC5wcm9kdWN0cyBsaSAudmFyaWF0aW9ucyBzZWxlY3Qge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICB1bC5wcm9kdWN0cyBsaSAuc2luZ2xlX3ZhcmlhdGlvbl93cmFwIC53b29jb21tZXJjZS12YXJpYXRpb24tYXZhaWxhYmlsaXR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICB1bC5wcm9kdWN0cyBsaSBmb3JtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH1cbiAgICAgIHVsLnByb2R1Y3RzIGxpIGZvcm0gLnByaWNlIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgdWwucHJvZHVjdHMgbGkgLmVkaXQtcHJvZHVjdCxcbiAgICB1bC5wcm9kdWN0cyBsaSAuZnBkLWNhdGFsb2ctY3VzdG9taXplIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9ib25ib24tYm94LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxN3B4IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDE1cHggNTBweCAyMHB4IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQxMTMwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4IDBweCAwcHggNnB4O1xuICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvdHRvbTogMThweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LWluZGVudDogLTEwMDBweDsgfVxuICAgICAgdWwucHJvZHVjdHMgbGkgLmVkaXQtcHJvZHVjdDpob3ZlcixcbiAgICAgIHVsLnByb2R1Y3RzIGxpIC5mcGQtY2F0YWxvZy1jdXN0b21pemU6aG92ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXM7XG4gICAgICAgIHRleHQtaW5kZW50OiAtMTBweDtcbiAgICAgICAgd2lkdGg6IDIxMHB4OyB9XG4gICAgdWwucHJvZHVjdHMgbGkgLmZwZC1jYXRhbG9nLWN1c3RvbWl6ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvY2FrZS1iaXJ0aGRheS5zdmdcIik7IH1cbiAgICB1bC5wcm9kdWN0cyBsaSAuZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZzogMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgdWwucHJvZHVjdHMgbGkgLnZhcmlhdGlvbnNfZm9ybSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9XG4gICAgICB1bC5wcm9kdWN0cyBsaSAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0LWVuYWJsZWQgLnByb2R1Y3QtYnV0dG9uLXdyYXAsXG4gICAgICB1bC5wcm9kdWN0cyBsaSAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0LWRpc2FibGVkIC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgICB1bC5wcm9kdWN0cyBsaSAudmFyaWF0aW9uc19idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyB9IH1cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgICB1bC5wcm9kdWN0cyBsaSAudmFyaWF0aW9uc19mb3JtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7IH1cbiAgICAgIHVsLnByb2R1Y3RzIGxpIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQtZW5hYmxlZCAucHJvZHVjdC1idXR0b24td3JhcCxcbiAgICAgIHVsLnByb2R1Y3RzIGxpIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQtZGlzYWJsZWQgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAgIHVsLnByb2R1Y3RzIGxpIC52YXJpYXRpb25zX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87IH0gfVxuXG4jd29vY29tbWVyY2Uge1xuICBtaW4taGVpZ2h0OiA1NTBweDsgfVxuXG4ucHJvZHVjdC1jb250ZW50LXdyYXBwZXIgLmNhdGVnb3JpZXMgLnNjcm9sbC1kb3duIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5vdXQtb2Ytc3RvY2sge1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmctbGVmdDogMTBweDsgfVxuXG4ud29vY29tbWVyY2UtdGFicyBoNCB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzFCMUUyNDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi53b29jb21tZXJjZS10YWJzIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi53b29jb21tZXJjZS10YWJzIGxpIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uZmFuY3kgLmZwZC1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4uZmlsdGVyLWFsbGVyZ2VuZW4ge1xuICBwYWRkaW5nLXRvcDogMzBweDsgfVxuICAuZmlsdGVyLWFsbGVyZ2VuZW4gcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBwYWRkaW5nOiA1cHggMjBweDsgfVxuICAgIC5maWx0ZXItYWxsZXJnZW5lbiBwIC5mYXMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAuZmlsdGVyLWFsbGVyZ2VuZW4gcCBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogI2M0MTEzMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ud2NjcGYtZmllbGRzLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICAud2NjcGYtZmllbGRzLWNvbnRhaW5lciAud2NjcGZfbGFiZWwsXG4gIC53Y2NwZi1maWVsZHMtY29udGFpbmVyIC53Y2NwZi12YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sIC53b29jb21tZXJjZS1tZXNzYWdlIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgLndvb2NvbW1lcmNlLW1lc3NhZ2UgYSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnRhYXJ0LXRla3N0IHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC50YWFydC10ZWtzdCBpbnB1dCB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItY29sb3I6ICNEOEQ4RDg7IH1cblxuZm9ybS50ZWtzdC1vcGVuIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7IH1cblxuLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydCA+IC50YWFydC10ZWtzdCB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAyNTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC01MHB4OyB9XG5cbi5wcm9kdWN0LWJyZWFkY3J1bWIge1xuICBtYXJnaW4tdG9wOiA4MHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgLnByb2R1Y3QtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cblxuI3dvb2NvbW1lcmNlIC5wcm9kdWN0LWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9oZWFkZXItYmFja2dyb3VuZC1iYWtrZXIucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIGhlaWdodDogYXV0bzsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QtaGVhZGVyIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQge1xuICAgIG1hcmdpbi10b3A6IC0zNXB4OyB9XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0LWhlYWRlciAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIHotaW5kZXg6IDc7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QtaGVhZGVyIC53b29jb21tZXJjZS12YXJpYXRpb24tcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QtaGVhZGVyIC5zdG9jayB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QtaGVhZGVyIC5xdWFudGl0eSBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDMwMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQxOXB4KSB7XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0LWhlYWRlciAudmFyaWF0aW9ucyB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0LWhlYWRlciAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICN3b29jb21tZXJjZSAucHJvZHVjdC1oZWFkZXIgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHotaW5kZXg6IDc7IH0gfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QgLmNhdGVnb3J5LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QgLm9uc2FsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICN3b29jb21tZXJjZSAucHJvZHVjdCAub25zYWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi10b3A6IDEwJTsgfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEOEQ4RDg7XG4gIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0Q4RDhEODtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMgbGkgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICM1RDVFNUU7IH1cbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMgbGkuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYzQxMTMwOyB9XG4gICAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMgbGkuYWN0aXZlIGEge1xuICAgICAgICBjb2xvcjogIzFCMUUyNDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnRhYnMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC50YWJzIGxpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICN3b29jb21tZXJjZSAucHJvZHVjdCAudGFicyBsaS5hY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2M0MTEzMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9IH1cblxuI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC53b29jb21tZXJjZS1UYWJzLXBhbmVsLS1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC53b29jb21tZXJjZS1UYWJzLXBhbmVsLS1kZXNjcmlwdGlvbiBoMiB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMUIxRTI0O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwtLWRlc2NyaXB0aW9uIHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtOyB9XG5cbiN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IGgxIHtcbiAgICBjb2xvcjogIzExMTExMTtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgICN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSBoMTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IC5wcmljZSB7XG4gICAgY29sb3I6ICNjNDExMzA7XG4gICAgZm9udC1zaXplOiAyLjRyZW07IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IC5sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnN1bW1hcnkgLnByb2R1Y3RfbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzI3MjcyNztcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IC5wcm9kdWN0X21ldGEgLnNrdV93cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IGZvcm0uY2FydCAucHJvZHVjdC1idXR0b24td3JhcCB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgei1pbmRleDogNztcbiAgICBtaW4taGVpZ2h0OiA2MHB4OyB9XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IGZvcm0uY2FydCAucHJvZHVjdC1idXR0b24td3JhcC5yb3VuZGVkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnN1bW1hcnkgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogIzI3MjcyNztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnN1bW1hcnkgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHAge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSAudmFyaWF0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMTRweCAwIHJnYmEoMTU0LCAxNTQsIDE1NCwgMC41KTtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTRweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnN1bW1hcnkgLnZhcmlhdGlvbnMgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgY29sb3I6ICMxMTExMTE7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7IH1cbiAgICAjd29vY29tbWVyY2UgLnByb2R1Y3QgLnN1bW1hcnkgLnZhcmlhdGlvbnMgdHI6bGFzdC1jaGlsZCBzZWxlY3Qge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IC5zdG9jayB7XG4gICAgY29sb3I6ICNkOTUzNGY7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC5zdW1tYXJ5IC5zdG9jay5pbi1zdG9jayB7XG4gICAgICBjb2xvcjogIzVjYjg1YzsgfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdC10eXBlLXNpbXBsZSAucHJvZHVjdF9tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI3dvb2NvbW1lcmNlIC5wcm9kdWN0IC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICN3b29jb21tZXJjZSAucHJvZHVjdCAuc3VtbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdF9jYXQtZm90b3RhYXJ0IC5zdW1tYXJ5LCAjd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdF9jYXQtZm90b2dlYmFrIC5zdW1tYXJ5LCAjd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdF9jYXQtZm90b2JvbmJvbnMgLnN1bW1hcnkge1xuICB3aWR0aDogMTAwJTsgfVxuXG4jd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdF9jYXQtZm90b3RhYXJ0IGZvcm0sICN3b29jb21tZXJjZSAucHJvZHVjdC5wcm9kdWN0X2NhdC1mb3RvZ2ViYWsgZm9ybSwgI3dvb2NvbW1lcmNlIC5wcm9kdWN0LnByb2R1Y3RfY2F0LWZvdG9ib25ib25zIGZvcm0ge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG5cbiN3b29jb21tZXJjZSAucHJvZHVjdC5wcm9kdWN0X2NhdC1mb3RvdGFhcnQgI2ZwZC1yZWFkeSwgI3dvb2NvbW1lcmNlIC5wcm9kdWN0LnByb2R1Y3RfY2F0LWZvdG9nZWJhayAjZnBkLXJlYWR5LCAjd29vY29tbWVyY2UgLnByb2R1Y3QucHJvZHVjdF9jYXQtZm90b2JvbmJvbnMgI2ZwZC1yZWFkeSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7IH1cblxuLmFtb3VudC5zYWxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgb3BhY2l0eTogMC41OyB9XG5cbi5jZW50IHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICBtYXJnaW4tbGVmdDogLTNweDtcbiAgbWFyZ2luLXRvcDogNHB4OyB9XG5cbi5wcm9kdWN0LWNvdW50IC5wcmljZSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByb2R1Y3QtY291bnQgLnByaWNlIC5jZW50IHtcbiAgICBmb250LXNpemU6IDAuN3JlbTsgfVxuXG4ucmVsYXRlZC5wcm9kdWN0cyxcbi51cHNlbGxzLnByb2R1Y3RzIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOEQ4RDg7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgLnJlbGF0ZWQucHJvZHVjdHMgaDIsXG4gIC51cHNlbGxzLnByb2R1Y3RzIGgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMjcyNzI3O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgbWFyZ2luOiAzMHB4IDA7IH1cblxuLnZhcmlhdGlvbnMgLnNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwYWRkaW5nOiAzcHggMHB4ICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogMzUwbXMgZWFzZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnZhcmlhdGlvbnMgLnNlbGVjdCAuZmFzIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gIC52YXJpYXRpb25zIC5zZWxlY3Q6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODA7IH1cblxuLnZhcmlhdGlvbnMgLnNlbGVjdC10eXBlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgYm94LXNoYWRvdzogMHB4IDJweCAxMHB4IDFweCByZ2JhKDE3LCAxNywgMTcsIDAuMSk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAudmFyaWF0aW9ucyAuc2VsZWN0LXR5cGUuYWN0aXZlciB7XG4gICAgei1pbmRleDogOTk5OTk5OTk5OyB9XG4gIC52YXJpYXRpb25zIC5zZWxlY3QtdHlwZSBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnZhcmlhdGlvbnMgLnNlbGVjdC10eXBlIGxpIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAgIC52YXJpYXRpb25zIC5zZWxlY3QtdHlwZSBsaTo6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC52YXJpYXRpb25zIC5zZWxlY3QtdHlwZSBsaTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4OyB9XG4gICAgICAudmFyaWF0aW9ucyAuc2VsZWN0LXR5cGUgbGk6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMC42OyB9XG4gICAgLnZhcmlhdGlvbnMgLnNlbGVjdC10eXBlIGxpLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4OyB9XG4gICAgICAudmFyaWF0aW9ucyAuc2VsZWN0LXR5cGUgbGkuYWN0aXZlOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbG9yOiAjYzQxMTMwOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucHJvZHVjdC1oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4ucHJvZHVjdC1oZWFkZXIgLnNpbmdsZSAuc3VtbWFyeSAudmFyaWF0aW9ucyB7XG4gIGJvcmRlci1yYWRpdXM6IDZweCA2cHggMHB4IDBweCAhaW1wb3J0YW50OyB9XG4gIC5wcm9kdWN0LWhlYWRlciAuc2luZ2xlIC5zdW1tYXJ5IC52YXJpYXRpb25zIHRyIC5zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDhEOEQ4OyB9XG4gIC5wcm9kdWN0LWhlYWRlciAuc2luZ2xlIC5zdW1tYXJ5IC52YXJpYXRpb25zIHRyOmxhc3QtY2hpbGQgLnNlbGVjdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAucHJvZHVjdC1oZWFkZXIgLnNpbmdsZSAuc3VtbWFyeSAudmFyaWF0aW9ucyAuc2VsZWN0LXR5cGUge1xuICAgIHotaW5kZXg6IDk5OTk5OTk5ICFpbXBvcnRhbnQ7IH1cblxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbnAucHJpY2Uge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLnByb2R1Y3RfbWV0YSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uZnBkLXByb2R1Y3QtZGVzaWduZXItd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5mcGQtcHJvZHVjdC1kZXNpZ25lci13cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogNjAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5mcGQtcHJvZHVjdC1kZXNpZ25lci13cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cbiAgLmZwZC1wcm9kdWN0LWRlc2lnbmVyLXdyYXBwZXIgLmZwZC10b3BiYXIgLmZwZC1uYXZpZ2F0aW9uID4gZGl2IHtcbiAgICBtYXgtd2lkdGg6IDMzLjMzJTsgfVxuICAgIC5mcGQtcHJvZHVjdC1kZXNpZ25lci13cmFwcGVyIC5mcGQtdG9wYmFyIC5mcGQtbmF2aWdhdGlvbiA+IGRpdiAuZnBkLWxhYmVsIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxuI3dvb2NvbW1lcmNlIC5mcGQtbW9kYWwtb3ZlcmxheS5mcGQtZnVsbHNjcmVlbiA+IC5mcGQtbW9kYWwtd3JhcHBlciB7XG4gIHdpZHRoOiA4MCU7XG4gIGhlaWdodDogODAlO1xuICB0b3A6IDUwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICN3b29jb21tZXJjZSAuZnBkLW1vZGFsLW92ZXJsYXkuZnBkLWZ1bGxzY3JlZW4gPiAuZnBkLW1vZGFsLXdyYXBwZXIgLmZwZC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgI3dvb2NvbW1lcmNlIC5mcGQtbW9kYWwtb3ZlcmxheS5mcGQtZnVsbHNjcmVlbiA+IC5mcGQtbW9kYWwtd3JhcHBlciAuZnBkLW1vZGFsLXByaWNlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICN3b29jb21tZXJjZSAuZnBkLW1vZGFsLW92ZXJsYXkuZnBkLWZ1bGxzY3JlZW4gPiAuZnBkLW1vZGFsLXdyYXBwZXIgLmZwZC1kb25lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQxMTMwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuI2ZwZC1zdGFydC1jdXN0b21pemluZy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzQxMTMwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHdpZHRoOiAyNTBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7IH1cbiAgI2ZwZC1zdGFydC1jdXN0b21pemluZy1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5NTBkMjU7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q4RDhEODtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7XG4gIHBhZGRpbmc6IDE2cHggMHB4O1xuICB6LWluZGV4OiA1O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgY29sb3I6ICM1RDVFNUU7IH1cbiAgLmJyZWFkY3J1bWJzIC5mYXMge1xuICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAuYnJlYWRjcnVtYnMgLmJ0bi1vdXRsaW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAjMUIxRTI0O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgICAuYnJlYWRjcnVtYnMgLmJ0bi1vdXRsaW5lOmhvdmVyLCAuYnJlYWRjcnVtYnMgLmJ0bi1vdXRsaW5lOmZvY3VzLCAuYnJlYWRjcnVtYnMgLmJ0bi1vdXRsaW5lOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gIC5icmVhZGNydW1icyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxNnB4O1xuICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2M0MTEzMDsgfVxuICAuYnJlYWRjcnVtYnMgLmN1cnJlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuYnJlYWRjcnVtYnMgI2NydW1icyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5icmVhZGNydW1icyAud29vY29tbWVyY2Utb3JkZXJpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTgwcHg7XG4gICAgdG9wOiAwcHg7IH1cbiAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvY2FyZXQtZG93bi1zb2xpZC5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDE1cHggY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICAgICAgY29sb3I6ICM1RDVFNUU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1vcmRlcmluZyAuZmFzIHtcbiAgICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTgwcHg7XG4gICAgICAgIHRvcDogLTNweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxOXB4KSB7XG4gICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDIwcHggIWltcG9ydGFudDsgfSB9XG4gIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNjA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwcHg7IH1cbiAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBhIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nICNhbGxlcmdlbmVuLWZpbHRlciB7XG4gICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nICNhbGxlcmdlbmVuLWZpbHRlciAuZmFzIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nICNhbGxlcmdlbmVuLWZpbHRlci5hY3RpdmUge1xuICAgICAgICBjb2xvcjogI2M0MTEzMDsgfVxuICAgICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyAjYWxsZXJnZW5lbi1maWx0ZXIuYWN0aXZlIC5mYXMge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgI2FsbGVyZ2VuZW4tZmlsdGVyIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViOyB9XG4gICAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgI2FsbGVyZ2VuZW4tZmlsdGVyIC5mYXMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOyB9IH1cbiAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICB0b3A6IDQwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgxNTcsIDE1NywgMTU3LCAwLjUpO1xuICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgei1pbmRleDogOTk3OyB9XG4gICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHVsIHtcbiAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW5zOiAyO1xuICAgICAgICAtbW96LWNvbHVtbnM6IDI7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgZm9ybSB1bCBsaSB7XG4gICAgICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgICAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nIGZvcm0gdWwgbGkgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHVsIGxpIGxhYmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuICAgICAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgZm9ybSB1bCBsaSBsYWJlbCBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwJSk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gICAgICAgICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHVsIGxpIGxhYmVsIHNwYW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJyZW07IH1cbiAgICAgICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHVsIGxpIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgZm9ybSB1bCBsaSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIGltZyB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAwJSk7IH1cbiAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nIGZvcm0uYWN0aXZlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgZm9ybSAuYnV0dG9uLCAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgZm9ybSBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nIGZvcm0ge1xuICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmJyZWFkY3J1bWJzIC5maWx0ZXItYnRucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJyZWFkY3J1bWJzIC5maWx0ZXItYnRucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH0gfVxuICAuYnJlYWRjcnVtYnMgLmZpbHRlci1idG5zIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmJyZWFkY3J1bWJzIC5maWx0ZXItYnRucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjVweDsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3Qge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgI2FsbGVyZ2VuZW4tZmlsdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgI2FsbGVyZ2VuZW4tZmlsdGVyIC5mYXMge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB1bnNldDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XG4gICAgLmJyZWFkY3J1bWJzICNjcnVtYnMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAgICAgLmJyZWFkY3J1bWJzIGEge1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBtYXgtd2lkdGg6IDMwcHg7IH1cbiAgICAgICAgLmJyZWFkY3J1bWJzIGE6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC5jdXJyZW50IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0Lm9yZGVyYnkge1xuICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICAgIHdpZHRoOiAxNTBweDsgfVxuICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBhI2FsbGVyZ2VuZW4tZmlsdGVyIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgLmJyZWFkY3J1bWJzIC53b29jb21tZXJjZS1maWx0ZXJpbmcgYSNhbGxlcmdlbmVuLWZpbHRlciBpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNHB4OyB9XG4gICAgICAgIC5icmVhZGNydW1icyAud29vY29tbWVyY2UtZmlsdGVyaW5nIGZvcm0ge1xuICAgICAgICAgIGxlZnQ6IC0xMHB4OyB9IH1cblxuLnByb2R1Y3QtYnJlYWRjcnVtYiAuYnJlYWRjcnVtYnMge1xuICB6LWluZGV4OiA5OTc7IH1cblxuI2ZwLW5hdiB1bCBsaSBhIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbiNmcC1uYXYgdWwgbGkgYS5hY3RpdmUgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICNjNDExMzA7IH1cblxuLmhpc3RvcnktYnV0dG9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gIHJpZ2h0OiA1MHB4O1xuICB6LWluZGV4OiAxMDA7IH1cbiAgLmhpc3RvcnktYnV0dG9uIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAuaGlzdG9yeS1idXR0b24gYSBzdmcge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIGhlaWdodDogNjAlO1xuICAgICAgbWFyZ2luLXRvcDogOXB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAuaGlzdG9yeS1idXR0b24gYS5kb3duIHN2ZyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMXB4OyB9XG4gICAgLmhpc3RvcnktYnV0dG9uIGE6Zmlyc3QtY2hpbGQgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAuaGlzdG9yeS1idXR0b24gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgICAuaGlzdG9yeS1idXR0b24gYTpob3ZlciBzdmcge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAlKTsgfVxuICAgIC5oaXN0b3J5LWJ1dHRvbiBhLmhpZGUge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwLjMwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5oaXN0b3J5LWJ1dHRvbiB7XG4gICAgICBib3R0b206IDgwcHg7XG4gICAgICByaWdodDogMjBweDsgfSB9XG5cbiNmcC1uYXYge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaXN0b3J5LW1lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDIwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDk5OyB9XG4gIC5oaXN0b3J5LW1lbnUgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmhpc3RvcnktbWVudSB1bCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGVsb3F1ZW50LWpmLXBybywgc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDI3LCAzMCwgMzYsIDAuNSk7IH1cbiAgICAgIC5oaXN0b3J5LW1lbnUgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAuaGlzdG9yeS1tZW51IHVsIGxpOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgb3BhY2l0eTogMC42MDsgfVxuICAgIC5oaXN0b3J5LW1lbnUgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmhpc3RvcnktbWVudSB1bCBsaS5hY3RpdmUgYSB7XG4gICAgICBjb2xvcjogI2M0MTEzMDsgfVxuICAgICAgLmhpc3RvcnktbWVudSB1bCBsaS5hY3RpdmUgYSBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M0MTEzMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAgIC5oaXN0b3J5LW1lbnUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MCUpOyB9XG4gICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjsgfVxuICAgICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE1NTlweCkge1xuICAgIC5oaXN0b3J5LW1lbnUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MCUpOyB9XG4gICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjsgfVxuICAgICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmhpc3RvcnktbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgYm90dG9tOiAwcHg7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmhpc3RvcnktbWVudSB1bCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgICAgICAgLmhpc3RvcnktbWVudSB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAgICAgICAuaGlzdG9yeS1tZW51IHVsIGxpOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7IH1cbiAgICAgICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIGEge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAuaGlzdG9yeS1tZW51IHVsIGxpIGEgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0bzsgfVxuICAgICAgICAgIC5oaXN0b3J5LW1lbnUgdWwgbGk6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgIC5oaXN0b3J5LW1lbnUgdWwgbGkuYWN0aXZlIGEgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0bzsgfSB9XG5cbiNmdWxscGFnZSAuc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmhpc3RvcnktYmFja2dyb3VuZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgICNmdWxscGFnZSAuc2VjdGlvbiAuaGlzdG9yeS1iYWNrZ3JvdW5kIC5jb2xvciB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMUIxRTI0OyB9XG4gICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5oaXN0b3J5LWJhY2tncm91bmQgLmltYWdlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGZpbHRlcjogYmx1cigxNXB4KTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA3cyBlYXNlLW91dDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNTU5cHgpIHtcbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuaGlzdG9yeS1iYWNrZ3JvdW5kIC5jb2xvciB7XG4gICAgICAgIHdpZHRoOiA3MCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuaGlzdG9yeS1iYWNrZ3JvdW5kIC5jb2xvciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDcwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5oaXN0b3J5LWJhY2tncm91bmQgLmltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIge1xuICAgICAgbGVmdDogMTMwcHg7XG4gICAgICB3aWR0aDogNzAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLmxlZnQsXG4gICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLnJpZ2h0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciAubGVmdCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDBweDsgfVxuICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLmxlZnQgaDEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBlbG9xdWVudC1qZi1wcm8sIHNlcmlmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDU1MG1zIGVhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogNTAwbXM7IH1cbiAgICAgICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5jb250ZW50IC53cmFwcGVyIC5sZWZ0IGltZyB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDUwbXMgZWFzZTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiA2MDBtczsgfVxuICAgICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5jb250ZW50IC53cmFwcGVyIC5yaWdodCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDcwMHB4O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLnJpZ2h0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLnJpZ2h0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzFCMUUyNDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gICAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciAucmlnaHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLnJpZ2h0IHAge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA0NTBtcyBlYXNlO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zOyB9XG4gICAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciAucmlnaHQ6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNTU5cHgpIHtcbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciB7XG4gICAgICAgIGxlZnQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCAud3JhcHBlciAubGVmdCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLmxlZnQgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLmxlZnQgaDEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAgICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5jb250ZW50IC53cmFwcGVyIC5yaWdodCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDB2aDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjAwcHg7IH1cbiAgICAgICAgI2Z1bGxwYWdlIC5zZWN0aW9uIC5jb250ZW50IC53cmFwcGVyIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICNmdWxscGFnZSAuc2VjdGlvbiAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDsgfVxuICAgICAgICAjZnVsbHBhZ2UgLnNlY3Rpb24gLmNvbnRlbnQgLndyYXBwZXIgLnJpZ2h0IHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9IH1cbiAgI2Z1bGxwYWdlIC5zZWN0aW9uLmFjdGl2ZSAuaGlzdG9yeS1iYWNrZ3JvdW5kIC5pbWFnZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9XG4gICNmdWxscGFnZSAuc2VjdGlvbi5hY3RpdmUgLmNvbnRlbnQgLndyYXBwZXIgaDEge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTsgfVxuICAjZnVsbHBhZ2UgLnNlY3Rpb24uYWN0aXZlIC5jb250ZW50IC53cmFwcGVyIGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpOyB9XG4gICNmdWxscGFnZSAuc2VjdGlvbi5hY3RpdmUgLmNvbnRlbnQgLndyYXBwZXIgcCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XG5cbiNoaXN0b3J5LXdyYXBwZXIge1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgI2hpc3Rvcnktd3JhcHBlciBuYXYubWVudSAuc2hvcHBpbmctY2FydCB7XG4gICAgcmlnaHQ6IDA7IH1cbiAgI2hpc3Rvcnktd3JhcHBlciBuYXYubWVudSAjc21hbGwtY2FydCB7XG4gICAgcmlnaHQ6IDA7IH1cblxuLmNhcnQge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAuY2FydCAud29vY29tbWVyY2Uge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgICAuY2FydCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogLTYwcHg7IH1cbiAgLmNhcnQgLnF1YW50aXR5IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNhcnQgLmNhcnRfaXRlbSAucHJvZHVjdC10aHVtYm5haWwgaW1nIHtcbiAgICB3aWR0aDogMTAwcHg7IH1cbiAgLmNhcnQgLmNhcnRfaXRlbSAucHJvZHVjdC1uYW1lIGR0IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gIC5jYXJ0IC5jYXJ0X2l0ZW0gLnByb2R1Y3QtbmFtZSBkZCBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gIC5jYXJ0IC5jYXJ0X3RvdGFscyAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmNhcnQgLmNhcnRfdG90YWxzIC53b29jb21tZXJjZS1zaGlwcGluZy10b3RhbHMuc2hpcHBpbmcgdWwud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jYXJ0IC5jYXJ0X3RvdGFscyAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzLnNoaXBwaW5nID4gdGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY2FydCAuY2FydF90b3RhbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLXRvdGFscyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtID4gcCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5jYXJ0IC5jYXJ0X3RvdGFscyAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gPiBwI2NhbGNfc2hpcHBpbmdfc3RhdGVfZmllbGQsIC5jYXJ0IC5jYXJ0X3RvdGFscyAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gPiBwI2NhbGNfc2hpcHBpbmdfY2l0eV9maWVsZCwgLmNhcnQgLmNhcnRfdG90YWxzIC53b29jb21tZXJjZS1zaGlwcGluZy10b3RhbHMgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSA+IHAjY2FsY19zaGlwcGluZ19jb3VudHJ5X2ZpZWxkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAuY2FydCAuY2FydF90b3RhbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLXRvdGFscyAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtID4gcCNjYWxjX3NoaXBwaW5nX3Bvc3Rjb2RlX2ZpZWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jYXJ0IC5jYXJ0X3RvdGFscyAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gPiBwIGJ1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDMyMHB4OyB9XG4gICAgLmNhcnQgLmNhcnRfdG90YWxzIC53b29jb21tZXJjZS1zaGlwcGluZy10b3RhbHMgLm9wZW4gLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5jYXJ0IC5jdXN0b21lcl9ub3Rlc19vbl9jYXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjRDhEOEQ4O1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgICAuY2FydCAuY3VzdG9tZXJfbm90ZXNfb25fY2FydCBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5jYXJ0IC5jdXN0b21lcl9ub3Rlc19vbl9jYXJ0IHRleHRhcmVhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7IH1cbiAgICAuY2FydCAuY3VzdG9tZXJfbm90ZXNfb25fY2FydC5jYXJkIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7IH1cbiAgICAgIC5jYXJ0IC5jdXN0b21lcl9ub3Rlc19vbl9jYXJ0LmNhcmQgbGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAuY2FydCAjc2hpcHBpbmctZGF0ZSBoNCB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuY2FydCAjc2hpcHBpbmctZGF0ZSBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2FydCAjc2hpcHBpbmctZGF0ZSBpbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuY2FydCAjc2hpcHBpbmctZGF0ZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfSB9XG5cbi50b3BjYXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICAudG9wY2FydCAuYnV0dG9uLCAudG9wY2FydCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgYSwgZm9vdGVyIC5ray1zdW1tYXJ5LWNvbXBhbnktdXJsIC50b3BjYXJ0IGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC50b3BjYXJ0IC5idXR0b24sIC50b3BjYXJ0IGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgLnRvcGNhcnQgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuI3NoaXBwaW5nLWRhdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDEwcHggMjVweCAzMHB4IDI1cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywgMTU3LCAxNTcsIDAuMyk7XG4gIHdpZHRoOiBjYWxjKDI4JSAtIDM1cHgpOyB9XG4gICNzaGlwcGluZy1kYXRlIGlucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmO1xuICAgIHBhZGRpbmctbGVmdDogMC44cmVtO1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTsgfVxuICAjc2hpcHBpbmctZGF0ZSBzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGJvcmRlci1jb2xvcjogIzVENUU1RTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAjc2hpcHBpbmctZGF0ZS5jaHNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4udWktZGF0ZXBpY2tlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTExMTE7XG4gIHdpZHRoOiAyNDBweDtcbiAgcGFkZGluZzogMTBweDsgfVxuICAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gICAgY29sb3I6ICNjNDExMzA7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIGNvbG9yOiAjYzQxMTMwO1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgICBjb2xvcjogIzVENUU1RTsgfVxuICAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgLnVpLWljb24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC51aS1kYXRlcGlja2VyIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC51aS1kYXRlcGlja2VyIHRhYmxlIHRkIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC51aS1kYXRlcGlja2VyIHRhYmxlIHRkIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLnVpLWRhdGVwaWNrZXIgdGFibGUgdGQudWktZGF0ZXBpY2tlci11bnNlbGVjdGFibGUge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuLmZsZXhib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLmZsZXhib3ggPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7IH1cblxuI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLXRvZ2dsZSAud29vY29tbWVyY2UtaW5mbywgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWNvdXBvbi10b2dnbGUgLndvb2NvbW1lcmNlLWluZm8sICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAjd29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvIGEsICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvIGEsICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgYSB7XG4gICAgY29sb3I6ICNjNDExMzA7IH1cbiAgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLXRvZ2dsZSAud29vY29tbWVyY2UtaW5mbzpiZWZvcmUsICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSwgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICNjNDExMzA7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciB7XG4gIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gIGNvbG9yOiAjZmZmOyB9XG4gICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbiN3b29jb21tZXJjZSAuYWN0aW9ucyAuY291cG9uIHtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB3aWR0aDogMjI1cHggIWltcG9ydGFudDsgfVxuICAjd29vY29tbWVyY2UgLmFjdGlvbnMgLmNvdXBvbiAuYnV0dG9uLCAjd29vY29tbWVyY2UgLmFjdGlvbnMgLmNvdXBvbiBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgYSwgZm9vdGVyIC5ray1zdW1tYXJ5LWNvbXBhbnktdXJsICN3b29jb21tZXJjZSAuYWN0aW9ucyAuY291cG9uIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAjd29vY29tbWVyY2UgLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICNEOEQ4RDg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjd29vY29tbWVyY2UgLmFjdGlvbnMge1xuICAgIHBhZGRpbmc6IDEwcHggMDsgfVxuICAgICN3b29jb21tZXJjZSAuYWN0aW9ucyAuY291cG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAgICAgI3dvb2NvbW1lcmNlIC5hY3Rpb25zIC5jb3Vwb24gYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbiN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1sb2dpbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDIwcHggMzVweDtcbiAgYm94LXNoYWRvdzogMCAycHggMThweCAwIHJnYmEoMTU3LCAxNTcsIDE1NywgMC4zKTtcbiAgYm9yZGVyOiBub25lOyB9XG4gICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1sb2dpbiAuZm9ybS1yb3cge1xuICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAjd29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4gLmZvcm0tcm93IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAjd29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4gLmJ1dHRvbiwgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgI3dvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIGEge1xuICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4OyB9XG4gICN3b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1sb2dpbiAubG9zdF9wYXNzd29yZCBhIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuI3dvb2NvbW1lcmNlLmNhcnQge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4OyB9XG4gICN3b29jb21tZXJjZS5jYXJ0IC53b29jb21tZXJjZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICN3b29jb21tZXJjZS5jYXJ0IC53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMjBweCAzNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywgMTU3LCAxNTcsIDAuMyk7XG4gICAgd2lkdGg6IGNhbGMoNzAlIC0gMzVweCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDsgfVxuICAgICN3b29jb21tZXJjZS5jYXJ0IC53b29jb21tZXJjZS1jYXJ0LWZvcm0gLnNob3BfdGFibGUge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgICN3b29jb21tZXJjZS5jYXJ0IC53b29jb21tZXJjZS1jYXJ0LWZvcm0gLnNob3BfdGFibGUgLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXF1YW50aXR5IC5xdWFudGl0eSBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAwcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0Q4RDhEODsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNhcnQgLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAuc2hvcF90YWJsZSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtbmFtZSBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICN3b29jb21tZXJjZS5jYXJ0IC5jb3Vwb24gaW5wdXQge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBib3JkZXItY29sb3I6ICNEOEQ4RDg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAjd29vY29tbWVyY2UuY2FydCAucHJvZHVjdC1yZW1vdmUgLnJlbW92ZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICN3b29jb21tZXJjZS5jYXJ0IC5wcm9kdWN0LXJlbW92ZSAucmVtb3ZlOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3RyYXNoLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMjAlKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlOyB9XG4gICAgI3dvb2NvbW1lcmNlLmNhcnQgLnByb2R1Y3QtcmVtb3ZlIC5yZW1vdmU6aG92ZXI6OmJlZm9yZSB7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAwJSk7IH1cbiAgI3dvb2NvbW1lcmNlLmNhcnQgLmNhcnQtY29sbGF0ZXJhbHMge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMTBweCAyNXB4IDMwcHggMjVweDtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgxNTcsIDE1NywgMTU3LCAwLjMpO1xuICAgIHdpZHRoOiBjYWxjKDMzJSAtIDM1cHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgI3dvb2NvbW1lcmNlLmNhcnQgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICN3b29jb21tZXJjZS5jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgY29sb3I6ICMxQjFFMjQ7IH1cbiAgICAgICN3b29jb21tZXJjZS5jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuY2hlY2tvdXQtYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAjd29vY29tbWVyY2UuY2FydCAud29vY29tbWVyY2UtY2FydC1mb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgI3dvb2NvbW1lcmNlLmNhcnQgLmNhcnQtY29sbGF0ZXJhbHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG5cbiN3b29jb21tZXJjZS5jaGVja291dCB7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0IGgxLmNlbnRlcmVkIHtcbiAgICBjb2xvcjogIzFCMUUyNDtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCBoMS5jZW50ZXJlZDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgcGFkZGluZzogOHB4IDEycHg7IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgaW5wdXQjZGF0ZXBpY2tlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0IGlucHV0I2RhdGVwaWNrZXI6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3Mgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgLmNhcnRfaXRlbSAudmFyaWF0aW9uIGR0LCAjd29vY29tbWVyY2UuY2hlY2tvdXQgLmNhcnRfaXRlbSAudmFyaWF0aW9uIGRkIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAubWFudWFsLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLm1hbnVhbFNoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC5tYW51YWwgbGFiZWwsXG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC5tYW51YWxTaCBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzcHgsIC0ycHgpOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAuY29sLTEsXG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAuY29sLTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cge1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBwYWRkaW5nOiAzcHggMDsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX3Bvc3Rjb2RlX2ZpZWxkIHtcbiAgICAgICAgb3JkZXI6IDI7IH1cbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjYmlsbGluZ19hZGRyZXNzXzJfZmllbGQge1xuICAgICAgICBvcmRlcjogMzsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCwgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2NpdHlfZmllbGQge1xuICAgICAgICBvcmRlcjogNDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCBpbnB1dCwgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2NpdHlfZmllbGQgaW5wdXQge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNGOEY4RjggIWltcG9ydGFudDsgfVxuICAgICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I2JpbGxpbmdfYWRkcmVzc18xX2ZpZWxkIC5tYW51YWwsICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjYmlsbGluZ19jaXR5X2ZpZWxkIC5tYW51YWwge1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZC5vcGVuLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I2JpbGxpbmdfY2l0eV9maWVsZC5vcGVuIHtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG4gICAgICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZC5vcGVuIGlucHV0LCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I2JpbGxpbmdfY2l0eV9maWVsZC5vcGVuIGlucHV0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNiaWxsaW5nX3Bob25lX2ZpZWxkLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I2JpbGxpbmdfZW1haWxfZmllbGQge1xuICAgICAgICBvcmRlcjogNTsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzdG9yZV9waWNrdXBfZmllbGQge1xuICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgaGVpZ2h0OiAwOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIHBhZGRpbmc6IDNweCAwOyB9XG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzaGlwcGluZ19wb3N0Y29kZV9maWVsZCB7XG4gICAgICAgIG9yZGVyOiAyOyB9XG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzaGlwcGluZ19hZGRyZXNzXzJfZmllbGQge1xuICAgICAgICBvcmRlcjogMzsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjc2hpcHBpbmdfYWRkcmVzc18xX2ZpZWxkLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzaGlwcGluZ19jaXR5X2ZpZWxkIHtcbiAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3NoaXBwaW5nX2FkZHJlc3NfMV9maWVsZCBpbnB1dCwgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjc2hpcHBpbmdfY2l0eV9maWVsZCBpbnB1dCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0Y4RjhGOCAhaW1wb3J0YW50OyB9XG4gICAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3NoaXBwaW5nX2FkZHJlc3NfMV9maWVsZCAubWFudWFsU2gsICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3NoaXBwaW5nX2NpdHlfZmllbGQgLm1hbnVhbFNoIHtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG4gICAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3NoaXBwaW5nX2FkZHJlc3NfMV9maWVsZC5vcGVuLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzaGlwcGluZ19jaXR5X2ZpZWxkLm9wZW4ge1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgICAgICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciA+IC5mb3JtLXJvdyNzaGlwcGluZ19hZGRyZXNzXzFfZmllbGQub3BlbiBpbnB1dCwgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjc2hpcHBpbmdfY2l0eV9maWVsZC5vcGVuIGlucHV0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIgPiAuZm9ybS1yb3cjc2hpcHBpbmdfcGhvbmVfZmllbGQsICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3NoaXBwaW5nX2VtYWlsX2ZpZWxkIHtcbiAgICAgICAgb3JkZXI6IDU7IH1cbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyID4gLmZvcm0tcm93I3N0b3JlX3BpY2t1cF9maWVsZCB7XG4gICAgICAgIG9yZGVyOiA2O1xuICAgICAgICBoZWlnaHQ6IDA7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX2FkZHJlc3NfMl9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX3Bvc3Rjb2RlX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfY2l0eV9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX3Bob25lX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfZW1haWxfZmllbGQsXG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfYWRkcmVzc18xX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI3NoaXBwaW5nX2FkZHJlc3NfMl9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19wb3N0Y29kZV9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19jaXR5X2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI3NoaXBwaW5nX3Bob25lX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI3NoaXBwaW5nX2VtYWlsX2ZpZWxkIHtcbiAgICB3aWR0aDogNDclO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCxcbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjYmlsbGluZ19hZGRyZXNzXzJfZmllbGQsXG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfcG9zdGNvZGVfZmllbGQsXG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfY2l0eV9maWVsZCxcbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjYmlsbGluZ19waG9uZV9maWVsZCxcbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjYmlsbGluZ19lbWFpbF9maWVsZCxcbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfYWRkcmVzc18xX2ZpZWxkLFxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19hZGRyZXNzXzJfZmllbGQsXG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI3NoaXBwaW5nX3Bvc3Rjb2RlX2ZpZWxkLFxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19jaXR5X2ZpZWxkLFxuICAgICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19waG9uZV9maWVsZCxcbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfZW1haWxfZmllbGQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfYWRkcmVzc18yX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfYWRkcmVzc18yX2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfY2l0eV9maWVsZCxcbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19jaXR5X2ZpZWxkLFxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI2JpbGxpbmdfZW1haWxfZmllbGQsXG4gICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfZW1haWxfZmllbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjc2hpcHBpbmdfYWRkcmVzc18yX2ZpZWxkIC5zY3JlZW4tcmVhZGVyLXRleHQsXG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX2FkZHJlc3NfMl9maWVsZCAuc2NyZWVuLXJlYWRlci10ZXh0LFxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjYmlsbGluZ19jaXR5X2ZpZWxkIC5zY3JlZW4tcmVhZGVyLXRleHQsXG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19jaXR5X2ZpZWxkIC5zY3JlZW4tcmVhZGVyLXRleHQsXG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNiaWxsaW5nX2VtYWlsX2ZpZWxkIC5zY3JlZW4tcmVhZGVyLXRleHQsXG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNzaGlwcGluZ19lbWFpbF9maWVsZCAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC5ub3RlcyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgI29yZGVyX2NvbW1lbnRzX2ZpZWxkIGxhYmVsIHtcbiAgICBjb2xvcjogI2M0MTEzMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNvcmRlcl9jb21tZW50c19maWVsZCB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzICNlX2RlbGl2ZXJ5ZGF0ZV9maWVsZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjZV9kZWxpdmVyeWRhdGVfZmllbGQgbGFiZWwge1xuICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAjZV9kZWxpdmVyeWRhdGVfZmllbGQgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIGgzIHtcbiAgICBjb2xvcjogIzFCMUUyNDtcbiAgICBmb250LXNpemU6IDEuOHJlbTsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgLnNob3BfdGFibGUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAuc2hvcF90YWJsZSAudmFyaWF0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50OyB9XG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgLnNob3BfdGFibGUgLnZhcmlhdGlvbiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNzaGlwcGluZ19tZXRob2QgbGkgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgI3NoaXBwaW5nX21ldGhvZCBsaSBpbnB1dFt0eXBlPWhpZGRlbl0gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAjcGF5bWVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI3BheW1lbnQgLndvb2NvbW1lcmNlLW5vdGljZSB7XG4gICAgICBmb250LXNpemU6IDAuOHJlbTsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjcGF5bWVudCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44cmVtOyB9XG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNwYXltZW50IC5idXR0b24sICN3b29jb21tZXJjZS5jaGVja291dCAjcGF5bWVudCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgYSwgZm9vdGVyIC5ray1zdW1tYXJ5LWNvbXBhbnktdXJsICN3b29jb21tZXJjZS5jaGVja291dCAjcGF5bWVudCBhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICAgICAgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgY29sb3I6ICNjNDExMzA7IH1cbiAgICAgICN3b29jb21tZXJjZS5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyBoMyNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgaDMjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyAjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcy1jaGVja2JveCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLmxlZnRDb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWFjY291bnQtZmllbGRzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLmNvbC0yIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMTBweCAxMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCB1bC53Yy1pdGVtLW1ldGEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCB1bC53Yy1pdGVtLW1ldGEgbGkge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgdWwud2MtaXRlbS1tZXRhIGxpIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0ICNwYXltZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMHB4OyB9XG4gICAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0IC5zaG9wX3RhYmxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogdGFibGU7IH0gfVxuXG4uY2FydF90b3RhbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWRlc3RpbmF0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2FydF90b3RhbHMgLmNhcnQtc3VidG90YWwgdGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNhcnRfdG90YWxzIC5jYXJ0LXN1YnRvdGFsIHRkOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uY2FydF90b3RhbHMgLnNoaXBwaW5nLWNhbGN1bGF0b3ItYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2FydF90b3RhbHMgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uY2FydF90b3RhbHMgI3NoaXBwaW5nX21ldGhvZCAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5jYXJ0X3RvdGFscyAjc2hpcHBpbmdfbWV0aG9kIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5jYXJ0X3RvdGFscyAjc2hpcHBpbmdfbWV0aG9kIGlucHV0IHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cblxuLmNhcnRfdG90YWxzIC5zaGlwcGluZyB0aCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLmNhcnRfdG90YWxzIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gLmJ1dHRvbiwgLmNhcnRfdG90YWxzIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0gZm9vdGVyIC5ray1zdW1tYXJ5LWNvbXBhbnktdXJsIGEsIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCAuY2FydF90b3RhbHMgLnNoaXBwaW5nLWNhbGN1bGF0b3ItZm9ybSBhIHtcbiAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7IH1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuI3NoaXBwaW5nX21ldGhvZCBsaSBpbnB1dCB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG5cbi5jaGVja291dC1uYXYgbmF2Lm1lbnUgLnNob3BwaW5nLWNhcnQge1xuICByaWdodDogMDsgfVxuXG4uY2hlY2tvdXQtbmF2IG5hdi5tZW51ICNzbWFsbC1jYXJ0IHtcbiAgcmlnaHQ6IDA7IH1cblxuLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIGg0LFxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIHAsXG4ud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHAge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyBwIGlucHV0LFxuICAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHAgaW5wdXQge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uZm9ybS1yb3cuc3RvcmUtcGlja3VwIGxhYmVsLFxuLmZvcm0tcm93LnN0b3JlLXBpY2t1cCBzZWxlY3Qge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIGgzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBtYXJnaW46IDIwcHg7IH1cbiAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgPiAqIHtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDApO1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgwICogKDEgLSAxKSAvIDEpKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgPiAqOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgPiAqOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDQpIC0gKDAgKiAoNCAtIDEpIC8gNCkpOyB9XG4gICAgICAgICAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zID4gKjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gNCkgLSAoMCAqICg0IC0gMSkgLyA0KSk7IH1cbiAgICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgPiAqOm50aC1jaGlsZCg0bikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgIGdyaWQtZ2FwOiAwOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfSB9XG4gICAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyA+ICoge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIC5sb2NhdGlvbiB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgLmxvY2F0aW9uIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgLmxvY2F0aW9uIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciAucGlja3VwLWxvY2F0aW9ucyAubG9jYXRpb24uYWN0aXZlLCAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgLmxvY2F0aW9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDsgfVxuICAgICAgICAucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIgLnBpY2t1cC1sb2NhdGlvbnMgLmxvY2F0aW9uLmFjdGl2ZSBoNCxcbiAgICAgICAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIC5sb2NhdGlvbi5hY3RpdmUgcCwgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIC5sb2NhdGlvbjpob3ZlciBoNCxcbiAgICAgICAgLnBpY2t1cC1sb2NhdGlvbnMtaG9sZGVyIC5waWNrdXAtbG9jYXRpb25zIC5sb2NhdGlvbjpob3ZlciBwIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIGRkIHAge1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbi53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUgc2VsZWN0IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2hlY2tvdXRfY291cG9uIC5mb3JtLXJvdyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfSB9XG5cbi5ub3Rlcy1ob2xkZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB3aWR0aDogMTAwJTsgfVxuICAubm90ZXMtaG9sZGVyID4gZGl2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgIC5ub3Rlcy1ob2xkZXIgPiBkaXYgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjYzQxMTMwOyB9XG4gICAgLm5vdGVzLWhvbGRlciA+IGRpdiB0ZXh0YXJlYSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzg3ODc4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cbiAgICAubm90ZXMtaG9sZGVyID4gZGl2LmNhcmQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cblxuZm9ybS53b29jb21tZXJjZS1jaGVja291dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNvcmRlcl9yZXZpZXdfaGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5sZWZ0IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLnJpZ2h0IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCA+IGRpdi5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgPiBkaXYuc3RlcHMge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luOiA0MHB4IDA7IH1cbiAgICBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ID4gZGl2LnN0ZXBzID4gYSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbGluZS1udW1iZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAgICAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCA+IGRpdi5zdGVwcyA+IGE6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGluZS1udW1iZXIpO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgPiBkaXYuc3RlcHMgPiBhLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgPiBkaXYuc3RlcHMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7IH1cbiAgICAgICAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCA+IGRpdi5zdGVwcyBhIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuICBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ID4gZGl2I2N1c3RvbWVyX2RldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCA+IGRpdiNjdXN0b21lcl9kZXRhaWxzIC5jb2wtMSAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgZm9ybS53b29jb21tZXJjZS1jaGVja291dCA+IGRpdiNjdXN0b21lcl9kZXRhaWxzIC5jb2wtMSAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMgPiBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLmxlZnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuLndvb2NvbW1lcmNlLU5vdGljZUdyb3VwLWNoZWNrb3V0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNoZWNrb3V0Q29udHJvbHMge1xuICBtYXJnaW46IDQwcHggMCAwIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuY2hlY2tvdXRDb250cm9scyBidXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNDExMzAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgLmNoZWNrb3V0Q29udHJvbHMgYnV0dG9uOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICNEOEQ4RDggIWltcG9ydGFudDsgfVxuXG4jd29vY29tbWVyY2UuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogNDBweDtcbiAgYm94LXNoYWRvdzogMCAycHggMThweCAwIHJnYmEoMTU3LCAxNTcsIDE1NywgMC4zKTsgfVxuICAjd29vY29tbWVyY2UuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICN3b29jb21tZXJjZS5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3dvb2NvbW1lcmNlLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDsgfVxuICAgICN3b29jb21tZXJjZS5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3IC50b3RhbCxcbiAgICAjd29vY29tbWVyY2UuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1vcmRlci1vdmVydmlldyAubWV0aG9kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxucC5jcmVhdGUtYWNjb3VudCB7XG4gIG1hcmdpbjogMTBweCAwOyB9XG4gIHAuY3JlYXRlLWFjY291bnQgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4OyB9XG5cbiNyZWNpcGVzIHtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODsgfVxuICAjcmVjaXBlcyAucmVjaXBlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICoge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygyMHB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCk7XG4gICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEpIC0gKDIwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoMjBweCAqICgxIC0gMSkgLyAxKSk7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEpIC0gKDIwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMjBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMjBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgI3JlY2lwZXMgLnJlY2lwZXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgICBncmlkLWdhcDogMjBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICNyZWNpcGVzIC5yZWNpcGVzIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAgICNyZWNpcGVzIC5yZWNpcGVzID4gKiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAjcmVjaXBlcyAucmVjaXBlcyAudGFnIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJhY2tncm91bmQ6ICNjNDExMzA7XG4gICAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHJpZ2h0OiAtMTBweDsgfVxuICAgICNyZWNpcGVzIC5yZWNpcGVzIC5yZWNpcGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgaGVpZ2h0OiBjYWxjKDU1MHB4IC8gMiAtIDEwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgZ3JpZC1yb3c6IDEgLyAyOyB9XG4gICAgICAgICNyZWNpcGVzIC5yZWNpcGVzIC5yZWNpcGU6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICBncmlkLXJvdzogMiAvIDI7IH0gfVxuICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQwJSAtIDQwcHgpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICM1RDVFNUU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTsgfVxuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5pbWFnZTpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMC43MDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTQwcHg7IH0gfVxuICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSBoMiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBjb2xvcjogIzFCMUUyNDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSBoMjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMC44MDsgfVxuICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSBwIHtcbiAgICAgICAgY29sb3I6ICM1RDVFNUU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDYwJSAtIDIwcHgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAgICNyZWNpcGVzIC5yZWNpcGVzIC5yZWNpcGUgLmNvbnRlbnQgcCAqIHtcbiAgICAgICAgICBjb2xvcjogIzVENUU1RSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSAuY29udGVudCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlLm1vbnRoLXJlY2lwZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiA1NTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlLm1vbnRoLXJlY2lwZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZS5tb250aC1yZWNpcGUge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMSAvIDM7IH0gfVxuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlLm1vbnRoLXJlY2lwZSAuaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzVENUU1RTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZS5tb250aC1yZWNpcGUgLmltYWdlIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMTQwcHg7IH0gfVxuICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlLm1vbnRoLXJlY2lwZSAuY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlLm1vbnRoLXJlY2lwZSAuY29udGVudCBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xOHB4OyB9XG4gICAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZS5tb250aC1yZWNpcGUgLmNvbnRlbnQgPiBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNUQ1RTVFO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsgfVxuICAgICAgICAgICNyZWNpcGVzIC5yZWNpcGVzIC5yZWNpcGUubW9udGgtcmVjaXBlIC5jb250ZW50IC5yZWNpcGUtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTVweCAhaW1wb3J0YW50OyB9XG4gICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5yZWNpcGUtZm9vdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIGxlZnQ6IDE1cHg7IH1cbiAgICAgICAgI3JlY2lwZXMgLnJlY2lwZXMgLnJlY2lwZSAucmVjaXBlLWZvb3RlciBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5yZWNpcGUtZm9vdGVyIHNwYW4gaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7IH1cbiAgICAgICAgICAjcmVjaXBlcyAucmVjaXBlcyAucmVjaXBlIC5yZWNpcGUtZm9vdGVyIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2M0MTEzMDsgfVxuXG4uc2luZ2xlLXJlY2lwZSBoNCBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgd2lkdGg6IDI1cHg7IH1cblxuLnNpbmdsZS1yZWNpcGUgLnZpZGVvLXJlY2lwZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgbWFyZ2luLXRvcDogLTUwcHg7IH1cbiAgLnNpbmdsZS1yZWNpcGUgLnZpZGVvLXJlY2lwZSAuZW1iZWQge1xuICAgIG1heC13aWR0aDogNTUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbiNsb2NhdGlvbiB7XG4gIHBhZGRpbmc6IDUwcHggMDsgfVxuICAjbG9jYXRpb24gLndyYXBwZXIgLmxvY2F0aW9uLXRvdXIge1xuICAgIGhlaWdodDogMzUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICM1RDVFNUU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciBhIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMzIwcHg7IH1cbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciBhIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjsgfVxuICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciAub3ZlcmxheUlmcmFtZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgei1pbmRleDogMTAwMDA7IH1cbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciAub3ZlcmxheUlmcmFtZS5vcGVuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAjbG9jYXRpb24gLndyYXBwZXIgLmxvY2F0aW9uLXRvdXIgLnBwLWVtYmVkIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgei1pbmRleDogOTk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciAucHAtZW1iZWQgaW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAubG9jYXRpb24tdG91ciBhIHtcbiAgICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICoge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygyMHB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCk7XG4gICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEpIC0gKDIwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMSkgLSAoMjBweCAqICgxIC0gMSkgLyAxKSk7IH1cbiAgICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgPiAqIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEpIC0gKDIwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMjBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICoge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAoMjBweCAqICgyIC0gMSkgLyAyKSk7IH1cbiAgICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgICBncmlkLWdhcDogMjBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyID4gKiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuY29udGFjdCBzcGFuLFxuICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgIGNvbG9yOiAjMUIxRTI0O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tbGVmdDogMzVweDsgfVxuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmNvbnRhY3Qgc3Bhbjo6YmVmb3JlLFxuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmNvbnRhY3QgYTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgbGVmdDogLTM1cHg7XG4gICAgICAgIHRvcDogNHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuY29udGFjdCBzcGFuLnBob25lOjpiZWZvcmUsXG4gICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuY29udGFjdCBhLnBob25lOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGhvbmUuc3ZnXCIpOyB9XG4gICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuY29udGFjdCBzcGFuLm1haWw6OmJlZm9yZSxcbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IGEubWFpbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2VudmVsb3BlLnN2Z1wiKTsgfVxuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmNvbnRhY3Qgc3Bhbi5hZGRyZXNzOjpiZWZvcmUsXG4gICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuY29udGFjdCBhLmFkZHJlc3M6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9waW4tMS5zdmdcIik7IH1cbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IHNwYW4udGltZXM6OmJlZm9yZSxcbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IGEudGltZXM6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90aW1lLWNsb2NrLWNpcmNsZS5zdmdcIik7IH1cbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IHNwYW4gcCxcbiAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5jb250YWN0IGEgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBjb2xvcjogIzFCMUUyNDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5mYXNjaWxpdHkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuZmFzY2lsaXR5IGg0IHtcbiAgICAgICAgY29sb3I6ICMxQjFFMjQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmZhc2NpbGl0eSB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDsgfVxuICAgICAgICAjbG9jYXRpb24gLndyYXBwZXIgLmNvbnRlbnQtd3JhcHBlciAuZmFzY2lsaXR5IHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgY29sb3I6ICNjNDExMzA7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmZhc2NpbGl0eSB1bCBsaSBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjVweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmZhc2NpbGl0eSAuZW1iZWQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0MDBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICNsb2NhdGlvbiAud3JhcHBlciAuY29udGVudC13cmFwcGVyIC5mYXNjaWxpdHkgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmZhc2NpbGl0eSB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLmxvY2F0aW9ucy1wYWdlIC53cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxvY2F0aW9ucy1wYWdlIC53cmFwcGVyID4gKiB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMjBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4KTtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEpIC0gKDIwcHggKiAoMSAtIDEpIC8gMSkpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxKSAtICgyMHB4ICogKDEgLSAxKSAvIDEpKTsgfVxuICAgICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDIwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gKDIwcHggKiAoMiAtIDEpIC8gMikpOyB9XG4gICAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciA+ICo6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtICgyMHB4ICogKDIgLSAxKSAvIDIpKTsgfVxuICAgICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgIGdyaWQtZ2FwOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgLmxvY2F0aW9ucy1wYWdlIC53cmFwcGVyIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gICAgICAubG9jYXRpb25zLXBhZ2UgLndyYXBwZXIgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDsgfSB9XG4gIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciAubG9jYXRpb24tbmF2IHVsIGxpIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAxNTBweDsgfVxuICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciAubG9jYXRpb24tbmF2IHVsIGxpIC50ZXh0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDgwJSAtIDEwcHgpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciAubG9jYXRpb24tbmF2IHVsIGxpIC50ZXh0IGg0IHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmxvY2F0aW9ucy1wYWdlIC53cmFwcGVyIC5sb2NhdGlvbi1uYXYgdWwgbGkgLnRleHQgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5sb2NhdGlvbnMtcGFnZSAud3JhcHBlciAubG9jYXRpb24tbmF2IHVsIGxpIC5pbWFnZSB7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSAxMHB4KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDE1MHB4OyB9XG5cbiNmYXEge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4OyB9XG4gICNmYXEgZm9ybSAuc2VhcmNoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMzVweDsgfVxuICAjZmFxIGZvcm0gLnJlc2V0LWZhcS10YWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogIzFCMUUyNDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAjZmFxIGZvcm0gLmJ1dHRvbiwgI2ZhcSBmb3JtIGZvb3RlciAua2stc3VtbWFyeS1jb21wYW55LXVybCBhLCBmb290ZXIgLmtrLXN1bW1hcnktY29tcGFueS11cmwgI2ZhcSBmb3JtIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHBhZGRpbmc6IDEwcHggMjVweDsgfVxuICAjZmFxIC53cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjZmFxIC53cmFwcGVyIC5mYXEtbmF2IHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgI2ZhcSAud3JhcHBlciAuZmFxLW5hdiA+IHVsID4gbGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxOTYsIDE3LCA0OCwgMC4xKTtcbiAgICAgICAgY29sb3I6ICMxQjFFMjQ7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAjZmFxIC53cmFwcGVyIC5mYXEtbmF2ID4gdWwgPiBsaS5taXhpdHVwLWNvbnRyb2wtYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwOyB9XG4gICAgICAgICNmYXEgLndyYXBwZXIgLmZhcS1uYXYgPiB1bCA+IGxpOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgI2ZhcSAud3JhcHBlciAuZmFxcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMjBweCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDhEOEQ4O1xuICAgICAgICBjb2xvcjogIzVENUU1RTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRDhEOEQ4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDhEOEQ4O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCA2NTBtcyBlYXNlLW91dDtcbiAgICAgICAgbWF4LWhlaWdodDogNjVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgICAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaSBwLCAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaSBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAgICNmYXEgLndyYXBwZXIgLmZhcXMgPiB1bCA+IGxpIGlmcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgICAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEOEQ4RDg7IH1cbiAgICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsID4gbGkgPiBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxOXB4IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaSA+IHVsIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDM1MG1zIGVhc2U7XG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAgICNmYXEgLndyYXBwZXIgLmZhcXMgPiB1bCA+IGxpID4gdWwgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q4RDhEODtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsID4gbGkuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogIzFCMUUyNDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDY1cHg7IH1cbiAgICAgICAgICAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaS5hY3RpdmUgdWwge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zOyB9XG4gICAgICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsID4gbGkuYWN0aXZlOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsID4gbGkge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsID4gbGk6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgdG9wOiAxOHB4O1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYXJyb3ctZG93bi1ncmV5LnN2Z1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICNmYXEgLndyYXBwZXIgLmZhcXMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgI2ZhcSAud3JhcHBlciAuZmFxcyBsaSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAgICAgI2ZhcSAud3JhcHBlciAuZmFxLW5hdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIHtcbiAgICBtYXJnaW46IDYwcHggYXV0byAwIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYSwgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLmN1cnJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYzQxMTMwO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuXG4jd2VkZGluZy1jYWtlIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODsgfVxuICAjd2VkZGluZy1jYWtlIC5jb250ZW50IHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiAjNUQ1RTVFOyB9XG4gICN3ZWRkaW5nLWNha2UgLmNha2VzIHtcbiAgICBtYXJnaW46IDUwcHggMDsgfVxuICAgICN3ZWRkaW5nLWNha2UgLmNha2VzIGEge1xuICAgICAgd2lkdGg6IGNhbGMoMjAlIC0gMTBweCk7XG4gICAgICBtYXJnaW46IDVweDsgfVxuICAgICAgI3dlZGRpbmctY2FrZSAuY2FrZXMgYS5ncmlkLWl0ZW0tLXdpZHRoMiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDQwJSAtIDIwcHgpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAjd2VkZGluZy1jYWtlIC5jYWtlcyBhIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTBweCk7IH1cbiAgICAgICAgI3dlZGRpbmctY2FrZSAuY2FrZXMgYS5ncmlkLWl0ZW0tLXdpZHRoMiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgI3dlZGRpbmctY2FrZSAuY2FrZXMgYSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpOyB9XG4gICAgICAgICN3ZWRkaW5nLWNha2UgLmNha2VzIGEuZ3JpZC1pdGVtLS13aWR0aDIge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpOyB9IH1cblxuI3dvcmtzaG9wcyBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4uL2ltYWdlcy9hcnJvdy1kb3duLXNlbGVjdC5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDE1cHggY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTBweCAhaW1wb3J0YW50OyB9XG5cbiN3b3Jrc2hvcHMgLndvcmtzaG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7IH1cbiAgI3dvcmtzaG9wcyAud29ya3Nob3AgLmltYWdlIHtcbiAgICB3aWR0aDogY2FsYygzMCUgLSAxNXB4KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICN3b3Jrc2hvcHMgLndvcmtzaG9wIC5pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgI3dvcmtzaG9wcyAud29ya3Nob3AgLmNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDcwJSAtIDE1cHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgICAjd29ya3Nob3BzIC53b3Jrc2hvcCAuY29udGVudCBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICN3b3Jrc2hvcHMgLndvcmtzaG9wIC5pbWFnZSxcbiAgICAjd29ya3Nob3BzIC53b3Jrc2hvcCAuY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgI3dvcmtzaG9wcyAud29ya3Nob3AgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi5hY2YtbWFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjAwcHg7IH1cbiAgLmFjZi1tYXAgaDQge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmFjZi1tYXAgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5tYXBzLXBhcnQtb25lIHtcbiAgcGFkZGluZzogNDBweCAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDMwJSAtIDIwcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWFwcy1wYXJ0LW9uZSB1bCBsaSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7IH1cbiAgICAubWFwcy1wYXJ0LW9uZSB1bCBsaSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjYzQxMTMwOyB9XG5cbi5tYXBzLXBhcnQtdHdvIHtcbiAgcGFkZGluZzogNDBweCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDcwJSAtIDIwcHgpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubWFwcy1wYXJ0LW9uZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgcGFkZGluZzogMTBweCAwcHggMjBweCAwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7IH1cbiAgLm1hcHMtcGFydC10d28ge1xuICAgIHBhZGRpbmc6IDBweCAwcHggMjBweCAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc2VhcmNoLXJlc3VsdHMgLndyYXBwZXIgPiB1bCA+IGxpIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAyMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDhEOEQ4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5zZWFyY2gtcmVzdWx0cyAud3JhcHBlciA+IHVsID4gbGkgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnNlYXJjaC1yZXN1bHRzIC53cmFwcGVyID4gdWwgPiBsaSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuc2VhcmNoLXJlc3VsdHMgLndyYXBwZXIgPiB1bCA+IGxpIGEgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBjb2xvcjogIzFCMUUyNDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAuc2VhcmNoLXJlc3VsdHMgLndyYXBwZXIgPiB1bCA+IGxpIC50YWcge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYmFja2dyb3VuZDogI2M0MTEzMDtcbiAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbi5zZWFyY2gtcmVzdWx0cyAud3JhcHBlciAucHJvZHVjdHM6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNlYXJjaC1yZXN1bHRzIC53cmFwcGVyIC5wcm9kdWN0cyAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc2hvcHBpbmctY2FydC1hZGQuc3ZnKSBuby1yZXBlYXQgY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDU1cHggIWltcG9ydGFudDtcbiAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VhcmNoLXJlc3VsdHMgLndyYXBwZXIgLnByb2R1Y3RzIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogLTEzcHggIWltcG9ydGFudDsgfSB9XG5cbi52YWNhdHVyZXMge1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY4OyB9XG4gIC52YWNhdHVyZXMgdWwgbGkge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLnZhY2F0dXJlcyB1bCBsaSBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLypcbiAqIEhlbHBlciBjbGFzc2VzXG4gKi9cbi5ib3gtc2hhZG93LCAjYm9uYm9ucyB1bCBsaSwgdWwucHJvZHVjdHMgbGksIC5waWNrdXAtbG9jYXRpb25zLWhvbGRlciB7XG4gIGJveC1zaGFkb3c6IDBweCAycHggMTBweCAxcHggI2Q4ZDhkODsgfVxuXG4udGV4dC1zaGFkb3cge1xuICB0ZXh0LXNoYWRvdzogMHB4IDNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGlkZS1vbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNob3ctb24tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNlbnRlcmVkIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNlbnRlcmVkLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYmFja2dyb3VuZC1pbWFnZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAuYmFja2dyb3VuZC1pbWFnZS50b3Age1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7IH1cbiAgLmJhY2tncm91bmQtaW1hZ2UuYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgYm90dG9tOyB9XG5cbi5uby1wYWRkaW5nIHtcbiAgcGFkZGluZzogMDsgfVxuXG4ub3ZlcmxheTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHotaW5kZXg6IDA7IH1cblxuLm92ZXJsYXktZ3JhZGllbnQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiA0MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNjcpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICB6LWluZGV4OiAwOyB9XG5cbi5yZXNldCwgbmF2Lm1lbnUgI3NtYWxsLWNhcnQgaDMsIG5hdi5tZW51ICNzbWFsbC1jYXJ0IHVsLCAuZm9sZG91dC1tZW51IHVsLCBmb290ZXIgLndyYXBwZXIgaDQsIGZvb3RlciAud3JhcHBlciA+IHVsLCBmb290ZXIgLndyYXBwZXIgPiB1bCB1bCwgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAudXNwIHVsLCAjYm9uYm9ucyB1bCwgLmNhdGVnb3JpZXMgLmNvbnRlbnQgaDIsIC5jYXRlZ29yaWVzIC5jb250ZW50IHVsLCAjc2xpZGVyIC5jYXJvdXNlbCAuaXRlbSAuY2Fyb3VzZWwtbGFiZWwgaDIsICNzbGlkZXIgLmhpZ2hsaWdodC13cmFwcGVyIGEgLmhpZ2hsaWdodC1ibG9jayAub3ZlcmxheS10ZXh0IGgzLCAjc2xpZGVyIC5oaWdobGlnaHQtd3JhcHBlciBhIC5oaWdobGlnaHQtYmxvY2sgLm92ZXJsYXktdGV4dCBoNCwgdWwucHJvZHVjdHMsICN3b29jb21tZXJjZSAucHJvZHVjdCAudGFicywgLnZhcmlhdGlvbnMgLnNlbGVjdCwgLnZhcmlhdGlvbnMgLnNlbGVjdC10eXBlLCAuYnJlYWRjcnVtYnMgLndvb2NvbW1lcmNlLWZpbHRlcmluZyBmb3JtIHVsLCAuaGlzdG9yeS1tZW51IHVsLCAjd29vY29tbWVyY2UuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1vcmRlci1vdmVydmlldywgI2xvY2F0aW9uIC53cmFwcGVyIC5jb250ZW50LXdyYXBwZXIgLmZhc2NpbGl0eSB1bCwgLmxvY2F0aW9ucy1wYWdlIC53cmFwcGVyIC5sb2NhdGlvbi1uYXYgdWwsICNmYXEgLndyYXBwZXIgLmZhcS1uYXYgPiB1bCwgI2ZhcSAud3JhcHBlciAuZmFxcyA+IHVsLCAjZmFxIC53cmFwcGVyIC5mYXFzID4gdWwgPiBsaSA+IHVsLCAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCwgLm1hcHMtcGFydC1vbmUgdWwsIC5zZWFyY2gtcmVzdWx0cyAud3JhcHBlciA+IHVsLCAudmFjYXR1cmVzIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5lbWJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IC01Ni4yNSU7IH1cbiAgLmVtYmVkIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7IH1cblxuLmVsbGlwc2lzIHtcbiAgZGlzcGxheTogZ3JpZDsgfVxuICAuZWxsaXBzaXMgPiAqIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cblxuLnNoYWRvdywgdWwucHJvZHVjdHMgbGkgaDMge1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDE5MywgMTkzLCAxOTMsIDAuNSk7IH1cblxuLnByb2R1Y3RfdGl0bGUge1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAucHJvZHVjdF90aXRsZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQ6ICNjNDExMzA7IH1cblxuLmNvbnRlbnQgaDQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4iLCIvKlxuICogQXV0aG9yOiBOaWVscyBCdWlqdGVuaHVpc1xuICpcbiAqIFNDU1Mgc3RydWN0dXJlOlxuICogMCAtIFZlbmRvcuKAiuKAlOKAik9wdGlvbmFsIHRoaXJkIHBhcnR5IGltcG9ydHNcbiAqIDEgLSBTZXR0aW5nc+KAiuKAlOKAinByZXByb2Nlc3NvcnMsIGZvbnRzLCB2YXJpYWJsZXNcbiAqIDIgLSBUb29sc+KAiuKAlOKAim1peGlucywgZnVuY3Rpb25zXG4gKiAzIC0gQmFzZeKAiuKAlOKAinJlc2V0IC8gbm9ybWFsaXplXG4gKiA0IC0gRWxlbWVudHPigIrigJTigIpIVE1MIGVsZW1lbnRzIFxuICogNSAtIENvbXBvbmVudHPigIrigJTigIpVSSBjb21wb25lbnRzXG4gKiA2IC0gSGVscGVycyAtIGhlbHBlciBjbGFzc2VzXG4gKi9cblxuLy8gVkVORE9SXG5AaW1wb3J0IFwibm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemVcIjtcblxuLy8gU0VUVElOR1NcbkBpbXBvcnQgXCIxIC0gc2V0dGluZ3MvY29sb3JzXCI7XG5AaW1wb3J0IFwiMSAtIHNldHRpbmdzL2ZvbnRzXCI7XG5AaW1wb3J0IFwiMSAtIHNldHRpbmdzL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwiMSAtIHNldHRpbmdzL2lucHV0c1wiO1xuQGltcG9ydCBcIjEgLSBzZXR0aW5ncy9idXR0b25cIjtcblxuLy8gVE9PTFNcbkBpbXBvcnQgXCIyIC0gdG9vbHMvbWl4aW5zXCI7XG5AaW1wb3J0IFwiMiAtIHRvb2xzL21lZGlhLXF1ZXJpZXNcIjtcbkBpbXBvcnQgXCIyIC0gdG9vbHMvZ3JpZFwiO1xuXG4vLyBCQVNFXG5AaW1wb3J0IFwiMyAtIGJhc2UvcmVib290XCI7IFxuQGltcG9ydCBcIjMgLSBiYXNlL2xheW91dFwiO1xuQGltcG9ydCBcIjMgLSBiYXNlL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCIzIC0gYmFzZS9mb290ZXJcIjtcblxuLy8gRUxFTUVOVFNcbkBpbXBvcnQgXCI0IC0gZWxlbWVudHMvZm9ybXNcIjtcbkBpbXBvcnQgXCI0IC0gZWxlbWVudHMvaGVhZGluZ3NcIjtcbkBpbXBvcnQgXCI0IC0gZWxlbWVudHMvbWVkaWFcIjtcbkBpbXBvcnQgXCI0IC0gZWxlbWVudHMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIjQgLSBlbGVtZW50cy9zbGlja1wiO1xuQGltcG9ydCBcIjQgLSBlbGVtZW50cy9mdWxscGFnZVwiO1xuXG4vLyBDT01QT05FTlRTXG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvYWNjb3VudFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3BpZ2d5XCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvZnVsbC12aWRlb1wiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3VzcFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2Nvb2tpZVwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3BhZ2luZ1wiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2hlcm9cIjtcbkBpbXBvcnQgXCI1IC0gY29tcG9uZW50cy9ib25ib25zXCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvY2F0ZWdvcmllc1wiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3NsaWRlclwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2Jsb2Nrc1wiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3Byb2R1Y3RzXCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvcHJvZHVjdFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvaGlzdG9yeVwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2NhcnRcIjtcbkBpbXBvcnQgXCI1IC0gY29tcG9uZW50cy9jaGVja291dFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3JlY2lwZXNcIjtcbkBpbXBvcnQgXCI1IC0gY29tcG9uZW50cy9sb2NhdGlvblwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL2ZhcVwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCI1IC0gY29tcG9uZW50cy9jYWtlXCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvd29ya3Nob3BzXCI7XG5AaW1wb3J0IFwiNSAtIGNvbXBvbmVudHMvY29udGFjdFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3NlYXJjaFwiO1xuQGltcG9ydCBcIjUgLSBjb21wb25lbnRzL3ZhY2F0dXJlc1wiO1xuXG4vLyBIRUxQRVJTXG5AaW1wb3J0IFwiNiAtIGhlbHBlcnMvaGVscGVyc1wiOyIsIi8qIFxuICogQWxsIGNvbG9ycyB1c2VkIG9uIHRoZSB3ZWJzaXRlLlxuICovXG5cbiR3aGl0ZTogICAgICAgICAgICAgICAjZmZmO1xuJGJsYWNrOiAgICAgICAgICAgICAgICMwMDAwMDA7XG4kb2ZmLXdoaXRlOiAgICAgICAgICAgI2Y4ZjhmODtcblxuJGdyZXktZGFya2VzdDogICAgICAgICMxMTExMTE7XG4kZ3JleS1kYXJrZXI6ICAgICAgICAgIzFCMUUyNDtcbiRncmV5LWRhcms6ICAgICAgICAgICAjMjcyNzI3O1xuJGdyZXk6ICAgICAgICAgICAgICAgICM1RDVFNUU7XG4kZ3JleS1saWdodDogICAgICAgICAgIzc4Nzg3ODtcbiRncmV5LWxpZ2h0ZXI6ICAgICAgICAjRDhEOEQ4O1xuJGdyZXktbGlnaHRlc3Q6ICAgICAgICNGOEY4Rjg7XG5cbiRzdWNjZXM6ICAgICAgICAgICAgICAjNWNiODVjO1xuJHdhcm5pbmc6ICAgICAgICAgICAgICNmMGFkNGU7XG4kZXJyb3I6ICAgICAgICAgICAgICAgI2Q5NTM0ZjtcblxuLy8gJHJlZDogICAgICAgICAgICAgICAgI0Q5MUUxODtcbiRyZWQ6ICAgICAgICAgICAgICAgICAjYzQxMTMwO1xuJHJlZC1kYXJrOiAgICAgICAgICAgICM4QzBDMDQ7XG4kYnJvd246ICAgICAgICAgICAgICAgI0JCQTM5MTtcblxuXG4vLyBBc3NpZ24gY29sb3JzXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAkd2hpdGU7XG4kYm9keS1jb2xvcjogICAgICAgICAgJGJsYWNrO1xuJHNlbGVjdGlvbi1iZzogICAgICAgICRibGFjaztcbiRzZWxlY3Rpb24tY29sb3I6ICAgICAkd2hpdGU7XG4kbGluay1jb2xvcjogICAgICAgICAgJGJsYWNrO1xuJGxpbmstaG92ZXItY29sb3I6ICAgICRncmV5LWRhcms7XG5cbiRwcmltYXJ5LWNvbG9yOiAgICAgICAkcmVkO1xuJHNlY29uZGFyeS1jb2xvcjogICAgICRyZWQtZGFyaztcblxuJGJ1dHRvbi1iZzogICAgICAgICAgICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1ob3Zlci1iZzogICAgICRzZWNvbmRhcnktY29sb3I7XG4kYnV0dG9uLWNvbG9yOiAgICAgICAgJHdoaXRlO1xuIiwiLyogXG4gKiBUeXBvZ3JhcGh5XG4gKi9cblxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWhlYWRpbmc6ICBlbG9xdWVudC1qZi1wcm8sIHNlcmlmO1xuXG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgMzAwO1xuJGZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiRmb250LXdlaWdodC1tZWRpdW06ICA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgNzAwO1xuXG4kZm9udC1zaXplLW1pbjogICAgICAgMTRweDtcbiRmb250LXNpemUtbWF4OiAgICAgICAxNXB4O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgIDFyZW07XG4kZm9udC1zaXplLWxnOiAgICAgICAgMS4zcmVtO1xuJGZvbnQtc2l6ZS1zbTogICAgICAgIDAuODc1cmVtO1xuJGZvbnQtc2l6ZS14czogICAgICAgIDAuNzVyZW07XG5cbiRsaW5lLWhlaWdodDogICAgICAgICAxLjU7IiwiLypcbiAqIEdyaWQsIEJyZWFrcG9pbnRzICYgV2lkdGhzXG4gKi9cblxuJHNpdGUtd2lkdGg6ICAgICAgICAgIDEwMCU7XG4kc2l0ZS1taW4td2lkdGg6ICAgICAgMzIwcHg7XG4kc2l0ZS1tYXgtd2lkdGg6ICAgICAgMTQwMHB4O1xuJGNhdGVnb3J5YmFyLXdpZHRoOiAgIDI4MHB4O1xuXG4kYnJlYWtwb2ludHM6IChcbiAgeHM6IDQyMHB4LFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTI4MHB4LFxuICB4eGw6IDE1NjBweCxcbiAgeHh4bDogMTcwMFxuKTsiLCIvKlxuICogRm9ybSBmaWVsZCBiYXNlXG4gKi9cblxuLy8gSW5wdXRzXG4laW5wdXQtdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBwYWRkaW5nOiAuNGVtIC40ZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXktbGlnaHQ7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGNvbG9yOiAkZ3JleS1saWdodDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBmb250LXNpemU6IC45cmVtO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRibGFjaztcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTZWxlY3RzXG4gICVpbnB1dC1zZWxlY3Qge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlIHVybChcIi4uL2ltYWdlcy9hcnJvdy1kb3duLXNlbGVjdC5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDE1cHggY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTVweDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IC41ZW0gMi40ZW0gLjVlbSAxZW07XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG5cbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIC8vIG1hcmdpbjogMDtcbn1cbiIsIi8qIFxuICogQnV0dG9uIGJhc2VcbiAqL1xuXG4vLyBTZXRzIHRoZSBidXR0b24gYmFzZS5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZzogLjdlbSAyLjJlbTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEyNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGNvbG9yO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgb3V0bGluZTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDAsMCwwLDAuNSk7XG4gIFxuICAgIC8vIElmIGFuY2hvciB1c2VkIGFzIGJ1dHRvbi5cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICB9XG4gIFxuICAvLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgc29saWQgYnV0dG9uLlxuICBAbWl4aW4gYnV0dG9uLXNvbGlkKFxuICAgICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJnLFxuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWhvdmVyLWJnLFxuICAgICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuICApIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLWhvdmVyLCAxMCUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQtaG92ZXIsIDEwJSk7XG4gICAgfVxuICB9XG4gIFxuICAvLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgb3V0bGluZSBidXR0b24uXG4gIEBtaXhpbiBidXR0b24tb3V0bGluZShcbiAgICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iZyxcbiAgICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1ob3Zlci1iZ1xuICApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCRiYWNrZ3JvdW5kLWhvdmVyLCAxMCUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBzaGFkZSgkYmFja2dyb3VuZC1ob3ZlciwgMTAlKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLlxuICAvLy9cbiAgLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJnXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbiAgLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWhvdmVyLWJnXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBob3ZlciBzdGF0ZS5cbiAgLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uXG4gIC8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBvdXRsaW5lYCB0byBjcmVhdGUgYSBvdXRsaW5lIGJ1dHRvbi5cbiAgXG4gIEBtaXhpbiBidXR0b24oXG4gICAgJGJhY2tncm91bmQ6ICRidXR0b24tYmcsXG4gICAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24taG92ZXItYmcsXG4gICAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAgICRzdHlsZTogJ3NvbGlkJ1xuICApIHtcbiAgICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgXG4gICAgQGlmICRzdHlsZSA9PSAnc29saWQnIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zb2xpZCgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzdHlsZSA9PSAnb3V0bGluZScge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICB9XG4gIH1cbiAgIiwiLyogXG4gKiBNaXhpbnNcbiAqL1xuXG4vLyBUZXh0IG92ZXJmbG93XG5AbWl4aW4gdGV4dC1vdmVyZmxvdygkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRsaW5lcy10by1zaG93KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgaGVpZ2h0OiBjYWxjKCN7JGZvbnQtc2l6ZX0qI3skbGluZS1oZWlnaHR9KiN7JGxpbmVzLXRvLXNob3d9KTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcy10by1zaG93O1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuLy8gUmF0aW9cbkBtaXhpbiByYXRpbygkeCwkeSwgJHBzZXVkbzogZmFsc2UpIHtcbiAgJHBhZGRpbmc6IHVucXVvdGUoICggJHkgLyAkeCApICogMTAwICsgJyUnICk7XG4gIEBpZiAkcHNldWRvIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oJHBvczogcmVsYXRpdmUpO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8gSGFyZHdhcmUgYWNjZWxlcmF0aW9uIC0gZm9yIGFuaW1hdGlvblxuQG1peGluIGhhcmR3YXJlKCRiYWNrZmFjZTogdHJ1ZSwgJHBlcnNwZWN0aXZlOiAxMDAwKSB7XG4gIEBpZiAkYmFja2ZhY2Uge1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59IiwiLyogXG4gKiBNaXhpbiBmb3IgTWVkaWEgUXVlcmllc1xuICovXG5cbi8vIFJlc3BvbmQgYWJvdmVcbkBtaXhpbiByZXNwb25kLWFib3ZlKCRicmVha3BvaW50KSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICRicmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuICBcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC12YWx1ZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEB3YXJuICdJbnZhbGlkIGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9Lic7XG4gICAgfVxuICB9XG4gIFxuICAvLyBSZXNwb25kIGJlbG93XG4gIEBtaXhpbiByZXNwb25kLWJlbG93KCRicmVha3BvaW50KSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICRicmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpO1xuICBcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAoJGJyZWFrcG9pbnQtdmFsdWUgLSAxKSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEB3YXJuICdJbnZhbGlkIGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9Lic7XG4gICAgfVxuICB9XG4gIFxuICAvLyBSZXNwb25kIGJldHdlZW5cbiAgQG1peGluIHJlc3BvbmQtYmV0d2VlbigkbG93ZXIsICR1cHBlcikge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRsb3dlcikgYW5kIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHVwcGVyKSB7XG4gICAgICAkbG93ZXItYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRsb3dlcik7XG4gICAgICAkdXBwZXItYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICR1cHBlcik7XG4gIFxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRsb3dlci1icmVha3BvaW50KSBhbmQgKG1heC13aWR0aDogKCR1cHBlci1icmVha3BvaW50IC0gMSkpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaWYgKG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGxvd2VyKSA9PSBmYWxzZSkge1xuICAgICAgICBAd2FybiAnWW91ciBsb3dlciBicmVha3BvaW50IHdhcyBpbnZhbGlkOiAjeyRsb3dlcn0uJztcbiAgICAgIH1cbiAgICAgIEBpZiAobWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdXBwZXIpID09IGZhbHNlKSB7XG4gICAgICAgIEB3YXJuICdZb3VyIHVwcGVyIGJyZWFrcG9pbnQgd2FzIGludmFsaWQ6ICN7JHVwcGVyfS4nO1xuICAgICAgfVxuICAgIH1cbiAgfSIsIi8qIFxuICogR3JpZCBtaXhpblxuICovXG5cbkBtaXhpbiBncmlkKCRzOiAxLCAkbTogMiwgJGw6IDQsICR4OiA0LCAkeGw6IDQsICRnYXA6IDIwcHgpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIFxuICAgID4gKiB7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCN7JGdhcH0pO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygjeyRnYXB9KTtcbiAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc30pIC0gKCN7JGdhcH0gKiAoI3skc30gLSAxKSAvICN7JHN9KSk7XG4gIFxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSkge1xuICAgICAgICAmOm50aC1jaGlsZCgjeyRzfW4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmV0d2VlbihzbSwgbWQpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAjeyRtfSkgLSAoI3skZ2FwfSAqICgjeyRtfSAtIDEpIC8gI3skbX0pKTtcbiAgICAgICAgJjpudGgtY2hpbGQoI3skbX1uKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSByZXNwb25kLWJldHdlZW4obWQsIGxnKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skbH0pIC0gKCN7JGdhcH0gKiAoI3skbH0gLSAxKSAvICN7JGx9KSk7XG4gICAgICAgICY6bnRoLWNoaWxkKCN7JGx9bikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZXR3ZWVuKGxnLCB4bCkge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvICN7JHh9KSAtICgjeyRnYXB9ICogKCN7JHh9IC0gMSkgLyAjeyR4fSkpO1xuICAgICAgICAmOm50aC1jaGlsZCgjeyR4fW4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUoeGwpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAjeyR4bH0pIC0gKCN7JGdhcH0gKiAoI3skeGx9IC0gMSkgLyAjeyR4bH0pKTtcbiAgXG4gICAgICAgICY6bnRoLWNoaWxkKCN7JHhsfW4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRzLCAxZnIpO1xuICAgICAgZ3JpZC1nYXA6ICRnYXA7XG4gIFxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShzbSkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkbSwgMWZyKTtcbiAgICAgIH1cbiAgXG4gICAgICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKG1kKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRsLCAxZnIpO1xuICAgICAgfVxuICBcbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobGcpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJHgsIDFmcik7XG4gICAgICB9XG4gIFxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZSh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkeGwsIDFmcik7XG4gICAgICB9XG4gIFxuICAgICAgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH0iLCIvKiBcbiAqIFJlc2V0IEhUTUwgZWxlbWVudHMgYW5kIGxheW91dFxuICovXG5cbjo6c2VsZWN0aW9uIHtcbiAgICBjb2xvcjogJHNlbGVjdGlvbi1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0aW9uLWJnO1xuICB9XG4gIFxuICBpbWcsXG4gIC5xdWFudGl0eS1pbnB1dCB7XG4gICAgJjo6c2VsZWN0aW9uIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gICosXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgXG4gIH1cbiAgXG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1taW47XG4gIFxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobWQpIHtcbiAgICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtbWluICsgJGZvbnQtc2l6ZS1tYXgpIC8gMjtcbiAgICB9XG4gIFxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobGcpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tYXg7XG4gICAgfVxuICB9XG4gIFxuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgYSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBsaSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBsaW5lLWhlaWdodDogMS44O1xuXG4gICAgJi5zbWFsbCB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICRncmV5O1xuICAgIH1cbiAgXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIFxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuICBcbiAgZW1iZWQsXG4gIGltZyxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAiLCIvKiBcbiAqIExheW91dCBiYXNlXG4gKi9cblxuYm9keSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gICAgLy8gQGluY2x1ZGUgcmVzcG9uZC1iZXR3ZWVuKG1kLCB4eHhsKXtcbiAgICAvLyAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuOCwgMC44KTtcbiAgICAvLyAgICAgem9vbTogMC44O1xuICAgIC8vICAgICB6b29tOiA4MCU7XG4gICAgLy8gfVxuXG4gICAgJi5oaWRkZW4ge1xuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyAobGcpe1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmxheW91dC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcztcbiAgXG4gICAgJi5zbGlkZS1jYW52YXMge1xuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyAobGcpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MDBweCk7XG4gICAgICB9XG4gIFxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShjYWxjKDEwMCUgLSA2MHB4KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBzZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG4gIFxuICAud3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTE3MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4eGwpIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gIFxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4bCkge1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKHhsKSB7XG4gICAgICAgIG1heC13aWR0aDogMTI2MHB4O1xuICAgICAgfVxuICB9XG5cbiAgLnNpdGUtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1yaWdodDogJGNhdGVnb3J5YmFyLXdpZHRoOyBcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpIHsgXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgfVxuICB9XG4gICIsIi8vIE5hdmlnYXRpb24gYmFyXG5uYXYubWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogODBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzNTBtcyBlYXNlLWluLW91dDtcblxuICAgICYuYWN0aXZlLnVwIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAlKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgID4gYSBpbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDk5OTk5O1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gM3B4IC8gMik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MDBweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MDtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTlweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgIHJpZ2h0OiAkY2F0ZWdvcnliYXItd2lkdGg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuNTApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjUwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4yMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaG9wcGluZy1iYXNrZXQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIC5zaG9wcGluZy1jYXJ0LWl0ZW1zIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTNweCAwIHJnYmEoMCwwLDAsMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6LTIwcHg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgLnRvZ2dsZS1iYXNrZXQge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4bCl7XG4gICAgICAgICAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKXtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMCA4cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNob3BwaW5nIGNhcnQgc3R5bGluZ1xuICAgICNzbWFsbC1jYXJ0IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIG1heC13aWR0aDogNDgwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogODBweDtcbiAgICAgICAgcmlnaHQ6ICRjYXRlZ29yeWJhci13aWR0aDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTIycHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICBoM3tcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXI7XG4gICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCl7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAyNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAudmFyaWF0aWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1jb3VudCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDdweDtcblxuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMzUwbXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2hlY2tvdXQtYnRuLFxuICAgICAgICAudG8tY2FydC1idG4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudG8tY2FydC1idG4ge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm90dG9tOiA1MnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQtZGFyaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgICAgICAgIHRvcDogODBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYucHJlcGFyZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDEycHggMCByZ2JhKDAsMCwwLDAuNCk7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAtMTIwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcztcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICB6LWluZGV4OiAxMDAwMDAwO1xuXG4gICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICYuYWN0aXZle1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MDBweDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuXG4gICAgICAgICAgICAuc2hvcHBpbmctYmFza2V0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvZ2dsZS1iYXNrZXQge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgICAgICAudG9nZ2xlLWJhc2tldCB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNzbWFsbC1jYXJ0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvcHBpbmctY2FydCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgIC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA0MDBtcztcblxuICAgICAgICAjc21hbGwtY2FydC5vcGVuIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgdG9wOiA4MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5tZW51LW9wZW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDEycHggMCByZ2JhKDAsMCwwLDAuNCk7XG5cbiAgICAgICAgLnNob3BwaW5nLWNhcnQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleS1saWdodGVyO1xuXG4gICAgICAgICAgICAudG9nZ2xlLWJhc2tldCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAlKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgLnRvZ2dsZS1iYXNrZXQge1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhsKSB7XG4gICAgICAgICYucHJlcGFyZSB7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTtcbiAgICAgICAgLy8gb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAvLyBvdmVyZmxvdy15OiB2aXNpYmxlO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgI3NtYWxsLWNhcnQge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiAxMzBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk5O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBhIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZS51cCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG5cbiAgICAgICAgICAgICYuYWN0aXZle1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjVweDtcblxuICAgICAgICAgICAgLnNob3BwaW5nLWJhc2tldCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgfVxuXG4gICAgJi5maXhlZCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuXG4gICAgICAgICNzbWFsbC1jYXJ0IHtcbiAgICAgICAgICAgIHRvcDogODBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVtcHR5LWNhcnQge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAkZ3JleS1saWdodGVyO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wcm9kdWN0LW5hdntcbiAgICBuYXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAgICAgICAgIC50b2dnbGUtYmFza2V0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIE1lbnUgb3ZlcmxheVxuLm92ZXJsYXkubWVudS1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogODA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIE1lbnUgZm9sZC1vdXRcbi5mb2xkb3V0LW1lbnUge1xuICAgIGJhY2tncm91bmQ6ICRncmV5LWRhcmtlcjtcbiAgICB3aWR0aDogNTYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDBweCAwIDAgMDtcbiAgICBib3gtc2hhZG93OiAwIDJweCAyMHB4IDAgcmdiYSgwLDAsMCwwLjUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDQ1MG1zIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICAgIC5tZW51LXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMHB4IDI1cHggMCAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoMiwgMiwgMiwgMiwgMiwgMHB4KTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG5cbiAgICAgICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41MDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgei1pbmRleDogOTk5OTk5OTk5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSkge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgfVxufVxuXG4uaG9tZS1uYXZpZ2F0aW9uIHtcbiAgICAuc2hvcHBpbmctY2FydCB7XG4gICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI3NtYWxsLWNhcnQge1xuICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIjaW1hZ2VzIHtcbiAgICBAaW5jbHVkZSBncmlkKDEsIDEsIDIsIDIsIDIsIDIwcHgpO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgaGVpZ2h0OiA3NTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgICAuaW1hZ2UtMSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleTsgXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmltYWdlcyB7XG4gICAgICAgIC5pbWFnZS0xIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2UtMiB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXktZGFya2VyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2Zvb3Rlci1iYWNrZ3JvdW5kLnBuZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTAwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gei1pbmRleDogOTk5O1xuXG4gICAgLndyYXBwZXIge1xuICAgICAgICBoNCB7ICBcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTsgIFxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC42MDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbWFydHBob25lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjA7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQoMSwgMiwgNCwgNCwgNCwgNTBweCk7XG4gICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDsgXG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSkge1xuICAgICAgICAgICAgLnNtYXJ0cGhvbmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IFxuXG4gICAgICAgICAgICAvLyAuZGVza3RvcCB7XG4gICAgICAgICAgICAvLyAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgICAgICAgICAvLyB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWRhcmtlc3Q7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIycHg7ICAgICAgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNHB4IDEycHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3ViZm9vdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5LWRhcmtlc3Q7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICB9XG5cbiAgICAua2stc3VtbWFyeS1jb21wYW55LXVybCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGV4dGVuZCAuYnV0dG9uO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogXG4gKiBGb3JtIGZpZWxkc1xuICovXG5cbi8vIFRleHRmaWVsZHNcbmlucHV0IHtcbiAgICAmW3R5cGU9ZGF0ZV0sXG4gICAgJlt0eXBlPXRleHRdLFxuICAgICZbdHlwZT1lbWFpbF0sXG4gICAgJlt0eXBlPXVybF0sXG4gICAgJlt0eXBlPXNlYXJjaF0sXG4gICAgJlt0eXBlPXBhc3N3b3JkXSxcbiAgICAmW3R5cGU9dGVsXSB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC10ZXh0O1xuICAgIH1cbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAmLnNlYXJjaCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgcGFkZGluZzogLjdlbSAuMWVtO1xuICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgIGJvcmRlcjpub25lO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2VhcmNoLWljb24tZ3JleS5zdmcnKTsgXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuXG4gICAgICAmOmZvY3VzLCBcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2VhcmNoLWljb24tZ3JleS5zdmcnKTsgXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTBweCAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy9UZXh0YXJlYVxuICB0ZXh0YXJlYSB7XG4gICAgQGV4dGVuZCAlaW5wdXQtdGV4dDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtc2VsZWN0O1xuICB9XG5cbiAgLy9OdW1iZXIgaW5wdXRcbiAgLnByb2R1Y3QtY291bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuXG4gICAgaW5wdXR7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyBcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufSIsIi8qIFxuICogSGVhZGluZ3NcbiAqL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gIFxuICBoMSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG4gIFxuICBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIFxuICBoMyB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgXG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH0iLCIvKiBcbiAqIE1lZGlhXG4gKi8iLCIvKiBcbiAqIEJ1dHRvbnNcbiAqL1xuXG4uYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG59XG5cbi53cGZvcm1zLWZvcm17XG4gICAgLndwZm9ybXMtc3VibWl0LWNvbnRhaW5lciB7XG4gICAgICAgICN3cGZvcm1zLXN1Ym1pdC0xNTY2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi1vdXRsaW5lIHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZTtcbn1cblxuLmJ1dHRvbi1zbSB7XG4gICAgcGFkZGluZy10b3A6IDAuMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjJlbTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG5cbi8qIFxuICogUHJvZHVjdCBidXR0b24gd2l0aCBob3ZlciBlZmZlY3RcbiAqL1xuXG4ucHJvZHVjdC1idXR0b24td3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4IDBweCAwcHggNnB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDsgIFxuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3R0b206IDA7IFxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDExcHggMCByZ2JhKDg0LDg0LDg0LDAuNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHotaW5kZXg6IDk5OTk5OTtcblxuICAgICYuc2luZ2xlIHtcbiAgICAgICAgYm90dG9tOiAxOHB4O1xuICAgIH1cblxuICAgIC5jb3VudCB7XG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC04cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1pbiB7XG4gICAgICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFkZCB7XG4gICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDo5cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IFxuICAgICAgICBjb2xvcjogJHdoaXRlOyBcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogNTBweDsgICAgIFxuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC41MCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjUwKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgfVxuXG4gICAgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9zaG9wcGluZy1jYXJ0LWFkZC5zdmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxvYWRpbmcge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDsgXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjsgXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxMXB4IDAgcmdiYSg4NCw4NCw4NCwwLjUpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogc2hvcHBpbmcgNTAwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoODAlKTtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDonVG9lZ2V2b2VnZCEnO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTE1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAzNXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmVlZGJhY2sgMS4xcyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4cykge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE2MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAa2V5ZnJhbWVzIGZlZWRiYWNrIHtcbiAgICAgICAgICAgIDAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgMzAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA2MCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAa2V5ZnJhbWVzIHNob3BwaW5nIHtcbiAgICAgICAgICAgIDAlIHtcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAyMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDgwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7IFxuICAgICAgICB9IFxuICAgIH1cblxuICAgICYuaG92ZXIge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMTBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zOyBcbiAgICBcbiAgICAgICAgICAgIGlucHV0LCAuY291bnQge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwMG1zO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLmNvdW50IHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbiAgICAgICAgICAgIH0gIFxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCBhdXRvIDAgYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICBcbiAgICAgICAgICAgIGlucHV0LCAuY291bnQge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwMG1zO1xuICAgICAgICAgICAgICAgIHRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxMHB4KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjZweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgLy8gcGFkZGluZzogMjBweCAxNXB4O1xuICAgIFxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5jb3VudCB7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50OyBcbiAgICAgICAgICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wOyBcbiAgICAgICAgICAgICAgICB3aWR0aDogMjElO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMnB4O1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLmNvdW50IHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IGF1dG8gMCBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgIFxuICAgICAgICAgICAgaW5wdXQsIC5jb3VudCB7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogNDAwbXM7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7IFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLmNvdW50IHtcbiAgICAgICAgICAgICAgICB0b3A6IDhweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IFxuICAgICAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIycHg7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAuY291bnQge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuIFxuICAgICAgICAmLmxvYWRpbmcge1xuICAgICAgICAgICAgLmNvdW50IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMG1zO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDEwbXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggMHB4IDVweCA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC00NXB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbnB1dCwgLmNvdW50IHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQwMG1zO1xuICAgICAgICAgICAgdG9wOiAzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyNyUgLSAxMHB4KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIycHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3VudCB7XG4gICAgICAgICAgICB0b3A6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICAgICAgICAgIHdpZHRoOiAyMSU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjRweDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3VudCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxvYWRpbmcge1xuICAgICAgICAuY291bnQge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDBtcyBlYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgICYuc2luZ2xlIHtcbiAgICAgICAgICAgIGJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9ICBcbn0gICBcblxuLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydC1kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgXG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS1saWdodGVyOyAgICBcbiAgICB9XG59IiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgXG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyohXG4gKiBmdWxsUGFnZSAzLjAuM1xuICogaHR0cHM6Ly9naXRodWIuY29tL2FsdmFyb3RyaWdvL2Z1bGxQYWdlLmpzXG4gKlxuICogQGxpY2Vuc2UgR1BMdjMgZm9yIG9wZW4gc291cmNlIHVzZSBvbmx5XG4gKiBvciBGdWxscGFnZSBDb21tZXJjaWFsIExpY2Vuc2UgZm9yIGNvbW1lcmNpYWwgdXNlXG4gKiBodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlL3ByaWNpbmcvXG4gKlxuICogQ29weXJpZ2h0IChDKSAyMDE4IGh0dHA6Ly9hbHZhcm90cmlnby5jb20vZnVsbFBhZ2UgLSBBIHByb2plY3QgYnkgQWx2YXJvIFRyaWdvXG4gKi9cbiBodG1sLmZwLWVuYWJsZWQsXG4gLmZwLWVuYWJsZWQgYm9keSB7XG4gICAgIG1hcmdpbjogMDtcbiAgICAgcGFkZGluZzogMDtcbiAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuIFxuICAgICAvKkF2b2lkIGZsaWNrZXIgb24gc2xpZGVzIHRyYW5zaXRpb25zIGZvciBtb2JpbGUgcGhvbmVzICMzMzYgKi9cbiAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuIH1cbiAuZnAtc2VjdGlvbiB7XG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBTYWZhcmk8PTUgQW5kcm9pZDw9MyAqL1xuICAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDw9MjggKi9cbiAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiB9XG4gLmZwLXNsaWRlIHtcbiAgICAgZmxvYXQ6IGxlZnQ7XG4gfVxuIC5mcC1zbGlkZSwgLmZwLXNsaWRlc0NvbnRhaW5lciB7XG4gICAgIGhlaWdodDogMTAwJTtcbiAgICAgZGlzcGxheTogYmxvY2s7XG4gfVxuIC5mcC1zbGlkZXMge1xuICAgICB6LWluZGV4OjE7XG4gICAgIGhlaWdodDogMTAwJTtcbiAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0OyAvKiBTYWZhcmk8PTYgQW5kcm9pZDw9NC4zICovXG4gICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuIH1cbiAuZnAtc2VjdGlvbi5mcC10YWJsZSwgLmZwLXNsaWRlLmZwLXRhYmxlIHtcbiAgICAgZGlzcGxheTogdGFibGU7XG4gICAgIHRhYmxlLWxheW91dDpmaXhlZDtcbiAgICAgd2lkdGg6IDEwMCU7XG4gfVxuIC5mcC10YWJsZUNlbGwge1xuICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgaGVpZ2h0OiAxMDAlO1xuIH1cbiAuZnAtc2xpZGVzQ29udGFpbmVyIHtcbiAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiB9XG4gLmZwLWNvbnRyb2xBcnJvdyB7XG4gICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIHdlYmtpdCAoc2FmYXJpLCBjaHJvbWUpIGJyb3dzZXJzICovXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIG1vemlsbGEgYnJvd3NlcnMgKi9cbiAgICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOyAvKiB3ZWJraXQgKGtvbnF1ZXJvcikgYnJvd3NlcnMgKi9cbiAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyAvKiBJRTEwKyAqL1xuICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIHotaW5kZXg6IDQ7XG4gICAgIHRvcDogNTAlO1xuICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgIHdpZHRoOiAwO1xuICAgICBoZWlnaHQ6IDA7XG4gICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgIG1hcmdpbi10b3A6IC0zOHB4O1xuICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuIH1cbiAuZnAtY29udHJvbEFycm93LmZwLXByZXYge1xuICAgICBsZWZ0OiAxNXB4O1xuICAgICB3aWR0aDogMDtcbiAgICAgYm9yZGVyLXdpZHRoOiAzOC41cHggMzRweCAzOC41cHggMDtcbiAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuIH1cbiAuZnAtY29udHJvbEFycm93LmZwLW5leHQge1xuICAgICByaWdodDogMTVweDtcbiAgICAgYm9yZGVyLXdpZHRoOiAzOC41cHggMCAzOC41cHggMzRweDtcbiAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmO1xuIH1cbiAuZnAtc2Nyb2xsYWJsZSB7XG4gICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiB9XG4gLmZwLXNjcm9sbGVye1xuICAgICBvdmVyZmxvdzogaGlkZGVuO1xuIH1cbiAuaVNjcm9sbEluZGljYXRvcntcbiAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gfVxuIC5mcC1ub3RyYW5zaXRpb24ge1xuICAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuIH1cbiAjZnAtbmF2IHtcbiAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICB6LWluZGV4OiAxMDA7XG4gICAgIG1hcmdpbi10b3A6IC0zMnB4O1xuICAgICB0b3A6IDUwJTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiB9XG4gI2ZwLW5hdi5mcC1yaWdodCB7XG4gICAgIHJpZ2h0OiAxN3B4O1xuIH1cbiAjZnAtbmF2LmZwLWxlZnQge1xuICAgICBsZWZ0OiAxN3B4O1xuIH1cbiAuZnAtc2xpZGVzTmF2e1xuICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIHotaW5kZXg6IDQ7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgcmlnaHQ6IDA7XG4gICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gfVxuIC5mcC1zbGlkZXNOYXYuZnAtYm90dG9tIHtcbiAgICAgYm90dG9tOiAxN3B4O1xuIH1cbiAuZnAtc2xpZGVzTmF2LmZwLXRvcCB7XG4gICAgIHRvcDogMTdweDtcbiB9XG4gI2ZwLW5hdiB1bCxcbiAuZnAtc2xpZGVzTmF2IHVsIHtcbiAgIG1hcmdpbjogMDtcbiAgIHBhZGRpbmc6IDA7XG4gfVxuICNmcC1uYXYgdWwgbGksXG4gLmZwLXNsaWRlc05hdiB1bCBsaSB7XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICB3aWR0aDogMTRweDtcbiAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICBtYXJnaW46IDdweDtcbiAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gfVxuIC5mcC1zbGlkZXNOYXYgdWwgbGkge1xuICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gfVxuICNmcC1uYXYgdWwgbGkgYSxcbiAuZnAtc2xpZGVzTmF2IHVsIGxpIGEge1xuICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICB6LWluZGV4OiAxO1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiB9XG4gI2ZwLW5hdiB1bCBsaSBhLmFjdGl2ZSBzcGFuLFxuIC5mcC1zbGlkZXNOYXYgdWwgbGkgYS5hY3RpdmUgc3BhbixcbiAjZnAtbmF2IHVsIGxpOmhvdmVyIGEuYWN0aXZlIHNwYW4sXG4gLmZwLXNsaWRlc05hdiB1bCBsaTpob3ZlciBhLmFjdGl2ZSBzcGFue1xuICAgICBoZWlnaHQ6IDEycHg7XG4gICAgIHdpZHRoOiAxMnB4O1xuICAgICBtYXJnaW46IC02cHggMCAwIC02cHg7XG4gICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIH1cbiAjZnAtbmF2IHVsIGxpIGEgc3BhbixcbiAuZnAtc2xpZGVzTmF2IHVsIGxpIGEgc3BhbiB7XG4gICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICB6LWluZGV4OiAxO1xuICAgICBoZWlnaHQ6IDRweDtcbiAgICAgd2lkdGg6IDRweDtcbiAgICAgYm9yZGVyOiAwO1xuICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICBsZWZ0OiA1MCU7XG4gICAgIHRvcDogNTAlO1xuICAgICBtYXJnaW46IC0ycHggMCAwIC0ycHg7XG4gICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dDtcbiB9XG4gI2ZwLW5hdiB1bCBsaTpob3ZlciBhIHNwYW4sXG4gLmZwLXNsaWRlc05hdiB1bCBsaTpob3ZlciBhIHNwYW57XG4gICAgIHdpZHRoOiAxMHB4O1xuICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgIG1hcmdpbjogLTVweCAwcHggMHB4IC01cHg7XG4gfVxuICNmcC1uYXYgdWwgbGkgLmZwLXRvb2x0aXAge1xuICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIHRvcDogLTJweDtcbiAgICAgY29sb3I6ICNmZmY7XG4gICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgZm9udC1mYW1pbHk6IGFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICBvcGFjaXR5OiAwO1xuICAgICB3aWR0aDogMDtcbiAgICAgY3Vyc29yOiBwb2ludGVyO1xuIH1cbiAjZnAtbmF2IHVsIGxpOmhvdmVyIC5mcC10b29sdGlwLFxuICNmcC1uYXYuZnAtc2hvdy1hY3RpdmUgYS5hY3RpdmUgKyAuZnAtdG9vbHRpcCB7XG4gICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW47XG4gICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluO1xuICAgICB3aWR0aDogYXV0bztcbiAgICAgb3BhY2l0eTogMTtcbiB9XG4gI2ZwLW5hdiB1bCBsaSAuZnAtdG9vbHRpcC5mcC1yaWdodCB7XG4gICAgIHJpZ2h0OiAyMHB4O1xuIH1cbiAjZnAtbmF2IHVsIGxpIC5mcC10b29sdGlwLmZwLWxlZnQge1xuICAgICBsZWZ0OiAyMHB4O1xuIH1cbiAuZnAtYXV0by1oZWlnaHQuZnAtc2VjdGlvbixcbiAuZnAtYXV0by1oZWlnaHQgLmZwLXNsaWRlLFxuIC5mcC1hdXRvLWhlaWdodCAuZnAtdGFibGVDZWxse1xuICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiB9XG4gXG4gLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUuZnAtc2VjdGlvbixcbiAuZnAtcmVzcG9uc2l2ZSAuZnAtYXV0by1oZWlnaHQtcmVzcG9uc2l2ZSAuZnAtc2xpZGUsXG4gLmZwLXJlc3BvbnNpdmUgLmZwLWF1dG8taGVpZ2h0LXJlc3BvbnNpdmUgLmZwLXRhYmxlQ2VsbCB7XG4gICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuIH1cbiBcbiAvKk9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzKi9cbiAuZnAtc3Itb25seXtcbiAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICB3aWR0aDogMXB4O1xuICAgICBoZWlnaHQ6IDFweDtcbiAgICAgcGFkZGluZzogMDtcbiAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgYm9yZGVyOiAwO1xuIH0iLCIud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuICAgIHVsIHtcbiAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleS1saWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiI3BpZ2d5LWNoZWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleS1saWdodGVzdDtcblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICAgJi5zdWJtaXQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIH1cblxufSIsIi8qXG4gKiAoUmVzcG9uc2l2ZSkgRnVsbCB2aWRlbyBjb250YWluZXJcbiAqL1xuXG4gLmZ1bGwtdmlkZW97XG4gICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgIC52aWRlby1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDB2dztcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5LWRhcmssIDAuNik7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gVW5pcXVlIHNlbGxpbmcgcG9pbnRzIFxuLnVzcCB7XG4gICAgYmFja2dyb3VuZDogJGdyZXktZGFyaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGhlaWdodDo1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiBcbiAgICB1bCB7IFxuICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGxpIHsgXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDYlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyAgXG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsgXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogMTBweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKSB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSxcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufSAiLCIvKlxuICogQ29va2llIGJhclxuICovXG5cbiAjY29va2llIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm90dG9tOiAwOyBcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk7XG4gICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuODApO1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjsgXG4gICAgei1pbmRleDogOTk5OTk5OTk5OTtcblxuICAgIC5pbWFnZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEwcHgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDYwJSAtIDIwcHgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jbG9zZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZykge1xuICAgICAgICAudGV4dCxcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHggYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuICogV1AgcGFnaW5nIHN0eWxpbmdcbiAqL1xuXG4gLnBhZ2luZyB7XG4gICAgLnBhZ2UtbnVtYmVycyB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICBcbiAgICAgICAgICAgIHNwYW4sIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDQwMG1zO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgJi5uZXh0LFxuICAgICAgICAgICAgICAgICYucHJldiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgXG4gICAgJi5jZW50ZXIge1xuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgXG4gICAgICAgICAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5yaWdodCB7XG4gICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgIC5wYWdlLW51bWJlcnMge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjaGVybyB7XG4gICAgaGVpZ2h0OiA0NjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICBcbiAgICBjbGVhcjogYm90aDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpe1xuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIH1cblxuICAgIC52aWRlby1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWluLXdpZHRoOiAxMDB2dztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIFxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiYuZnVsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTBweCk7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShsZyl7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICB9XG4gICAgICAub3ZlcmxheS10ZXh0IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgXG5cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktaGVhZGluZztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXJlZ3VsYXI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tb2JpbGVidXR0b24ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI0MHB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICAvLyAgIGhlaWdodDogMzgwcHg7XG5cbiAgICAgICAgICAub3ZlcmxheS10ZXh0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5tb2JpbGVidXR0b24ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudG9wIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gIH1cblxuICAmLnN0YW5kYXJkIHtcbiAgICAub3ZlcmxheS10ZXh0IHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICB9XG4gICB9XG5cbiAgICAuc2Nyb2xsLWRvd24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxuXG4gICAgICAgIC50b3Age1xuICAgICAgICAgICAgYm90dG9tOjBweDsgIFxuICAgICAgICAgICAgd2lkdGg6ICRjYXRlZ29yeWJhci13aWR0aDsgXG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAuaWNvbiB7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiA4NXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCA4cHggMCAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogODVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZyl7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjYm9uYm9ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB1bCB7XG4gICAgICAgIEBleHRlbmQgLnJlc2V0O1xuICAgICAgICBAaW5jbHVkZSBncmlkKDEsMiw0LDQsNSwyMHB4KTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICBAZXh0ZW5kIC5ib3gtc2hhZG93O1xuXG4gICAgICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1jb3VudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5xdWFudGl0eS1pbnB1dC11cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWluZm8gPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwcHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZXktbGlnaHRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgLmN1cnJlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCA0MDBtcztcbiAgICAgICAgfVxuICAgICAgICAubWF4IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpeGVkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgICAgICAgICB6LWluZGV4OiAxMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCAxMHB4IDFweCByZ2JhKCRibGFjaywgMC4yMCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucXVhbnRpdHkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgIG1heC13aWR0aDogNzBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLnByb2R1Y3RfY2F0LWJvbmJvbmJveC12dWxsZW4ge1xuICAgIC5wcm9kdWN0LWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnksXG4gICAgLndvb2NvbW1lcmNlLXRhYnMsXG4gICAgLnNob3BfYXR0cmlidXRlcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3VtbWFyeSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0ZXI7XG5cbiAgICAgICAgICAgIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4uY2F0ZWdvcnktdG9nZ2xlIHsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB0b3A6IDEwMHB4O1xuICAgIHdpZHRoOiA5NXB4O1xuICAgIGhlaWdodDogODBweDtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjsgXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCAwcHggOXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTdweCAwIHJnYmEoJGdyZXktZGFya2VyLCAwLjUpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDsgXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICB9XG4gICAgXG4gICAgJi5vcGVuIHtcbiAgICAgICAgcmlnaHQ6ICRjYXRlZ29yeWJhci13aWR0aDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OTtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IFxuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4bCkgeyBcbiAgICAgICAgdG9wOiA4MHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgIHRvcDogODBweDtcbiAgICAgICAgXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICByaWdodDogNzAlO1xuICAgICAgICB9XG4gICAgfVxufVxuLnNpdGUtY29udGVudC1ob21le1xuICAgIC5jYXRlZ29yeS10b2dnbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmNhdGVnb3JpZXMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHdpZHRoOiAkY2F0ZWdvcnliYXItd2lkdGg7XG4gICAgcmlnaHQ6MDtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgYm94LXNoYWRvdzogMCAycHggMThweCAwIHJnYmEoMCwwLDAsMC4yKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyBcbiAgICBvcGFjaXR5OiAxO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBoZWlnaHQ6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7IFxuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAwIDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0ZXN0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTRweCAxMnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkyJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDBweDsgIFxuICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDI2MHB4KTsgXG4gICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDU1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDlweDtcblxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDM1cHggMTBweCA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCBcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDAwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gdWwgeyBcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggNXB4OyBcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQ5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgPiBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4bCkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgIC50b3Age1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICByaWdodDowO1xuICAgIFxuICAgIH1cbn1cblxuLnNpdGUtY29udGVudC1ob21lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2F0ZWdvcmllcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1jb250ZW50LXdyYXBwZXIge1xuICAgIC5jYXRlZ29yaWVzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuXG4gICAgICAgICYuYWN0aXZle1xuICAgICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pIHtcbiAgICAuc2l0ZS1jb250ZW50IHtcbiAgICAgICAgLmNhdGVnb3J5LXRvZ2dsZSB7XG4gICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIjc2xpZGVyIHtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgfVxuXG4gICAgLmNhcm91c2VsIHtcbiAgICAgICAgLy8gaGVpZ2h0OiA2MjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAvLyBwYWRkaW5nLWJvdHRvbTogMTQwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7ICBcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1idG4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiOyBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxNnB4KTtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDE2cHgpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2Fycm93LWxlZnQucG5nJykgMCAwIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDAgMCA4cHg7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvYXJyb3ctcmlnaHQucG5nJykgMCAwIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgOHB4IDhweCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAgICAgJi5zbGljay1uZXh0OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTFweCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTFweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgLy8gaGVpZ2h0OiA1NjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IFxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyBcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7IFxuXG4gICAgICAgICAgICAuY2Fyb3VzZWwtbGFiZWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206LTQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6NjUwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDE3cHggMCByZ2JhKDE1NywxNTcsMTU3LDAuNSk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAuY2Fyb3VzZWwtbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKSB7XG4gICAgICAgIC8vICAgICBoZWlnaHQ6IDQ3MHB4O1xuXG4gICAgICAgIC8vICAgICAuaXRlbSB7XG4gICAgICAgIC8vICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC8vIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgICAgLy8gICAgIGhlaWdodDogMjQwcHg7XG5cbiAgICAgICAgLy8gICAgIC5pdGVtIHtcbiAgICAgICAgLy8gICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgLmhpZ2hsaWdodC13cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCgxLDEsMiwyLDIsNDBweCk7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgIC5oaWdobGlnaHQtYmxvY2sge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICAgICAgICAgICAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICAgICAgLm92ZXJsYXktdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07ICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsInNlY3Rpb24jYmxvY2tzIHtcblxuICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1saWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07IFxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuOGVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IC01cHggMCAyNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLndoaXRlIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7ICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2tzLWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC04MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIFxuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCgxLCAxLCAxLCAyLCAyLCAwcHgpO1xuICAgICAgICBoZWlnaHQ6IDY1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleS1saWdodGVzdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDY1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9jay1idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgXG4gICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDUwcHgpOyBcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDM2LCAzNiwgMzYsIDAuMjk1KTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogODRweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJvd247XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDQuNXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyb3duO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHh4bCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzVweCA1NXB4IDtcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShsZykge1xuICAgICAgICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKXtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAnbGVmdCByaWdodCc7XG5cbiAgICAgICAgICAgICAgICAmLmJsb2NrLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtYXJlYTogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSkge1xuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAuYmxvY2stYnRuIHtcbiAgICAgICAgICAgICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtNTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzIwcHg7IFxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiI3dvb2NvbW1lcmNlLnByb2R1Y3RzIHtcbiAgICAud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbnNlY3Rpb24ucHJvZHVjdHMge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICRncmV5LWxpZ2h0ZXN0O1xuXG4gICAgLnRlcm0tZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlc2V0X3ZhcmlhdGlvbnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxudWwucHJvZHVjdHMge1xuICAgIEBleHRlbmQgLnJlc2V0O1xuICAgIEBpbmNsdWRlIGdyaWQoMSwyLDIsMyw0LCA0MHB4KTtcblxuICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIEBleHRlbmQgLmJveC1zaGFkb3c7XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLWhvbGRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNzIlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMzYlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDI1cHggYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICA+IC5wcmljZSB7XG4gICAgICAgICAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIEBleHRlbmQgLnNoYWRvdztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleS1saWdodGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlc3Q7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTAlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cblxuICAgICAgICAudmFyaWF0aW9uc19mb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4OiBhdXRvO1xuXG4gICAgICAgICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpe1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZhcmlhdGlvbnMge1xuICAgICAgICAgICAgbGFiZWwsIC5yZXNldF92YXJpYXRpb25zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNpbmdsZV92YXJpYXRpb25fd3JhcCB7XG4gICAgICAgICAgICAud29vY29tbWVyY2UtdmFyaWF0aW9uLWF2YWlsYWJpbGl0eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5lZGl0LXByb2R1Y3QsXG4gICAgICAgIC5mcGQtY2F0YWxvZy1jdXN0b21pemUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvYm9uYm9uLWJveC5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxN3B4IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNTBweCAyMHB4IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAwcHggMHB4IDZweDtcbiAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3R0b206IDE4cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcztcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZwZC1jYXRhbG9nLWN1c3RvbWl6ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9jYWtlLWJpcnRoZGF5LnN2ZycpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgICAgICAudmFyaWF0aW9uc19mb3JtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydC1lbmFibGVkLFxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydC1kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtYnV0dG9uLXdyYXAge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmFyaWF0aW9uc19idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAgICAgICAgICAgLnZhcmlhdGlvbnNfZm9ybSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQtZW5hYmxlZCxcbiAgICAgICAgICAgIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQtZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZhcmlhdGlvbnNfYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jd29vY29tbWVyY2Uge1xuICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xufVxuXG4ucHJvZHVjdC1jb250ZW50LXdyYXBwZXIge1xuICAgIC5jYXRlZ29yaWVzIHtcbiAgICAgICAgLnNjcm9sbC1kb3duIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm91dC1vZi1zdG9jayB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLndvb2NvbW1lcmNlLXRhYnMge1xuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG59XG4uZmFuY3kge1xuICAgIC5mcGQtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxufVxuXG4uZmlsdGVyLWFsbGVyZ2VuZW4ge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuXG4gICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMThweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcblxuICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLndvb2NvbW1lcmNlLXRhYnMge1xuLy8gICAgIGRpc3BsYXk6IG5vbmU7XG4vLyB9XG5cblxuLndjY3BmLWZpZWxkcy1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgIC53Y2NwZl9sYWJlbCxcbiAgICAud2NjcGYtdmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi50YWFydC10ZWtzdCB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXktbGlnaHRlcjtcbiAgICB9XG59XG5cbmZvcm0udGVrc3Qtb3BlbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbn1cblxuLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1hZGQtdG8tY2FydCB7XG4gICAgPiAudGFhcnQtdGVrc3Qge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNTBweDtcbiAgICB9XG59IiwiLnByb2R1Y3QtYnJlYWRjcnVtYiB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLnByb2R1Y3QtaGVhZGVyIHtcbiAgICAvL3BhZGRpbmctcmlnaHQ6ICRjYXRlZ29yeWJhci13aWR0aDtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpIHsgXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IFxuICAgIH0gXG59IFxuXG4jd29vY29tbWVyY2Uge1xuICAgIC5wcm9kdWN0LWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0ZXN0O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9oZWFkZXItYmFja2dyb3VuZC1iYWtrZXIucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIC53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQge1xuICAgICAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM1cHg7XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7IFxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDc7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICB9IFxuICAgICAgICB9XG5cbiAgICAgICAgLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1wcmljZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdWFudGl0eSBpbnB1dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkgeyBcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDMwMHB4O1xuICAgICAgICB9IFxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHMpIHtcbiAgICAgICAgICAgIC52YXJpYXRpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdCB7XG5cbiAgICAgICAgLmNhdGVnb3J5LXRvZ2dsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5vbnNhbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGFicyB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTotMnB4OyAgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyBcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICAgICAgfSBcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSkgeyAgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3VtbWFyeSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlc3Q7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtOyBcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9IFxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0X21ldGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcms7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG5cbiAgICAgICAgICAgICAgICAuc2t1X3dyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZm9ybS5jYXJ0IHtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWJ1dHRvbi13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNztcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNjBweDtcblxuICAgICAgICAgICAgICAgICAgICAmLnJvdW5kZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07IFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICBwIHsgXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmFyaWF0aW9ucyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxNHB4IDAgcmdiYSgxNTQsMTU0LDE1NCwwLjUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXG5cbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXN0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yZXNldF92YXJpYXRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0b2NrIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGVycm9yO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG5cbiAgICAgICAgICAgICAgICAmLmluLXN0b2NrIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzdWNjZXM7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBcblxuICAgICAgICAmLnByb2R1Y3QtdHlwZS1zaW1wbGUge1xuICAgICAgICAgICAgLnByb2R1Y3RfbWV0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHsgICAgIFxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdW1tYXJ5IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZHVjdF9jYXQtZm90b3RhYXJ0LFxuICAgICAgICAmLnByb2R1Y3RfY2F0LWZvdG9nZWJhayxcbiAgICAgICAgJi5wcm9kdWN0X2NhdC1mb3RvYm9uYm9ucyB7XG4gICAgICAgICAgICAuc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2ZwZC1yZWFkeSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0gXG5cbi5hbW91bnQge1xuICAgICYuc2FsZSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG59XG4uY2VudCB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICBtYXJnaW4tbGVmdDotM3B4O1xuICAgIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLnByb2R1Y3QtY291bnQge1xuICAgIC5wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmNlbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZWxhdGVkLFxuLnVwc2VsbHMgeyAgXG4gICAgJi5wcm9kdWN0cyB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleS1saWdodGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogMHB4OyAgXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDA7IFxuICAgICAgICB9XG4gICAgfVxufVxuXG4udmFyaWF0aW9ucyB7XG4gICAgLnNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgcGFkZGluZzogM3B4IDBweCAhaW1wb3J0YW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IDM1MG1zIGVhc2U7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lOyBcblxuICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0LXR5cGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAZXh0ZW5kIC5yZXNldDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDEwcHggMXB4IHJnYmEoJGdyZXktZGFya2VzdCwgMC4xKTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7ICBcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG5cbiAgICAgICAgJi5hY3RpdmVyIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk5OTk5OTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IFxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS1saWdodGVzdDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS1saWdodGVzdDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjsgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1oZWFkZXIge1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAuc2luZ2xlIHtcbiAgICAgICAgLnN1bW1hcnkge1xuICAgICAgICAgICAgLnZhcmlhdGlvbnMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCA2cHggMHB4IDBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAuc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlbGVjdC10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTk5OTkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG5wIHtcbiAgICAmLnByaWNlIHtcbiAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLnByb2R1Y3RfbWV0YSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZnBkLXByb2R1Y3QtZGVzaWduZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mcGQtdG9wYmFyIC5mcGQtbmF2aWdhdGlvbiB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzMuMzMlO1xuXG4gICAgICAgICAgICAuZnBkLWxhYmVsIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiN3b29jb21tZXJjZSB7XG4gICAgLmZwZC1tb2RhbC1vdmVybGF5LmZwZC1mdWxsc2NyZWVuIHtcbiAgICAgICAgPiAuZnBkLW1vZGFsLXdyYXBwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIGhlaWdodDogODAlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gICAgICAgICAgICAuZnBkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZwZC1tb2RhbC1wcmljZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZwZC1kb25lIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jZnBkLXN0YXJ0LWN1c3RvbWl6aW5nLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgIH1cbn0iLCIuYnJlYWRjcnVtYnN7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICBwYWRkaW5nOjE2cHggMHB4O1xuICAgIHotaW5kZXg6IDU7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgY29sb3I6ICRncmV5O1xuICAgIC8vcGFkZGluZy1yaWdodDogJGNhdGVnb3J5YmFyLXdpZHRoO1xuICBcbiAgICAuZmFzIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cblxuICAgIC5idG4tb3V0bGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcblxuICAgICAgICAmOmhvdmVyLCBcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgMTZweDtcbiAgICAgIGNvbG9yOiAkZ3JleTsgXG4gIFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICBcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAuY3VycmVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgY29sb3I6ICRncmV5LWRhcms7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgfVxuXG4gICAgI2NydW1icyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2Utb3JkZXJpbmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxODBweDtcbiAgICAgICAgdG9wOiAwcHg7XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2NhcmV0LWRvd24tc29saWQuc3ZnJykgbm8tcmVwZWF0IHJpZ2h0IDE1cHggY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7ICAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmZhcyB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAxODBweDtcbiAgICAgICAgICAgIHRvcDogLTNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHMpe1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtZmlsdGVyaW5nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA2MDtcbiAgICAgICAgcmlnaHQ6IDA7IFxuICAgICAgICB0b3A6IDBweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgLmZhcyB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjYWxsZXJnZW5lbi1maWx0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcblxuICAgICAgICAgICAgLmZhcyB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjVweDsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgICAgIC5mYXMge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuXG4gICAgICAgICAgICAgICAgLmZhcyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgxNTcsMTU3LDE1NywwLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICAgICAgei1pbmRleDogOTk3O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgICAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbnM6IDI7XG4gICAgICAgICAgICAgICAgLW1vei1jb2x1bW5zOiAyO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9ICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVse1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMTAwJSk7IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpe1xuICAgICAgICAuZmlsdGVyLWJ0bnMge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAuZmlsdGVyLWJ0bnMge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZpbHRlci1idG5zIHsgXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpIHtcbiAgICAgICAgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS1maWx0ZXJpbmcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICNhbGxlcmdlbmVuLWZpbHRlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICAgICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNjcnVtYnMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gIFxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgLy8gICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgXG4gICAgICBhIHtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMHB4OyBcbiAgXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmN1cnJlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuXG4gICAgICAud29vY29tbWVyY2Utb3JkZXJpbmcgeyBcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgc2VsZWN0Lm9yZGVyYnkge1xuICAgICAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvb2NvbW1lcmNlLWZpbHRlcmluZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGEjYWxsZXJnZW5lbi1maWx0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtYnJlYWRjcnVtYiB7XG4gICAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgICAgIHotaW5kZXg6IDk5NztcbiAgICAgIH1cbiAgfSIsIiNmcC1uYXYge1xuICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oaXN0b3J5LWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICByaWdodDogNTBweDtcbiAgICB6LWluZGV4OiAxMDA7XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA2MCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA5cHg7IFxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgIH0gXG5cbiAgICAgICAgJi5kb3duIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjMwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgIGJvdHRvbTogODBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7IFxuICAgIH1cbn1cblxuI2ZwLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiBcbi5oaXN0b3J5LW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAyMHB4OyBcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7ICBcbiAgICB6LWluZGV4OiA5OTtcblxuICAgIHVse1xuICAgICAgICBAZXh0ZW5kIC5yZXNldDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWhlYWRpbmc7IFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoJGdyZXktZGFya2VyLCAwLjUwKTtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gXG5cbiAgICAgICAgICAgICY6YWZ0ZXIgeyBcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMjFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjYwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMTAwMHB4KXtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MCUpO1xuXG4gICAgICAgIHVsIHsgXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHh4bCl7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAlKTtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuNjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICBcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmdWxscGFnZSB7XG4gICAgLnNlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmhpc3RvcnktYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIC5jb2xvciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDE1cHgpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gN3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHhsKSB7XG4gICAgICAgICAgICAgICAgLmNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpIHtcbiAgICAgICAgICAgICAgICAuY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLndyYXBwZXIgeyBcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5sZWZ0LFxuICAgICAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7IFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1oZWFkaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNTUwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxMDUwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDYwMG1zO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNzAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNTApOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDQ1MG1zIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiA1MDBtcztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMSk7IFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHh4bCkge1xuICAgICAgICAgICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpIHtcbiAgICAgICAgICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MHZoO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuXG4gICAgICAgICAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5oaXN0b3J5LWJhY2tncm91bmQgeyBcbiAgICAgICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jaGlzdG9yeS13cmFwcGVyIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICBuYXYge1xuICAgICAgICAmLm1lbnUge1xuICAgICAgICAgICAgLnNob3BwaW5nLWNhcnQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjc21hbGwtY2FydCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY2FydCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAud29vY29tbWVyY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuXG4gICAgICAgIC53b29jb21tZXJjZS1ub3RpY2VzLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IC02MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnF1YW50aXR5IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5jYXJ0X2l0ZW0ge1xuICAgICAgICAucHJvZHVjdC10aHVtYm5haWwge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydF90b3RhbHMge1xuICAgICAgICAud29vY29tbWVyY2Utc2hpcHBpbmctdG90YWxzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAmLnNoaXBwaW5nIHtcbiAgICAgICAgICAgICAgICB1bC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIC5zaGlwcGluZy1jYWxjdWxhdG9yLWJ1dHRvbiB7XG4gICAgICAgICAgICAvLyAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLy8gfVxuXG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0ge1xuICAgICAgICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICAgICAmI2NhbGNfc2hpcHBpbmdfc3RhdGVfZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICYjY2FsY19zaGlwcGluZ19jaXR5X2ZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAmI2NhbGNfc2hpcHBpbmdfY291bnRyeV9maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmI2NhbGNfc2hpcHBpbmdfcG9zdGNvZGVfZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcGVuIHtcbiAgICAgICAgICAgICAgICAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tZXJfbm90ZXNfb25fY2FydCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmV5LWxpZ2h0ZXI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhcmQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3NoaXBwaW5nLWRhdGUge1xuICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cblxuXG4gICAgfVxufVxuXG4udG9wY2FydCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNzaGlwcGluZy1kYXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxMHB4IDI1cHggMzBweCAyNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywxNTcsMTU3LDAuMyk7XG4gICAgd2lkdGg6IGNhbGMoMjglIC0gMzVweCk7XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjhyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5jaHNoIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnVpLWRhdGVwaWNrZXIge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleS1kYXJrZXN0O1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICAgICAgLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgfVxuICAgICAgICAudWktaWNvbiB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudWktZGF0ZXBpY2tlci11bnNlbGVjdGFibGUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxufSIsIiN3b29jb21tZXJjZSB7XG4gICAgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvLCAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvLCAud29vY29tbWVyY2UtZXJyb3Ige1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIC53b29jb21tZXJjZS1lcnJvciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjdGlvbnMge1xuICAgICAgICAuY291cG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMjVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0Q4RDhEODtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG5cbiAgICAgICAgICAgIC5jb3Vwb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDM1cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywxNTcsMTU3LDAuMyk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAuZm9ybS1yb3cge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb3N0X3Bhc3N3b3JkIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY2FydCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gICAgICAgIC53b29jb21tZXJjZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgICAgICAud29vY29tbWVyY2UtY2FydC1mb3JtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzVweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywxNTcsMTU3LDAuMyk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg3MCUgLSAzNXB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLnNob3BfdGFibGUge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgLnByb2R1Y3QtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JleS1saWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvdXBvbiB7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtcmVtb3ZlIHtcbiAgICAgICAgICAgIC5yZW1vdmUge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvdHJhc2guc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDIwJSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcnQtY29sbGF0ZXJhbHMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyNXB4IDMwcHggMjVweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMCByZ2JhKDE1NywxNTcsMTU3LDAuMyk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygzMyUgLSAzNXB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDI2MHB4O1xuXG4gICAgICAgICAgICAuY2FydF90b3RhbHMgIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jaGVja291dC1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICAgICAgICAgIC53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhcnQtY29sbGF0ZXJhbHMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5jaGVja291dCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG5cbiAgICAgICAgaDEuY2VudGVyZWQge1xuICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuXG4gICAgICAgICAgICAmI2RhdGVwaWNrZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgfVxuXG4gICAgICAgICNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJ0X2l0ZW0ge1xuICAgICAgICAgICAgLnZhcmlhdGlvbiB7XG4gICAgICAgICAgICAgICAgZHQsIGRkIHAge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjY3VzdG9tZXJfZGV0YWlscyB7XG5cbiAgICAgICAgICAgIC5tYW51YWwsXG4gICAgICAgICAgICAubWFudWFsU2gge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoM3B4LCAtMnB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2wtMSxcbiAgICAgICAgICAgIC5jb2wtMiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgPiAuZm9ybS1yb3cge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJiNiaWxsaW5nX3Bvc3Rjb2RlX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYjYmlsbGluZ19hZGRyZXNzXzJfZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJiNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgJiNiaWxsaW5nX2NpdHlfZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5LWxpZ2h0ZXN0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5tYW51YWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiNiaWxsaW5nX3Bob25lX2ZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAmI2JpbGxpbmdfZW1haWxfZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmI3N0b3JlX3BpY2t1cF9maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgPiAuZm9ybS1yb3cge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJiNzaGlwcGluZ19wb3N0Y29kZV9maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmI3NoaXBwaW5nX2FkZHJlc3NfMl9maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmI3NoaXBwaW5nX2FkZHJlc3NfMV9maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgJiNzaGlwcGluZ19jaXR5X2ZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXktbGlnaHRlc3QgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1hbnVhbFNoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYjc2hpcHBpbmdfcGhvbmVfZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICYjc2hpcHBpbmdfZW1haWxfZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmI3N0b3JlX3BpY2t1cF9maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2JpbGxpbmdfYWRkcmVzc18xX2ZpZWxkLFxuICAgICAgICAgICAgI2JpbGxpbmdfYWRkcmVzc18yX2ZpZWxkLFxuICAgICAgICAgICAgI2JpbGxpbmdfcG9zdGNvZGVfZmllbGQsXG4gICAgICAgICAgICAjYmlsbGluZ19jaXR5X2ZpZWxkLFxuICAgICAgICAgICAgI2JpbGxpbmdfcGhvbmVfZmllbGQsXG4gICAgICAgICAgICAjYmlsbGluZ19lbWFpbF9maWVsZCxcbiAgICAgICAgICAgICNzaGlwcGluZ19hZGRyZXNzXzFfZmllbGQsXG4gICAgICAgICAgICAjc2hpcHBpbmdfYWRkcmVzc18yX2ZpZWxkLFxuICAgICAgICAgICAgI3NoaXBwaW5nX3Bvc3Rjb2RlX2ZpZWxkLFxuICAgICAgICAgICAgI3NoaXBwaW5nX2NpdHlfZmllbGQsXG4gICAgICAgICAgICAjc2hpcHBpbmdfcGhvbmVfZmllbGQsXG4gICAgICAgICAgICAjc2hpcHBpbmdfZW1haWxfZmllbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NyU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3NoaXBwaW5nX2FkZHJlc3NfMl9maWVsZCxcbiAgICAgICAgICAgICNiaWxsaW5nX2FkZHJlc3NfMl9maWVsZCxcbiAgICAgICAgICAgICNiaWxsaW5nX2NpdHlfZmllbGQsXG4gICAgICAgICAgICAjc2hpcHBpbmdfY2l0eV9maWVsZCxcbiAgICAgICAgICAgICNiaWxsaW5nX2VtYWlsX2ZpZWxkLFxuICAgICAgICAgICAgI3NoaXBwaW5nX2VtYWlsX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubm90ZXMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNvcmRlcl9jb21tZW50c19maWVsZCB7XG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNlX2RlbGl2ZXJ5ZGF0ZV9maWVsZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1kYXJrZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvcF90YWJsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAyNXB4O1xuXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcblxuICAgICAgICAgICAgLnZhcmlhdGlvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3NoaXBwaW5nX21ldGhvZCB7XG4gICAgICAgICAgICBsaSBpbnB1dCB7XG4gICAgICAgICAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6Y2hlY2tlZCxcbiAgICAgICAgICAgICAgICAmW3R5cGU9aGlkZGVuXSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjcGF5bWVudCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgLndvb2NvbW1lcmNlLW5vdGljZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDM1cHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNjdXN0b21lcl9kZXRhaWxzIHtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIC8vIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgICAgICAvLyBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgxNTcsMTU3LDE1NywwLjMpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcblxuICAgICAgICAgICAgICAgICYjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MtY2hlY2tib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0Q29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b29jb21tZXJjZS1hY2NvdW50LWZpZWxkcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2wtMiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwud2MtaXRlbS1tZXRhIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpIHtcbiAgICAgICAgICAgICNwYXltZW50IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hvcF90YWJsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJ0X3RvdGFscyB7XG4gICAgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWRlc3RpbmF0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY2FydC1zdWJ0b3RhbCB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaGlwcGluZy1jYWxjdWxhdG9yLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zaGlwcGluZy1jYWxjdWxhdG9yLWZvcm0ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI3NoaXBwaW5nX21ldGhvZCB7XG4gICAgICAgIC53b29jb21tZXJjZS1QcmljZS1hbW91bnR7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaGlwcGluZyB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hpcHBpbmctY2FsY3VsYXRvci1mb3JtIHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuI3NoaXBwaW5nX21ldGhvZCB7XG4gICAgbGkge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNoZWNrb3V0LW5hdiB7XG4gICAgbmF2IHtcbiAgICAgICAgJi5tZW51IHtcbiAgICAgICAgICAgIC5zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3NtYWxsLWNhcnQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyxcbi53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMge1xuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLXJvdy5zdG9yZS1waWNrdXAge1xuICAgIGxhYmVsLFxuICAgIHNlbGVjdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4ucGlja3VwLWxvY2F0aW9ucy1ob2xkZXIge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBAZXh0ZW5kIC5ib3gtc2hhZG93O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIG1hcmdpbjogMjBweDtcbiAgICB9XG5cbiAgICAucGlja3VwLWxvY2F0aW9ucyB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoMSwyLDIsNCw0LCAwKTtcblxuICAgICAgICAubG9jYXRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgaDQsXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUge1xuICAgIGRkIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG59XG5cbi5jaGVja291dF9jb3Vwb24ge1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAuZm9ybS1yb3cge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vdGVzLWhvbGRlcntcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgLy8gQGV4dGVuZCAuYm94LXNoYWRvdztcbiAgICAvLyBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvLyBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3ODc4Nzg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhcmQge1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIC8vIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5cbi8vIE11bHRpc3RlcCBjaGVja291dFxuZm9ybS53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAjb3JkZXJfcmV2aWV3X2hlYWRpbmcge1xuICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cblxuICAgIC5sZWZ0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5yaWdodCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgID4gZGl2IHtcbiAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zdGVwcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMDtcblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGluZS1udW1iZXI7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGluZS1udW1iZXIpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZyl7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYjY3VzdG9tZXJfZGV0YWlscyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgLmNvbC0xIHtcbiAgICAgICAgICAgICAgICAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMge1xuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPiBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlLU5vdGljZUdyb3VwLWNoZWNrb3V0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY2hlY2tvdXRDb250cm9scyB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXktbGlnaHRlciAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jd29vY29tbWVyY2UuY2hlY2tvdXQge1xuICAgIC53b29jb21tZXJjZS1vcmRlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMThweCAwIHJnYmEoMTU3LDE1NywxNTcsMC4zKTtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAud29vY29tbWVyY2UtaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3IHtcbiAgICAgICAgICAgIEBleHRlbmQgLnJlc2V0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAudG90YWwsXG4gICAgICAgICAgICAubWV0aG9kIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5wLmNyZWF0ZS1hY2NvdW50IHtcbiAgICBtYXJnaW46IDEwcHggMDtcblxuICAgIGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgfVxufSIsIiNyZWNpcGVzIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleS1saWdodGVzdDtcbiAgICBcbiAgICAucmVjaXBlcyB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoMSwxLDEsMiwyLCAyMHB4ICk7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgICAgICAgLnRhZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgIH1cblxuICAgICAgICAucmVjaXBlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDU1MHB4IC8gMiAtIDEwcHgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2U7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1hYm92ZSh4bCl7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMSAvIDI7XG4gICAgICAgICAgICAgICAgfSBcbiAgICBcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMiAvIDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjcwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNjAlIC0gMjBweCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubW9udGgtcmVjaXBlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NTBweDsgXG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiBcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKHhsKXtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxIC8gMztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5yZWNpcGUtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVjaXBlLWZvb3RlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IFxuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHByaW1hcnktY29sb3I7ICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0gICBcblxuLnNpbmdsZS1yZWNpcGUge1xuICAgIGg0IHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52aWRlby1yZWNpcGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuXG4gICAgICAgIC5lbWJlZCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufSIsIiNsb2NhdGlvbiB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuICAgIC53cmFwcGVyIHtcbiAgICAgICAgLmxvY2F0aW9uLXRvdXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub3ZlcmxheUlmcmFtZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMjUpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDAwO1xuXG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHAtZW1iZWQge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICAgICAgICAgICAgICBhIHsgXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkKDEsMSwxLDIsMiwgMjBweCApO1xuXG4gICAgICAgICAgICAuY29udGFjdCB7XG4gICAgICAgICAgICAgICAgc3BhbiwgXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCIgXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDRweDsgXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5waG9uZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3Bob25lLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvZW52ZWxvcGUuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFkZHJlc3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9waW4tMS5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudGltZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy90aW1lLWNsb2NrLWNpcmNsZS5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYXNjaWxpdHkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLnJlc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZW1iZWQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5sb2NhdGlvbnMtcGFnZSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBncmlkKDEsMSwyLDIsMiwgMjBweCApO1xuXG4gICAgICAgIC5sb2NhdGlvbi1uYXYge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLnJlc2V0O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDgwJSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiI2ZhcSB7XG4gICAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTtcblxuICAgIGZvcm0ge1xuXG4gICAgICAgIC5zZWFyY2gge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlc2V0LWZhcS10YWcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgXG4gICAgICAgIC5mYXEtbmF2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG5cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHByaW1hcnktY29sb3IsIDAuMTApO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzNTBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG5cbiAgICAgICAgICAgICAgICAgICAgJi5taXhpdHVwLWNvbnRyb2wtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkcHJpbWFyeS1jb2xvciwgMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZhcXMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIwcHgpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gXG4gICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleS1saWdodGVyOyBcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgNjUwbXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAgICAgcCwgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleS1saWdodGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTlweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLnJlc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzNTBtcyBlYXNlOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuIFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXktZGFya2VyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTA2NXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYXJyb3ctZG93bi1ncmV5LnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBcblxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICAgICAgICAgIC5mYXFzIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmFxLW5hdiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIFxuICAgIHVsIHtcbiAgICAgICAgQGV4dGVuZCAucmVzZXQ7XG4gICAgICAgIG1hcmdpbjogNjBweCBhdXRvIDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXktbGlnaHRlc3Q7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIiN3ZWRkaW5nLWNha2Uge1xuICAgIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgfVxuXG4gICAgLmNha2VzIHtcbiAgICAgICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgICAgIC8vIEBpbmNsdWRlIGdyaWQoMiwzLDQsNCw1LCAyMHB4ICk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyMCUgLSAxMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4O1xuXG4gICAgICAgICAgICAmLmdyaWQtaXRlbS0td2lkdGgyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg0MCUgLSAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpIHsgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxMHB4KTtcblxuICAgICAgICAgICAgICAgICYuZ3JpZC1pdGVtLS13aWR0aDIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG5cbiAgICAgICAgICAgICAgICAmLmdyaWQtaXRlbS0td2lkdGgyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIiN3b3Jrc2hvcHMge1xuXG4gICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlIHVybChcIi4uL2ltYWdlcy9hcnJvdy1kb3duLXNlbGVjdC5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDE1cHggY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggIWltcG9ydGFudDsgXG4gICB9ICAgIFxuXG4gICAud29ya3Nob3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleS1saWdodGVyO1xuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICAgd2lkdGg6IGNhbGMoMzAlIC0gMTVweCk7XG4gICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDE1cHgpO1xuICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgICAgLmltYWdlLFxuICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgIH1cblxuICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgICBcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cbn0iLCIuYWNmLW1hcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA2MDBweDtcblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgfVxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxufVxuXG4ubWFwcy1wYXJ0LW9uZSB7XG4gICAgcGFkZGluZzogNDBweCAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygzMCUgLSAyMHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICB1bCB7XG4gICAgICAgIEBleHRlbmQgLnJlc2V0O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFwcy1wYXJ0LXR3byB7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYyg3MCUgLSAyMHB4KTtcbn1cblxuQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgLm1hcHMtcGFydC1vbmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDBweCAyMHB4IDBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5LWxpZ2h0ZXI7XG4gICAgfVxuICAgIFxuICAgIC5tYXBzLXBhcnQtdHdvIHtcbiAgICAgICAgcGFkZGluZzogMHB4IDBweCAyMHB4IDBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn0iLCIuc2VhcmNoLXJlc3VsdHMge1xuICAgLndyYXBwZXIge1xuICAgICAgPiB1bCB7XG4gICAgICAgICBAZXh0ZW5kIC5yZXNldDtcblxuICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAyMHB4IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXktbGlnaHRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAgXG5cbiAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5LWRhcmtlcjtcbiAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDsgXG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGFnIHtcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJvZHVjdHMge1xuICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICB9XG5cbiAgICAgICAgICAvL0BpbmNsdWRlIHJlc3BvbmQtYWJvdmUobWQpIHtcbiAgICAgICAgICAgIC5zaW5nbGVfYWRkX3RvX2NhcnRfYnV0dG9uIHtcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc2hvcHBpbmctY2FydC1hZGQuc3ZnKSBuby1yZXBlYXQgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIGVhc2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAvLyB9XG5cbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG4gICAgICAgICAgICAuc2luZ2xlX2FkZF90b19jYXJ0X2J1dHRvbiB7XG4gICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICB9XG4gICB9XG59IiwiLnZhY2F0dXJlcyB7XG4gICAgYmFja2dyb3VuZDogJGdyZXktbGlnaHRlc3Q7XG5cbiAgICB1bCB7XG4gICAgICAgIEBleHRlbmQgLnJlc2V0O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpbmdsZS12YWNhdHVyZSB7XG4gICAgXG59IiwiLypcbiAqIEhlbHBlciBjbGFzc2VzXG4gKi8gXG5cbi8vIFNpbXBsZSBib3gtc2hhZG93XG4uYm94LXNoYWRvdyB7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCAxMHB4IDFweCByZ2JhKCRncmV5LWxpZ2h0ZXIsIDEpO1xufVxuICBcbi8vIFNpbXBsZSB0ZXh0LXNoYWRvd1xuLnRleHQtc2hhZG93IHtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDNweCA2cHggcmdiYSgwLDAsMCwwLjMpO1xufVxuICBcbi5oaWRlLW9uLW1vYmlsZSB7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZyl7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLnNob3ctb24tbW9iaWxlIHtcbiAgICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKGxnKXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8vIENlbnRlciB0ZXh0IGFuZCBlbGVtZW50cyBob3Jpem9udGFsXG4uY2VudGVyZWQge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbiAgXG4vLyBDZW50ZXIgdGV4dCBhbmQgZWxlbWVudHMgdmVydGljYWxseVxuLmNlbnRlcmVkLXZlcnRpY2FsIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiAgXG4vLyBCYWNrZ3JvdW5kIGltYWdlXG4uYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAmLnRvcCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgfVxuICAgICYuYm90dG9tIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGJvdHRvbTtcbiAgICB9XG59XG4gXG4vLyBObyBwYWRkaW5nIChvbiBzZWN0aW9uKVxuLm5vLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8vIE92ZXJsYXkgKHp3YXJ0KVxuLm92ZXJsYXkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDowO1xuICAgICAgICBib3R0b206MDtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDowO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMzApO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cbn1cblxuLy8gT3ZlcmxheSB3aXRoIGdyYWRpZW50IGZyb20gdG9wXG4ub3ZlcmxheS1ncmFkaWVudCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIGJvdHRvbTowO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLDAsMCwwLjY3KSAwJSwgcmdiYSgwLDAsMCwwKSAxMDAlKTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG59XG4gIFxuLy8gUmVzZXQgbGlzdHNcbi5yZXNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiAgXG4vLyBFbWJlZGRlZCBjb250ZW50XG4uZW1iZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAtNTYuMjUlO1xuICBcbiAgICBpZnJhbWUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbn0gIFxuXG4vLyBFbGxpcHNpc1xuLmVsbGlwc2lzIHtcbiAgICBkaXNwbGF5OiBncmlkOyBcbiAgICA+ICoge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG59XG5cbi8vIEJveCBzaGFkb3dcbi5zaGFkb3cge1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMTkzLDE5MywxOTMsMC41KTtcbn1cblxuLy8gQWRkIHRvIGNhcnRcbiVhZGQtdG8tY2FydCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvc2hvcHBpbmctY2FydC1hZGQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4IDBweCAwcHggNnB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA1NXB4OyAgICAgIFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDsgIFxuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIHRvcDogMDsgXG4gICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zIDE1MG1zIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvc2hvcHBpbmctY2FydC1hZGQuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwcHggY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgdG9wOiAwO1xufVxuXG4ucHJvZHVjdF90aXRsZSB7XG4gICAgY29sb3I6ICRncmV5LWRhcmtlc3Q7XG4gICAgZm9udC1zaXplOiA0cmVtOyBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH0gXG59XG5cbi5jb250ZW50IHtcbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufSJdfQ== */
