.flickity-enabled
{
  position: relative;
}

.flickity-enabled:focus
{
  outline: none;
}

.flickity-viewport
{
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider
{
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */
.flickity-enabled.is-draggable
{
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport
{
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down
{
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button
{
  position: absolute;
  background: transparent;
  border: none;
  color: #fff;
}

.flickity-button:hover
{
  background: transparent;
  cursor: pointer;
}

.flickity-button:focus
{
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active
{
  opacity: 0.6;
}

.flickity-button:disabled
{
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon
{
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button
{
  top: 50%;
  width: 90px;
  height: 90px;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous
{
  left: 70px;
}

.flickity-prev-next-button.next
{
  right: 70px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous
{
  left: auto;
  right: 70px;
}

.flickity-rtl .flickity-prev-next-button.next
{
  right: auto;
  left: 70px;
}

.flickity-prev-next-button .flickity-button-icon
{
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots
{
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots
{
  direction: rtl;
}

.flickity-page-dots .dot
{
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected
{
  opacity: 1;
}

/* Usage
.my-header {
    // width
    @include respond-until(sm) {
        background: red;
    }
    @include respond-to(sm) {
        background: orange;
    }
    @include respond-from(m) {
        background: green;
    }

    //height
    @include respond-until-height(m) {
      background: pink;
    }
}
*/
@font-face
{
  font-family: 'Rational Text';
  src: url("../fonts/rationaltext-Light.eot");
  src: local("Rational Text"), url("../fonts/rationaltext-Light.woff2") format("woff2"), url("../fonts/rationaltext-Light.woff") format("woff"), url("../fonts/rationaltext-Light.ttf") format("truetype"), url("../fonts/rationaltext-Light.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face
{
  font-family: 'Rational Text';
  src: url("../fonts/rationaltext-SemiBold.eot");
  src: local("Rational Text"), url("../fonts/rationaltext-SemiBold.woff2") format("woff2"), url("../fonts/rationaltext-SemiBold.woff") format("woff"), url("../fonts/rationaltext-SemiBold.ttf") format("truetype"), url("../fonts/rationaltext-SemiBold.svg") format("svg");
  font-weight: bold;
  font-style: normal;
}

.button
{
  display: inline-block;
  vertical-align: top;
  color: #fff;
  text-decoration: none;
  outline: 0;
  border: 2px solid #ff0046;
  background: #ff0046;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 20px;
  height: 52px;
  line-height: 52px;
  padding: 0 68px;
  border-radius: 3px;
  transition: background-color 200ms ease, transform 200ms ease;
  will-change: background-color, transform;
  transform: scale(1);
}

.button:hover, .button:focus
{
  transform: scale(1.05);
}

.button-wrapper
{
  position: relative;
}

@media (max-width: 430px)
{
  .button-wrapper
  {
    width: 100%;
  }
}

@media (max-width: 430px)
{
  .button-wrapper .button-wrap
  {
    width: 100%;
  }
}

.button-wrapper .button-wrap.button-reseller .button:not(.button-header)
{
  min-width: 330px;
  text-align: center;
}

@media (max-width: 430px)
{
  .button-wrapper .button-wrap.button-reseller .button:not(.button-header)
  {
    min-width: unset;
    width: 100%;
    max-width: 90%;
  }
}

.button-wrapper .button-wrap:nth-child(n+1)
{
  margin-top: 20px;
}

.button-wrapper .button-wrap:first-child
{
  margin-top: 30px;
}

.button-close
{
  display: block;
  color: currentColor;
  height: 30px;
  width: 30px;
}

.button-close:hover, .button-close:focus
{
  color: #ff0046;
}

.button-close:active
{
  color: #fff;
}

.button-close svg
{
  fill: currentColor;
  height: 30px;
  width: 30px;
  display: block;
}

.button
{
  pointer-events: auto;
  cursor: pointer;
  position: relative;
  display: inline-block;
  background: #cc0038;
}

.button::before,
.button::after
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.button-invert
{
  background: #cc0038;
  border: 2px solid #ff0046;
  color: #000;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}

.button-invert:hover
{
  color: #fff;
}

.button--hyperion
{
  overflow: hidden;
}

.button--hyperion span
{
  display: block;
  position: relative;
}

.button--hyperion > span
{
  overflow: hidden;
}

.button--hyperion > span > span
{
  overflow: hidden;
}

@keyframes MoveUpInitial
{
  to
  {
    transform: translate3d(0, -105%, 0);
  }
}

@keyframes MoveUpEnd
{
  from
  {
    transform: translate3d(0, 100%, 0);
  }

  to
  {
    transform: translate3d(0, 0, 0);
  }
}

.button--hyperion::before
{
  content: '';
  background: #ff0046;
  transition: transform 0.4s cubic-bezier(0.7, 0, 0.2, 1);
  transform-origin: 100% 50%;
}

.button--hyperion:hover::before
{
  transform: scale3d(0, 1, 1);
  transform-origin: 0% 50%;
}

.button--hyperion.button-invert:before
{
  background: #fff;
}

.icon
{
  display: inline-block;
  vertical-align: middle;
  width: 22px;
  height: 22px;
}

.icon svg
{
  display: block;
  fill: currentColor;
  height: 22px;
  line-height: 26px;
  width: auto;
  max-width: 100%;
}

.icon-youtube
{
  width: 32px;
  height: 26px;
}

.icon-youtube svg
{
  display: block;
  fill: currentColor;
  height: 26px;
  line-height: 26px;
  width: 36px;
  max-width: 100%;
}

.flag
{
  display: inline-block;
  vertical-align: middle;
  width: 28px;
  height: 26px;
}

.flag svg
{
  display: block;
  height: 24px;
  line-height: 26px;
  width: auto;
  max-width: 100%;
}

.close-x
{
  display: block;
  position: fixed;
  top: 0;
  width: 25px;
  height: 25px;
  background: transparent;
  border: 0;
  outline: 0;
  cursor: pointer;
  transition: transform .25s ease-in-out;
}

@media (max-width: 1005px)
{
  .close-x
  {
    width: 20px;
    height: 20px;
    margin: 10px;
    padding: 25px;
  }
}

.close-x:hover
{
  transform: rotate(180deg);
}

.close-x:hover:after, .close-x:hover:before
{
  border-color: #ff0046;
}

.close-x:before
{
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 25px;
  height: 0;
  border-top: 3px solid white;
  transform: rotate(45deg);
  transform-origin: center;
}

@media (max-width: 1005px)
{
  .close-x:before
  {
    width: 20px;
  }
}

.close-x:after
{
  content: "";
  position: absolute;
  display: block;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 25px;
  height: 0;
  border-top: 3px solid white;
  transform: rotate(-45deg);
  transform-origin: center;
}

@media (max-width: 1005px)
{
  .close-x:after
  {
    width: 20px;
  }
}

@-webkit-keyframes $animation-name
{
  0%
  {
    transform: scale(0.9);
    opacity: 0;
  }

  100%
  {
    transform: scale(1);
    opacity: 1;
  }
}

@-moz-keyframes $animation-name
{
  0%
  {
    transform: scale(0.9);
    opacity: 0;
  }

  100%
  {
    transform: scale(1);
    opacity: 1;
  }
}

@-o-keyframes $animation-name
{
  0%
  {
    transform: scale(0.9);
    opacity: 0;
  }

  100%
  {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes $animation-name
{
  0%
  {
    transform: scale(0.9);
    opacity: 0;
  }

  100%
  {
    transform: scale(1);
    opacity: 1;
  }
}

.animated--grow-in
{
  -webkit-animation: growIn 200ms transform cubic-bezier(.18,1.25,.4,1), opacity cubic-bezier(0,1,.4,1);
  -moz-animation: growIn 200ms transform cubic-bezier(.18,1.25,.4,1), opacity cubic-bezier(0,1,.4,1);
  -o-animation: growIn 200ms transform cubic-bezier(.18,1.25,.4,1), opacity cubic-bezier(0,1,.4,1);
  animation: growIn 200ms transform cubic-bezier(.18,1.25,.4,1), opacity cubic-bezier(0,1,.4,1);
}

*
{
  box-sizing: border-box;
}

html
{
  position: relative;
  min-height: 100%;
  padding: 0;
  margin: 0;
}

body
{
  font-family: "Rational Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5em;
  color: #333;
  background-color: #fff;
  height: 100%;
  padding: 0;
  margin: 0;
  overflow-x: hidden;
}

a:focus
{
  outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6
{
  font-family: "Rational Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: bold;
  line-height: 1.1em;
  margin-top: 0;
  padding: 0;
  margin-bottom: 20px;
}

h1
{
  font-weight: bold;
  font-size: 60px;
}

@media (max-width: 835px)
{
  h1
  {
    font-size: 40px;
    padding: 0 10px;
  }
}

h2
{
  font-size: 42px;
  font-weight: bold;
  padding: 0;
  margin: 0 0 30px 0;
}

/*
.top-section-title {
  font-weight: bold;
  //font-size: 40px;
  font-size: 60px;

  @include respond-until(tablet) {
    padding: 0 50px;
  }
}
*/
p
{
  font-size: 22px;
  padding: 0;
  margin: 0;
  line-height: 1.3;
}

p:not(:last-child)
{
  margin-bottom: 10px;
}

img
{
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

.grid-col
{
  display: grid;
}

.grid-col-1
{
  grid-template-columns: auto;
}

.grid-col-2
{
  grid-template-columns: auto auto;
}

.grid-col-3
{
  grid-template-columns: auto auto auto;
}

.grid-col-4
{
  grid-template-columns: auto auto auto auto;
}

.grid-1-columns
{
  display: grid;
  grid-template-columns: auto;
}

.grid-2-columns
{
  display: grid;
  grid-template-columns: auto auto;
}

.grid-3-columns
{
  display: grid;
  grid-template-columns: auto auto auto;
}

.grid-4-columns
{
  display: grid;
  grid-template-columns: auto auto auto auto;
}

.grid-no-gap
{
  grid-gap: 0;
}

@media (max-width: 835px)
{
  .grid-col-section p
  {
    width: 100%;
  }
}

.grid-col-section .container-smaller
{
  text-align: left;
}

.grid-col-section .grid-col-2
{
  grid-template-columns: 50% 50%;
}

.grid-col-section .grid-col
{
  justify-content: center;
}

@media (max-width: 835px)
{
  .grid-col-section .grid-col
  {
    grid-template-columns: 100%;
  }
}

.grid-col-section .grid-col-item
{
  padding-right: 70px;
}

@media (max-width: 835px)
{
  .grid-col-section .grid-col-item
  {
    padding-right: 0;
    padding-bottom: 70px;
  }

  .grid-col-section .grid-col-item:last-child
  {
    padding-bottom: 0px;
  }
}

.content-wrapper
{
  background-color: #fff;
  width: 100%;
  overflow-x: hidden;
}

.scroll-container
{
  overflow-x: hidden;
  overflow-y: auto;
  height: 100%;
}

.flex-basis-auto
{
  -webkit-flex-basis: auto;
  -moz-flex-basis: auto;
  -ms-flex-basis: auto;
  flex-basis: auto;
}

.hide
{
  display: none !important;
}

.container
{
  width: 100%;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container-small
{
  width: 100%;
  max-width: 1150px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container-smaller
{
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.clearfix:after
{
  content: "";
  display: table;
  clear: both;
}

.float-left
{
  float: left;
}

.float-right
{
  float: right;
}

.text-left
{
  text-align: left;
}

.text-right
{
  text-align: right;
}

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

.relative
{
  position: relative;
}

.inline-block
{
  display: inline-block;
  vertical-align: top;
}

.padding-top
{
  padding-top: 120px;
}

.no-padding-top
{
  padding-top: 0px;
}

.padding-bottom
{
  padding-bottom: 120px;
}

.no-padding-bottom
{
  padding-bottom: 0px;
}

.no-padding-sides
{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.no-margin-bottom
{
  margin-bottom: 0 !important;
}

::-moz-selection
{
  color: #fff;
  background: #ff0049;
}

::selection
{
  color: #fff;
  background: #ff0049;
}

section.no-padding-top
{
  padding-top: 0;
}

@media (max-width: 835px)
{
  section.no-padding-top-mobile
  {
    padding-top: 0;
  }
}

section.no-padding-bottom
{
  padding-bottom: 0;
}

@media (max-width: 835px)
{
  section.no-padding-bottom-mobile
  {
    padding-bottom: 0;
  }
}

@media (max-width: 835px)
{
  section.text-bottom .section-background img
  {
    height: 70%;
  }
}

/*
.section-title {
  font-size: 42px;
  font-weight: bold;
  padding: 0;
  margin: 0 0 30px 0;
}
*/
.section-background
{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  /*
  &:not(.no-overlay) {
    &:after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(#000, .4);
    }
  }
*/;
}

.section-background img, .section-background video
{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.section-background.overlay-dimmer:after
{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

.section-background-video
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  object-position: center;
  z-index: -1;
}

.modals
{
  position: relative;
  z-index: 9995;
}

.link
{
  color: #ff0046;
  text-decoration: underline;
  cursor: pointer;
}

.link:hover, .link:focus
{
  color: #e6003f;
  text-decoration: none;
}

.link:active
{
  color: #fff;
  text-decoration: none;
}

/*
.list-regular {
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  font-size: 22px;
  line-height: 1.2;
  > li {
    padding: 0 0 0 20px;
    margin: 0;
    position: relative;
    &:not(:last-child) {
      margin-bottom: 5px;
    }
    &:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 10px;
      border-radius: 10px;
      height: 7px;
      width: 7px;
      background-color: $color-primary;
    }
  }
}
*/
.text-shade
{
  text-shadow: 0px 2px 15px rgba(0, 0, 0, 0.5);
}

.dimmer
{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.tablet-only
{
  display: none !important;
}

@media (max-width: 835px)
{
  .tablet-only
  {
    display: inline-block !important;
  }
}

body.state-normal .header-sticky
{
  display: none;
}

body.state-sticky .header:not(.header-sticky)
{
  display: none;
}

body.pinned-content .header-sticky
{
  opacity: 0;
}

body.no-overflow
{
  overflow: hidden;
}

.flickity-viewport
{
  touch-action: pan-x !important;
}

.preloader
{
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  z-index: 90;
}

/*
<div class="la-ball-fall la-2x">
    <div></div>
    <div></div>
    <div></div>
</div>
*/
/*!
 * Load Awesome v1.1.0 (http://github.danielcardoso.net/load-awesome/)
 * Copyright 2015 Daniel Cardoso <@DanielCardoso>
 * Licensed under MIT
 */
.la-ball-fall,
.la-ball-fall > div
{
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.la-ball-fall
{
  display: block;
  font-size: 0;
  color: #fff;
}

.la-ball-fall.la-dark
{
  color: #333;
}

.la-ball-fall > div
{
  display: inline-block;
  float: none;
  background-color: currentColor;
  border: 0 solid currentColor;
}

.la-ball-fall
{
  width: 54px;
  height: 18px;
}

.la-ball-fall > div
{
  width: 10px;
  height: 10px;
  margin: 4px;
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: ball-fall 0.8s ease-in-out infinite;
  -moz-animation: ball-fall 0.8s ease-in-out infinite;
  -o-animation: ball-fall 0.8s ease-in-out infinite;
  animation: ball-fall 0.8s ease-in-out infinite;
}

.la-ball-fall > div:nth-child(1)
{
  -webkit-animation-delay: -200ms;
  -moz-animation-delay: -200ms;
  -o-animation-delay: -200ms;
  animation-delay: -200ms;
}

.la-ball-fall > div:nth-child(2)
{
  -webkit-animation-delay: -100ms;
  -moz-animation-delay: -100ms;
  -o-animation-delay: -100ms;
  animation-delay: -100ms;
}

.la-ball-fall > div:nth-child(3)
{
  -webkit-animation-delay: 0ms;
  -moz-animation-delay: 0ms;
  -o-animation-delay: 0ms;
  animation-delay: 0ms;
}

.la-ball-fall.la-sm
{
  width: 26px;
  height: 8px;
}

.la-ball-fall.la-sm > div
{
  width: 4px;
  height: 4px;
  margin: 2px;
}

.la-ball-fall.la-2x
{
  width: 108px;
  height: 36px;
}

.la-ball-fall.la-2x > div
{
  width: 20px;
  height: 20px;
  margin: 8px;
}

.la-ball-fall.la-3x
{
  width: 162px;
  height: 54px;
}

.la-ball-fall.la-3x > div
{
  width: 30px;
  height: 30px;
  margin: 12px;
}

/*
 * Animation
 */
@-webkit-keyframes ball-fall
{
  0%
  {
    opacity: 0;
    -webkit-transform: translateY(-145%);
    transform: translateY(-145%);
  }

  10%
  {
    opacity: .5;
  }

  20%
  {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  80%
  {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  90%
  {
    opacity: .5;
  }

  100%
  {
    opacity: 0;
    -webkit-transform: translateY(145%);
    transform: translateY(145%);
  }
}

@-moz-keyframes ball-fall
{
  0%
  {
    opacity: 0;
    -moz-transform: translateY(-145%);
    transform: translateY(-145%);
  }

  10%
  {
    opacity: .5;
  }

  20%
  {
    opacity: 1;
    -moz-transform: translateY(0);
    transform: translateY(0);
  }

  80%
  {
    opacity: 1;
    -moz-transform: translateY(0);
    transform: translateY(0);
  }

  90%
  {
    opacity: .5;
  }

  100%
  {
    opacity: 0;
    -moz-transform: translateY(145%);
    transform: translateY(145%);
  }
}

@-o-keyframes ball-fall
{
  0%
  {
    opacity: 0;
    -o-transform: translateY(-145%);
    transform: translateY(-145%);
  }

  10%
  {
    opacity: .5;
  }

  20%
  {
    opacity: 1;
    -o-transform: translateY(0);
    transform: translateY(0);
  }

  80%
  {
    opacity: 1;
    -o-transform: translateY(0);
    transform: translateY(0);
  }

  90%
  {
    opacity: .5;
  }

  100%
  {
    opacity: 0;
    -o-transform: translateY(145%);
    transform: translateY(145%);
  }
}

@keyframes ball-fall
{
  0%
  {
    opacity: 0;
    -webkit-transform: translateY(-145%);
    -moz-transform: translateY(-145%);
    -o-transform: translateY(-145%);
    transform: translateY(-145%);
  }

  10%
  {
    opacity: .5;
  }

  20%
  {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }

  80%
  {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }

  90%
  {
    opacity: .5;
  }

  100%
  {
    opacity: 0;
    -webkit-transform: translateY(145%);
    -moz-transform: translateY(145%);
    -o-transform: translateY(145%);
    transform: translateY(145%);
  }
}

.announcement-bar
{
  height: 60px;
  line-height: 60px;
  width: 100%;
  background-color: #001228;
  color: #fff;
  font-weight: normal;
}

.announcement-bar p
{
  line-height: 60px;
  font-weight: normal;
  color: #fff;
  font-size: 14px;
}

@media (max-width: 1005px)
{
  .announcement-bar p
  {
    line-height: 40px;
  }
}

@media (max-width: 430px)
{
  .announcement-bar p
  {
    font-size: 12px;
  }
}

.announcement-bar p a
{
  color: #fff;
  text-decoration: underline;
}

.announcement-bar-item
{
  text-align: center;
  width: 100%;
}

.header
{
  position: absolute;
  left: 0;
  top: 0;
  padding-top: 60px;
  width: 100%;
  z-index: 3;
  background-color: transparent;
  transition: background-color 200ms ease, transform 200ms ease;
  will-change: background-color, transform;
  z-index: 999;
}

.header .container
{
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100px;
  position: relative;
}

.header-search
{
  margin-left: 30px;
  margin-top: 2px;
}

.header-search-toggle
{
  color: #fff;
  margin: 0 0 0 25px;
  position: relative;
}

.header-search-toggle:hover, .header-search-toggle:focus
{
  color: #ff0046;
}

.header-search-toggle:active
{
  color: currentColor;
}

.header-logo
{
  display: inline-block;
  vertical-align: top;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -5px);
  z-index: 1;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.header-logo a
{
  display: block;
  height: 36px;
}

.header-logo a img
{
  height: 100%;
  width: auto;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.header-logo:hover a img
{
  transform: scale(1.2);
}

.list-icon-links
{
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
  color: #fff;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.list-icon-links li
{
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  padding: 0;
  margin: 0;
}

.list-icon-links li:not(:last-child)
{
  margin-right: 8px;
}

.list-icon-links li a
{
  color: currentColor;
  text-decoration: none;
}

.list-icon-links li a:hover, .list-icon-links li a:focus
{
  color: #ff0046;
}

.list-icon-links li a:active
{
  color: currentColor;
}

@media (max-width: 1005px)
{
  .list-icon-links li.header-globe
  {
    display: none;
  }
}

.list-icon-links li.header-shop-btn .button-wrap
{
  margin-top: 0;
}

.list-icon-links li.header-shop-btn a:hover, .list-icon-links li.header-shop-btn a:focus, .list-icon-links li.header-shop-btn a:active
{
  color: #fff;
}

@media (max-width: 430px)
{
  .list-icon-links li.header-shop-btn a
  {
    font-size: 12px;
    padding: 0px 10px;
    height: 22px;
    line-height: 20px;
  }
}

.list-icon-links.tablet-only
{
  position: fixed;
  top: auto;
  bottom: 100px;
  right: 0;
  left: 0;
  text-align: center;
}

.header-social-links
{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 215px;
}

.header-cart-links
{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}

.header-cart-links .header-shop-btn
{
  margin-left: 15px;
}

.header-cart-links .header-shop-btn a
{
  font-size: 14px;
  padding: 0 20px;
  height: 32px;
  line-height: 32px;
}

.header-cart-links .header-shop-btn a.button--hyperion
{
  color: #fff;
}

.nav-main-sublayer-2
{
  position: fixed;
  z-index: 2;
  left: calc(50vw - 70px);
  top: 0;
  height: 100vh;
  width: 36vw;
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  visibility: hidden;
}

.nav-main-sublayer-2 h3
{
  font-size: 20px;
  font-weight: bold;
  margin: 30px 0 0 0;
  padding: 0;
  display: block;
}

.nav-main-sublayer-2 .image-wrap
{
  max-width: 86%;
  margin-left: auto;
  margin-right: auto;
}

.nav-main-sublayer-2 .image-wrap img
{
  max-height: 70vh;
}

.nav-main-sublayer-2 .button
{
  margin-top: 30px;
}

.nav-main-sublayer-2-inner
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  transform: translateX(-100%);
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.nav-main-sublayer-2,
.nav-main-sublayer-2-inner
{
  display: none;
}

.nav-main-sublayer-1
{
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: calc(50vw - 70px);
  display: none;
  box-shadow: 0 0 20px 20px rgba(0, 0, 0, 0.1);
}

.nav-main-sublayer-1-inner
{
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 0;
  height: 100vh;
  width: calc(50vw - 70px);
  padding-left: calc((100vw - 1290px) / 2 - 2px);
}

@media (max-width: 1335px)
{
  .nav-main-sublayer-1-inner
  {
    padding-left: 13px;
  }
}

@media (max-width: 1005px)
{
  .nav-main-sublayer-1-inner
  {
    padding-left: 0px;
  }
}

.nav-main-sublayer-1-inner:before
{
  content: '';
  display: block;
  position: absolute;
  z-index: 5;
  left: 0;
  top: -200px;
  height: calc(100vh + 600px);
  width: calc(50vw - 70px);
  background-color: #001228;
}

.nav-main-sublayer-1-inner > ul
{
  display: block;
  list-style: none;
  padding: 0;
  margin: 200px 0 0 0;
  width: calc((50vw - 70px) - ((100vw - 1290px) / 2));
  position: relative;
  z-index: 10;
}

@media (max-width: 1335px)
{
  .nav-main-sublayer-1-inner > ul
  {
    margin: 200px 0 0 0;
  }
}

.nav-main-sublayer-1-inner > ul > li
{
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

.nav-main-sublayer-1-inner > ul > li:hover > a
{
  color: #ff0046;
}

.nav-main-sublayer-1-inner > ul > li.active .nav-main-sublayer-2-inner
{
  visibility: visible;
  transform: translateX(0%);
}

.nav-main-sublayer-1-inner > ul > li > a
{
  display: inline-block;
  vertical-align: top;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  font-size: 43px;
  padding-top: 27px;
  padding-bottom: 27px;
}

.nav-main-sublayer-1-inner > ul > li > a:focus, .nav-main-sublayer-1-inner > ul > li > a:active
{
  color: #ff0046;
}

.nav-main-sublayer-1-inner > ul > li > a:focus + .nav-main-sublayer-2, .nav-main-sublayer-1-inner > ul > li > a:active + .nav-main-sublayer-2
{
  display: flex;
}

.nav-main
{
  position: relative;
  color: #fff;
  z-index: 95;
}

.nav-main:hover ~ .header-logo
{
  z-index: 99;
}

.nav-main .close-x
{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  margin: 25px;
  padding: 10px;
  display: none;
}

@media (max-width: 1335px)
{
  .nav-main .close-x
  {
    left: 12px;
  }
}

.nav-main > ul
{
  position: relative;
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
}

.nav-main > ul > li
{
  display: inline-block;
  vertical-align: top;
  list-style: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
}

.nav-main > ul > li:hover > a
{
  color: #ff0046;
}

.nav-main > ul > li:hover .nav-main-sublayer-1
{
  display: block;
}

.nav-main > ul > li:not(:last-child)
{
  margin-right: 30px;
}

.nav-main > ul > li > a
{
  color: currentColor;
  text-decoration: none;
  font-size: 19px;
  font-weight: bold;
  position: relative;
  z-index: 2;
        /*
        &:focus {
          color: $color-primary;
          & + .nav-main-sublayer-1 {
            display: block;
          }
        }
        */
        /* causes issues on mobile
        &:active {
          color: #fff;
          & + .nav-main-sublayer-1 {
            display: block;
          }
        }
*/;
}

.nav-main > ul > li > a > svg
{
  display: none;
}

.nav-main > ul > li > a:hover
{
  color: #ff0046;
}

.nav-main.sub-close ul > li:hover,
  .nav-main.sub-close ul > li .nav-main-sublayer-1
{
  display: none !important;
}

.nav-main-toggle
{
  display: none;
  color: #fff;
  text-decoration: none;
  position: relative;
  z-index: 1;
  background: transparent;
  outline: 0;
  border: 0;
  cursor: pointer;
}

.nav-main-toggle.hide-mobile-navigation
{
  position: fixed;
  z-index: 9995;
  top: 0;
  left: -8px;
}

.desktop-menu-opened
{
  overflow: hidden;
  /*
  .nav-main {
    ul {
      > li {
        .nav-main-sublayer-1 {
          display: block;
        }
      }
    }
  }
*/;
}

.desktop-menu-opened .header-logo
{
  opacity: 0.1;
}

.desktop-menu-opened .header .list-icon-links
{
  opacity: 0.1;
}

.desktop-menu-opened .dimmer
{
  visibility: visible;
  opacity: 1;
}

.header-sticky
{
  position: fixed;
  top: 0;
  padding-top: 0;
  background-color: #001228;
  transform: translateY(-105%);
  z-index: 9990;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

@media (max-width: 1005px)
{
  .header-sticky
  {
    top: 0 !important;
  }
}

.header-sticky .nav-main-sublayer-1,
  .header-sticky .nav-main-sublayer-1-inner,
  .header-sticky .nav-main-sublayer-1-inner:before,
  .header-sticky .nav-main-sublayer-2
{
  height: 100vh;
}

.header-sticky .nav-main-sublayer-1
{
  top: -60px;
}

.header-sticky .nav-main-sublayer-1-inner:before
{
  top: 0;
  height: 200vh;
}

.header-sticky.slideDown
{
  transform: translateY(0%);
}

body.mobile-menu-opened .list-icon-links.tablet-only .header-globe
{
  display: inline-block;
}

/*
body {
  &.test {
    .header {
      &:not(.header-sticky) {
        .nav-main {

          li {
            &:first-child {
              .nav-main-sublayer-1 {
                display: block !important;

                .nav-main-sublayer-1-inner {

                  li {
                    &:first-child {
                      .nav-main-sublayer-2 {
                        display: flex !important;
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
*/
/*

body {
  &.test {
    .header {
      &:not(.header-sticky) {
        .nav-main {

          .close-x {
            //left: calc((100vw - 1290px) / 2);
            //margin-left: 0;

              @include respond-until(laptop-menu-collide-left) {
                //left: 12px;
              }
          }

          li {
            &:first-child {
              .nav-main-sublayer-1 {
                position: fixed;
                display: block !important;
                background: red !important;

                ul {
                  margin-left: 0;
                }

                .nav-main-sublayer-1-inner {
                  position: absolute;
                  &:before {
                    //background: transparent !important;

                    //for easier debug
                    z-index: 999;
                    opacity: 0.2;
                  }
                  li {
                    &:first-child {
                      .nav-main-sublayer-2 {
                        display: flex !important;
                      }
                    }
                  }
                }
              }
            }

            .nav-main-sublayer-2-inner {
              visibility: visible;
              transform: translateX(0%) !important;
            }
          }
        }
      }
    }
  }
}


*/
.modals .close-x
{
  position: absolute;
  right: 0;
  margin: 25px;
  padding: 10px;
}

@media (max-width: 1005px)
{
  .modals .close-x
  {
    margin: 10px;
    padding: 25px;
  }
}

.location-modal
{
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  color: #fff;
  /*
  .section-title {
    text-align: center;
    font-size: 43px;
    margin-bottom: 60px;
  }
*/
  /*
  .button-close {
    position: absolute;
    right: 20px;
    top: 20px;
  }
  */;
}

.location-modal h2
{
  text-align: center;
  font-size: 43px;
  margin-bottom: 0px;
}

.location-modal p
{
  margin-top: 10px;
}

.modal-close-layer
{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

.location-modal-container
{
  background-color: #001228;
  position: fixed;
  width: 100%;
  max-width: 1120px;
  max-height: calc(100vh - 100px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 70px 100px;
  overflow: auto;
  border-radius: 3px;
}

.locations-wrap
{
  display: flex;
  justify-content: space-around;
  margin-top: 60px;
}

.locations-navigation h3
{
  display: block;
  padding: 0;
  margin: 0 0 20px 0;
  font-size: 29px;
}

.locations-navigation ul
{
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
}

.locations-navigation ul li
{
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.locations-navigation ul li:not(:last-child)
{
  margin-bottom: 21px;
}

.locations-navigation ul li a
{
  color: #fff;
  text-decoration: none;
  font-size: 21px;
}

.locations-navigation ul li a:hover, .locations-navigation ul li a:focus
{
  color: #ff0046;
}

.locations-navigation ul li a:active
{
  color: #fff;
}

.locations-navigation ul li:hover
{
  transform: translateX(10px);
}

.locations-navigation .flag
{
  margin-right: 5px;
}

.location-modal-footer
{
  margin-top: 80px;
  text-align: center;
}

.location-modal-footer p
{
  font-size: 20px;
  margin-bottom: 1px;
  margin-top: 0;
}

.location-modal-footer a
{
  color: #ff0046;
  text-decoration: underline;
  cursor: pointer;
}

.location-modal-footer a:hover
{
  text-decoration: none;
}

.list-shops
{
  list-style: none;
  display: block;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 100%;
  display: grid;
  justify-content: space-evenly;
  grid-template-columns: 1fr 1fr;
}

@media (max-width: 430px)
{
  .list-shops
  {
    grid-template-columns: 100%;
  }
}

.list-shops li
{
  list-style: none;
  display: block;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  max-height: 100px;
  height: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

@media (max-width: 430px)
{
  .list-shops li
  {
    max-height: none;
    height: auto;
  }
}

.list-shops li:not(:last-child)
{
  margin-bottom: 30px;
}

.list-shops li a
{
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  width: 100%;
  padding: 20px;
}

.list-shops li a img
{
  position: relative;
  display: block;
  width: 100%;
  max-width: 270px;
  transform: translateY(-30px);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

@media (max-width: 430px)
{
  .list-shops li a img
  {
    max-width: 200px;
  }
}

.list-shops li:hover
{
  background: #e6003f;
}

.shop-modal
{
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  color: #fff;
  /*
  .section-title {
    text-align: center;
    font-size: 43px;
    margin-bottom: 100px;
  }
*/;
}

.shop-modal .close-x:hover:after, .shop-modal .close-x:hover:before
{
  border-color: #ffffff;
}

.shop-modal h2
{
  text-align: center;
  font-size: 43px;
  margin-bottom: 10px;
}

.shop-modal .list-shops
{
  margin-top: 50px;
}

.shop-modal .button-close
{
  position: absolute;
  right: 20px;
  top: 20px;
}

.shop-modal .button-close:hover, .shop-modal .button-close:focus, .shop-modal .button-close:active
{
  color: #fff;
}

.shop-modal.active .list-shops li
{
  position: relative;
  z-index: 99;
}

.shop-modal.active .list-shops li a img
{
  transform: translateX(0px);
}

.shop-modal-container
{
  background-color: #ff0046;
  position: fixed;
  right: 0;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  max-width: 1120px;
  max-height: calc(100vh - 100px);
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  margin: auto;
  padding: 40px;
  border-radius: 3px;
}

@media (max-width: 430px)
{
  .shop-modal-container
  {
    justify-content: flex-start;
    padding-top: 100px;
    padding-bottom: 100px;
    top: 0;
    transform: none;
    height: 100%;
    max-height: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}

.video-modal
{
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  color: #fff;
  margin: auto;
}

.video-modal.active
{
  display: block;
}

.video-modal-container
{
  position: absolute;
  width: 100%;
  max-width: 1120px;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  margin: 0;
  margin: auto;
  overflow: auto;
}

@media (max-width: 835px)
{
  .video-modal-container
  {
    padding: 0;
  }
}

.video-frame
{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  z-index: 95;
}

.video-wrapper169
{
  position: absolute;
  padding-bottom: 56.25%;
  padding-top: 0;
  height: 0;
  z-index: 4;
}

.video-modal-wrapper
{
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

@media (max-width: 835px)
{
  .video-modal-wrapper
  {
    height: 350px;
  }
}

@media (max-width: 430px)
{
  .video-modal-wrapper
  {
    height: 180px;
  }
}

.modal-item
{
  visibility: hidden;
  opacity: 0;
  z-index: 4;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.modal-item.active
{
  visibility: visible;
  opacity: 1;
}

.footer
{
  background-color: #dbe2e9;
  color: #333;
  padding-top: 85px;
  padding-bottom: 40px;
}

.footer-top
{
  display: grid;
  grid-template-columns: 25% 51% 24%;
}

.footer-logo
{
  color: #11131f;
  width: 100px;
  margin-top: -10px;
}

.footer-logo svg
{
  display: block;
  height: 40px;
}

.footer-navigation
{
  /*
  ul {
    display: block;
    list-style: none;
    padding: 0;
    margin: 0;
    li {
      display: block;
      list-style: none;
      padding: 0;
      margin: 0;
      font-size: 18px;
      &:not(:last-child) {
        margin-bottom: 10px;
      }
    }
  }
*/;
}

@media (max-width: 835px)
{
  .footer-navigation
  {
    cursor: pointer;
    margin-left: -15px;
    margin-right: -15px;
  }
}

.footer-navigation h3
{
  display: block;
  padding: 0;
  margin: 0 0 15px 0;
  font-size: 20px;
  font-weight: bold;
}

.footer-navigation h3 svg
{
  display: none;
}

.footer-navigation ul
{
  display: grid;
  grid-template-columns: 33.33333% 33.33333% 33.33333%;
  padding: 0;
  margin: 0;
  list-style: none;
}

.footer-navigation ul li
{
  margin: 0 0 15px 0;
}

.footer-navigation ul li span
{
  display: block;
  padding: 0;
  margin: 0;
  font-size: 20px;
  font-weight: bold;
}

.footer-navigation ul li svg
{
  display: none;
}

@media (max-width: 835px)
{
  .footer-navigation ul li svg
  {
    display: block;
  }
}

.footer-navigation ul li ul
{
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
}

@media (max-width: 835px)
{
  .footer-navigation ul li ul
  {
    text-align: left;
    background-color: rgba(255, 255, 255, 0.5);
    display: none;
  }
}

.footer-navigation ul li ul a
{
  cursor: pointer;
}

.footer-navigation ul li ul a:hover, .footer-navigation ul li ul a:focus
{
  color: #ff0046;
}

.footer-navigation ul li ul li
{
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 18px;
}

.footer-navigation ul li ul li span
{
  font-weight: normal;
  font-size: 18px;
}

.footer-navigation ul li ul li:not(:last-child)
{
  margin-bottom: 10px;
}

@media (max-width: 835px)
{
  .footer-navigation ul li ul li:not(:last-child)
  {
    margin-bottom: 0;
  }
}

@media (max-width: 835px)
{
  .footer-navigation ul li.active svg
  {
    transform: translateY(-50%) rotate(0deg);
  }
}

@media (max-width: 835px)
{
  .footer-navigation ul li.active ul
  {
    display: block;
  }
}

.footer-navigation a
{
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  color: currentColor;
  cursor: default;
}

@media (max-width: 835px)
{
  .footer-navigation a
  {
    cursor: pointer;
  }

  .footer-navigation a:hover, .footer-navigation a:focus
  {
    color: #ff0046;
  }
}

.footer-navigation a:active
{
  color: currentColor;
}

.footer-navigation a.footer-main
{
  margin-bottom: 15px;
}

@media (max-width: 835px)
{
  .footer-navigation a.footer-main
  {
    margin-bottom: 0;
  }
}

@media (max-width: 835px)
{
  .footer-navigation a svg
  {
    display: block;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    height: 20px;
    fill: #333;
    width: 24px;
  }
}

@media (max-width: 835px)
{
  .footer-navigation a
  {
    display: block;
    padding: 10px 20px;
    text-align: left;
    position: relative;
    margin-bottom: 0;
  }
}

.footer-navigation a.has-link
{
  cursor: pointer;
}

.footer-navigation a.has-link svg
{
  display: none;
}

.footer-navigation a.has-link:hover, .footer-navigation a.has-link:focus
{
  color: #ff0046;
}

@media (max-width: 835px)
{
  .footer-top,
  .footer-navigation > ul
  {
    display: grid;
    grid-template-columns: 100%;
    grid-gap: 0;
    text-align: center;
  }
}

.footer-social-links
{
  text-align: center;
  color: #333;
}

.footer-social-links li a
{
  color: currentColor;
}

.footer-social-links li a:hover, .footer-social-links li a:focus
{
  color: #ff0046;
}

.footer-social-links li a:active
{
  color: currentColor;
}

.footer-bottom
{
  font-size: 18px;
  margin-top: 65px;
  padding-left: 100px;
}

.top-section
{
  height: 100vh;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #fff;
  display: flex;
  align-items: center;
  font-size: 38px;
  position: relative;
}

.top-section-content
{
  max-width: 550px;
  margin-top: -135px;
}

@media (max-width: 835px)
{
  .top-section-content
  {
    text-align: center;
  }
}

@media (max-width: 430px)
{
  .top-section-content h1
  {
    padding: 0;
  }
}

.top-section-content p
{
  font-weight: normal;
  font-size: 22px;
  padding: 0;
  margin: 0 0 20px 0;
  line-height: 1.3;
}

.top-section-content .button-wrapper .button-wrap:first-child
{
  margin-top: 50px;
}

.section-3-colors
{
  padding-top: 90px;
  padding-bottom: 120px;
  text-align: center;
}

.section-3-colors .image-wrap
{
  height: 440px;
  width: auto;
  margin-bottom: 26px;
}

.section-3-colors .image-wrap img
{
  height: 100%;
  width: auto;
}

.section-3-colors h3
{
  font-size: 22px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  display: block;
  margin-top: 20px;
}

.section-3-colors p
{
  width: 550px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.section-3-colors a
{
  margin-top: 0;
}

.section-3-colors .button-wrap
{
  margin-top: 30px;
}

.section-categories
{
  padding-top: 25px;
  text-align: center;
}

.list-categories
{
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.list-categories > li
{
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
}

.list-categories > li > a
{
  position: relative;
  display: block;
  overflow: hidden;
}

.list-categories > li > a:before
{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 95;
  opacity: 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-categories > li > a:hover:before, .list-categories > li > a:focus:before
{
  opacity: 1;
}

.list-categories > li > a:hover .list-categories-image img, .list-categories > li > a:focus .list-categories-image img
{
  transform: scale(1.1);
}

.list-categories-image img
{
  transform: scale(1);
  will-change: transform;
  transition: transform 200ms ease;
}

.list-categories-title
{
  position: relative;
  color: #fff;
  font-size: 28px;
  line-height: 1.2;
  font-weight: bold;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 98;
}

.section-single-product
{
  padding-top: 120px;
  padding-bottom: 127px;
  text-align: center;
  /*
    .section-title {
      width: 720px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 140px;

      @include media_mix(laptopHeightMd) {
        margin-bottom: 40px;
      }
    }
  */;
}

@media (max-width: 835px)
{
  .section-single-product
  {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.section-single-product ul
{
  display: inline-block;
  font-size: 20px;
  text-align: left;
  margin: 0;
  padding: 0;
  padding-top: 20px;
}

@media (max-width: 835px)
{
  .section-single-product ul
  {
    font-size: 18px;
    margin: 20px;
  }
}

.section-single-product ul li
{
  list-style-type: circle;
  list-style-position: outside;
  padding-bottom: 10px;
  padding-left: 5px;
}

.section-single-product ul li:last-child
{
  padding-bottom: 0;
}

.section-single-product h2
{
  width: 720px;
  margin-left: auto;
  margin-right: auto;
}

@media _mix
{
  .section-single-product h2
  {
    margin-bottom: 40px;
  }
}

@media (max-width: 835px)
{
  .section-single-product h2
  {
    margin-bottom: 60px;
    padding: 0;
  }
}

.section-single-product .image-wrap
{
  height: 465px;
  margin-bottom: 85px;
}

@media (max-width: 835px)
{
  .section-single-product .image-wrap
  {
    height: auto;
  }
}

.section-single-product .image-wrap img
{
  height: 100%;
  width: auto;
}

@media (max-width: 835px)
{
  .section-single-product .image-wrap img
  {
    height: auto;
    width: 70%;
  }
}

.section-single-product .image-wrap.canvas-wrapper
{
  margin-top: 110px;
      /*
      @include media_mix(laptopHeightMd) {
        transform: scale(0.8);
        top: 40px;
        margin-top: 0px;
      }
*/;
}

@media (max-width: 835px)
{
  .section-single-product .image-wrap.canvas-wrapper
  {
    margin-top: 100px;
  }
}

.section-single-product .image-wrap.canvas-wrapper .canvas-inner img
{
  position: relative;
  width: 100%;
  height: auto;
}

.section-single-product .button-wrap
{
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin-bottom: 30px;
}

.section-single-product .button
{
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -ms-transition: all 1s ease-out;
  -o-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

.section-single-product.3drotation
{
    /*
    .section-title {
      margin-bottom: 80px;
    }
    */;
}

.section-single-product.3drotation h2
{
  margin-bottom: 80px;
}

.section-single-product.3drotation .button
{
  margin-top: 140px;
}

.section-single-product.scroll-done
{
    /*
    .button {
      visibility: visible;
      opacity: 1;
    }

  */;
}

.section-single-product.scroll-done .rotation-svgs-inner
{
  opacity: 0;
}

@media (min-width: 550px) and (max-height: 900px)
{
  .section-single-product .image-wrap.canvas-wrapper
  {
    transform: scale(0.8);
    top: 0px;
    margin-top: 0px;
  }
}

.section-app
{
  height: 1025px;
  padding-top: 0;
  padding-bottom: 0;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  align-items: center;
  position: relative;
}

.section-app .container-small
{
  display: grid;
  grid-template-columns: 40% 38%;
  justify-content: space-between;
}

.section-app .button-wrap
{
  text-align: left;
}

.section-app-info
{
  margin-top: 70px;
}

.section-app-image
{
  display: block;
}

.section-app-image img
{
  width: auto;
}

.section-articles
{
  text-align: center;
  padding-top: 125px;
  padding-bottom: 120px;
}

.list-articles
{
  display: grid;
  list-style: none;
  padding: 0;
  margin: 0;
}

.list-article
{
  position: relative;
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
  height: 416px;
  overflow: hidden;
}

.list-article:before
{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 95;
  opacity: 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-article:hover:before
{
  opacity: 1;
}

.list-article:hover img
{
  transform: scale(1.1);
}

.list-article .button
{
  position: absolute;
  bottom: 55px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 98;
}

.list-article-image
{
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 90;
}

.list-article-image img
{
  display: block;
  object-fit: cover;
  object-position: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(1);
  transition: transform 200ms ease;
  will-change: transform;
}

.list-article-title
{
  position: relative;
  color: #fff;
  padding: 0;
  margin: 0;
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  padding-left: 20px;
  padding-right: 20px;
  z-index: 96;
}

.list-article-title a
{
  color: currentColor;
  text-decoration: none;
}

@media (min-width: 835px)
{
  .list-articles.flickity-enabled .list-article
  {
    width: calc(100% / 3 - 15px);
    margin-left: 15px;
    margin-right: 15px;
    display: block;
  }

  .list-articles.flickity-enabled .flickity-prev-next-button
  {
    color: #000000;
    visibility: hidden;
  }

  .list-articles.flickity-enabled .flickity-prev-next-button:disabled
  {
    display: none;
  }

  .list-articles.flickity-enabled .flickity-prev-next-button.previous, .list-articles.flickity-enabled .flickity-prev-next-button.next
  {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
  }

  .list-articles.flickity-enabled .flickity-prev-next-button.previous:before, .list-articles.flickity-enabled .flickity-prev-next-button.next:before
  {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.5);
    opacity: 0;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
  }
}

@media (min-width: 835px) and (max-width: 1418px)
{
  .list-articles.flickity-enabled .flickity-prev-next-button.previous:before, .list-articles.flickity-enabled .flickity-prev-next-button.next:before
  {
    opacity: 1;
  }
}

@media (min-width: 835px)
{
  .list-articles.flickity-enabled .flickity-prev-next-button.previous
  {
    left: -70px;
  }
}

@media (min-width: 835px) and (max-width: 1418px)
{
  .list-articles.flickity-enabled .flickity-prev-next-button.previous
  {
    left: 0;
    top: 10%;
  }
}

@media (min-width: 835px)
{
  .list-articles.flickity-enabled .flickity-prev-next-button.next
  {
    right: -70px;
  }
}

@media (min-width: 835px) and (max-width: 1418px)
{
  .list-articles.flickity-enabled .flickity-prev-next-button.next
  {
    right: 0;
    top: 10%;
  }
}

.list-articles.slide-buttons-show .flickity-prev-next-button
{
  visibility: visible;
}

.section-product-options
{
  text-align: center;
  padding-top: 120px;
  padding-bottom: 120px;
}

.section-product-options h3
{
  font-size: 22px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  display: block;
}

.section-product-options a
{
  text-decoration: none;
}

.section-product-options a h3
{
  font-weight: normal;
  color: #333;
  position: relative;
  top: 20px;
}

.section-product-options .button-wrap
{
  margin-top: 30px;
}

.list-product-options
{
  list-style: none;
  margin: 45px 0 50px 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.list-product-options > li
{
  position: relative;
  list-style: none;
  display: block;
  margin: 0;
  padding: 0 10px;
  text-align: center;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-product-options > li:before
{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  width: 60%;
  height: 60%;
  margin: auto;
  background: transparent;
  border: 0;
  outline: none;
  border-radius: 50% 50%;
  -webkit-box-shadow: 0px 0px 50px 30px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 0px 50px 30px rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}

.list-product-options > li a
{
  position: relative;
  display: inline-block;
  vertical-align: top;
  text-decoration: none;
  width: 100%;
  max-width: 355px;
  z-index: 9;
}

.list-product-options > li:hover
{
  transform: scale(1.1);
}

.list-product-options > li:hover:before
{
  -webkit-box-shadow: 0px 0px 50px 40px rgba(0, 0, 0, 0.7);
  box-shadow: 0px 0px 50px 40px rgba(0, 0, 0, 0.7);
}

@media (max-width: 835px)
{
  .list-product-options.flickity-enabled .line-reveal-container
  {
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    display: none;
  }

  .list-product-options.flickity-enabled .line-container-reveal-inner
  {
    transform: translate(0%, 0%) !important;
  }

  .list-product-options.flickity-enabled .text-reveal
  {
    overflow: visible !important;
    top: 100px;
    left: -4px;
    opacity: 0;
    transform: scale(0.6);
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
  }

  .list-product-options.flickity-enabled .text-reveal .text-reveal-item
  {
    opacity: 1 !important;
    visibility: visible !important;
    top: 0px !important;
    background: rgba(255, 255, 255, 0.8);
    padding: 10px;
    border-radius: 4px;
  }

  .list-product-options.flickity-enabled .line-reveal-wrap
  {
    display: none;
  }

  .list-product-options.flickity-enabled li
  {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .list-product-options.flickity-enabled li a img
  {
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
  }

  .list-product-options.flickity-enabled li.is-selected a img
  {
    transform: scale(1.1);
  }

  .list-product-options.flickity-enabled li.is-selected .text-reveal
  {
    transform: scale(1);
    opacity: 1;
  }
}

.section-reviews
{
  height: 100vh;
  width: 100%;
  position: relative;
  text-align: center;
  color: #fff;
  /*
  .section-title {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
  */;
}

.section-reviews h2
{
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.section-reviews-background
{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.section-reviews-background:after
{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

.section-reviews-background img, .section-reviews-background video
{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.section-review-wrap
{
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}

@media (max-width: 835px)
{
  .section-review-wrap
  {
    position: relative;
    top: 0;
    transform: none;
  }
}

.section-reviews-slider
{
  margin-top: 50px;
}

.section-reviews-slider .flickity-prev-next-button
{
  top: 52px;
}

.section-review
{
  display: block;
  width: 100%;
}

.section-review p
{
  font-size: 28px;
  line-height: 1.2;
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 730px;
}

/*
.section-review-text {
  font-size: 28px;
  line-height: 1.2;
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 730px;
}
*/
.section-review-author
{
  text-align: center;
  margin-top: 60px;
}

.section-review-author img
{
  display: inline-block;
  vertical-align: top;
  max-height: 100px;
  max-width: 220px;
}

.section-review-author h3
{
  font-size: 30px;
  font-weight: bold;
  padding: 0;
  margin: 0 0 5px 0;
}

.section-review-author h4
{
  font-size: 28px;
  font-weight: normal;
  padding: 0;
  margin: 0;
}

.section-video
{
  position: relative;
  display: block;
  width: 100%;
}

.section-video.video-inline .video-target-container
{
  position: relative;
  height: auto;
}

.section-video.video-inline .video-target-container img
{
  height: auto;
}

.section-video.video-full
{
  padding-bottom: 56.25%;
}

.section-video .container
{
  position: relative;
  height: inherit;
}

.video-placeholder
{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.video-placeholder img
{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.video-play
{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  transition: background-color 200ms ease;
  will-change: background-color;
  z-index: 96;
}

.video-play svg
{
  display: inline-block;
  vertical-align: top;
  transform: scale(1);
  transition: transform 200ms ease;
  will-change: transform;
  width: 90px;
}

@media (max-width: 835px)
{
  .video-play svg
  {
    width: 60px;
  }
}

.video-play:hover svg, .video-play:focus svg
{
  transform: scale(1.2);
}

.video-play:active svg
{
  transform: scale(1);
}

.video-target-container
{
  overflow: hidden;
}

.video-target-container img
{
  position: relative;
  z-index: 95;
}

.video-target-container .video-wrapper169
{
  position: absolute;
  z-index: 98;
}

.section-video
{
  /*
  &.video-inline {
    .video-target-container {
      .video-wrapper169 {
        position: relative;
      }
    }
  }
*/;
}

.section-video.video-auto .video-target-container .video-wrapper169
{
  position: relative;
}

.section-share
{
  padding-top: 170px;
  color: #fff;
  text-align: center;
  position: relative;
  height: 525px;
  overflow: hidden;
  /*
  .section-title {
    width: 510px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
  }
  */;
}

.section-share h2
{
  width: 510px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
}

.section-share .section-background
{
  height: 110%;
  position: absolute;
  top: -4%;
}

.list-share-icons
{
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
  text-align: center;
}

.list-share-icons li
{
  list-style: none;
  display: inline-block;
  vertical-align: top;
  padding: 0;
  margin: 0;
}

.list-share-icons li:not(:last-child)
{
  margin-right: 30px;
}

.list-share-icons li a
{
  display: flex;
  text-decoration: none;
  color: #fff;
  width: 70px;
  height: 70px;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-share-icons li a svg
{
  display: block;
  width: 100%;
  height: auto;
  fill: currentColor;
  stroke: #ffffff;
}

.list-share-icons li a svg, .list-share-icons li a path
{
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-share-icons li a:hover, .list-share-icons li a:focus
{
  transform: scale(1.1);
}

.list-share-icons li a:hover svg, .list-share-icons li a:hover path, .list-share-icons li a:focus svg, .list-share-icons li a:focus path
{
  stroke: #ff0046;
  fill: #ff0046;
  color: #ff0046;
}

.section-steps
{
  background-color: #001228;
  color: #fff;
  padding-top: 125px;
  padding-bottom: 125px;
  /*
  .section-title {
    text-align: center;
    margin-bottom: 40px;
  }
  */;
}

.section-steps h2
{
  text-align: center;
  margin-bottom: 40px;
}

.section-steps .button-wrapper
{
  text-align: center;
}

.section-steps .button-wrapper .button-wrap:first-child
{
  margin-top: 60px;
}

.section-presentation
{
  background: transparent;
  color: #000;
  padding-top: 125px;
  padding-bottom: 125px;
  /*
  .section-title {
    text-align: center;
  }
*/;
}

.section-presentation h2
{
  text-align: center;
}

.section-presentation .button-wrap
{
  margin-top: 60px;
}

.section-presentation .info-row-col .button-wrap
{
  margin-top: 0px;
  text-align: left;
}

.info-row .container-smaller
{
  display: grid;
  justify-content: space-between;
}

@media (max-width: 835px)
{
  .info-row .container-smaller
  {
    display: block;
  }
}

.info-row.info-row-centered
{
  text-align: center;
}

.info-row.info-content-left-right .container-smaller
{
  grid-template-columns: 50% 50%;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right .container-smaller
  {
    display: grid;
  }
}

.info-row.info-content-left-right .info-row-col
{
  padding-bottom: 120px;
}

.info-row.info-content-left-right .info-row-col img.info-row-product
{
  max-width: 300px;
  max-height: 300px;
  margin-top: 20px;
}

.info-row.info-content-left-right .info-row-col img.info-row-product:first-child
{
  margin-top: 0;
}

.info-row.info-content-left-right .info-row-col .info-row-text
{
  padding-right: 60px;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right .info-row-col .info-row-text
  {
    padding-right: 0;
  }
}

.info-row.info-content-left-right .info-row-col .info-row-text h3
{
  font-size: 35px;
  margin: 0px 0 20px 0;
}

.info-row.info-content-left-right .info-row-col .info-row-text h3.list-price-item
{
  font-size: 22px;
  font-weight: bold;
  margin: 0;
  padding: 0;
  display: block;
  margin-top: 20px;
}

.info-row.info-content-left-right .info-row-col .info-row-text .button:last-child
{
  margin-top: 20px;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right .info-row-col .info-row-text .button
  {
    margin-bottom: 80px;
  }
}

.info-row.info-content-left-right .info-row-col:nth-child(even) .info-row-text
{
  padding-right: 0;
  padding-left: 60px;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right .info-row-col:nth-child(even) .info-row-text
  {
    padding-left: 0;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right .info-row-col
  {
    padding-bottom: 30px;
  }
}

.info-row.info-content-left-right:last-child .info-row-col
{
  padding-bottom: 0;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right:last-child .info-row-col:last-child .button:last-child
  {
    margin-bottom: 0px;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right:last-child .info-row-col:not(:last-child)
  {
    padding-bottom: 30px;
  }
}

.info-row.info-content-left-right.info-content-image-left .info-row-col
{
  order: 1;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right.info-content-image-left .info-row-col
  {
    order: 2;
  }
}

.info-row.info-content-left-right.info-content-image-left .info-row-col:first-child
{
  order: 2;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right.info-content-image-left .info-row-col:first-child
  {
    order: 1;
  }
}

.info-row.info-content-left-right.info-content-image-right .info-row-col
{
  order: 2;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right.info-content-image-right .info-row-col
  {
    order: 1;
  }
}

.info-row.info-content-left-right.info-content-image-right .info-row-col:first-child
{
  order: 1;
}

@media (max-width: 835px)
{
  .info-row.info-content-left-right.info-content-image-right .info-row-col:first-child
  {
    order: 2;
  }
}

.info-row.info-content-left-right.no-max-height .info-row-col img.info-row-product
{
  max-height: none;
}

.info-row.info-content-step:not(:last-child)
{
  margin-bottom: 65px;
}

.info-row.info-content-step:nth-child(odd) .container-smaller
{
  grid-template-columns: 30% 635px;
}

@media (max-width: 1005px)
{
  .info-row.info-content-step:nth-child(odd) .container-smaller
  {
    grid-template-columns: 30% 70%;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-step:nth-child(odd) .container-smaller
  {
    grid-template-columns: 100%;
    display: block;
  }
}

@media (max-width: 1005px)
{
  .info-row.info-content-step:nth-child(odd) .info-row-text
  {
    padding-right: 20px;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-step:nth-child(odd) .info-row-text
  {
    padding-right: 0;
  }
}

.info-row.info-content-step:nth-child(even) .container-smaller
{
  grid-template-columns: 635px 30%;
}

@media (max-width: 1005px)
{
  .info-row.info-content-step:nth-child(even) .container-smaller
  {
    grid-template-columns: 70% 30%;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-step:nth-child(even) .container-smaller
  {
    grid-template-columns: 100%;
  }
}

.info-row.info-content-step:nth-child(even) .container-smaller .info-row-text
{
  order: 2;
}

@media (max-width: 1005px)
{
  .info-row.info-content-step:nth-child(even) .container-smaller .info-row-text
  {
    padding-left: 20px;
  }
}

@media (max-width: 835px)
{
  .info-row.info-content-step:nth-child(even) .container-smaller .info-row-text
  {
    padding-left: 0;
  }
}

.info-row.info-content-step:nth-child(even) .container-smaller .info-row-video
{
  order: 1;
}

@media (max-width: 835px)
{
  .info-row .info-row-text
  {
    padding-bottom: 20px;
  }

  .info-row .info-row-text.rellax
  {
    transform: translate3d(0, 0, 0) !important;
  }
}

.info-row-text h3
{
  font-size: 28px;
  margin: 57px 0 12px 0;
}

.info-row-text img
{
  margin-left: 0;
  margin-right: 0;
  margin-bottom: -30px;
}

.info-row-text img.step-icon
{
  max-width: 70px;
}

@media (max-width: 835px)
{
  .info-row-text img
  {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
  }
}

.info-row-video
{
  display: block;
  position: relative;
  height: 360px;
}

@media (max-width: 835px)
{
  .info-row-video
  {
    height: auto;
  }
}

@media (max-width: 835px)
{
  .info-row-video .video-placeholder
  {
    position: relative;
    height: auto;
  }

  .info-row-video .video-placeholder .video-wrapper169
  {
    position: relative;
  }
}

.section-accessories
{
  text-align: center;
  padding-top: 125px;
  padding-bottom: 125px;
  background-color: #fff;
}

.section-accessories .button-wrap
{
  margin-top: 50px;
}

.list-accessories
{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 310px 310px 310px;
  justify-content: space-between;
  width: 100%;
}

.list-accessories > li
{
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
}

.list-accessories > li .image-wrap
{
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-accessories > li:hover .image-wrap
{
  transform: scale(1.1);
}

.list-accessories h3
{
  margin: 60px 0 0 0;
  font-size: 28px;
}

@media (max-width: 835px)
{
  .list-accessories.flickity-enabled li
  {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .list-accessories.flickity-enabled li .image-wrap img
  {
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
  }

  .list-accessories.flickity-enabled li.is-selected .image-wrap img
  {
    transform: scale(1.2);
  }
}

.section-regular
{
  text-align: center;
  padding: 120px 15px;
  /*
  .section-title {
    width: 550px;
    margin-left: auto;
    margin-right: auto;
  }
  */;
}

.section-regular h2
{
  width: 550px;
  margin-left: auto;
  margin-right: auto;
}

.section-regular h3
{
  font-weight: bold;
  padding: 0;
  margin: 0 0 10px 0;
}

.section-regular a,
  .section-regular h3
{
  font-size: 24px;
}

@media (max-width: 835px)
{
  .section-regular a,
      .section-regular h3
  {
    font-size: 22px;
  }
}

.section-regular a
{
  display: inline-block;
}

.section-regular .image-wrap.container, .section-regular .image-wrap.container-small, .section-regular .image-wrap.container-smaller
{
  margin-top: 100px;
  margin-bottom: 100px;
}

.section-regular p:not(:last-child)
{
  margin-bottom: 25px;
}

.section-regular .button-wrap
{
  margin-top: 60px;
}

.section-regular.grid-col-section h2
{
  padding-left: 0;
  margin-left: 0;
}

.section-regular.grid-col-section p
{
  width: 100%;
}

.section-specifications
{
  background-color: #1f2b3e;
  color: #fff;
  padding: 120px 0;
  /*
  .section-title {
    text-align: center;
    margin-bottom: 70px;
  }
  */;
}

.section-specifications h2
{
  text-align: center;
  margin-bottom: 20px;
}

.list-specifications
{
  display: grid;
  grid-template-columns: calc(50% - 40px / 2) calc(50% - 40px / 2);
  grid-gap: 40px;
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 70px;
}

.list-specifications > li
{
  display: grid;
  grid-template-columns: 70px calc(100% - 70px - 20px);
  grid-gap: 20px;
  padding: 0;
  margin: 0;
}

.list-specifications-icon img
{
  max-width: 55px;
  max-height: 55px;
}

.list-specifications-info h3
{
  font-size: 32px;
  font-weight: bold;
  margin: 0 0 5px 0;
}

.list-specifications-info ul
{
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  font-size: 22px;
  line-height: 1.2;
}

.list-specifications-info ul > li
{
  padding: 0 0 0 20px;
  margin: 0;
  position: relative;
}

.list-specifications-info ul > li:not(:last-child)
{
  margin-bottom: 5px;
}

.list-specifications-info ul > li:before
{
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 10px;
  border-radius: 10px;
  height: 7px;
  width: 7px;
  background-color: #ff0046;
}

.section-comparison-table
{
  padding-bottom: 50px;
  padding-left: 0;
  padding-right: 0;
  /*
  .section-title {
    width: 100%;
  }
  */;
}

.section-comparison-table h2
{
  width: 100%;
}

.comparison-table
{
  margin-top: 100px;
}

.comparison-table table
{
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;
}

.comparison-table table thead tr th
{
  padding: 10px 5px;
}

@media (max-width: 736px)
{
  .comparison-table table thead tr th
  {
    font-size: 10px;
  }
}

@media (max-width: 430px)
{
  .comparison-table table thead tr th
  {
    font-size: 8px;
  }
}

.comparison-table table thead tr th:nth-child(1)
{
  width: 25%;
}

.comparison-table table thead tr th:nth-child(2), .comparison-table table thead tr th:nth-child(3), .comparison-table table thead tr th:nth-child(4), .comparison-table table thead tr th:nth-child(5)
{
  width: 18.75%;
}

.comparison-table table thead tr th:nth-child(2)
{
  color: #ff0046;
  border-left: 4px solid #ff0046;
  border-right: 4px solid #ff0046;
  position: relative;
}

.comparison-table table thead tr th:nth-child(2):before
{
  content: '';
  display: block;
  width: 100%;
  border-top: 4px solid #ff0046;
  height: 5px;
  border-left: 4px solid #ff0046;
  border-right: 4px solid #ff0046;
  border-radius: 10px 10px 0 0;
  position: absolute;
  left: -4px;
  top: -9px;
}

.comparison-table table tbody tr:nth-child(odd)
{
  background-color: #f4f5f7;
}

.comparison-table table tbody tr:last-child td:nth-child(2)
{
  position: relative;
}

.comparison-table table tbody tr:last-child td:nth-child(2):after
{
  content: '';
  display: block;
  width: 100%;
  border-bottom: 4px solid #ff0046;
  height: 5px;
  border-left: 4px solid #ff0046;
  border-right: 4px solid #ff0046;
  border-radius: 0 0 10px 10px;
  position: absolute;
  left: -4px;
  bottom: -9px;
}

.comparison-table table tbody tr th
{
  font-size: 22px;
  font-weight: normal;
  text-align: left;
  padding: 0 10px;
  height: 120px;
}

@media (max-width: 835px)
{
  .comparison-table table tbody tr th
  {
    font-size: 22px;
  }
}

@media (max-width: 736px)
{
  .comparison-table table tbody tr th
  {
    font-size: 14px;
    height: 80px;
  }
}

@media (max-width: 430px)
{
  .comparison-table table tbody tr th
  {
    font-size: 12px;
  }
}

.comparison-table table tbody tr td
{
  color: #828385;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  height: 120px;
}

@media (max-width: 835px)
{
  .comparison-table table tbody tr td
  {
    font-size: 24px;
  }
}

@media (max-width: 736px)
{
  .comparison-table table tbody tr td
  {
    font-size: 16px;
    height: 80px;
  }
}

@media (max-width: 430px)
{
  .comparison-table table tbody tr td
  {
    font-size: 12px;
  }
}

.comparison-table table tbody tr td:first-child
{
  font-size: 22px;
  font-weight: normal;
  text-align: left;
  padding: 0 10px;
  height: 120px;
  color: #333;
}

@media (max-width: 835px)
{
  .comparison-table table tbody tr td:first-child
  {
    font-size: 22px;
  }
}

@media (max-width: 736px)
{
  .comparison-table table tbody tr td:first-child
  {
    font-size: 14px;
    height: 80px;
  }
}

@media (max-width: 430px)
{
  .comparison-table table tbody tr td:first-child
  {
    font-size: 12px;
  }
}

.comparison-table table tbody tr td:nth-child(2)
{
  color: #ff0046;
  border-left: 4px solid #ff0046;
  border-right: 4px solid #ff0046;
}

.comparison-table table tbody tr td svg, .comparison-table table tbody tr td img
{
  display: inline-block;
  vertical-align: middle;
  height: 50px;
  width: 50px;
  fill: currentColor;
}

@media (max-width: 736px)
{
  .comparison-table table tbody tr td svg, .comparison-table table tbody tr td img
  {
    height: 30px;
    width: 30px;
  }
}

.comparison-table table tbody tr td strong
{
  font-size: 40px;
}

@media (max-width: 736px)
{
  .comparison-table table tbody tr td strong
  {
    font-size: 30px;
  }
}

@media (max-width: 430px)
{
  .comparison-table table tbody tr td strong
  {
    font-size: 22px;
  }
}

.comparison-table-column-image
{
  display: block;
  margin: 0 auto 20px auto;
}

.comparison-table-column-image img
{
  display: block;
  height: 100px;
}

@media (max-width: 520px)
{
  .comparison-table-column-image img
  {
    height: 50px;
  }
}

.section-rows
{
  padding-bottom: 70px;
}

.product-top-section
{
  background-image: url(../../assets/img/product-page-top-background.jpg);
}

.section-product-box
{
  /*
  .section-title {
    text-align: center;
  }
  */;
}

.section-product-box h2
{
  text-align: center;
}

.section-product-box .image-wrap
{
  margin-bottom: 50px;
}

.list-product-box
{
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 0;
  margin: 0;
}

.list-product-box > li
{
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.list-product-box > li h3
{
  padding: 0;
  margin: 5px 0 0 0;
  font-size: 18px;
  text-align: center;
}

.list-product-box > li:hover
{
  transform: scale(1.2);
}

.list-product-box-image
{
  margin-left: auto;
  margin-right: auto;
}

.list-product-box-image img
{
  height: 70px;
  max-height: 70px;
}

.line-reveal-container
{
  position: absolute;
  top: 6%;
  left: 16%;
}

@media (max-width: 1005px)
{
  .line-reveal-container
  {
    left: 8%;
  }
}

.line-reveal-container span
{
  position: relative;
  width: 100%;
  height: 100%;
  top: 2px;
  padding-left: 1px;
  padding-right: 2px;
}

.line-reveal-container .line-container-reveal-inner
{
  position: relative;
}

.line-reveal-container .text-reveal
{
  position: relative;
  top: -2px;
  overflow: hidden;
}

.line-reveal-container .line-reveal-wrap
{
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
  width: calc(100% + 8px);
  height: 10px;
  overflow: hidden;
}

.line-reveal-container .line-mask
{
  position: relative;
  width: 100%;
  right: 0px;
  height: 10px;
  float: right;
  overflow: hidden;
}

.line-reveal-container .line-reveal-inner
{
  position: absolute;
  width: 100%;
}

.line-reveal-container .line-reveal-inner:before
{
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: calc(100% - 8px);
  height: 1px;
  background: #000000;
}

.line-reveal-container .line-reveal-inner:after
{
  content: "";
  position: absolute;
  top: calc(100% + 3px);
  left: calc(100% - 9px);
  width: 8px;
  height: 1px;
  border-radius: 10px;
  background: #000000;
  transform: rotate(45deg);
}

.line-reveal-container .text-reveal-item,
  .line-reveal-container .line-mask
{
  visibility: hidden;
}

.section-contact
{
  background-color: #dbe2e9;
  color: #333;
  padding: 125px 0;
  text-align: center;
  font-size: 22px;
  /*
  p + .section-title {
    margin-top: 70px;
  }
*/;
}

.section-contact a
{
  color: currentColor;
  text-decoration: none;
}

.section-contact a:hover, .section-contact a:focus
{
  color: #ff0046;
}

.section-contact p + h2
{
  margin-top: 70px;
}

/*
.section-contact-top {
  padding-top: 180px;
}
*/
.section-red
{
  background-color: #ff0046;
  color: #fff;
}

.section-dark
{
  background-color: #001228;
  color: #fff;
}

.section-light
{
  background-color: #fff;
  color: #333;
}

.section-contact-info
{
  margin-top: 65px;
}

.section-contact-info ~ .section-contact-info
{
  margin-top: 45px;
}

.section-contact-info h3
{
  font-weight: bold;
  font-size: 24px;
  padding: 0;
  margin: 0 0 10px 0;
}

.section-contact-subtitle
{
  font-size: 26px;
  padding: 0;
  margin: 70px 0 0 0;
  display: block;
}

.section-contact-subtitle + .section-contact-info
{
  margin-top: 40px;
}

.section-faq
{
  text-align: center;
}

.schema-faq-code
{
  background-color: #dbe2ea;
  border-top: 1px solid #333;
}

.faq-q
{
  display: block;
  padding: 0;
  font-weight: bold;
  font-size: 20px;
  text-align: left;
  max-width: 1100px;
  margin: 0 auto;
}

.faq-q a
{
  display: block;
  position: relative;
  color: #333;
  text-decoration: none;
  padding-left: 22px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.faq-q a:before
{
  content: '+';
  display: block;
  font-weight: bold;
  font-size: 24px;
  position: absolute;
  left: 0;
  top: 10px;
}

.faq-q a:hover, .faq-q a:focus
{
  color: #ff0046;
}

.faq-a
{
  max-height: 0;
  overflow: hidden;
  text-align: left;
  font-size: 20px;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  transition: max-height 500ms ease;
  will-change: max-height;
}

.faq-a span
{
  display: block;
  margin-bottom: 10px;
}

.faq-a span:last-child
{
  margin-bottom: 0;
}

.faq-a a
{
  color: #000000;
  text-decoration: underline;
}

.faq-a a:hover
{
  color: #ff0046;
}

.faq-question
{
  display: block;
  border-bottom: 1px solid #333;
  padding: 15px 15px;
}

.faq-question.active .faq-q a:before
{
  content: '-';
}

.faq-question.active .faq-a
{
  max-height: 500px;
  overflow: auto;
}

/* resets */
.section-single-product
{
  position: relative;
  width: 100vw;
  height: 100vh;
  padding-top: 70px;
}

.section-single-product .image-wrap
{
  position: relative;
  margin-bottom: 0;
  width: 100%;
  max-width: 711px;
  height: auto;
  margin: auto;
  /*
    max-width: 711px;
    max-height: 400px;
    margin: auto;
*/;
}

.section-single-product .image-wrap img
{
  /*
  position: relative;
  z-index: 99;
  width: 100%;

    max-width: 750px;
    max-height: 520px;
*/;
}

/* text */
.rotation-text-container,
.rotation-text-inner
{
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9999999;
}

.rotation-text-container
{
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: 100%;
  max-width: 711px;
  height: 100%;
  text-align: left;
  margin: auto;
  /*background: rgba(208,34,34, 0.2);*/;
}

.rotation-text-inner
{
  width: 100%;
  height: 100%;
}

.rotation-text-item
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

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

.rotation-text-item span
{
  position: relative;
  display: inline-block;
  font-size: 22px;
  line-height: 1.1em;
  font-weight: bold;
  text-align: center;
}

.rotation-text-item span.rotation-text-sub
{
  font-size: 18px;
  font-weight: 300;
}

.rotation-text-item.active
{
  visibility: visible;
}

/* THREE.JS related - for now any three.js related styles can just be added here */
.canvas-wrapper
{
  position: relative;
}

.canvas-wrapper .canvas-inner
{
  position: relative;
  text-align: center;
}

.canvas-wrapper .canvas-inner:after
{
  content: "";
  position: absolute;
  top: calc(100% - 10px);
  left: 0;
  width: 100%;
  height: 20px;
  background: #ffffff;
  z-index: 9999999;
}

.canvas-wrapper .canvas-inner canvas
{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  /*
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  */
  max-width: 100vw;
  max-height: 100vh;
  z-index: 9999999;
}

@media (max-width: 430px)
{
  .canvas-wrapper .canvas-inner canvas
  {
    max-width: 100%;
  }
}

.rotation-svgs
{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 737.6px;
  max-width: 737.6px;
  /*background: rgba(0,0,0, 0.3);*/
  z-index: 99999999999;
  visibility: hidden;
}

@media (max-width: 835px)
{
  .rotation-svgs
  {
    width: 95%;
  }
}

@media (max-width: 430px)
{
  .rotation-svgs
  {
    width: 90%;
  }
}

.rotation-svgs .rotation-svgs-inner
{
  position: relative;
  left: 17px;
  top: 5px;
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

@media (max-width: 835px)
{
  .rotation-svgs .rotation-svgs-inner
  {
    left: 13px;
    top: 18px;
  }
}

@media (max-width: 430px)
{
  .rotation-svgs .rotation-svgs-inner
  {
    left: 7px;
    top: 5px;
  }
}

.rotation-svgs .rotation-svg-item
{
  position: relative;
}

.rotation-svgs.rotation-copy
{
  visibility: hidden;
}

.rotation-svgs.active
{
  visibility: visible;
}

#rotation_x5F_speak
{
  transform: translateX(2%);
}

#rotation_x5F_speak,
#rotation_x5F_battery,
#rotation_x5F_microphones,
#rotation_x5F_bluetooth,
#rotation_x5F_volume
{
  transform: translateX(2%);
}

#rotation_x5F_speak
{
  transform: translateX(3%);
}

.rotation-line-item
{
  position: absolute;
  width: 100%;
}

.rotation-line-item-inner
{
  position: relative;
}

.rotation-line-item img
{
  transform: scale(0.2);
  transform-origin: top left;
  height: auto !important;
}

.rotation-text-item.rotation-mute
{
  left: 70%;
}

.rotation-text-item.rotation-mute .rotation-line-item
{
  top: 100%;
}

.rotation-text-item.rotation-waterproof
{
  top: 50%;
  left: 93%;
}

.rotation-text-item.rotation-waterproof .rotation-line-item
{
  top: 44%;
  left: -22%;
}

.rotation-text-item.rotation-lanyard
{
  left: 76%;
  top: 80%;
}

.rotation-text-item.rotation-lanyard .rotation-line-item
{
  top: 68%;
  left: -10%;
}

.rotation-text-item.rotation-battery
{
  left: 37%;
  top: 108%;
}

.rotation-text-item.rotation-battery .rotation-line-item
{
  top: -113%;
  left: 15%;
  height: 100%;
  width: 8px;
}

.rotation-text-item.rotation-microphones
{
  left: 9%;
  top: 82.5%;
}

.rotation-text-item.rotation-microphones .rotation-line-item
{
  top: 57%;
  left: 21%;
}

.rotation-text-item.rotation-bluetooth
{
  left: 3%;
  top: 45%;
}

.rotation-text-item.rotation-bluetooth .rotation-line-item
{
  top: 44%;
  left: 16%;
  width: 310px;
}

.rotation-text-item.rotation-volume
{
  left: 9%;
  top: 1%;
}

.rotation-text-item.rotation-volume .rotation-line-item
{
  top: 120%;
  left: 9%;
}

.rotation-text-item.rotation-speak
{
  left: 43%;
  top: -18%;
}

.rotation-text-item.rotation-speak .rotation-line-item
{
  top: 142%;
  left: 11%;
  height: 100%;
  width: 8px;
}

.desktop-only
{
  display: block;
}

.desktop-only.button
{
  display: inline-block;
}

.mobile-only
{
  display: none;
}

@media (max-width: 1320px)
{
  .container,
  .container-smaller
  {
    width: 100%;
  }
}

@media (max-width: 1200px)
{
  .nav-main > ul > li:not(:last-child)
  {
    margin-right: 14px;
  }

  .nav-main > ul > li > a
  {
    font-size: 17px;
  }

  .container-small
  {
    width: 100%;
  }

  .list-accessories
  {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (max-width: 1005px)
{
  .announcement-bar
  {
    height: 40px;
    line-height: 40px;
  }

  .header
  {
    top: 40px;
    padding-top: 0;
  }

  .header .container
  {
    height: 70px;
  }

  .header-logo
  {
    transform: translate(-50%, 0px);
    z-index: 1;
  }

  .nav-main
  {
    display: none;
    background-color: #001228;
    position: fixed;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
  }

  .nav-main:before
  {
    content: "";
    position: absolute;
    top: -200px;
    left: 0;
    width: 100%;
    height: calc(100% + 200px);
    background: #001228;
    z-index: 90;
    top: -50px;
    width: 100%;
    height: 100%;
  }

  .nav-main .close-x
  {
    display: none;
  }

  .nav-main ul
  {
    z-index: 95;
  }

  .nav-main ul li:hover .nav-main-sublayer-1
  {
    display: none;
  }

  .nav-main ul li.selected .main-menu-item
  {
    color: #ff0046;
  }

  .nav-main ul li.selected a svg
  {
    transform: translateY(-50%) rotate(0deg);
  }

  .nav-main ul li.selected .nav-main-sublayer-1
  {
    display: block;
  }

  .nav-main > ul
  {
    top: 90px;
    padding: 0;
    height: 100%;
  }

  .nav-main > ul > li
  {
    display: block;
    width: 100%;
  }

  .nav-main > ul > li:not(:last-child)
  {
    margin-right: 0;
  }

  .nav-main > ul > li > a
  {
    display: block;
    padding: 10px 20px;
    font-size: 22px;
    position: relative;
    z-index: 6;
  }

  .header .nav-main .nav-main-sublayer-1,
  .header .nav-main .nav-main-sublayer-1-inner
  {
    position: static;
    height: auto;
    width: 100%;
    box-shadow: none;
  }

  .nav-main-sublayer-1-inner > ul
  {
    margin: 0;
    width: 100%;
    padding-bottom: 10px;
  }

  .nav-main-sublayer-1-inner > ul > li > a
  {
    font-size: 20px;
    font-weight: normal;
    padding: 10px 20px;
    background-color: rgba(255, 255, 255, 0.1);
    width: 100%;
    display: block;
  }

  .nav-main-sublayer-1-inner:before
  {
    top: 0;
    height: 100%;
    width: 100%;
  }

  .nav-main-sublayer-2
  {
    display: none !important;
  }

  .show-mobile-navigation
  {
    display: block;
  }

  .hide-mobile-navigation
  {
    display: none;
  }

  .nav-main > ul > li > a > svg
  {
    display: block;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    height: 20px;
    fill: currentColor;
    width: 24px;
  }
  /*
  .nav-main > ul > li > a {
    &:focus, &:hover, &:active {
      > svg {
        transform: translateY(-50%) rotate(0deg);
      }
    }
  }
*/
  .header-search-toggle
  {
    margin-left: 15px;
  }

  .header-social-links
  {
    display: none;
  }

  .mobile-menu-opened
  {
    overflow: hidden;
  }

  .mobile-menu-opened .header
  {
    height: 100%;
  }

  .mobile-menu-opened .nav-main
  {
    display: block;
  }

  .mobile-menu-opened .show-mobile-navigation
  {
    display: none;
  }

  .mobile-menu-opened .hide-mobile-navigation
  {
    display: block;
  }

  .mobile-menu-opened .header-social-links
  {
    display: block;
    position: fixed;
    top: auto;
    bottom: 40px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 1;
  }
  /*
  .header.headroom--top {
    height: calc(100vh - 40px);
    .nav-main {
      height: calc(100vh - 40px);
    }
  }
*/;
}

@media (max-height: 900px)
{
  .location-modal-container
  {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  /*
  .location-modal .section-title {
    font-size: 30px;
    margin-bottom: 40px;
  }
  */
  .location-modal h2
  {
    font-size: 30px;
    margin-bottom: 40px;
  }

  .locations-navigation h3
  {
    font-size: 20px;
  }

  .locations-navigation ul li a
  {
    font-size: 16px;
  }

  .locations-navigation ul li:not(:last-child)
  {
    margin-bottom: 12px;
  }

  .location-modal-footer
  {
    margin-top: 40px;
  }

  .location-modal-footer p
  {
    font-size: 16px;
  }

  .flag
  {
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 22px;
  }

  .flag svg
  {
    display: block;
    height: 20px;
    line-height: 22px;
    width: auto;
    max-width: 100%;
  }
}

@media (max-width: 835px)
{
  .desktop-only
  {
    display: none !important;
  }

  .mobile-only
  {
    display: block;
  }

  .container,
  .container-small,
  .container-smaller
  {
    width: 100%;
  }

  .location-modal-container
  {
    width: 100vw;
    max-height: 100vh;
    height: 100vh;
    left: 0;
    top: 0;
    transform: none;
    padding: 20px 15px;
    padding-bottom: 100px;
  }

  .locations-wrap
  {
    display: grid;
    grid-template-columns: 100%;
    grid-gap: 20px;
    width: 290px;
    margin: auto;
    margin-top: 60px;
  }

  .locations-navigation
  {
    margin-top: 20px;
  }

  .locations-navigation:first-child
  {
    margin-top: 0;
  }

  .shop-modal-container
  {
    width: 100vw;
  }
  /*
  .section-title {
    font-size: 36px;
    padding-left: $container-padding;
    padding-right: 40px;
  }
*/
  h2
  {
    font-size: 36px;
    padding-left: 25px;
    padding-right: 25px;
  }

  p
  {
    font-size: 22px;
  }

  .section-3-colors .image-wrap img
  {
    height: auto;
  }

  .section-3-colors .image-wrap
  {
    height: auto;
  }

  .list-categories
  {
    display: block;
  }

  .list-categories > li > a
  {
    height: 300px;
  }

  .list-categories-image img
  {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transform: none;
  }
  /*
  .section-single-product .section-title {
    //width: 100%;
    width: 70vw;
  }
  */
  .section-single-product h2
  {
    width: 70vw;
  }

  .section-reviews p
  {
    width: 80%;
  }
  /*
  .section-review-text {
    //width: 100%;
    width: 80%;
  }
*/
  .section-reviews-slider .flickity-prev-next-button
  {
    top: 36px;
  }

  .section-app .container-small
  {
    grid-template-columns: 100%;
  }

  .list-articles
  {
    display: block;
  }

  .section-articles .container
  {
    padding-left: 0;
    padding-right: 0;
  }

  .list-article
  {
    height: 325px;
    width: calc(80% - 30px);
    margin-left: 15px;
    margin-right: 15px;
    display: block;
  }

  .list-article-title
  {
    width: 100%;
  }

  .flickity-prev-next-button.previous
  {
    left: 0;
  }

  .flickity-prev-next-button.next
  {
    right: 0;
  }

  .section-accessories .container,
  .section-product-options .container
  {
    padding-left: 0;
    padding-right: 0;
  }

  .list-product-options
  {
    display: block;
    width: 100%;
  }

  .list-product-options .flickity-button-icon
  {
    fill: #ff0046;
  }

  .list-product-options li
  {
    display: block;
    width: calc(70% - 30px);
    padding-left: 25px;
    padding-right: 25px;
  }

  .list-product-options a
  {
    display: block;
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  .list-product-options a img
  {
    width: 100%;
    display: block;
  }

  .top-section
  {
    min-height: 100vh;
    height: auto;
  }

  .section-app-image img
  {
    height: 520px;
  }

  .section-app
  {
    height: auto;
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: center;
  }

  .section-app .button-wrap
  {
    text-align: center;
    margin-top: 100px;
  }

  .section-app .button-wrap .mobile-only
  {
    display: inline-block;
  }

  .section-app-info
  {
    margin-top: 0;
    margin-bottom: 30px;
  }

  .info-row .container-smaller
  {
    grid-gap: 20px;
  }

  .info-row:nth-child(odd) .container-smaller
  {
    grid-template-columns: 100%;
  }

  .info-row:nth-child(even) .container-smaller
  {
    grid-template-columns: 100%;
  }

  .info-row:nth-child(even) .container-smaller .info-row-text
  {
    order: 1;
  }

  .section-steps
  {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .info-row-text
  {
    text-align: center;
    margin-bottom: 30px;
    max-width: 70%;
    min-width: 290px;
    margin: auto;
  }

  .info-row-text h3
  {
    font-size: 32px;
    margin: 0 0 15px 0;
  }

  .section-accessories .container-small
  {
    padding-left: 0;
    padding-right: 0;
  }

  .list-accessories
  {
    display: block;
    width: 100%;
  }

  .list-accessories .flickity-button-icon
  {
    fill: #ff0046;
  }

  .list-accessories li
  {
    display: block;
    width: calc(70% - 30px);
    margin-left: 15px;
    margin-right: 15px;
  }

  .list-accessories li .image-wrap
  {
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  .list-accessories li .image-wrap img
  {
    display: block;
    width: 100%;
  }

  .section-reviews
  {
    height: auto;
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .section-reviews p
  {
    font-size: 32px;
  }
  /*
  .section-review-text {
    font-size: 32px;
  }
  */
  .top-section-content
  {
    width: 100%;
    max-width: 100%;
  }

  .top-section-content .button-wrap
  {
    text-align: center;
  }

  .footer-bottom
  {
    text-align: center;
    padding: 0;
  }

  .footer-top
  {
    display: grid;
    grid-template-columns: 100%;
    grid-gap: 0;
    text-align: center;
  }

  .footer-logo
  {
    width: 100%;
    height: auto;
    text-align: center;
  }

  .footer-logo
  {
    margin-top: 20px;
    margin-bottom: 40px;
  }

  .footer-logo svg, .footer-logo img
  {
    height: auto;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    max-width: 160px;
  }

  .footer
  {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .footer-social-links
  {
    margin-top: 30px;
  }

  .footer-social-links .icon
  {
    width: 40px;
    height: 40px;
  }

  .footer-social-links .icon svg
  {
    height: 40px;
    line-height: 48px;
  }

  .footer-social-links .icon-youtube
  {
    width: 46px;
    height: 48px;
  }

  .footer-social-links .icon-youtube svg
  {
    width: 46px;
    height: 48px;
  }

  .section-3-colors p
  {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .list-specifications
  {
    grid-template-columns: 100%;
  }

  .section-regular p
  {
    margin-left: auto;
    margin-right: auto;
    width: 70%;
  }

  .info-rows .container-smaller
  {
    padding-left: 0;
    padding-right: 0;
  }
  /*
  .footer-navigation {
    margin-left: -15px;
    margin-right: -15px;
    //&:focus, &:hover, &.active {
    &.active {
      & > h3 > svg {
        transform: translateY(-50%) rotate(0deg);
      }
      & > ul {
        display: block;
      }
    }
    > h3 {
      padding: 10px 20px;
      text-align: left;
      position: relative;
      margin-bottom: 0;
      svg {
        display: block;
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%) rotate(-90deg);
        height: 20px;
        fill: $text-color;
        width: 24px;
      }
    }
    > ul {
      text-align: left;
      background-color: rgba(#fff, .5);
      display: none;
      li {
        padding: 10px 20px;
      }
    }
  }

  .footer-navigation ul li:not(:last-child) {
    margin-bottom: 0;
  }
*/;
}

@media (max-width: 736px)
{
  .top-section-title
  {
    font-size: 40px;
  }

  .top-section-content
  {
    margin-top: 175px;
  }

  .top-section
  {
    align-items: flex-start;
  }

  .text-bottom
  {
    align-items: flex-end;
    padding-bottom: 100px;
  }

  .text-bottom .top-section-content
  {
    margin-top: 0;
  }

  .tech-top-section .section-background img, .tech-top-section .section-background video
  {
    background-color: #000;
    object-fit: contain;
    object-position: 0 80px;
  }
  /*
  .section-regular .section-title {
    width: 100%;
  }
*/
  .section-regular h2
  {
    width: 100%;
  }

  .section-regular
  {
    padding-top: 90px;
    padding-bottom: 90px;
  }

  .section-specifications
  {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .list-specifications-info h3
  {
    font-size: 26px;
    margin-bottom: 10px;
  }

  .list-regular
  {
    font-size: 20px;
  }

  .list-product-box
  {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
  }

  .faq-a,
  .faq-q
  {
    width: 100%;
  }
}

@media (max-width: 520px)
{
  /*
  .section-title {
    font-size: 34px;
  }
  */
  h2
  {
    font-size: 34px;
  }

  .section-reviews p
  {
    padding-left: 15px;
    padding-right: 15px;
    font-size: 24px;
  }
  /*
  .section-review-text {
    padding-left: 15px;
    padding-right: 15px;
    font-size: 24px;
  }
  */
  /*
  .section-single-product .section-title {
    width: 100%;
  }
  */
  .section-single-product h2
  {
    width: 100%;
  }

  .flickity-prev-next-button
  {
    height: 50px;
    width: 50px;
  }

  .announcement-bar
  {
    font-size: 13px;
  }
  /*
  .section-reviews .section-title {
    width: 100%;
  }
  .section-share .section-title {
    width: 100%;
  }
*/
  .section-share h2,
  .section-reviews h2
  {
    width: 100%;
  }

  .section-regular .container.image-wrap
  {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (max-width: 430px)
{
  .announcement-bar
  {
    font-size: 12px;
  }
  /*
  .section-single-product .image-wrap img {
    height: auto;
    width: 70%;
  }
  .section-single-product .image-wrap {
    height: auto;
  }
  .section-single-product {
    padding-left: 15px;
    padding-right: 15px;
  }
*/
  /*
  .section-single-product .section-title {
    margin-bottom: 60px;
    padding: 0;
  }
  */
  /*  
  .section-single-product h2 {
    margin-bottom: 60px;
    padding: 0;
  }

  .section-single-product .button {
    //margin-top: 80px !important;
  }
*/
  .section-regular p
  {
    width: 100%;
  }

  .list-regular
  {
    font-size: 16px;
  }

  .list-product-box
  {
    grid-column-gap: 10px;
  }

  .list-product-box > li h3
  {
    font-size: 16px;
  }
}

.light-background .top-section,
.light-background .product-top-section
{
  color: #333;
}

.light-background .nav-main
{
  color: #333;
}

.light-background .nav-main:hover, .light-background .nav-main:focus-within
{
  color: #fff;
}

.light-background .nav-main:hover + .header-search-toggle, .light-background .nav-main:focus-within + .header-search-toggle
{
  color: #fff;
}

.light-background .header-search-toggle
{
  color: #333;
}

.light-background .list-icon-links
{
  color: #333;
}

.light-background .nav-main-toggle
{
  color: #333;
}

.light-background .top-section-title
{
  color: #333;
}

.light-background.mobile-menu-opened .nav-main,
.light-background .header.slideDown.headroom--not-top .nav-main
{
  color: #fff;
}

.light-background.mobile-menu-opened .header-search-toggle,
.light-background .header.slideDown.headroom--not-top .header-search-toggle
{
  color: #fff;
}

.light-background.mobile-menu-opened .list-icon-links,
.light-background .header.slideDown.headroom--not-top .list-icon-links
{
  color: #fff;
}

.light-background.mobile-menu-opened .nav-main-toggle,
.light-background .header.slideDown.headroom--not-top .nav-main-toggle
{
  color: #fff;
}

@media (max-width: 1335px)
{
  .light-background body.mobile-menu-opened .nav-main
  {
    color: #ffffff;
  }

  .light-background body.mobile-menu-opened .header-sticky
  {
    color: #ffffff;
  }

  .light-background body.mobile-menu-opened .header-search-toggle
  {
    color: #ffffff;
  }

  .light-background body.mobile-menu-opened .list-icon-links
  {
    color: #ffffff;
  }

  .light-background body.mobile-menu-opened .nav-main-toggle
  {
    color: #ffffff;
  }

  .light-background body.mobile-menu-opened .top-section-title
  {
    color: #ffffff;
  }
}

.theme-item
{
  color: inherit;
  background-color: inherit;
}

.theme-item a:not(.button)
{
  color: inherit;
  text-decoration: none;
}

.theme-item a:not(.button):hover
{
  text-decoration: underline;
}

.theme-white
{
  background-color: #fff;
  color: #000;
}

.theme-graylight
{
  background-color: #dbe2e9;
  color: #000;
}

.theme-red
{
  background-color: #ff0046;
  color: #fff;
}

.theme-bluedark
{
  background-color: #001228;
  color: #fff;
}

.theme-bluedarkgray
{
  background-color: #1f2b3e;
  color: #fff;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwibGlicy9fZmxpY2tpdHkuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIm1peGlucy5zY3NzIiwiZm9udHMuc2NzcyIsIl9idXR0b24uc2NzcyIsImljb25zLnNjc3MiLCJhbmltYXRpb24uc2NzcyIsImZvcm0uc2NzcyIsIl9sYXlvdXQuc2NzcyIsIl9wcmVsb2FkZXIuc2NzcyIsIl9saW5rLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJfbW9kYWxzLnNjc3MiLCJfZ2xvYmFsLnNjc3MiLCJyb3RhdGlvbi5zY3NzIiwiX3Jlc3BvbnNpdmVuZXNzLnNjc3MiLCJfY29sb3JzLnNjc3MiLCJfdGhlbWVzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcImxpYnMvZmxpY2tpdHlcIjtcclxuXHJcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcIm1peGluc1wiO1xyXG5AaW1wb3J0IFwiZm9udHNcIjtcclxuQGltcG9ydCBcImJ1dHRvbi5zY3NzXCI7XHJcbkBpbXBvcnQgXCJpY29uc1wiO1xyXG5AaW1wb3J0IFwiYW5pbWF0aW9uXCI7XHJcbkBpbXBvcnQgXCJmb3JtXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRcIjtcclxuQGltcG9ydCBcInByZWxvYWRlclwiO1xyXG5AaW1wb3J0IFwibGlua1wiO1xyXG5AaW1wb3J0IFwiaGVhZGVyXCI7XHJcbkBpbXBvcnQgXCJtb2RhbHNcIjtcclxuXHJcbkBpbXBvcnQgXCJnbG9iYWxcIjtcclxuQGltcG9ydCBcInJvdGF0aW9uXCI7XHJcbkBpbXBvcnQgXCJyZXNwb25zaXZlbmVzc1wiO1xyXG5AaW1wb3J0IFwiY29sb3JzXCI7XHJcbkBpbXBvcnQgXCJ0aGVtZXNcIjsiLCIuZmxpY2tpdHktZW5hYmxlZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cclxuXHJcbi5mbGlja2l0eS12aWV3cG9ydCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uZmxpY2tpdHktc2xpZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4vKiBkcmFnZ2FibGUgKi9cclxuXHJcbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSB7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0IHtcclxuICBjdXJzb3I6IG1vdmU7XHJcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XHJcbiAgY3Vyc29yOiBncmFiO1xyXG59XHJcblxyXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0LmlzLXBvaW50ZXItZG93biB7XHJcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xyXG4gIGN1cnNvcjogZ3JhYmJpbmc7XHJcbn1cclxuXHJcbi8qIC0tLS0gZmxpY2tpdHktYnV0dG9uIC0tLS0gKi9cclxuXHJcbi5mbGlja2l0eS1idXR0b24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAvL2JhY2tncm91bmQ6IGhzbGEoMCwgMCUsIDEwMCUsIDAuNzUpO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XHJcbiAgLy9iYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5mbGlja2l0eS1idXR0b246Zm9jdXMge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4ICMxOUY7XHJcbn1cclxuXHJcbi5mbGlja2l0eS1idXR0b246YWN0aXZlIHtcclxuICBvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xyXG4gIG9wYWNpdHk6IDAuMztcclxuICBjdXJzb3I6IGF1dG87XHJcbiAgLyogcHJldmVudCBkaXNhYmxlZCBidXR0b24gZnJvbSBjYXB0dXJpbmcgcG9pbnRlciB1cCBldmVudC4gIzcxNiAqL1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZmxpY2tpdHktYnV0dG9uLWljb24ge1xyXG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxufVxyXG5cclxuLyogLS0tLSBwcmV2aW91cy9uZXh0IGJ1dHRvbnMgLS0tLSAqL1xyXG5cclxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xyXG4gIHRvcDogNTAlO1xyXG4gIC8vd2lkdGg6IDQ0cHg7XHJcbiAgLy9oZWlnaHQ6IDQ0cHg7XHJcbiAgLy93aWR0aDogMTMwcHg7XHJcbiAgLy9oZWlnaHQ6IDEzMHB4O1xyXG4gIHdpZHRoOiA5MHB4O1xyXG4gIGhlaWdodDogOTBweDtcclxuICAvL2JvcmRlci1yYWRpdXM6IDUwJTtcclxuICAvKiB2ZXJ0aWNhbGx5IGNlbnRlciAqL1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMgeyBsZWZ0OiA3MHB4OyB9XHJcbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQgeyByaWdodDogNzBweDsgfVxyXG4vKiByaWdodCB0byBsZWZ0ICovXHJcbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xyXG4gIGxlZnQ6IGF1dG87XHJcbiAgcmlnaHQ6IDcwcHg7XHJcbn1cclxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcclxuICByaWdodDogYXV0bztcclxuICBsZWZ0OiA3MHB4O1xyXG59XHJcblxyXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiAuZmxpY2tpdHktYnV0dG9uLWljb24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAyMCU7XHJcbiAgdG9wOiAyMCU7XHJcbiAgd2lkdGg6IDYwJTtcclxuICBoZWlnaHQ6IDYwJTtcclxufVxyXG5cclxuLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xyXG5cclxuLmZsaWNraXR5LXBhZ2UtZG90cyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJvdHRvbTogLTI1cHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXBhZ2UtZG90cyB7IGRpcmVjdGlvbjogcnRsOyB9XHJcblxyXG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMTBweDtcclxuICBoZWlnaHQ6IDEwcHg7XHJcbiAgbWFyZ2luOiAwIDhweDtcclxuICBiYWNrZ3JvdW5kOiAjMzMzO1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBvcGFjaXR5OiAwLjI1O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcbiIsIi8vIGNvbG9yXHJcbiR3aGl0ZTogI2ZmZiAhZGVmYXVsdDtcclxuJGJsYWNrOiAjMDAwICFkZWZhdWx0O1xyXG4kYm9keS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcclxuJHRleHQtY29sb3I6ICMzMzMgIWRlZmF1bHQ7XHJcbiRjb2xvci1wcmltYXJ5OiAjZmYwMDQ2ICFkZWZhdWx0O1xyXG4kY29sb3ItYmx1ZS1kYXJrOiAjMDAxMjI4ICFkZWZhdWx0O1xyXG5cclxuLy8gZm9udCBmYW1pbHlcclxuJGZvbnQtZmFtaWx5OiBcIlJhdGlvbmFsIFRleHRcIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90byxcclxuXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsXHJcblwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xyXG5cclxuLy8gYW5pbWF0aW9uXHJcbiRhbmltYXRpb24tZHVyYXRpb246IDIwMG1zO1xyXG5cclxuLy8gc2l6ZVxyXG4kY29udGFpbmVyLXBhZGRpbmc6IDE1cHg7XHJcbiRjb250YWluZXItd2lkdGg6IDEyOTBweDtcclxuJGNvbnRhaW5lci1zbWFsbC13aWR0aDogMTEyMHB4O1xyXG4kY29udGFpbmVyLXNtYWxsZXItd2lkdGg6IDEwNzBweDtcclxuJGFubm91bmNlbWVudC1iYXItaGVpZ2h0OiA2MHB4O1xyXG4kYW5ub3VuY2VtZW50LWJhci1oZWlnaHQtbW9iaWxlOiA0MHB4O1xyXG4kaGVhZGVyLWhlaWdodDogMTAwcHg7XHJcbiRoZWFkZXItaGVpZ2h0LW1vYmlsZTogNzBweDtcclxuJGljb24tc2l6ZTogMjJweDtcclxuJGZsYWctd2lkdGg6IDI4cHg7XHJcbiRmbGFnLWhlaWdodDogMjZweDsiLCIvL1RyYW5zaXRpb24gTWl4aW4vL1xyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJGFyZ3MpIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246ICRhcmdzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgLW1zLXRyYW5zaXRpb246ICRhcmdzO1xyXG4gIC1vLXRyYW5zaXRpb246ICRhcmdzO1xyXG4gIHRyYW5zaXRpb246ICRhcmdzO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbk11bHRpKCR0cmFuc2l0aW9uLXByb3BlcnR5LCAkdHJhbnNpdGlvbi10aW1lLCAkbWV0aG9kKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XHJcbiAgLW1zLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uLXByb3BlcnR5ICR0cmFuc2l0aW9uLXRpbWUgJG1ldGhvZDtcclxuICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1wcm9wZXJ0eSAkdHJhbnNpdGlvbi10aW1lICRtZXRob2Q7XHJcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tcHJvcGVydHkgJHRyYW5zaXRpb24tdGltZSAkbWV0aG9kO1xyXG59XHJcblxyXG4vL1JvdGF0ZSBNaXhpbi8vXHJcblxyXG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcclxuICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XHJcbiAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xyXG59XHJcblxyXG4vL0JveC1zaGFkb3cgTWl4aW4vL1xyXG5AbWl4aW4gYm94LXNoYWRvdygkYXJncykge1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogJGFyZ3M7XHJcbiAgLW1vei1ib3gtc2hhZG93OiAkYXJncztcclxuICBib3gtc2hhZG93OiAkYXJncztcclxufVxyXG5cclxuLy9DYWxjIE1peGluLy9cclxuQG1peGluIGNhbGMoJHByb3BlcnR5LCAkZXhwcmVzc2lvbikge1xyXG4gICN7JHByb3BlcnR5fTogLW1vei1jYWxjKCN7JGV4cHJlc3Npb259KTtcclxuICAjeyRwcm9wZXJ0eX06IC13ZWJraXQtY2FsYygjeyRleHByZXNzaW9ufSk7XHJcbiAgI3skcHJvcGVydHl9OiAtbXMtY2FsYygjeyRleHByZXNzaW9ufSk7XHJcbiAgI3skcHJvcGVydHl9OiAtby1jYWxjKCN7JGV4cHJlc3Npb259KTtcclxuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skZXhwcmVzc2lvbn0pO1xyXG59XHJcblxyXG4vL2ZsZXgtZGlyZWN0aW9uIE1peGluLy9cclxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcclxuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG4gIC1tb3otZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XHJcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG59XHJcblxyXG4vL2ZsZXggb3JkZXIgTWl4aW4vL1xyXG5AbWl4aW4gb3JkZXIoJHZhbCkge1xyXG4gIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ICR2YWw7XHJcbiAgLW1vei1ib3gtb3JkaW5hbC1ncm91cDogJHZhbDtcclxuICAtbXMtZmxleC1vcmRlcjogJHZhbDtcclxuICAtd2Via2l0LW9yZGVyOiAkdmFsO1xyXG4gIG9yZGVyOiAkdmFsO1xyXG59XHJcblxyXG4vL0FuaW1hdGlvbiBNaXhpbi8vXHJcblxyXG5AbWl4aW4ga2V5ZnJhbWUoJGFuaW1hdGlvbi1uYW1lKSB7XHJcbiAgQC13ZWJraXQta2V5ZnJhbWVzICRhbmltYXRpb24tbmFtZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcblxyXG4gIEAtbW96LWtleWZyYW1lcyAkYW5pbWF0aW9uLW5hbWUge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICBALW8ta2V5ZnJhbWVzICRhbmltYXRpb24tbmFtZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcblxyXG4gIEBrZXlmcmFtZXMgJGFuaW1hdGlvbi1uYW1lIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbigkc3RyKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246ICN7JHN0cn07XHJcbiAgLW1vei1hbmltYXRpb246ICN7JHN0cn07XHJcbiAgLW8tYW5pbWF0aW9uOiAjeyRzdHJ9O1xyXG4gIGFuaW1hdGlvbjogI3skc3RyfTtcclxufVxyXG5cclxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xyXG5cclxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcclxuICB9XHJcbiAgYSN7JHBhcmVudH0sXHJcbiAgYnV0dG9uI3skcGFyZW50fSB7XHJcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcclxufVxyXG5cclxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XHJcbiAgI3skcGFyZW50fSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JcclxuICAgICAgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcclxuICB9XHJcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFxyXG4gICAgXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsXHJcbiAgICBcInY0LjUuMFwiLFxyXG4gICAgXCJ2NVwiLFxyXG4gICAgJGlnbm9yZS13YXJuaW5nXHJcbiAgKTtcclxufVxyXG5cclxuLy9SZXNwb25zaXZlIGJyZWFrcG9pbnRcclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgICAoJ2lwaG9uZScsIDQzMHB4KSxcclxuICAgICgnbW9iaWxlLXBvcnRyYWl0JywgNTIwcHgpLFxyXG4gICAgKCdtb2JpbGUtbGFuZHNjYXBlJywgNzM2cHgpLFxyXG4gICAgKCd0YWJsZXQnLCA4MzVweCksXHJcbiAgICAoJ2xhcHRvcC1saWtlLXJlYWwtc21hbGwnLCAxMDA1cHgpLFxyXG4gICAgKCdsYXB0b3Atc21hbGxlcicsIDEyMDBweCksXHJcbiAgICAoJ2xhcHRvcC1tZW51LWNvbGxpZGUtbGVmdCcsIDEzMzVweCksXHJcbiAgICAoJ2xhcHRvcC1zbGlkZXItYXJyb3dzJywgMTQxOHB4KSxcclxuICAgICgnbGFwdG9wLXNtYWxsJywgI3skY29udGFpbmVyLXdpZHRoICsgJGNvbnRhaW5lci1wYWRkaW5nICogMn0pXHJcbik7XHJcblxyXG4kYnJlYWtwb2ludHNIZWlnaHQ6IChcclxuICAgICgneHMnLCA0ODBweCksXHJcbiAgICAoJ3MnLCA2MjRweCksXHJcbiAgICAoJ3NtJywgNzY4cHgpLFxyXG4gICAgKCdtJywgOTAwcHgpLFxyXG4gICAgKCdtZCcsIDEwMjRweCksXHJcbiAgICAoJ2wnLCAxMTk1cHgpLFxyXG4gICAgKCdsZycsIDEzNjZweCksXHJcbik7XHJcblxyXG5cclxuJGJyZWFrcG9pbnRzTWl4OiAoXHJcbiAgJ3NtYWxsJyA6ICggbWF4LXdpZHRoOiAgMjBlbSApLFxyXG4gICdsYXB0b3BIZWlnaHRNZCcgOiBcIiggbWluLXdpZHRoOiA1NTBweCApIGFuZCAobWF4LWhlaWdodDogOTAwcHgpXCIsXHJcbiAgJ2hlaWdodCcgOiBcIiggbWluLXdpZHRoOiA3NWVtICkgYW5kIChtaW4taGVpZ2h0OiA2Mi41ZW0pXCIgIFxyXG4pO1xyXG5cclxuQG1peGluIG1lZGlhX21peCgkbmFtZSkge1xyXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHNNaXgsICRuYW1lKSB7XHJcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzTWl4LCAkbmFtZSk7XHJcbiAgICAkcXVlcnk6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcInN0cmluZ1wiLCAkdmFsdWUsIGluc3BlY3QoJHZhbHVlKSk7XHJcbiAgICBAbWVkaWFfbWl4ICN7JHF1ZXJ5fSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybiBcIlVuZm9ydHVuYXRlbHksIG5vIHZhbHVlIGNvdWxkIGJlIHJldHJpZXZlZCBmcm9tIGAjeyRicmVha3BvaW50fWAuIFwiXHJcbiAgICAgICAgKyBcIlBsZWFzZSBtYWtlIHN1cmUgaXQgaXMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYCBtYXAuXCI7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmVzcG9uZC1mcm9tKCRtZWRpYSkge1xyXG4gICAgIEBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XHJcbiAgICAgICAgICBAaWYgJG1lZGlhID09IG50aCgkYnJlYWtwb2ludCwgMSkge1xyXG4gICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3tudGgoJGJyZWFrcG9pbnQsIDIpfSkgIHsgQGNvbnRlbnQ7IH1cclxuICAgICAgICAgIH1cclxuICAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiByZXNwb25kLXRvKCRtZWRpYSkge1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgICAgJGJyZWFrcG9pbnQ6IG50aCgkYnJlYWtwb2ludHMsICRpKTtcclxuICAgICAgICAkbmFtZTogbnRoKCRicmVha3BvaW50LCAxKTtcclxuICAgICAgICAkdmFsdWU6IG50aCgkYnJlYWtwb2ludCwgMik7XHJcbiBcclxuICAgICAgICBAaWYgJG1lZGlhID09ICRuYW1lIHtcclxuICAgICAgICAgICAgQGlmICRpID09IDEge1xyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JHZhbHVlfSkgIHsgQGNvbnRlbnQ7IH1cclxuICAgICAgICAgICAgfSBAZWxzZSBpZiAkaSA9PSBsZW5ndGgoJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skdmFsdWV9KSAgeyBAY29udGVudDsgfVxyXG4gICAgICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRuZXh0X2JyZWFrcG9pbnQ6IG50aCgkYnJlYWtwb2ludHMsICRpICsgMSk7XHJcbiAgICAgICAgICAgICAgICAkbmV4dF9uYW1lOiBudGgoJG5leHRfYnJlYWtwb2ludCwgMSk7XHJcbiAgICAgICAgICAgICAgICAkbmV4dF92YWx1ZTogbnRoKCRuZXh0X2JyZWFrcG9pbnQsIDIpO1xyXG4gXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skdmFsdWV9KSBhbmQgKG1heC13aWR0aDogI3skbmV4dF92YWx1ZSAtIDFweH0pIHsgQGNvbnRlbnQ7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmVzcG9uZC11bnRpbCgkbWVkaWEpIHtcclxuICAgICBAZWFjaCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG4gICAgICAgICAgQGlmICRtZWRpYSA9PSBudGgoJGJyZWFrcG9pbnQsIDEpIHtcclxuICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7bnRoKCRicmVha3BvaW50LCAyKX0pICB7IEBjb250ZW50OyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmVzcG9uZC11bnRpbC1oZWlnaHQoJG1lZGlhKSB7XHJcbiAgICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzSGVpZ2h0IHtcclxuICAgICAgICAgIEBpZiAkbWVkaWEgPT0gbnRoKCRicmVha3BvaW50LCAxKSB7XHJcbiAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LWhlaWdodDogI3tudGgoJGJyZWFrcG9pbnQsIDIpfSkgIHsgQGNvbnRlbnQ7IH1cclxuICAgICAgICAgIH1cclxuICAgICB9XHJcbn1cclxuXHJcbi8qIFVzYWdlXHJcbi5teS1oZWFkZXIge1xyXG4gICAgLy8gd2lkdGhcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoc20pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHNtKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogb3JhbmdlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1mcm9tKG0pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBncmVlbjtcclxuICAgIH1cclxuXHJcbiAgICAvL2hlaWdodFxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbC1oZWlnaHQobSkge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBwaW5rO1xyXG4gICAgfVxyXG59XHJcbiovIiwiQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdSYXRpb25hbCBUZXh0JztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvcmF0aW9uYWx0ZXh0LUxpZ2h0LmVvdCcpO1xyXG4gIHNyYzogbG9jYWwoJ1JhdGlvbmFsIFRleHQnKSxcclxuICB1cmwoJy4uL2ZvbnRzL3JhdGlvbmFsdGV4dC1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICB1cmwoJy4uL2ZvbnRzL3JhdGlvbmFsdGV4dC1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgdXJsKCcuLi9mb250cy9yYXRpb25hbHRleHQtTGlnaHQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gIHVybCgnLi4vZm9udHMvcmF0aW9uYWx0ZXh0LUxpZ2h0LnN2ZycpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnUmF0aW9uYWwgVGV4dCc7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL3JhdGlvbmFsdGV4dC1TZW1pQm9sZC5lb3QnKTtcclxuICBzcmM6IGxvY2FsKCdSYXRpb25hbCBUZXh0JyksXHJcbiAgdXJsKCcuLi9mb250cy9yYXRpb25hbHRleHQtU2VtaUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgdXJsKCcuLi9mb250cy9yYXRpb25hbHRleHQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG4gIHVybCgnLi4vZm9udHMvcmF0aW9uYWx0ZXh0LVNlbWlCb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICB1cmwoJy4uL2ZvbnRzL3JhdGlvbmFsdGV4dC1TZW1pQm9sZC5zdmcnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG4iLCIuYnV0dG9uIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBjb2xvcjogI2ZmZjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgb3V0bGluZTogMDtcclxuICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBoZWlnaHQ6IDUycHg7XHJcbiAgbGluZS1oZWlnaHQ6IDUycHg7XHJcbiAgcGFkZGluZzogMCA2OHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRhbmltYXRpb24tZHVyYXRpb24gZWFzZSwgdHJhbnNmb3JtICRhbmltYXRpb24tZHVyYXRpb24gZWFzZTtcclxuICB3aWxsLWNoYW5nZTogYmFja2dyb3VuZC1jb2xvciwgdHJhbnNmb3JtO1xyXG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgLy90cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XHJcblxyXG4gICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDUlKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgfVxyXG4gICY6YWN0aXZlIHtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAvL3RyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgfVxyXG59XHJcblxyXG4uYnV0dG9uLXdyYXBwZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbi13cmFwIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYuYnV0dG9uLXJlc2VsbGVyIHtcclxuICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgJjpub3QoLmJ1dHRvbi1oZWFkZXIpIHtcclxuICAgICAgICAgIG1pbi13aWR0aDogMzMwcHg7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKG4rMSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmJ1dHRvbi1jbG9zZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICBoZWlnaHQ6IDMwcHg7XHJcbiAgd2lkdGg6IDMwcHg7XHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgfVxyXG4gICY6YWN0aXZlIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBzdmcge1xyXG4gICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcblxyXG4uYnV0dG9uIHtcclxuICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDEwJSk7XHJcbn1cclxuXHJcbi5idXR0b246OmJlZm9yZSxcclxuLmJ1dHRvbjo6YWZ0ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5idXR0b24taW52ZXJ0IHtcclxuICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDEwJSk7XHJcbiAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXByaW1hcnk7XHJcbiAgY29sb3I6ICRibGFjaztcclxuICAvL3BhZGRpbmc6IDAgNjhweDtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjRzLCBlYXNlLW91dCk7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWh5cGVyaW9uIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uYnV0dG9uLS1oeXBlcmlvbiBzcGFuIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5idXR0b24tLWh5cGVyaW9uID4gc3BhbiB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmJ1dHRvbi0taHlwZXJpb24gPiBzcGFuID4gc3BhbiB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAvL21peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlO1xyXG59XHJcblxyXG4uYnV0dG9uLS1oeXBlcmlvbjpob3ZlciA+IHNwYW4gPiBzcGFuIHtcclxuICAvL2FuaW1hdGlvbjogTW92ZVVwSW5pdGlhbCAwLjE1cyBmb3J3YXJkcywgTW92ZVVwRW5kIDAuMTVzIGZvcndhcmRzIDAuMTVzO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIE1vdmVVcEluaXRpYWwge1xyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtMTA1JSwwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgTW92ZVVwRW5kIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwxMDAlLDApO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICB9XHJcbn1cclxuXHJcbi5idXR0b24tLWh5cGVyaW9uOjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMiwgMSk7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XHJcbn1cclxuXHJcbi5idXR0b24tLWh5cGVyaW9uOmhvdmVyOjpiZWZvcmUge1xyXG4gIHRyYW5zZm9ybTogc2NhbGUzZCgwLDEsMSk7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xyXG59XHJcblxyXG5cclxuLmJ1dHRvbi0taHlwZXJpb24ge1xyXG4gICYuYnV0dG9uLWludmVydCB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIuaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2lkdGg6ICRpY29uLXNpemU7XHJcbiAgICBoZWlnaHQ6ICRpY29uLXNpemU7XHJcbiAgICBzdmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICBoZWlnaHQ6ICRpY29uLXNpemU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRpY29uLXNpemUgKyA0cHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaWNvbi15b3V0dWJlIHtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAkaWNvbi1zaXplICsgNHB4O1xyXG4gICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgaGVpZ2h0OiAkaWNvbi1zaXplICsgNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaWNvbi1zaXplICsgNHB4O1xyXG4gICAgICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmZsYWcge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAkZmxhZy13aWR0aDtcclxuICAgIGhlaWdodDogJGZsYWctaGVpZ2h0O1xyXG4gICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6ICRmbGFnLWhlaWdodCAtIDJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGZsYWctaGVpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmNsb3NlLXgge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAvL2xlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMjVweDtcclxuICAgIGhlaWdodDogMjVweDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMjVweDtcclxuICAgIH1cclxufVxyXG4uY2xvc2UteDpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cclxuICAgICY6YWZ0ZXIsXHJcbiAgICAmOmJlZm9yZVxyXG4gICAge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICB9XHJcbn1cclxuLmNsb3NlLXg6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsIDEpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcbi5jbG9zZS14OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsIDEpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1saWtlLXJlYWwtc21hbGwpIHtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgIH1cclxufSIsIkBpbmNsdWRlIGtleWZyYW1lKGdyb3dJbikge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5hbmltYXRlZC0tZ3Jvdy1pbiB7XG4gIEBpbmNsdWRlIGFuaW1hdGlvbihcbiAgICBcImdyb3dJbiAyMDBtcyB0cmFuc2Zvcm0gY3ViaWMtYmV6aWVyKC4xOCwxLjI1LC40LDEpLCBvcGFjaXR5IGN1YmljLWJlemllcigwLDEsLjQsMSlcIlxuICApO1xufVxuIiwiIiwiKiB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5odG1sIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMTAwJTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbmEge1xyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG5oMSB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgLy9mb250LXNpemU6IDQwcHg7XHJcbiAgZm9udC1zaXplOiA2MHB4O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuaDIge1xyXG4gIGZvbnQtc2l6ZTogNDJweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMCAwIDMwcHggMDtcclxufVxyXG5cclxuLy8uaG9tZXBhZ2UtdGl0bGUge1xyXG4vKlxyXG4udG9wLXNlY3Rpb24tdGl0bGUge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIC8vZm9udC1zaXplOiA0MHB4O1xyXG4gIGZvbnQtc2l6ZTogNjBweDtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgIHBhZGRpbmc6IDAgNTBweDtcclxuICB9XHJcbn1cclxuKi9cclxuXHJcbnAge1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBsaW5lLWhlaWdodDogMS4zO1xyXG5cclxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICB9XHJcbn1cclxuXHJcbmltZyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5ncmlkLWNvbCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxufVxyXG5cclxuLmdyaWQtY29sLTEge1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcclxufVxyXG5cclxuLmdyaWQtY29sLTIge1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xyXG59XHJcblxyXG4uZ3JpZC1jb2wtMyB7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcclxufVxyXG5cclxuLmdyaWQtY29sLTQge1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIGF1dG8gYXV0bztcclxufVxyXG5cclxuLmdyaWQtMS1jb2x1bW5zIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG87XHJcbn1cclxuLmdyaWQtMi1jb2x1bW5zIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcclxufVxyXG4uZ3JpZC0zLWNvbHVtbnMge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgLy9ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIGF1dG87XHJcbn1cclxuLmdyaWQtNC1jb2x1bW5zIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBhdXRvIGF1dG87XHJcbn1cclxuXHJcbi5ncmlkLW5vLWdhcCB7XHJcbiAgZ3JpZC1nYXA6IDA7XHJcbn1cclxuXHJcbi5ncmlkLWNvbC1zZWN0aW9uIHtcclxuXHJcbiAgcCB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgLmNvbnRhaW5lci1zbWFsbGVyIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuZ3JpZC1jb2wtMiB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSA1MCU7XHJcbiAgfVxyXG5cclxuICAuZ3JpZC1jb2wge1xyXG4gICAgLy9nYXA6IDBweCAxMzBweDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ncmlkLWNvbC1pdGVtIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50LXdyYXBwZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxufVxyXG5cclxuLnNjcm9sbC1jb250YWluZXJ7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uZmxleC1iYXNpcy1hdXRvIHtcclxuICAtd2Via2l0LWZsZXgtYmFzaXM6IGF1dG87XHJcbiAgLW1vei1mbGV4LWJhc2lzOiBhdXRvO1xyXG4gIC1tcy1mbGV4LWJhc2lzOiBhdXRvO1xyXG4gIGZsZXgtYmFzaXM6IGF1dG87XHJcbn1cclxuXHJcbi5oaWRlIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb250YWluZXIge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aCArICRjb250YWluZXItcGFkZGluZyAqIDI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXItcGFkZGluZztcclxufVxyXG4uY29udGFpbmVyLXNtYWxsIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6ICRjb250YWluZXItc21hbGwtd2lkdGggKyAkY29udGFpbmVyLXBhZGRpbmcgKiAyO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXItcGFkZGluZztcclxuICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmc7XHJcbn1cclxuLmNvbnRhaW5lci1zbWFsbGVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6ICRjb250YWluZXItc21hbGxlci13aWR0aCArICRjb250YWluZXItcGFkZGluZyAqIDI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXItcGFkZGluZztcclxufVxyXG5cclxuLmNsZWFyZml4OmFmdGVyIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4uZmxvYXQtbGVmdCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuLmZsb2F0LXJpZ2h0IHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbi50ZXh0LWxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuLnRleHQtcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbi50ZXh0LWNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucmVsYXRpdmUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4uaW5saW5lLWJsb2NrIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxufVxyXG5cclxuLnBhZGRpbmctdG9wIHtcclxuICBwYWRkaW5nLXRvcDogMTIwcHg7XHJcbn1cclxuLm5vLXBhZGRpbmctdG9wIHtcclxuICBwYWRkaW5nLXRvcDogMHB4O1xyXG59XHJcblxyXG4ucGFkZGluZy1ib3R0b20ge1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcclxufVxyXG4ubm8tcGFkZGluZy1ib3R0b20ge1xyXG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbn1cclxuXHJcbi5uby1wYWRkaW5nLXNpZGVzIHtcclxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uby1tYXJnaW4tYm90dG9tIHtcclxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6LW1vei1zZWxlY3Rpb24ge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQ6ICNmZjAwNDk7XHJcbn1cclxuOjpzZWxlY3Rpb24ge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQ6ICNmZjAwNDk7XHJcbn1cclxuXHJcbnNlY3Rpb24ge1xyXG4gICYubm8tcGFkZGluZy10b3Age1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgfVxyXG4gICYubm8tcGFkZGluZy10b3AtbW9iaWxlIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5uby1wYWRkaW5nLWJvdHRvbSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbiAgJi5uby1wYWRkaW5nLWJvdHRvbS1tb2JpbGUge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnRleHQtYm90dG9tIHtcclxuICAgIC5zZWN0aW9uLWJhY2tncm91bmQge1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDcwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLypcclxuLnNlY3Rpb24tdGl0bGUge1xyXG4gIGZvbnQtc2l6ZTogNDJweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMCAwIDMwcHggMDtcclxufVxyXG4qL1xyXG4uc2VjdGlvbi1iYWNrZ3JvdW5kIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHotaW5kZXg6IC0xO1xyXG4vKlxyXG4gICY6bm90KC5uby1vdmVybGF5KSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuNCk7XHJcbiAgICB9XHJcbiAgfVxyXG4qL1xyXG4gIGltZywgdmlkZW8ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgJi5vdmVybGF5LWRpbW1lciB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuNCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi1iYWNrZ3JvdW5kLXZpZGVvIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMHZ3O1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5tb2RhbHMge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiA5OTk1O1xyXG59XHJcbi5tb2RhbCB7XHJcblxyXG59XHJcblxyXG4ubGluayB7XHJcbiAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDUlKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG59XHJcbi8qXHJcbi5saXN0LXJlZ3VsYXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgZm9udC1zaXplOiAyMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgPiBsaSB7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDdweDtcclxuICAgICAgd2lkdGg6IDdweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiovXHJcbi50ZXh0LXNoYWRlIHtcclxuICB0ZXh0LXNoYWRvdzogMHB4IDJweCAxNXB4IHJnYmEoMCwwLDAsMC41KVxyXG59XHJcblxyXG4uZGltbWVyIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcclxuICB6LWluZGV4OiA5OTtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgb3BhY2l0eTogMDtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjJzLCBlYXNlLW91dCk7XHJcbn1cclxuXHJcbi50YWJsZXQtb25seSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5IHtcclxuICAmLm1vYmlsZS1tZW51LW9wZW5lZCB7XHJcblxyXG4gIH1cclxuICAmLnN0YXRlLW5vcm1hbCB7XHJcbiAgICAuaGVhZGVyLXN0aWNreSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc3RhdGUtc3RpY2t5IHtcclxuICAgIC5oZWFkZXIge1xyXG4gICAgICAmOm5vdCguaGVhZGVyLXN0aWNreSkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5waW5uZWQtY29udGVudCB7XHJcbiAgICAuaGVhZGVyLXN0aWNreSB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYubm8tb3ZlcmZsb3cge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uZmxpY2tpdHktdmlld3BvcnQge1xyXG4gIHRvdWNoLWFjdGlvbjogcGFuLXghIGltcG9ydGFudDtcclxufSIsIi5wcmVsb2FkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB6LWluZGV4OiA5MDtcclxufVxyXG5cclxuLypcclxuPGRpdiBjbGFzcz1cImxhLWJhbGwtZmFsbCBsYS0yeFwiPlxyXG4gICAgPGRpdj48L2Rpdj5cclxuICAgIDxkaXY+PC9kaXY+XHJcbiAgICA8ZGl2PjwvZGl2PlxyXG48L2Rpdj5cclxuKi9cclxuXHJcbi8qIVxyXG4gKiBMb2FkIEF3ZXNvbWUgdjEuMS4wIChodHRwOi8vZ2l0aHViLmRhbmllbGNhcmRvc28ubmV0L2xvYWQtYXdlc29tZS8pXHJcbiAqIENvcHlyaWdodCAyMDE1IERhbmllbCBDYXJkb3NvIDxARGFuaWVsQ2FyZG9zbz5cclxuICogTGljZW5zZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4ubGEtYmFsbC1mYWxsLFxyXG4ubGEtYmFsbC1mYWxsID4gZGl2IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG4ubGEtYmFsbC1mYWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuLmxhLWJhbGwtZmFsbC5sYS1kYXJrIHtcclxuICAgIGNvbG9yOiAjMzMzO1xyXG59XHJcbi5sYS1iYWxsLWZhbGwgPiBkaXYge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICBib3JkZXI6IDAgc29saWQgY3VycmVudENvbG9yO1xyXG59XHJcbi5sYS1iYWxsLWZhbGwge1xyXG4gICAgd2lkdGg6IDU0cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbn1cclxuLmxhLWJhbGwtZmFsbCA+IGRpdiB7XHJcbiAgICB3aWR0aDogMTBweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIG1hcmdpbjogNHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYmFsbC1mYWxsIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICAgICAtbW96LWFuaW1hdGlvbjogYmFsbC1mYWxsIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICAgICAgIC1vLWFuaW1hdGlvbjogYmFsbC1mYWxsIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogYmFsbC1mYWxsIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuLmxhLWJhbGwtZmFsbCA+IGRpdjpudGgtY2hpbGQoMSkge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0yMDBtcztcclxuICAgICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAtMjAwbXM7XHJcbiAgICAgICAgIC1vLWFuaW1hdGlvbi1kZWxheTogLTIwMG1zO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0yMDBtcztcclxufVxyXG4ubGEtYmFsbC1mYWxsID4gZGl2Om50aC1jaGlsZCgyKSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEwMG1zO1xyXG4gICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0xMDBtcztcclxuICAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMTAwbXM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEwMG1zO1xyXG59XHJcbi5sYS1iYWxsLWZhbGwgPiBkaXY6bnRoLWNoaWxkKDMpIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwbXM7XHJcbiAgICAgICAtbW96LWFuaW1hdGlvbi1kZWxheTogMG1zO1xyXG4gICAgICAgICAtby1hbmltYXRpb24tZGVsYXk6IDBtcztcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwbXM7XHJcbn1cclxuLmxhLWJhbGwtZmFsbC5sYS1zbSB7XHJcbiAgICB3aWR0aDogMjZweDtcclxuICAgIGhlaWdodDogOHB4O1xyXG59XHJcbi5sYS1iYWxsLWZhbGwubGEtc20gPiBkaXYge1xyXG4gICAgd2lkdGg6IDRweDtcclxuICAgIGhlaWdodDogNHB4O1xyXG4gICAgbWFyZ2luOiAycHg7XHJcbn1cclxuLmxhLWJhbGwtZmFsbC5sYS0yeCB7XHJcbiAgICB3aWR0aDogMTA4cHg7XHJcbiAgICBoZWlnaHQ6IDM2cHg7XHJcbn1cclxuLmxhLWJhbGwtZmFsbC5sYS0yeCA+IGRpdiB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG1hcmdpbjogOHB4O1xyXG59XHJcbi5sYS1iYWxsLWZhbGwubGEtM3gge1xyXG4gICAgd2lkdGg6IDE2MnB4O1xyXG4gICAgaGVpZ2h0OiA1NHB4O1xyXG59XHJcbi5sYS1iYWxsLWZhbGwubGEtM3ggPiBkaXYge1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBtYXJnaW46IDEycHg7XHJcbn1cclxuLypcclxuICogQW5pbWF0aW9uXHJcbiAqL1xyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFsbC1mYWxsIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDUlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ1JSk7XHJcbiAgICB9XHJcbiAgICAxMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGJhbGwtZmFsbCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ1JSk7XHJcbiAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NSUpO1xyXG4gICAgfVxyXG4gICAgMTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgIH1cclxuICAgIDIwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxuICAgIDkwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogLjU7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0NSUpO1xyXG4gICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0NSUpO1xyXG4gICAgfVxyXG59XHJcbkAtby1rZXlmcmFtZXMgYmFsbC1mYWxsIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ1JSk7XHJcbiAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDUlKTtcclxuICAgIH1cclxuICAgIDEwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogLjU7XHJcbiAgICB9XHJcbiAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0NSUpO1xyXG4gICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNDUlKTtcclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGJhbGwtZmFsbCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ1JSk7XHJcbiAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE0NSUpO1xyXG4gICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDUlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQ1JSk7XHJcbiAgICB9XHJcbiAgICAxMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IC41O1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQ1JSk7XHJcbiAgICB9XHJcbn0iLCIiLCJcclxuLy8gQW5ub3VuY2VtZW50IGJhclxyXG4uYW5ub3VuY2VtZW50LWJhciB7XHJcbiAgaGVpZ2h0OiAkYW5ub3VuY2VtZW50LWJhci1oZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6ICRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodDtcclxuICB3aWR0aDogMTAwJTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxMjI4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG4gIHAge1xyXG4gICAgbGluZS1oZWlnaHQ6ICRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1saWtlLXJlYWwtc21hbGwpIHtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodC1tb2JpbGU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYW5ub3VuY2VtZW50LWJhci1pdGVtIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLy8gQW5ub3VuY2VtZW50IGJhciBFTkRcclxuXHJcbi8vIEhlYWRlclxyXG4uaGVhZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgcGFkZGluZy10b3A6ICRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAzO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGFuaW1hdGlvbi1kdXJhdGlvbiBlYXNlLCB0cmFuc2Zvcm0gJGFuaW1hdGlvbi1kdXJhdGlvbiBlYXNlO1xyXG4gIHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc2Zvcm07XHJcbiAgei1pbmRleDogOTk5O1xyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyLXNlYXJjaCB7XHJcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XHJcbiAgbWFyZ2luLXRvcDogMnB4O1xyXG59XHJcbi5oZWFkZXItc2VhcmNoLXRvZ2dsZSB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgbWFyZ2luOiAwIDAgMCAyNXB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICB9XHJcbiAgJjphY3RpdmUge1xyXG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi5oZWFkZXItbG9nbyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgLy9tYXJnaW4tbGVmdDogODBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01cHgpO1xyXG4gIC8vbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgLy96LWluZGV4OiAtMTtcclxuICB6LWluZGV4OiAxO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuM3MsIGVhc2Utb3V0KTtcclxuXHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgYSB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGlzdC1pY29uLWxpbmtzIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuM3MsIGVhc2Utb3V0KTtcclxuXHJcbiAgbGkge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgIH1cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmhlYWRlci1nbG9iZSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmhlYWRlci1zaG9wLWJ0biB7XHJcbiAgICAgIC5idXR0b24td3JhcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgYSB7XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcclxuICAgICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYudGFibGV0LW9ubHkge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAxMDBweDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5oZWFkZXItc29jaWFsLWxpbmtzIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHJpZ2h0OiAyMTVweDtcclxufVxyXG4uaGVhZGVyLWNhcnQtbGlua3Mge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgcmlnaHQ6ICRjb250YWluZXItcGFkZGluZztcclxuXHJcbiAgLmhlYWRlci1zaG9wLWJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XHJcblxyXG4gICAgICAmLmJ1dHRvbi0taHlwZXJpb24ge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4ubmF2LW1haW4tc3VibGF5ZXItMiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgbGVmdDogY2FsYyg1MHZ3IC0gNzBweCk7XHJcbiAgdG9wOiAwO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgd2lkdGg6IDM2dnc7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgLy9tYXJnaW46IDMwcHggMCAyMHB4IDA7XHJcbiAgICBtYXJnaW46IDMwcHggMCAwIDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5pbWFnZS13cmFwIHtcclxuICAgIG1heC13aWR0aDogODYlO1xyXG4gICAgLy9tYXgtaGVpZ2h0OiA3MHZoO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBpbWcge1xyXG4gICAgICBtYXgtaGVpZ2h0OiA3MHZoO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2LW1haW4tc3VibGF5ZXItMi1pbm5lciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG5cclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjRzLCBlYXNlLWluLW91dCk7XHJcbn1cclxuXHJcbi5uYXYtbWFpbi1zdWJsYXllci0yLFxyXG4ubmF2LW1haW4tc3VibGF5ZXItMi1pbm5lclxyXG57XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIC8vd2lkdGg6IDEwMHZ3O1xyXG4gIHdpZHRoOiBjYWxjKDUwdncgLSA3MHB4KTtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IDIwcHggcmdiYSgjMDAwLCAuMSk7XHJcbn1cclxuXHJcbi5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogMTtcclxuICBsZWZ0OiAwcHg7XHJcbiAgdG9wOiAwO1xyXG4gIC8vaGVpZ2h0OiAxMDAlO1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgLy93aWR0aDogMTAwJTtcclxuICB3aWR0aDogY2FsYyg1MHZ3IC0gNzBweCk7XHJcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCgxMDB2dyAtIDEyOTBweCkgLyAyIC0gMnB4KTtcclxuICAvL3BhZGRpbmc6IDIwMHB4IDEwMHB4IDUwcHggNTBweDtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChsYXB0b3AtbWVudS1jb2xsaWRlLWxlZnQpIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTNweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgfVxyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogNTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IC0yMDBweDtcclxuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDYwMHB4KTtcclxuICAgIHdpZHRoOiBjYWxjKDUwdncgLSA3MHB4KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLWRhcms7XHJcbiAgfVxyXG5cclxuICA+IHVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICAvL21hcmdpbjogMjAwcHggYXV0byAwIGF1dG87XHJcbiAgICAvL3dpZHRoOiAkY29udGFpbmVyLXdpZHRoO1xyXG4gICAgbWFyZ2luOiAyMDBweCAwIDAgMDtcclxuICAgIHdpZHRoOiBjYWxjKCg1MHZ3IC0gNzBweCkgLSAoKDEwMHZ3IC0gI3skY29udGFpbmVyLXdpZHRofSkgLyAyKSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1tZW51LWNvbGxpZGUtbGVmdCkge1xyXG4gICAgICBtYXJnaW46IDIwMHB4IDAgMCAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAvL3dpZHRoOiBjYWxjKCg1MHZ3IC0gNzBweCkgLSAoKDEwMHZ3IC0gI3skY29udGFpbmVyLXdpZHRofSkgLyAyKSk7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjEpO1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtbWFpbi1zdWJsYXllci0yIHtcclxuICAgICAgICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5hY3RpdmUgeyBcclxuICAgICAgICAubmF2LW1haW4tc3VibGF5ZXItMi1pbm5lciB7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAvL21hcmdpbi1ib3R0b206IDU1cHg7XHJcbiAgICAgIH1cclxuICAgICAgPiBhIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiA0M3B4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyN3B4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyN3B4O1xyXG4gICAgICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICYgKyAubmF2LW1haW4tc3VibGF5ZXItMiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2LW1haW4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogI2ZmZjtcclxuICB6LWluZGV4OiA5NTtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICAmIH4gLmhlYWRlci1sb2dvIHtcclxuICAgICAgLy96LWluZGV4OiAtMTtcclxuICAgICAgei1pbmRleDogOTk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2xvc2UteCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICAvL2xlZnQ6IGNhbGMoKDEwMHZ3IC0gMTI5MHB4KSAvIDIgLSAycHgpO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDk5OTk5O1xyXG4gICAgbWFyZ2luOiAyNXB4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChsYXB0b3AtbWVudS1jb2xsaWRlLWxlZnQpIHtcclxuICAgICAgbGVmdDogMTJweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gID4gdWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgID4gbGkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAubmF2LW1haW4tc3VibGF5ZXItMSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICAgIH1cclxuICAgICAgPiBhIHtcclxuICAgICAgICBjb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IDE5cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgPiBzdmcge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICAmICsgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgKi9cclxuXHJcbi8qIGNhdXNlcyBpc3N1ZXMgb24gbW9iaWxlXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAmICsgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiovXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc3ViLWNsb3NlIHtcclxuICAgIHVsIHtcclxuICAgICAgPiBsaSB7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTFcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2LW1haW4tdG9nZ2xlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIC8vY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcblxyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgJi5oaWRlLW1vYmlsZS1uYXZpZ2F0aW9uIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDk5OTU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAtOHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmRlc2t0b3AtbWVudS1vcGVuZWQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4vKlxyXG4gIC5uYXYtbWFpbiB7XHJcbiAgICB1bCB7XHJcbiAgICAgID4gbGkge1xyXG4gICAgICAgIC5uYXYtbWFpbi1zdWJsYXllci0xIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuKi9cclxuICAubmF2LW1haW4tc3VibGF5ZXItMSB7XHJcblxyXG4gIH1cclxuXHJcbiAgLmhlYWRlci1sb2dvIHtcclxuICAgIG9wYWNpdHk6IDAuMTtcclxuICB9XHJcblxyXG4gIC5oZWFkZXIge1xyXG4gICAgLmxpc3QtaWNvbi1saW5rcyB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kaW1tZXIge1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBTdGlja3kgaGVhZGVyXHJcbi5oZWFkZXItc3RpY2t5IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHBhZGRpbmctdG9wOiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLWRhcms7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDUlKTtcclxuICB6LWluZGV4OiA5OTkwO1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChsYXB0b3AtbGlrZS1yZWFsLXNtYWxsKSB7XHJcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLFxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyLFxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyOmJlZm9yZSxcclxuICAubmF2LW1haW4tc3VibGF5ZXItMiB7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gIH1cclxuXHJcbiAgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgdG9wOiAtNjBweDtcclxuICB9XHJcblxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBoZWlnaHQ6IDIwMHZoO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zbGlkZURvd24ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICB9XHJcbn1cclxuLy8gU3RpY2t5IGhlYWRlciBFTkRcclxuXHJcbmJvZHkge1xyXG4gICYubW9iaWxlLW1lbnUtb3BlbmVkIHtcclxuICAgIC5saXN0LWljb24tbGlua3Mge1xyXG4gICAgICAmLnRhYmxldC1vbmx5IHtcclxuICAgICAgICAuaGVhZGVyLWdsb2JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFRPRE86IFJFTU9WRSBUSElTIChGT1IgREVCVUcpXHJcbi5uYXYtbWFpbiB7XHJcbiAgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgLy9kaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgLm5hdi1tYWluLXN1YmxheWVyLTEtaW5uZXIge1xyXG4gICAgPiB1bCB7XHJcbiAgICAgID4gbGkge1xyXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgIC5uYXYtbWFpbi1zdWJsYXllci0yIHtcclxuICAgICAgICAgICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBUT0RPOiBSRU1PVkUgVEhJUyAoRk9SIERFQlVHKVxyXG5cclxuLy8gSGVhZGVyIEVORFxyXG4vKlxyXG5ib2R5IHtcclxuICAmLnRlc3Qge1xyXG4gICAgLmhlYWRlciB7XHJcbiAgICAgICY6bm90KC5oZWFkZXItc3RpY2t5KSB7XHJcbiAgICAgICAgLm5hdi1tYWluIHtcclxuXHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIC5uYXYtbWFpbi1zdWJsYXllci0xIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTEtaW5uZXIge1xyXG5cclxuICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiovXHJcbi8qXHJcblxyXG5ib2R5IHtcclxuICAmLnRlc3Qge1xyXG4gICAgLmhlYWRlciB7XHJcbiAgICAgICY6bm90KC5oZWFkZXItc3RpY2t5KSB7XHJcbiAgICAgICAgLm5hdi1tYWluIHtcclxuXHJcbiAgICAgICAgICAuY2xvc2UteCB7XHJcbiAgICAgICAgICAgIC8vbGVmdDogY2FsYygoMTAwdncgLSAxMjkwcHgpIC8gMik7XHJcbiAgICAgICAgICAgIC8vbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLW1lbnUtY29sbGlkZS1sZWZ0KSB7XHJcbiAgICAgICAgICAgICAgICAvL2xlZnQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJlZCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTEtaW5uZXIge1xyXG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vZm9yIGVhc2llciBkZWJ1Z1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubmF2LW1haW4tc3VibGF5ZXItMi1pbm5lciB7XHJcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4qLyIsIi5tb2RhbHMge1xyXG4gIC5jbG9zZS14IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAyNXB4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1saWtlLXJlYWwtc21hbGwpIHtcclxuICAgICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTG9jYXRpb25zXHJcbi5sb2NhdGlvbi1tb2RhbCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBjb2xvcjogI2ZmZjtcclxuLypcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDQzcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gIH1cclxuKi9cclxuICBoMiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDQzcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7ICBcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgLmJ1dHRvbi1jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHRvcDogMjBweDtcclxuICB9XHJcbiAgKi9cclxufVxyXG4vLy5sb2NhdGlvbi1tb2RhbC1jbG9zZS1sYXllciB7XHJcbi5tb2RhbC1jbG9zZS1sYXllciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIDAuNCk7XHJcbn1cclxuLmxvY2F0aW9uLW1vZGFsLWNvbnRhaW5lciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWUtZGFyaztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXNtYWxsLXdpZHRoO1xyXG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiA3MHB4IDEwMHB4O1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxufVxyXG4ubG9jYXRpb25zLXdyYXAge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgbWFyZ2luLXRvcDogNjBweDtcclxufVxyXG4ubG9jYXRpb25zLW5hdmlnYXRpb24ge1xyXG4gIGgzIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcclxuICAgIGZvbnQtc2l6ZTogMjlweDtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjJzLCBlYXNlLW91dCk7XHJcblxyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIxcHg7XHJcbiAgICAgIH1cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZsYWcge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgfVxyXG59XHJcbi5sb2NhdGlvbi1tb2RhbC1mb290ZXIge1xyXG4gIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHAge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gTG9jYXRpb25zIEVORFxyXG5cclxuLy8gU2hvcHMgTGlzdFxyXG4ubGlzdC1zaG9wcyB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgLy9wYWRkaW5nOiAwIDIwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDBweDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgMC4xKTtcclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDI3MHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbk11bHRpKGFsbCwgMC4zcywgZWFzZS1pbi1vdXQpO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvci1wcmltYXJ5LCA1JSk7XHJcbiAgICAgIC8vcGFkZGluZzogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLnNob3AtbW9kYWwge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgY29sb3I6ICNmZmY7XHJcblxyXG4gIC5jbG9zZS14IHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAmOmFmdGVyLFxyXG4gICAgICAmOmJlZm9yZVxyXG4gICAgICB7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbi8qXHJcbiAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiA0M3B4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgfVxyXG4qL1xyXG4gIGgyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogNDNweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAubGlzdC1zaG9wcyB7XHJcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbi1jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHRvcDogMjBweDtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmFjdGl2ZSB7XHJcbiAgICAubGlzdC1zaG9wcyB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zaG9wLW1vZGFsLWNvbnRhaW5lciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogJGNvbnRhaW5lci1zbWFsbC13aWR0aDtcclxuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgb3ZlcmZsb3cteTogYXV0bztcclxuICBtYXJnaW46IGF1dG87XHJcbiAgcGFkZGluZzogNDBweDtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcbn1cclxuLy8gU2hvcHMgTGlzdCBFTkRcclxuXHJcbi8vIFZpZGVvXHJcbi52aWRlby1tb2RhbCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBtYXJnaW46IGF1dG87XHJcblxyXG4gICYuYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG4udmlkZW8tbW9kYWwtY29udGFpbmVyIHtcclxuICAvL2JhY2tncm91bmQ6IHJnYmEoMCw3LDE1LDAuMik7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogJGNvbnRhaW5lci1zbWFsbC13aWR0aDtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICBtYXJnaW46IDA7XHJcbiAgLy9wYWRkaW5nOiA3MHB4IDEwMHB4O1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBvdmVyZmxvdzogYXV0bztcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4udmlkZW8tZnJhbWUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHotaW5kZXg6IDk1O1xyXG59XHJcblxyXG4udmlkZW8td3JhcHBlcjE2OSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIHotaW5kZXg6IDQ7XHJcbn1cclxuXHJcbi52aWRlby1tb2RhbC13cmFwcGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgIGhlaWdodDogMTgwcHg7XHJcbiAgfVxyXG59XHJcbi8vIFZpZGVvIEVORFxyXG5cclxuLm1vZGFsLWl0ZW0ge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHotaW5kZXg6IDQ7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbk11bHRpKGFsbCwgMC4ycywgZWFzZS1vdXQpO1xyXG5cclxuICAmLmFjdGl2ZSB7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn0iLCIvLyBGb290ZXJcclxuLmZvb3RlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RiZTJlOTtcclxuICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgcGFkZGluZy10b3A6IDg1cHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbn1cclxuLmZvb3Rlci10b3Age1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgLy9ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI1JSAxNyUgMTclIDE3JSAyNCU7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNSUgNTElIDI0JTtcclxufVxyXG4uZm9vdGVyLWxvZ28ge1xyXG4gIGNvbG9yOiAjMTExMzFmO1xyXG4gIHdpZHRoOiAxMDBweDtcclxuICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICBzdmcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvL3dpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gIH1cclxufVxyXG4uZm9vdGVyLW5hdmlnYXRpb24ge1xyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xyXG4gIH1cclxuICBoMyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICBzdmcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdWwge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzMuMzMzMzMlIDMzLjMzMzMzJSAzMy4zMzMzMyU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgICAgLy9wYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmFjdGl2ZSB7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgYSB7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4vKlxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4qL1xyXG4gIGEge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBjb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICYuZm9vdGVyLW1haW4ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBmaWxsOiAjMzMzO1xyXG4gICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuaGFzLWxpbmsge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICBzdmcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItdG9wLFxyXG4uZm9vdGVyLW5hdmlnYXRpb24gPiB1bCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XHJcbiAgICBncmlkLWdhcDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItc29jaWFsLWxpbmtzIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIGxpIHtcclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgIH1cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmZvb3Rlci1ib3R0b20ge1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBtYXJnaW4tdG9wOiA2NXB4O1xyXG4gIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbn1cclxuLy8gRm9vdGVyIEVORFxyXG5cclxuLy8gSG9tZXBhZ2UgdG9wIHNlY3Rpb25cclxuLmhvbWVwYWdlLXRvcC1zZWN0aW9uIHtcclxuICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9hc3NldHMvaW1nL21pbG8taG9tYWdlcGFnZS1zZWN0aW9uLXRvcC0tYmFja2dyb3VuZC5qcGcpO1xyXG59XHJcbi50b3Atc2VjdGlvbiB7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICAvL2hlaWdodDogODEwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAzOHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4vLy5ob21lcGFnZS10b3Atc2VjdGlvbi1jb250ZW50IHtcclxuLnRvcC1zZWN0aW9uLWNvbnRlbnQge1xyXG4gIG1heC13aWR0aDogNTUwcHg7XHJcbiAgLy9tYXJnaW4tbGVmdDogNzBweDtcclxuICBtYXJnaW4tdG9wOiAtMTM1cHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAvL3dpZHRoOiA4NSU7XHJcbiAgfVxyXG4gIC5idXR0b24td3JhcHBlciB7XHJcbiAgICAuYnV0dG9uLXdyYXAge1xyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4vLyBIb21lcGFnZSB0b3Agc2VjdGlvbiBFTkRcclxuXHJcbi8vIFNlY3Rpb24gMyBjb2xvcnNcclxuLnNlY3Rpb24tMy1jb2xvcnMge1xyXG4gIHBhZGRpbmctdG9wOiA5MHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgLmltYWdlLXdyYXAge1xyXG4gICAgaGVpZ2h0OiA0NDBweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjZweDtcclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoMyB7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIHdpZHRoOiA1NTBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLXdyYXAge1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuICB9XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICAvL21hcmdpbi10b3A6IDQwcHg7XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gMyBjb2xvcnMgRU5EXHJcblxyXG4vLyBTZWN0aW9uIENhdGVnb3JpZXNcclxuLnNlY3Rpb24tY2F0ZWdvcmllcyB7XHJcbiAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi5saXN0LWNhdGVnb3JpZXMge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgPiBhIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC41KTtcclxuICAgICAgICB6LWluZGV4OiA5NTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtY2F0ZWdvcmllcy10aXRsZSB7XHJcbiAgICAgICAgICAvL2NvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpc3QtY2F0ZWdvcmllcy1pbWFnZSB7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5saXN0LWNhdGVnb3JpZXMtaW1hZ2Uge1xyXG4gIGltZyB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYW5pbWF0aW9uLWR1cmF0aW9uIGVhc2U7XHJcbiAgfVxyXG59XHJcbi5saXN0LWNhdGVnb3JpZXMtdGl0bGUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDI4cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIHotaW5kZXg6IDk4O1xyXG59XHJcbi8vIFNlY3Rpb24gQ2F0ZWdvcmllcyBFTkRcclxuXHJcbi8vIFNlY3Rpb24gU2luZ2xlIFByb2R1Y3RcclxuLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3Qge1xyXG4gIHBhZGRpbmctdG9wOiAxMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTI3cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICBtYXJnaW46IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XHJcbiAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4gICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuXHJcbiAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvKlxyXG4gICAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgICB3aWR0aDogNzIwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0MHB4O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWFfbWl4KGxhcHRvcEhlaWdodE1kKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICovXHJcbiAgaDIge1xyXG4gICAgd2lkdGg6IDcyMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAvL21hcmdpbi1ib3R0b206IDE0MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhX21peChsYXB0b3BIZWlnaHRNZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pbWFnZS13cmFwIHtcclxuICAgIGhlaWdodDogNDY1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA4NXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuY2FudmFzLXdyYXBwZXIge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMTBweDtcclxuLypcclxuICAgICAgQGluY2x1ZGUgbWVkaWFfbWl4KGxhcHRvcEhlaWdodE1kKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xyXG4gICAgICAgIHRvcDogNDBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XHJcbiAgICAgIH1cclxuKi9cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNhbnZhcy1pbm5lciB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcbiAgLmJ1dHRvbi13cmFwIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICAvL21hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAvL3Zpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC8vb3BhY2l0eTogMDtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDFzLCBlYXNlLW91dCk7XHJcbiAgfVxyXG5cclxuICAmLjNkcm90YXRpb24ge1xyXG4gICAgLypcclxuICAgIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgIH1cclxuICAgICovXHJcbiAgICBoMiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICB9XHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNjcm9sbC1kb25lIHtcclxuICAgIC5yb3RhdGlvbi1zdmdzLWlubmVyIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIC8qXHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgKi9cclxuICAgIFxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhICggbWluLXdpZHRoOiA1NTBweCApIGFuZCAobWF4LWhlaWdodDogOTAwcHgpIHtcclxuICAuc2VjdGlvbi1zaW5nbGUtcHJvZHVjdCAuaW1hZ2Utd3JhcC5jYW52YXMtd3JhcHBlciB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIG1hcmdpbi10b3A6IDBweDtcclxuICB9XHJcbn1cclxuLy8gU2VjdGlvbiBTaW5nbGUgUHJvZHVjdCBFTkRcclxuXHJcbi8vIFNlY3Rpb24gQXBwXHJcbi5zZWN0aW9uLWFwcCB7XHJcbiAgLy9UT0RPOiBzd2l0Y2ggYmFjayB0byB2aCB3aGVuIHBhZ2UgaXMgZG9uZVxyXG4gIGhlaWdodDogMTAyNXB4O1xyXG4gIC8vaGVpZ2h0OiAxMDB2aDtcclxuICBwYWRkaW5nLXRvcDogMDtcclxuICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9hc3NldHMvaW1nL21pbG8tYXBwLWJhY2tncm91bmQuanBnKTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAuY29udGFpbmVyLXNtYWxsIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQwJSAzOCU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLXdyYXAge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB9XHJcbn1cclxuLnNlY3Rpb24tYXBwLWluZm8ge1xyXG4gIG1hcmdpbi10b3A6IDcwcHg7XHJcbn1cclxuLnNlY3Rpb24tYXBwLWltYWdlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBpbWcge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gQXBwIEVORFxyXG5cclxuLy8gU2VjdGlvbiBBcnRpY2xlc1xyXG4uc2VjdGlvbi1hcnRpY2xlcyB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmctdG9wOiAxMjVweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XHJcbn1cclxuLmxpc3QtYXJ0aWNsZXMge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgLy9ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xyXG4gIC8vZ3JpZC1nYXA6IDIwcHg7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG4ubGlzdC1hcnRpY2xlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiA0MTZweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC41KTtcclxuICAgIHotaW5kZXg6IDk1O1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgdHJhbnNmb3JtOiAgc2NhbGUoMS4xKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDU1cHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB6LWluZGV4OiA5ODtcclxuICB9XHJcbn1cclxuLmxpc3QtYXJ0aWNsZS1pbWFnZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB6LWluZGV4OiA5MDtcclxuXHJcbiAgaW1nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRyYW5zZm9ybTogIHNjYWxlKDEpO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRhbmltYXRpb24tZHVyYXRpb24gZWFzZTtcclxuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcbiAgfVxyXG59XHJcbi5saXN0LWFydGljbGUtdGl0bGUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC8vYm90dG9tOiAxNzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAzMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gIHotaW5kZXg6IDk2O1xyXG4gIGEge1xyXG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5saXN0LWFydGljbGVzIHtcclxuICAmLmZsaWNraXR5LWVuYWJsZWQge1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1mcm9tKHRhYmxldCkge1xyXG4gICAgICAubGlzdC1hcnRpY2xlIHtcclxuICAgICAgICAvL2hlaWdodDogMzI1cHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAxNXB4KTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5mbGlja2l0eS12aWV3cG9ydCB7XHJcbiAgICAgICAgLy9sZWZ0OiAtMTVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5wcmV2aW91cyxcclxuICAgICAgICAmLm5leHRcclxuICAgICAgICB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjUpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjJzLCBlYXNlLW91dCk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1zbGlkZXItYXJyb3dzKSB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbk11bHRpKGFsbCwgMC4ycywgZWFzZS1vdXQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5wcmV2aW91cyB7XHJcbiAgICAgICAgICBsZWZ0OiAtNzBweDtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1zbGlkZXItYXJyb3dzKSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm5leHQge1xyXG4gICAgICAgICAgcmlnaHQ6IC03MHB4O1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLXNsaWRlci1hcnJvd3MpIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLnNsaWRlLWJ1dHRvbnMtc2hvdyB7XHJcbiAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gQXJ0aWNsZXMgRU5EXHJcblxyXG4vLyBTZWN0aW9uIFByb2R1Y3RzIE9wdGlvbnNcclxuLnNlY3Rpb24tcHJvZHVjdC1vcHRpb25zIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcclxuICBoMyB7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRvcDogMjBweDtcclxuICAgICAgLy9sZWZ0OiAtMTlweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmJ1dHRvbi13cmFwIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcbi5saXN0LXByb2R1Y3Qtb3B0aW9ucyB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtYXJnaW46IDQ1cHggMCA1MHB4IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XHJcbiAgPiBsaSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjJzLCBlYXNlLW91dCk7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICB3aWR0aDogNjAlO1xyXG4gICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCUgNTAlO1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggNTBweCAzMHB4IHJnYmEoMCwwLDAsMC41KTsgXHJcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNTBweCAzMHB4IHJnYmEoMCwwLDAsMC41KTsgXHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuNHMsIGVhc2Utb3V0KTtcclxuICAgICAgLy96LWluZGV4OiA5OTk5OTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogMzU1cHg7XHJcbiAgICAgIHotaW5kZXg6IDk7XHJcbiAgICAgIGltZyB7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggNTBweCA0MHB4IHJnYmEoMCwwLDAsMC43KTsgXHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA1MHB4IDQwcHggcmdiYSgwLDAsMCwwLjcpOyBcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICYuZmxpY2tpdHktZW5hYmxlZCB7XHJcbiAgICAgIC5mbGlja2l0eS12aWV3cG9ydCB7XHJcbiAgICAgICAgLy9vdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmxpbmUtcmV2ZWFsLWNvbnRhaW5lciB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLmxpbmUtY29udGFpbmVyLXJldmVhbC1pbm5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGV4dC1yZXZlYWwge1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdG9wOiAxMDBweDtcclxuICAgICAgICBsZWZ0OiAtNHB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuNHMsIGVhc2Utb3V0KTtcclxuXHJcbiAgICAgICAgLnRleHQtcmV2ZWFsLWl0ZW0ge1xyXG4gICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgdG9wOiAwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjgpO1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmxpbmUtcmV2ZWFsLXdyYXAge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjRzLCBlYXNlLW91dCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLXNlbGVjdGVkIHtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC50ZXh0LXJldmVhbCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4vLyBTZWN0aW9uIFByb2R1Y3RzIE9wdGlvbnMgRU5EXHJcblxyXG4vLyBTZWN0aW9uIFJldmlld3NcclxuLnNlY3Rpb24tcmV2aWV3cyB7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICAvL2hlaWdodDogYXV0bztcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy9wYWRkaW5nLXRvcDogMjEwcHg7XHJcbiAgLy9wYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAvL3BhZGRpbmctdG9wOiAyNzBweDtcclxuICAvL3BhZGRpbmctYm90dG9tOiAyNzBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgLypcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gICovXHJcbiAgaDIge1xyXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG4uc2VjdGlvbi1yZXZpZXdzLWJhY2tncm91bmQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogLTE7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuNCk7XHJcbiAgfVxyXG4gIGltZywgdmlkZW8ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24tcmV2aWV3LXdyYXAge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLXJldmlld3Mtc2xpZGVyIHtcclxuICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcclxuICAgIHRvcDogNTJweDtcclxuICB9XHJcbn1cclxuLnNlY3Rpb24tcmV2aWV3IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgcCB7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIG1heC13aWR0aDogNzMwcHg7XHJcbiAgfVxyXG59XHJcbi8qXHJcbi5zZWN0aW9uLXJldmlldy10ZXh0IHtcclxuICBmb250LXNpemU6IDI4cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgd2lkdGg6IDczMHB4O1xyXG59XHJcbiovXHJcbi5zZWN0aW9uLXJldmlldy1hdXRob3Ige1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAvL21hcmdpbi10b3A6IDg1cHg7XHJcbiAgLy9tYXJnaW4tdG9wOiA3MHB4O1xyXG4gIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgaW1nIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDBweDtcclxuICAgIG1heC13aWR0aDogMjIwcHg7XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAwIDVweCAwO1xyXG4gIH1cclxuICBoNCB7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuLy8gU2VjdGlvbiBSZXZpZXdzIEVORFxyXG5cclxuLy8gU2VjdGlvbiBWaWRlb1xyXG4uc2VjdGlvbi12aWRlbyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC8vaGVpZ2h0OiA4MDlweDtcclxuXHJcbiAgJi52aWRlby1pbmxpbmUge1xyXG4gICAgLy9oZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gICAgLnZpZGVvLXRhcmdldC1jb250YWluZXIge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnZpZGVvLWZ1bGwge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcclxuICB9XHJcblxyXG4gIC5jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG4vLy5zZWN0aW9uLXZpZGVvLXBsYWNlaG9sZGVyIHtcclxuLnZpZGVvLXBsYWNlaG9sZGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGltZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbi52aWRlby1wbGF5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRhbmltYXRpb24tZHVyYXRpb24gZWFzZTtcclxuICB3aWxsLWNoYW5nZTogYmFja2dyb3VuZC1jb2xvcjtcclxuICB6LWluZGV4OiA5NjtcclxuICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLCAuMSk7XHJcbiAgfVxyXG4gIHN2ZyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgLy9sZWZ0OiA1MCU7XHJcbiAgICAvL3RvcDogNTAlO1xyXG4gICAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcclxuICAgIHRyYW5zZm9ybTogIHNjYWxlKDEpO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRhbmltYXRpb24tZHVyYXRpb24gZWFzZTtcclxuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcbiAgICB3aWR0aDogOTBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICB3aWR0aDogNjBweDtcclxuICAgIH1cclxuICB9XHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICBzdmcge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6YWN0aXZlIHtcclxuICAgIHN2ZyB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi52aWRlby10YXJnZXQtY29udGFpbmVyIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC8vcGFkZGluZy1ib3R0b206IDU2LjI1JTtcclxuXHJcbiAgaW1nIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDk1O1xyXG4gIH1cclxuXHJcbiAgLnZpZGVvLXdyYXBwZXIxNjkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogOTg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi12aWRlbyB7XHJcbi8qXHJcbiAgJi52aWRlby1pbmxpbmUge1xyXG4gICAgLnZpZGVvLXRhcmdldC1jb250YWluZXIge1xyXG4gICAgICAudmlkZW8td3JhcHBlcjE2OSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4qL1xyXG4gICYudmlkZW8tYXV0byB7XHJcbiAgICAudmlkZW8tdGFyZ2V0LWNvbnRhaW5lciB7XHJcbiAgICAgIC52aWRlby13cmFwcGVyMTY5IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFNlY3Rpb24gVmlkZW8gRU5EXHJcblxyXG4vLyBTZWN0aW9uIFNoYXJlXHJcbi5zZWN0aW9uLXNoYXJlIHtcclxuICBwYWRkaW5nLXRvcDogMTcwcHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDUyNXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgaDIge1xyXG4gICAgd2lkdGg6IDUxMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gIH1cclxuICAvKlxyXG4gIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIHdpZHRoOiA1MTBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICB9XHJcbiAgKi9cclxuICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcclxuICAgIGhlaWdodDogMTEwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTQlO1xyXG4gIH1cclxufVxyXG4ubGlzdC1zaGFyZS1pY29ucyB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbGkge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuXHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICBzdHJva2U6ICNmZmZmZmY7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHN2ZywgcGF0aCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbk11bHRpKGFsbCwgMC4ycywgZWFzZS1vdXQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgIHN2ZywgcGF0aFxyXG4gICAgICAgICB7XHJcbiAgICAgICAgICBzdHJva2U6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgZmlsbDogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgLy9vcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gU2hhcmUgRU5EXHJcblxyXG4vLyBTZWN0aW9uIFN0ZXBzXHJcbi5zZWN0aW9uLXN0ZXBzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxMjI4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmctdG9wOiAxMjVweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTI1cHg7XHJcbiAgLypcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuICAqL1xyXG4gIGgyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG4gIC5idXR0b24td3JhcHBlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmJ1dHRvbi13cmFwIHtcclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vIFNlY3Rpb24gQWNlc3Nvcmllc1xyXG4uc2VjdGlvbi1wcmVzZW50YXRpb24ge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIHBhZGRpbmctdG9wOiAxMjVweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTI1cHg7XHJcbi8qXHJcbiAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuKi9cclxuICBoMiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLXdyYXAge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuICB9XHJcblxyXG4gIC5pbmZvLXJvdy1jb2wge1xyXG4gICAgLmJ1dHRvbi13cmFwIHtcclxuICAgICAgbWFyZ2luLXRvcDogMHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uaW5mby1yb3dzIHtcclxuXHJcbn1cclxuLmluZm8tcm93IHtcclxuICAuY29udGFpbmVyLXNtYWxsZXIge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgJi5pbmZvLXJvdy1jZW50ZXJlZCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gICYuaW5mby1jb250ZW50LWxlZnQtcmlnaHQge1xyXG4gICAgICAuY29udGFpbmVyLXNtYWxsZXIge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDUwJTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuaW5mby1yb3ctY29sIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAmLmluZm8tcm93LXByb2R1Y3Qge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLXJvdy10ZXh0IHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHggMCAyMHB4IDA7XHJcblxyXG4gICAgICAgICAgICAmLmxpc3QtcHJpY2UtaXRlbSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICAgIC5pbmZvLXJvdy10ZXh0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAuaW5mby1yb3ctY29sIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIC5idXR0b24ge1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaW5mby1jb250ZW50LWltYWdlLWxlZnQge1xyXG4gICAgICAuaW5mby1yb3ctY29sIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaW5mby1jb250ZW50LWltYWdlLXJpZ2h0IHtcclxuICAgICAgLmluZm8tcm93LWNvbCB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm5vLW1heC1oZWlnaHQge1xyXG4gICAgICAuaW5mby1yb3ctY29sIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgJi5pbmZvLXJvdy1wcm9kdWN0IHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5pbmZvLWNvbnRlbnQtc3RlcCB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2NXB4O1xyXG4gICAgfVxyXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgIC5jb250YWluZXItc21hbGxlciB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMCUgNjM1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMCUgNzAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaW5mby1yb3ctdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChsYXB0b3AtbGlrZS1yZWFsLXNtYWxsKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgIC5jb250YWluZXItc21hbGxlciB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2MzVweCAzMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3MCUgMzAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLXJvdy10ZXh0IHtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLWxpa2UtcmVhbC1zbWFsbCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbmZvLXJvdy12aWRlbyB7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbmZvLXJvdy10ZXh0IHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG5cclxuICAgICAgJi5yZWxsYXgge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmluZm8tcm93LXRleHQge1xyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgIG1hcmdpbjogNTdweCAwIDEycHggMDtcclxuICB9XHJcblxyXG4gIGltZyB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xyXG5cclxuICAgICYuc3RlcC1pY29uIHtcclxuICAgICAgbWF4LXdpZHRoOiA3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5pbmZvLXJvdy12aWRlbyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogMzYwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC52aWRlby1wbGFjZWhvbGRlciB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgIC52aWRlby13cmFwcGVyMTY5IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gU2VjdGlvbiBTdGVwcyBFTkRcclxuXHJcbi8vIFNlY3Rpb24gQWNjZXNzb3JpZXNcclxuLnNlY3Rpb24tYWNjZXNzb3JpZXMge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBwYWRkaW5nLXRvcDogMTI1cHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDEyNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgLmJ1dHRvbi13cmFwIHtcclxuICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgfVxyXG59XHJcbi5saXN0LWFjY2Vzc29yaWVzIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMTBweCAzMTBweCAzMTBweDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgPiBsaSB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgXHJcbiAgICAuaW1hZ2Utd3JhcCB7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmltYWdlLXdyYXAge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBoMyB7XHJcbiAgICBtYXJnaW46IDYwcHggMCAwIDA7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgJi5mbGlja2l0eS1lbmFibGVkIHtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIFxyXG4gICAgICAgIC5pbWFnZS13cmFwIHtcclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuNHMsIGVhc2Utb3V0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtc2VsZWN0ZWQge1xyXG4gICAgICAgICAgLmltYWdlLXdyYXAge1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBTZWN0aW9uIEFjY2Vzc29yaWVzIEVORFxyXG5cclxuXHJcbi8vIFRlY2ggUGFnZSBUb3AgU2VjdGlvblxyXG4udGVjaC10b3Atc2VjdGlvbiB7XHJcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2Fzc2V0cy9pbWcvdGFjaC1wYWdlLXRvcC1iYWNrZ3JvdW5kLmpwZyk7XHJcbn1cclxuLy8gVGVjaCBQYWdlIFRvcCBTZWN0aW9uIEVORFxyXG5cclxuLy8gU2VjdGlvbiBSZWd1bGFyXHJcbi5zZWN0aW9uLXJlZ3VsYXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBwYWRkaW5nOiAxMjBweCAxNXB4O1xyXG4gIC8qXHJcbiAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgd2lkdGg6IDU1MHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gICovXHJcbiAgaDIge1xyXG4gICAgd2lkdGg6IDU1MHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcclxuICB9XHJcblxyXG4gIGEsXHJcbiAgaDNcclxuICB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuaW1hZ2Utd3JhcCB7XHJcbiAgICAmLmNvbnRhaW5lcixcclxuICAgICYuY29udGFpbmVyLXNtYWxsLFxyXG4gICAgJi5jb250YWluZXItc21hbGxlciB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAgIH1cclxuICB9XHJcbiAgcCB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnV0dG9uLXdyYXAge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuICB9XHJcblxyXG4gICYuZ3JpZC1jb2wtc2VjdGlvbiB7XHJcbiAgICBoMiB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBTZWN0aW9uIFJlZ3VsYXIgRU5EXHJcblxyXG4vLyBTZWN0aW9uIFNwZWNpZmljYXRpb25zXHJcbi5zZWN0aW9uLXNwZWNpZmljYXRpb25zIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYyYjNlO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmc6IDEyMHB4IDA7XHJcbiAgLypcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG4gIH1cclxuICAqL1xyXG4gIGgyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlzdC1zcGVjaWZpY2F0aW9ucyB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGNhbGMoNTAlIC0gNDBweCAvIDIpIGNhbGMoNTAlIC0gNDBweCAvIDIpO1xyXG4gIGdyaWQtZ2FwOiA0MHB4O1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgbWFyZ2luLXRvcDogNzBweDtcclxuICA+IGxpIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDcwcHggY2FsYygxMDAlIC0gNzBweCAtIDIwcHgpO1xyXG4gICAgZ3JpZC1nYXA6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxufVxyXG4ubGlzdC1zcGVjaWZpY2F0aW9ucy1pY29uIHtcclxuICBpbWcge1xyXG4gICAgbWF4LXdpZHRoOiA1NXB4O1xyXG4gICAgbWF4LWhlaWdodDogNTVweDtcclxuICB9XHJcbn1cclxuLmxpc3Qtc3BlY2lmaWNhdGlvbnMtaW5mbyB7XHJcbiAgaDMge1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBtYXJnaW46IDAgMCA1cHggMDtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgfVxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3cHg7XHJcbiAgICAgICAgd2lkdGg6IDdweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyBTZWN0aW9uIFNwZWNpZmljYXRpb25zIEVORFxyXG5cclxuLy8gU2VjdGlvbiBDb21wYXJpc29uIFRhYmxlXHJcbi5zZWN0aW9uLWNvbXBhcmlzb24tdGFibGUge1xyXG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIC8qXHJcbiAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICovXHJcbiAgaDIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcbi5jb21wYXJpc29uLXRhYmxlIHtcclxuICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICB0YWJsZSB7XHJcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGhlYWQge1xyXG4gICAgICB0ciB7XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCA1cHg7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChtb2JpbGUtbGFuZHNjYXBlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDhweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSxcclxuICAgICAgICAgICY6bnRoLWNoaWxkKDMpLFxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoNCksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCg1KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOC43NSU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgLy9ib3JkZXItdG9wOiA0cHggc29saWQgJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICBsZWZ0OiAtNHB4O1xyXG4gICAgICAgICAgICAgIHRvcDogLTlweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGJvZHkge1xyXG4gICAgICB0ciB7XHJcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNWY3O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgJGNvbG9yLXByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTRweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogLTlweDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGgge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKG1vYmlsZS1sYW5kc2NhcGUpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0ZCB7XHJcbiAgICAgICAgICBjb2xvcjogIzgyODM4NTtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChtb2JpbGUtbGFuZHNjYXBlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwodGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKG1vYmlsZS1sYW5kc2NhcGUpIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHN2ZywgaW1nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKG1vYmlsZS1sYW5kc2NhcGUpIHtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobW9iaWxlLWxhbmRzY2FwZSkge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmNvbXBhcmlzb24tdGFibGUtY29sdW1uLWltYWdlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAvL3dpZHRoOiAxMDBweDtcclxuICBtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87XHJcbiAgaW1nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKG1vYmlsZS1wb3J0cmFpdCkge1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG4vLyBTZWN0aW9uIENvbXBhcmlzb24gVGFibGUgRU5EXHJcblxyXG4vLyBTZWN0aW9uIFJvd3NcclxuLnNlY3Rpb24tcm93cyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbn1cclxuLy8gU2VjdGlvbiBSb3dzIEVORFxyXG5cclxuLy8gUHJvZHVjdCBQYWdlIFRvcCBTZWN0aW9uXHJcbi5wcm9kdWN0LXRvcC1zZWN0aW9uIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vYXNzZXRzL2ltZy9wcm9kdWN0LXBhZ2UtdG9wLWJhY2tncm91bmQuanBnKTtcclxuICAvL2NvbG9yOiAkdGV4dC1jb2xvcjtcclxufVxyXG4vLyBQcm9kdWN0IFBhZ2UgVG9wIFNlY3Rpb24gRU5EXHJcblxyXG4vLyBTZWN0aW9uIFByb2R1Y3QgQm94XHJcbi5zZWN0aW9uLXByb2R1Y3QtYm94IHtcclxuICAvKlxyXG4gIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgKi9cclxuICBoMiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5pbWFnZS13cmFwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgfVxyXG59XHJcbi5saXN0LXByb2R1Y3QtYm94IHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICA+IGxpIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uTXVsdGkoYWxsLCAwLjJzLCBlYXNlLW91dCk7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDVweCAwIDAgMDtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmxpc3QtcHJvZHVjdC1ib3gtaW1hZ2Uge1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBpbWcge1xyXG4gICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgbWF4LWhlaWdodDogNzBweDtcclxuICB9XHJcbn1cclxuLy8gU2VjdGlvbiBQcm9kdWN0IEJveCBFTkRcclxuXHJcbi8vIFRleHQgbGluZSByZXZlYWxcclxuLmxpbmUtcmV2ZWFsLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNiU7XHJcbiAgbGVmdDogMTYlO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1saWtlLXJlYWwtc21hbGwpIHtcclxuICAgIGxlZnQ6IDglO1xyXG4gIH1cclxuXHJcbiAgc3BhbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMnB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XHJcbiAgfVxyXG5cclxuICAubGluZS1jb250YWluZXItcmV2ZWFsLWlubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gIC50ZXh0LXJldmVhbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0ycHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLmxpbmUtcmV2ZWFsLXdyYXAge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiBjYWxjKDEwMCUgLSAycHgpO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA4cHgpO1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIC5saW5lLW1hc2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICByaWdodDogMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIC5saW5lLXJldmVhbC1pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gOHB4KTtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IGNhbGMoMTAwJSArIDNweCk7XHJcbiAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDlweCk7XHJcbiAgICAgIHdpZHRoOiA4cHg7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGV4dC1yZXZlYWwtaXRlbSxcclxuICAubGluZS1tYXNrXHJcbiAge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2VjdGlvbiBDb250YWN0XHJcbi5zZWN0aW9uLWNvbnRhY3Qge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYmUyZTk7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIHBhZGRpbmc6IDEyNXB4IDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBhIHtcclxuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgfVxyXG4gIH1cclxuLypcclxuICBwICsgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgbWFyZ2luLXRvcDogNzBweDtcclxuICB9XHJcbiovXHJcbiAgcCArIGgyIHtcclxuICAgIG1hcmdpbi10b3A6IDcwcHg7XHJcbiAgfVxyXG59XHJcbi8qXHJcbi5zZWN0aW9uLWNvbnRhY3QtdG9wIHtcclxuICBwYWRkaW5nLXRvcDogMTgwcHg7XHJcbn1cclxuKi9cclxuLy8uc2VjdGlvbi1jb250YWN0LXJlZCB7XHJcbi5zZWN0aW9uLXJlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuLy8uc2VjdGlvbi1jb250YWN0LWRhcmsge1xyXG4uc2VjdGlvbi1kYXJrIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZS1kYXJrO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbi8vLnNlY3Rpb24tY29udGFjdC1saWdodCB7XHJcbi5zZWN0aW9uLWxpZ2h0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxufVxyXG4uc2VjdGlvbi1jb250YWN0LWluZm8ge1xyXG4gIG1hcmdpbi10b3A6IDY1cHg7XHJcbiAgJiB+IC5zZWN0aW9uLWNvbnRhY3QtaW5mbyB7XHJcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xyXG4gIH1cclxuICBoMyB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XHJcbiAgfVxyXG59XHJcbi5zZWN0aW9uLWNvbnRhY3Qtc3VidGl0bGUge1xyXG4gIGZvbnQtc2l6ZTogMjZweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogNzBweCAwIDAgMDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAmICsgLnNlY3Rpb24tY29udGFjdC1pbmZvIHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gQ29udGFjdCBFTkRcclxuXHJcbi8vIFNlY3Rpb24gRkFRXHJcbi5zZWN0aW9uLWZhcSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi5zY2hlbWEtZmFxLWNvZGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYmUyZWE7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0ZXh0LWNvbG9yO1xyXG59XHJcbi5mYXEtcSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogMDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBtYXgtd2lkdGg6ICRjb250YWluZXItc21hbGxlci13aWR0aCArICRjb250YWluZXItcGFkZGluZyAqIDI7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMjJweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcrJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmZhcS1hIHtcclxuICBtYXgtaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXNtYWxsZXItd2lkdGggKyAkY29udGFpbmVyLXBhZGRpbmcgKiAyO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDUwMG1zIGVhc2U7XHJcbiAgd2lsbC1jaGFuZ2U6IG1heC1oZWlnaHQ7XHJcblxyXG4gIHNwYW4ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7ICAgICAgXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIGNvbG9yOiAjMDAwMDAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmZhcS1xdWVzdGlvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0ZXh0LWNvbG9yO1xyXG4gIHBhZGRpbmc6IDE1cHggMTVweDtcclxuICAmLmFjdGl2ZSB7XHJcbiAgICAuZmFxLXEge1xyXG4gICAgICBhIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiAnLSc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZmFxLWEge1xyXG4gICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcclxuICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIFNlY3Rpb24gRkFRIEVORCIsIi8qIHJlc2V0cyAqL1xyXG4uc2VjdGlvbi1zaW5nbGUtcHJvZHVjdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgcGFkZGluZy10b3A6IDcwcHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLXNpbmdsZS1wcm9kdWN0IC5pbWFnZS13cmFwIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA3MTFweDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1hcmdpbjogYXV0bztcclxuLypcclxuICAgIG1heC13aWR0aDogNzExcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuKi9cclxufVxyXG5cclxuLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3QgLmltYWdlLXdyYXAgaW1nIHtcclxuLypcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogOTk7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgbWF4LXdpZHRoOiA3NTBweDtcclxuICAgIG1heC1oZWlnaHQ6IDUyMHB4O1xyXG4qL1xyXG59XHJcblxyXG4vKiB0ZXh0ICovXHJcbi5yb3RhdGlvbi10ZXh0LWNvbnRhaW5lcixcclxuLnJvdGF0aW9uLXRleHQtaW5uZXJcclxue1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgei1pbmRleDogOTk5OTk5OTtcclxufVxyXG4ucm90YXRpb24tdGV4dC1jb250YWluZXIge1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogNzExcHg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIC8qYmFja2dyb3VuZDogcmdiYSgyMDgsMzQsMzQsIDAuMik7Ki9cclxufVxyXG5cclxuLnJvdGF0aW9uLXRleHQtaW5uZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRleHQtY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnJvdGF0aW9uLXRleHQtaXRlbSBzcGFuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtIHNwYW4ucm90YXRpb24tdGV4dC1zdWIge1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxufVxyXG5cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5hY3RpdmUge1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxufVxyXG5cclxuLyogVEhSRUUuSlMgcmVsYXRlZCAtIGZvciBub3cgYW55IHRocmVlLmpzIHJlbGF0ZWQgc3R5bGVzIGNhbiBqdXN0IGJlIGFkZGVkIGhlcmUgKi9cclxuLmNhbnZhcy13cmFwcGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5jYW52YXMtd3JhcHBlciAuY2FudmFzLWlubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IGNhbGMoMTAwJSAtIDEwcHgpO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICB6LWluZGV4OiA5OTk5OTk5O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNhbnZhcy13cmFwcGVyIC5jYW52YXMtaW5uZXIgY2FudmFzIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgXHJcbiAgLypcclxuICBsZWZ0OiA1MCU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgKi9cclxuICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xyXG4gIHotaW5kZXg6IDk5OTk5OTk7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwoaXBob25lKSB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG5jYW52YXMge1xyXG5cclxufVxyXG5cclxuLnJvdGF0aW9uLXN2Z3Mge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgd2lkdGg6IDczNy42cHg7XHJcbiAgbWF4LXdpZHRoOiA3MzcuNnB4O1xyXG4gIC8qYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC4zKTsqL1xyXG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5O1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbCh0YWJsZXQpIHtcclxuICAgIHdpZHRoOiA5NSU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXVudGlsKGlwaG9uZSkge1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICB9XHJcblxyXG4gIC5yb3RhdGlvbi1zdmdzLWlubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IDE3cHg7XHJcbiAgICB0b3A6IDVweDtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25NdWx0aShhbGwsIDAuMnMsIGVhc2Utb3V0KTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gICAgICBsZWZ0OiAxM3B4O1xyXG4gICAgICB0b3A6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAgICAgbGVmdDogN3B4O1xyXG4gICAgICB0b3A6IDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yb3RhdGlvbi1zdmctaXRlbSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAmLnJvdGF0aW9uLWNvcHkge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcbn1cclxuXHJcbiNyb3RhdGlvbl94NUZfc3BlYWsge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyJSk7XHJcbn1cclxuXHJcbiNyb3RhdGlvbl94NUZfc3BlYWssXHJcbiNyb3RhdGlvbl94NUZfYmF0dGVyeSxcclxuI3JvdGF0aW9uX3g1Rl9taWNyb3Bob25lcyxcclxuI3JvdGF0aW9uX3g1Rl9ibHVldG9vdGgsXHJcbiNyb3RhdGlvbl94NUZfdm9sdW1lXHJcbntcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMiUpO1xyXG59XHJcblxyXG4jcm90YXRpb25feDVGX3NwZWFrIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMyUpO1xyXG59XHJcblxyXG5cclxuLnJvdGF0aW9uLWxpbmUtaXRlbSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnJvdGF0aW9uLWxpbmUtaXRlbS1pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5yb3RhdGlvbi1saW5lLWl0ZW0gaW1nIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tbXV0ZSB7XHJcbiAgICBsZWZ0OiA3MCU7XHJcbn1cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5yb3RhdGlvbi1tdXRlIC5yb3RhdGlvbi1saW5lLWl0ZW0ge1xyXG4gICAgdG9wOiAxMDAlO1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLXdhdGVycHJvb2Yge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA5MyU7XHJcbn1cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5yb3RhdGlvbi13YXRlcnByb29mIC5yb3RhdGlvbi1saW5lLWl0ZW0ge1xyXG4gICAgdG9wOiA0NCU7XHJcbiAgICBsZWZ0OiAtMjIlO1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLWxhbnlhcmQge1xyXG4gICAgbGVmdDogNzYlO1xyXG4gICAgdG9wOiA4MCU7XHJcbn1cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5yb3RhdGlvbi1sYW55YXJkIC5yb3RhdGlvbi1saW5lLWl0ZW0ge1xyXG4gICAgdG9wOiA2OCU7XHJcbiAgICBsZWZ0OiAtMTAlO1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLWJhdHRlcnkge1xyXG4gICAgbGVmdDogMzclO1xyXG4gICAgdG9wOiAxMDglO1xyXG59XHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tYmF0dGVyeSAucm90YXRpb24tbGluZS1pdGVtIHtcclxuICAgIHRvcDogLTExMyU7XHJcbiAgICBsZWZ0OiAxNSU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogOHB4O1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLW1pY3JvcGhvbmVzIHtcclxuICAgIGxlZnQ6IDklO1xyXG4gICAgdG9wOiA4Mi41JTtcclxufVxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLW1pY3JvcGhvbmVzIC5yb3RhdGlvbi1saW5lLWl0ZW0ge1xyXG4gICAgdG9wOiA1NyU7XHJcbiAgICBsZWZ0OiAyMSU7XHJcbn1cclxuXHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tYmx1ZXRvb3RoIHtcclxuICAgIGxlZnQ6IDMlO1xyXG4gICAgdG9wOiA0NSU7XHJcbn1cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5yb3RhdGlvbi1ibHVldG9vdGggLnJvdGF0aW9uLWxpbmUtaXRlbSB7XHJcbiAgICB0b3A6IDQ0JTtcclxuICAgIGxlZnQ6IDE2JTtcclxuICAgIHdpZHRoOiAzMTBweDtcclxufVxyXG5cclxuLnJvdGF0aW9uLXRleHQtaXRlbS5yb3RhdGlvbi12b2x1bWUge1xyXG4gICAgbGVmdDogOSU7XHJcbiAgICB0b3A6IDElO1xyXG59XHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tdm9sdW1lIC5yb3RhdGlvbi1saW5lLWl0ZW0ge1xyXG4gICAgdG9wOiAxMjAlO1xyXG4gICAgbGVmdDogOSU7XHJcbn1cclxuXHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tc3BlYWsge1xyXG4gICAgbGVmdDogNDMlO1xyXG4gICAgdG9wOiAtMTglO1xyXG59XHJcbi5yb3RhdGlvbi10ZXh0LWl0ZW0ucm90YXRpb24tc3BlYWsgLnJvdGF0aW9uLWxpbmUtaXRlbSB7XHJcbiAgICB0b3A6IDE0MiU7XHJcbiAgICBsZWZ0OiAxMSU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogOHB4O1xyXG59XHJcblxyXG4ucm90YXRpb24tdGV4dC1pdGVtLnJvdGF0aW9uLW11dGUgLnJvdGF0aW9uLWxpbmUtaXRlbSB7XHJcbiAgIFxyXG59IiwiLmRlc2t0b3Atb25seSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgJi5idXR0b24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxufVxyXG4ubW9iaWxlLW9ubHkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbkBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLXNtYWxsKSB7XHJcbiAgLmNvbnRhaW5lcixcclxuICAuY29udGFpbmVyLXNtYWxsZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC5oZWFkZXItY2FydC1saW5rcyB7XHJcbiAgICAvL3JpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmc7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSByZXNwb25kLXVudGlsKGxhcHRvcC1zbWFsbGVyKSB7XHJcbiAgLm5hdi1tYWluID4gdWwgPiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTRweDtcclxuICB9XHJcbiAgLm5hdi1tYWluID4gdWwgPiBsaSA+IGEge1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gIH1cclxuICAuY29udGFpbmVyLXNtYWxsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAubGlzdC1hY2Nlc3NvcmllcyB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgcmVzcG9uZC11bnRpbChsYXB0b3AtbGlrZS1yZWFsLXNtYWxsKSB7XHJcbiAgLmFubm91bmNlbWVudC1iYXIge1xyXG4gICAgaGVpZ2h0OiAkYW5ub3VuY2VtZW50LWJhci1oZWlnaHQtbW9iaWxlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodC1tb2JpbGU7XHJcbiAgICAvL2ZvbnQtc2l6ZTogMTJweDtcclxuICB9XHJcbiAgLm5hdi1tYWluLXRvZ2dsZSB7XHJcbiAgICAvL2Rpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuICAuaGVhZGVyIHtcclxuICAgIHRvcDogJGFubm91bmNlbWVudC1iYXItaGVpZ2h0LW1vYmlsZTtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gIH1cclxuICAuaGVhZGVyIC5jb250YWluZXIge1xyXG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1tb2JpbGU7XHJcbiAgfVxyXG4gIC5oZWFkZXItbG9nbyB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwcHgpO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcblxyXG4gIC5uYXYtbWFpbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgLy9kaXNwbGF5OiBibG9jaztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLWRhcms7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAtMjAwcHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDIwMHB4KTtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtZGFyaztcclxuICAgICAgei1pbmRleDogOTA7XHJcblxyXG4gICAgICB0b3A6IC01MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jbG9zZS14IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgIHotaW5kZXg6IDk1O1xyXG4gICAgICAvL292ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgICBsaSB7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgLm5hdi1tYWluLXN1YmxheWVyLTEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgIC5tYWluLW1lbnUtaXRlbSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAubmF2LW1haW4tc3VibGF5ZXItMSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAubmF2LW1haW4gPiB1bCB7XHJcbiAgICB0b3A6IDkwcHg7XHJcbiAgICAvL3BhZGRpbmc6IDAgMCAyMDBweCAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIC8vbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDkwcHggLSA4MHB4KTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC8vb3ZlcmZsb3c6IGF1dG87XHJcbiAgfVxyXG4gIC5uYXYtbWFpbiA+IHVsID4gbGkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgLm5hdi1tYWluID4gdWwgPiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICB9XHJcbiAgLm5hdi1tYWluID4gdWwgPiBsaSA+IGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA2O1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlciAubmF2LW1haW4gLm5hdi1tYWluLXN1YmxheWVyLTEsXHJcbiAgLmhlYWRlciAubmF2LW1haW4gLm5hdi1tYWluLXN1YmxheWVyLTEtaW5uZXIge1xyXG4gICAgLy9kaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAubmF2LW1haW4tc3VibGF5ZXItMS1pbm5lciA+IHVsIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyID4gdWwgPiBsaSA+IGEge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjEpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC5uYXYtbWFpbi1zdWJsYXllci0xLWlubmVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5hdi1tYWluLXN1YmxheWVyLTIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnNob3ctbW9iaWxlLW5hdmlnYXRpb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5oaWRlLW1vYmlsZS1uYXZpZ2F0aW9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAubmF2LW1haW4gPiB1bCA+IGxpID4gYSA+IHN2ZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcbiAgICB3aWR0aDogMjRweDtcclxuICB9XHJcbi8qXHJcbiAgLm5hdi1tYWluID4gdWwgPiBsaSA+IGEge1xyXG4gICAgJjpmb2N1cywgJjpob3ZlciwgJjphY3RpdmUge1xyXG4gICAgICA+IHN2ZyB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuKi9cclxuICAuaGVhZGVyLXNlYXJjaC10b2dnbGUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyLXNvY2lhbC1saW5rcyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLm1vYmlsZS1tZW51LW9wZW5lZCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLmhlYWRlciB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIC5uYXYtbWFpbiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgLnNob3ctbW9iaWxlLW5hdmlnYXRpb24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmhpZGUtbW9iaWxlLW5hdmlnYXRpb24ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5oZWFkZXItc29jaWFsLWxpbmtzIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICBib3R0b206IDQwcHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG4vKlxyXG4gIC5oZWFkZXIuaGVhZHJvb20tLXRvcCB7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRhbm5vdW5jZW1lbnQtYmFyLWhlaWdodC1tb2JpbGV9KTtcclxuICAgIC5uYXYtbWFpbiB7XHJcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JGFubm91bmNlbWVudC1iYXItaGVpZ2h0LW1vYmlsZX0pO1xyXG4gICAgfVxyXG4gIH1cclxuKi9cclxufVxyXG5cclxuLy9AbWVkaWEgKG1heC1oZWlnaHQ6IDkwMHB4KSB7XHJcbkBpbmNsdWRlIHJlc3BvbmQtdW50aWwtaGVpZ2h0KG0pIHtcclxuICAubG9jYXRpb24tbW9kYWwtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgfVxyXG4gIC8qXHJcbiAgLmxvY2F0aW9uLW1vZGFsIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG4gICovXHJcbiAgLmxvY2F0aW9uLW1vZGFsIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG4gIC5sb2NhdGlvbnMtbmF2aWdhdGlvbiBoMyB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgfVxyXG4gIC5sb2NhdGlvbnMtbmF2aWdhdGlvbiB1bCBsaSBhIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbiAgLmxvY2F0aW9ucy1uYXZpZ2F0aW9uIHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICB9XHJcbiAgLmxvY2F0aW9uLW1vZGFsLWZvb3RlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gIH1cclxuICAubG9jYXRpb24tbW9kYWwtZm9vdGVyIHAge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxuXHJcbiAgLmZsYWcge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAkZmxhZy13aWR0aCAtIDRweDtcclxuICAgIGhlaWdodDogJGZsYWctaGVpZ2h0IC0gNHB4O1xyXG4gICAgc3ZnIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogJGZsYWctaGVpZ2h0IC0gNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogJGZsYWctaGVpZ2h0IC0gNHB4O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9AaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG5AaW5jbHVkZSByZXNwb25kLXVudGlsKHRhYmxldCkge1xyXG4gIC5kZXNrdG9wLW9ubHkge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAubW9iaWxlLW9ubHkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuY29udGFpbmVyLFxyXG4gIC5jb250YWluZXItc21hbGwsXHJcbiAgLmNvbnRhaW5lci1zbWFsbGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcblxyXG4gIC5sb2NhdGlvbi1tb2RhbC1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDEwMHZ3O1xyXG4gICAgbWF4LWhlaWdodDogMTAwdmg7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICB9XHJcbiAgLmxvY2F0aW9ucy13cmFwIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XHJcbiAgICBncmlkLWdhcDogMjBweDtcclxuICAgIHdpZHRoOiAyOTBweDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgfVxyXG5cclxuICAubG9jYXRpb25zLW5hdmlnYXRpb24ge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zaG9wLW1vZGFsLWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgfVxyXG4vKlxyXG4gIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nO1xyXG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICB9XHJcbiovXHJcblxyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLTMtY29sb3JzIC5pbWFnZS13cmFwIGltZyB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5zZWN0aW9uLTMtY29sb3JzIC5pbWFnZS13cmFwIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbiAgLmxpc3QtY2F0ZWdvcmllcyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC5saXN0LWNhdGVnb3JpZXMgPiBsaSA+IGEge1xyXG4gICAgaGVpZ2h0OiAzMDBweDtcclxuICB9XHJcbiAgLmxpc3QtY2F0ZWdvcmllcy1pbWFnZSBpbWcge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbiAgLypcclxuICAuc2VjdGlvbi1zaW5nbGUtcHJvZHVjdCAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICAvL3dpZHRoOiAxMDAlO1xyXG4gICAgd2lkdGg6IDcwdnc7XHJcbiAgfVxyXG4gICovXHJcbiAgLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3QgaDIge1xyXG4gICAgLy93aWR0aDogMTAwJTtcclxuICAgIHdpZHRoOiA3MHZ3O1xyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tcmV2aWV3cyB7XHJcbiAgICBwIHtcclxuICAgICAgd2lkdGg6IDgwJTtcclxuICAgIH1cclxuICB9XHJcbi8qXHJcbiAgLnNlY3Rpb24tcmV2aWV3LXRleHQge1xyXG4gICAgLy93aWR0aDogMTAwJTtcclxuICAgIHdpZHRoOiA4MCU7XHJcbiAgfVxyXG4qL1xyXG4gIC5zZWN0aW9uLXJldmlld3Mtc2xpZGVyIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcclxuICAgIHRvcDogMzZweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWFwcCAuY29udGFpbmVyLXNtYWxsIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICB9XHJcblxyXG4gIC5saXN0LWFydGljbGVzIHtcclxuICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5zZWN0aW9uLWFydGljbGVzIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5saXN0LWFydGljbGUge1xyXG4gICAgaGVpZ2h0OiAzMjVweDtcclxuICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICB3aWR0aDogY2FsYyg4MCUgLSAzMHB4KTtcclxuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5saXN0LWFydGljbGUtdGl0bGUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG4gIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hY2Nlc3NvcmllcyxcclxuICAuc2VjdGlvbi1wcm9kdWN0LW9wdGlvbnMge1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgLmxpc3QtcHJvZHVjdC1vcHRpb25zIHtcclxuICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC5mbGlja2l0eS1idXR0b24taWNvbiB7XHJcbiAgICAgIGZpbGw6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgfVxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgLy93aWR0aDogMTAwJTtcclxuICAgICAgd2lkdGg6IGNhbGMoNzAlIC0gMzBweCk7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgLy93aWR0aDogODAlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWCg3LjglKTtcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8uaG9tZXBhZ2UtdG9wLXNlY3Rpb24ge1xyXG4gIC50b3Atc2VjdGlvbiB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWFwcC1pbWFnZSBpbWcge1xyXG4gICAgaGVpZ2h0OiA1MjBweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWFwcCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLmJ1dHRvbi13cmFwIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgICAgLm1vYmlsZS1vbmx5IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWFwcC1pbmZvIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIH1cclxuXHJcbiAgLmluZm8tcm93IC5jb250YWluZXItc21hbGxlciB7XHJcbiAgICBncmlkLWdhcDogMjBweDtcclxuICB9XHJcbiAgLmluZm8tcm93Om50aC1jaGlsZChvZGQpIC5jb250YWluZXItc21hbGxlciB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XHJcbiAgfVxyXG4gIC5pbmZvLXJvdzpudGgtY2hpbGQoZXZlbikgLmNvbnRhaW5lci1zbWFsbGVyIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICB9XHJcbiAgLmluZm8tcm93Om50aC1jaGlsZChldmVuKSAuY29udGFpbmVyLXNtYWxsZXIgLmluZm8tcm93LXRleHQge1xyXG4gICAgb3JkZXI6IDE7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1zdGVwcyB7XHJcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xyXG4gIH1cclxuICAuaW5mby1yb3ctdGV4dCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgbWF4LXdpZHRoOiA3MCU7XHJcbiAgICBtaW4td2lkdGg6IDI5MHB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuaW5mby1yb3ctdGV4dCBoMyB7XHJcbiAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1hY2Nlc3NvcmllcyB7XHJcbiAgICAuY29udGFpbmVyLXNtYWxsIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAubGlzdC1hY2Nlc3NvcmllcyB7XHJcbiAgICAvL2dyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAuZmxpY2tpdHktYnV0dG9uLWljb24ge1xyXG4gICAgICBmaWxsOiAkY29sb3ItcHJpbWFyeTtcclxuICAgIH1cclxuICAgIGxpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDMwcHgpO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAuaW1hZ2Utd3JhcCB7XHJcbiAgICAgICAgLy93aWR0aDogODAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXZpZGVvIHtcclxuICAgIC8vaGVpZ2h0OiA0MDBweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXJldmlld3Mge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICAgIHAge1xyXG4gICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qXHJcbiAgLnNlY3Rpb24tcmV2aWV3LXRleHQge1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG4gIH1cclxuICAqL1xyXG5cclxuICAvLy5ob21lcGFnZS10b3Atc2VjdGlvbi1jb250ZW50IHtcclxuICAudG9wLXNlY3Rpb24tY29udGVudCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIC5idXR0b24td3JhcCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC8vbWFyZ2luLXRvcDogLTEzNXB4O1xyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1ib3R0b20ge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbiAgLmZvb3Rlci10b3Age1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICAgIC8vZ3JpZC1nYXA6IDMwcHg7XHJcbiAgICBncmlkLWdhcDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLmZvb3Rlci1sb2dvIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAuZm9vdGVyLWxvZ28ge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgc3ZnLCBpbWcge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogMTYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyIHtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLXNvY2lhbC1saW5rcyB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgLmljb24ge1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICBzdmcge1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmljb24teW91dHViZSB7XHJcbiAgICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgIHN2ZyB7XHJcbiAgICAgICAgd2lkdGg6IDQ2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi0zLWNvbG9ycyBwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICB9XHJcblxyXG4gIC5saXN0LXNwZWNpZmljYXRpb25zIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXJlZ3VsYXIge1xyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW5mby1yb3dzIHtcclxuICAgIC5jb250YWluZXItc21hbGxlciB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbi8qXHJcbiAgLmZvb3Rlci1uYXZpZ2F0aW9uIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XHJcbiAgICAvLyY6Zm9jdXMsICY6aG92ZXIsICYuYWN0aXZlIHtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgJiA+IGgzID4gc3ZnIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDBkZWcpO1xyXG4gICAgICB9XHJcbiAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gaDMge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBmaWxsOiAkdGV4dC1jb2xvcjtcclxuICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgPiB1bCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgLjUpO1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLW5hdmlnYXRpb24gdWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuKi9cclxuXHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSByZXNwb25kLXVudGlsKG1vYmlsZS1sYW5kc2NhcGUpIHtcclxuICAvLy5ob21lcGFnZS10aXRsZSB7XHJcbiAgLnRvcC1zZWN0aW9uLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICB9XHJcbiAgLy8uaG9tZXBhZ2UtdG9wLXNlY3Rpb24tY29udGVudCB7XHJcbiAgLnRvcC1zZWN0aW9uLWNvbnRlbnQge1xyXG4gICAgbWFyZ2luLXRvcDogMTc1cHg7XHJcbiAgfVxyXG4gIC8vLmhvbWVwYWdlLXRvcC1zZWN0aW9uIHtcclxuICAudG9wLXNlY3Rpb24ge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgfVxyXG4gIC50ZXh0LWJvdHRvbSB7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICAudG9wLXNlY3Rpb24tY29udGVudCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudGVjaC10b3Atc2VjdGlvbiB7XHJcbiAgICAuc2VjdGlvbi1iYWNrZ3JvdW5kIGltZywgLnNlY3Rpb24tYmFja2dyb3VuZCB2aWRlbyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogMCA4MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuLypcclxuICAuc2VjdGlvbi1yZWd1bGFyIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuKi9cclxuXHJcbiAgLnNlY3Rpb24tcmVndWxhciBoMiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXJlZ3VsYXIge1xyXG4gICAgcGFkZGluZy10b3A6IDkwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXNwZWNpZmljYXRpb25zIHtcclxuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgfVxyXG5cclxuICAubGlzdC1zcGVjaWZpY2F0aW9ucy1pbmZvIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG4gIC5saXN0LXJlZ3VsYXIge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmxpc3QtcHJvZHVjdC1ib3gge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgIGdyaWQtZ2FwOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmZhcS1hLFxyXG4gIC5mYXEtcSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIHJlc3BvbmQtdW50aWwobW9iaWxlLXBvcnRyYWl0KSB7XHJcbiAgLy8uaG9tZXBhZ2UtdGl0bGUge1xyXG4gIC8vICBmb250LXNpemU6IDQwcHg7XHJcbiAgLy99XHJcbiAgLypcclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDM0cHg7XHJcbiAgfVxyXG4gICovXHJcbiAgaDIge1xyXG4gICAgZm9udC1zaXplOiAzNHB4O1xyXG4gIH1cclxuICAuc2VjdGlvbi1yZXZpZXdzIHtcclxuICAgIHAge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxuICB9XHJcbiAgLypcclxuICAuc2VjdGlvbi1yZXZpZXctdGV4dCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH1cclxuICAqL1xyXG4gIC8vLmhvbWVwYWdlLXRvcC1zZWN0aW9uLWNvbnRlbnQge1xyXG4gIC8vICBtYXJnaW4tdG9wOiAxNzVweDtcclxuICAvL31cclxuICAvLy5ob21lcGFnZS10b3Atc2VjdGlvbiB7XHJcbiAgLy8gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gIC8vfVxyXG4gIC8qXHJcbiAgLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3QgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICovXHJcbiAgLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3QgaDIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICB9XHJcbiAgLmFubm91bmNlbWVudC1iYXIge1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gIH1cclxuLypcclxuICAuc2VjdGlvbi1yZXZpZXdzIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAuc2VjdGlvbi1zaGFyZSAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiovXHJcbiAgLnNlY3Rpb24tc2hhcmUsXHJcbiAgLnNlY3Rpb24tcmV2aWV3c1xyXG4gIHtcclxuICAgIGgyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi1yZWd1bGFyIC5jb250YWluZXIuaW1hZ2Utd3JhcCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgcmVzcG9uZC11bnRpbChpcGhvbmUpIHtcclxuICAuYW5ub3VuY2VtZW50LWJhciB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgfVxyXG4vKlxyXG4gIC5zZWN0aW9uLXNpbmdsZS1wcm9kdWN0IC5pbWFnZS13cmFwIGltZyB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB3aWR0aDogNzAlO1xyXG4gIH1cclxuICAuc2VjdGlvbi1zaW5nbGUtcHJvZHVjdCAuaW1hZ2Utd3JhcCB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5zZWN0aW9uLXNpbmdsZS1wcm9kdWN0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgfVxyXG4qL1xyXG4gIC8qXHJcbiAgLnNlY3Rpb24tc2luZ2xlLXByb2R1Y3QgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gICovXHJcbi8qICBcclxuICAuc2VjdGlvbi1zaW5nbGUtcHJvZHVjdCBoMiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXNpbmdsZS1wcm9kdWN0IC5idXR0b24ge1xyXG4gICAgLy9tYXJnaW4tdG9wOiA4MHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4qL1xyXG4gIC5zZWN0aW9uLXJlZ3VsYXIge1xyXG4gICAgcCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxpc3QtcmVndWxhciB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgfVxyXG5cclxuICAubGlzdC1wcm9kdWN0LWJveCB7XHJcbiAgICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XHJcbiAgfVxyXG4gIC5saXN0LXByb2R1Y3QtYm94ID4gbGkgaDMge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxufSIsIi5saWdodC1iYWNrZ3JvdW5kIHtcclxuICAudG9wLXNlY3Rpb24sXHJcbiAgLnByb2R1Y3QtdG9wLXNlY3Rpb24ge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxuICAubmF2LW1haW4ge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICAgICY6aG92ZXIsICY6Zm9jdXMtd2l0aGluIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICYgKyAuaGVhZGVyLXNlYXJjaC10b2dnbGUge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oZWFkZXItc2VhcmNoLXRvZ2dsZSB7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC5saXN0LWljb24tbGlua3Mge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIH1cclxuICAubmF2LW1haW4tdG9nZ2xlIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICB9XHJcbiAgLnRvcC1zZWN0aW9uLXRpdGxlIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICB9XHJcbiAgJi5tb2JpbGUtbWVudS1vcGVuZWQsXHJcbiAgLmhlYWRlci5zbGlkZURvd24uaGVhZHJvb20tLW5vdC10b3Age1xyXG4gICAgLm5hdi1tYWluIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICAuaGVhZGVyLXNlYXJjaC10b2dnbGUge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIC5saXN0LWljb24tbGlua3Mge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIC5uYXYtbWFpbi10b2dnbGUge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgYm9keSB7XHJcbiAgICAmLm1vYmlsZS1tZW51LW9wZW5lZCB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdW50aWwobGFwdG9wLW1lbnUtY29sbGlkZS1sZWZ0KSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLm5hdi1tYWluIHtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1zdGlja3kge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVhZGVyLXNlYXJjaC10b2dnbGUge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5saXN0LWljb24tbGlua3Mge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXYtbWFpbi10b2dnbGUge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50b3Atc2VjdGlvbi10aXRsZSB7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuXHJcblxyXG59IiwiLnRoZW1lLWl0ZW0ge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gIGEge1xyXG5cclxuICAgICY6bm90KC5idXR0b24pIHtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuLnRoZW1lLXdoaXRlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgY29sb3I6ICRibGFjaztcclxufVxyXG5cclxuLnRoZW1lLWdyYXlsaWdodCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RiZTJlOTtcclxuICBjb2xvcjogJGJsYWNrO1xyXG59XHJcblxyXG4udGhlbWUtcmVkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICBjb2xvcjogJHdoaXRlO1xyXG59XHJcblxyXG4udGhlbWUtYmx1ZWRhcmsge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLWRhcms7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuLnRoZW1lLWJsdWVkYXJrZ3JheSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmMmIzZTtcclxuICBjb2xvcjogJHdoaXRlO1xyXG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBLEFBQUEsaUJBQWlCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVEsR0FDbkI7O0FBRUQsQUFBQSxpQkFBaUIsQUFB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 */
