/*!************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./src/app/sass/app.scss ***!
  \************************************************************************************************************************************************************************/
@charset "UTF-8";
::selection {
  background: #168936;
  color: #fff;
}

.bk-grey {
  background-color: #ddd;
}

.bk-bright {
  background-color: #E5FFEB;
}

.bk-white {
  background-color: #ffffff;
}

.bk-prim {
  background-color: #168936;
}

.bk-lt-grey {
  background-color: #dddddd;
}

section.bk-pic.pt-8.pb-8.columns.bk-white {
  background: #fff;
}

.bk-deep {
  background-color: #222;
}

.bg-white {
  background-color: #fff;
}

.bk-dk {
  background-color: #222;
}
.bk-dk h1, .bk-dk h2, .bk-dk h3, .bk-dk h4, .bk-dk h5, .bk-dk h6, .bk-dk a, .bk-dk p, .bk-dk li, .bk-dk label, .bk-dk blockquote {
  color: #ffffff;
}
.bk-dk .wyg a:not(.btn) {
  color: #fff;
}

.bk-primary {
  background-color: #168936;
}
.bk-primary h1, .bk-primary h2, .bk-primary h3, .bk-primary h4, .bk-primary h5, .bk-primary h6, .bk-primary a, .bk-primary p, .bk-primary li {
  color: #fff;
}
.bk-primary .wyg a:not(.btn) {
  color: #fff;
}
.bk-primary h2 {
  line-height: 1em;
}

.wrap-thin {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  z-index: 444;
}

.pulse-shadow {
  position: relative;
  animation: pulseShadow 2s infinite ease-out;
  border-radius: 200px;
}

.mouse-follow {
  position: absolute;
  z-index: 99999;
  background: green;
  width: 200px;
  height: 200px;
  top: 20px;
  left: 20px;
  opacity: 0;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.mouse-active .mouse-follow {
  opacity: 1;
}

@keyframes pulseShadow {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4);
  }
  70% {
    box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}
.bk-green {
  background-color: #168936;
}

/**
Media Queries
*/
:root {
  background-color: black;
}

.bg-light h1,
.bg-light h2,
.bg-light h3,
.bg-light h4,
.bg-light p {
  color: #fff;
}

.bt-5 {
  border-top: 5px solid #aad4b4;
}

.bb-5 {
  border-bottom: 5px solid #aad4b4;
}

.bk-deep .btn {
  background-color: #aad4b4;
  color: #fff;
}

#nav-popover {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 9998;
  display: none;
}

.nav-open #nav-popover {
  display: block;
}

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

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

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

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

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

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

.carousel-assignments .slick-next, .carousel-assignments .slick-prev {
  width: 45px;
  height: 45px;
  top: -60px;
}
.carousel-assignments .slick-next {
  right: 0px;
  left: auto;
}
.carousel-assignments .slick-prev {
  right: 50px;
  left: auto;
}
.carousel-assignments .font-bold {
  font-weight: 700;
}
.carousel-assignments li {
  padding: 2rem;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.1);
}
.carousel-assignments li svg {
  height: 15px;
  width: auto;
  margin-right: 10px;
}
.carousel-assignments li svg path {
  fill: #aad4b4;
}

/*animations*/
/******************
* Bounce in right *
*******************/
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.slow {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.slower {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.slowest {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/* Added by Andy Meetan */
.delay-250 {
  -webkit-animation-delay: 0.25s;
  -moz-animation-delay: 0.25s;
  -o-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

.delay-500 {
  -webkit-animation-delay: 0.5s;
  -moz-animation-delay: 0.5s;
  -o-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.delay-750 {
  -webkit-animation-delay: 0.75s;
  -moz-animation-delay: 0.75s;
  -o-animation-delay: 0.75s;
  animation-delay: 0.75s;
}

.delay-1000 {
  -webkit-animation-delay: 1s;
  -moz-animation-delay: 1s;
  -o-animation-delay: 1s;
  animation-delay: 1s;
}

.delay-1250 {
  -webkit-animation-delay: 1.25s;
  -moz-animation-delay: 1.25s;
  -o-animation-delay: 1.25s;
  animation-delay: 1.25s;
}

.delay-1500 {
  -webkit-animation-delay: 1.5s;
  -moz-animation-delay: 1.5s;
  -o-animation-delay: 1.5s;
  animation-delay: 1.5s;
}

.delay-1750 {
  -webkit-animation-delay: 1.75s;
  -moz-animation-delay: 1.75s;
  -o-animation-delay: 1.75s;
  animation-delay: 1.75s;
}

.delay-2000 {
  -webkit-animation-delay: 2s;
  -moz-animation-delay: 2s;
  -o-animation-delay: 2s;
  animation-delay: 2s;
}

.delay-2500 {
  -webkit-animation-delay: 2.5s;
  -moz-animation-delay: 2.5s;
  -o-animation-delay: 2.5s;
  animation-delay: 2.5s;
}

.delay-2000 {
  -webkit-animation-delay: 2s;
  -moz-animation-delay: 2s;
  -o-animation-delay: 2s;
  animation-delay: 2s;
}

.delay-2500 {
  -webkit-animation-delay: 2.5s;
  -moz-animation-delay: 2.5s;
  -o-animation-delay: 2.5s;
  animation-delay: 2.5s;
}

.delay-3000 {
  -webkit-animation-delay: 3s;
  -moz-animation-delay: 3s;
  -o-animation-delay: 3s;
  animation-delay: 3s;
}

.delay-3500 {
  -webkit-animation-delay: 3.5s;
  -moz-animation-delay: 3.5s;
  -o-animation-delay: 3.5s;
  animation-delay: 3.5s;
}

.bounceInRight, .bounceInLeft, .bounceInUp, .bounceInDown {
  opacity: 0;
  -webkit-transform: translateX(400px);
  transform: translateX(400px);
}

.fadeInRight, .fadeInLeft, .fadeInUp, .fadeInDown {
  opacity: 0;
  -webkit-transform: translateX(400px);
  transform: translateX(400px);
}

.flipInX, .flipInY, .rotateIn, .rotateInUpLeft, .rotateInUpRight, .rotateInDownLeft, .rotateDownUpRight, .rollIn {
  opacity: 0;
}

.lightSpeedInRight, .lightSpeedInLeft {
  opacity: 0;
  -webkit-transform: translateX(400px);
  transform: translateX(400px);
}

/***********
* bounceIn *
************/
@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.bounceIn.go {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

/****************
* bounceInRight *
****************/
@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(400px);
  }
  60% {
    -webkit-transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(400px);
  }
  60% {
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.bounceInRight.go {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

/******************
* Bounce in left *
*******************/
@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-400px);
  }
  60% {
    -webkit-transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-400px);
  }
  60% {
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.bounceInLeft.go {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

/******************
* Bounce in up *
*******************/
@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(400px);
  }
  60% {
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(400px);
  }
  60% {
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.bounceInUp.go {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

/******************
* Bounce in down *
*******************/
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-400px);
  }
  60% {
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-400px);
  }
  60% {
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.bounceInDown.go {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

/**********
* Fade In *
**********/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
.fadeIn {
  opacity: 0;
}

.fadeIn.go {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

/**********
* Grow in *
***********/
@-webkit-keyframes growIn {
  0% {
    -webkit-transform: scale(0.2);
    opacity: 0;
  }
  50% {
    -webkit-transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
}
@keyframes growIn {
  0% {
    transform: scale(0.2);
    opacity: 0;
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.growIn {
  -webkit-transform: scale(0.2);
  transform: scale(0.2);
  opacity: 0;
}

.growIn.go {
  -webkit-animation-name: growIn;
  animation-name: growIn;
}

/********
* Shake *
********/
@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
  }
}
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}
.shake.go {
  -webkit-animation-name: shake;
  animation-name: shake;
}

/********
* ShakeUp *
********/
@-webkit-keyframes shakeUp {
  0%, 100% {
    -webkit-transform: translateY(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateY(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateY(10px);
  }
}
@keyframes shakeUp {
  0%, 100% {
    transform: translateY(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateY(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateY(10px);
  }
}
.shakeUp.go {
  -webkit-animation-name: shakeUp;
  animation-name: shakeUp;
}

/*************
* FadeInLeft *
*************/
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  opacity: 0;
  -webkit-transform: translateX(-400px);
  transform: translateX(-400px);
}

.fadeInLeft.go {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

/*************
* FadeInRight *
*************/
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  opacity: 0;
  -webkit-transform: translateX(400px);
  transform: translateX(400px);
}

.fadeInRight.go {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

/*************
* FadeInUp *
*************/
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(400px);
  transform: translateY(400px);
}

.fadeInUp.go {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

/*************
* FadeInDown *
*************/
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-400px);
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  opacity: 0;
  -webkit-transform: translateY(-400px);
  transform: translateY(-400px);
}

.fadeInDown.go {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

/*****************
* rotateIn *
*****************/
@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateIn.go {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

/*****************
* rotateInUpLeft *
*****************/
@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpLeft.go {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

/*******************
* rotateInDownLeft *
*******************/
@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownLeft.go {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

/******************
* rotateInUpRight *
*******************/
@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpRight.go {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

/********************
* rotateInDownRight *
********************/
@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownRight.go {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

/*********
* rollIn *
**********/
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
.rollIn.go {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/*********
* wiggle *
**********/
@-webkit-keyframes wiggle {
  0% {
    -webkit-transform: skewX(9deg);
  }
  10% {
    -webkit-transform: skewX(-8deg);
  }
  20% {
    -webkit-transform: skewX(7deg);
  }
  30% {
    -webkit-transform: skewX(-6deg);
  }
  40% {
    -webkit-transform: skewX(5deg);
  }
  50% {
    -webkit-transform: skewX(-4deg);
  }
  60% {
    -webkit-transform: skewX(3deg);
  }
  70% {
    -webkit-transform: skewX(-2deg);
  }
  80% {
    -webkit-transform: skewX(1deg);
  }
  90% {
    -webkit-transform: skewX(0deg);
  }
  100% {
    -webkit-transform: skewX(0deg);
  }
}
@keyframes wiggle {
  0% {
    transform: skewX(9deg);
  }
  10% {
    transform: skewX(-8deg);
  }
  20% {
    transform: skewX(7deg);
  }
  30% {
    transform: skewX(-6deg);
  }
  40% {
    transform: skewX(5deg);
  }
  50% {
    transform: skewX(-4deg);
  }
  60% {
    transform: skewX(3deg);
  }
  70% {
    transform: skewX(-2deg);
  }
  80% {
    transform: skewX(1deg);
  }
  90% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}
.wiggle.go {
  -webkit-animation-name: wiggle;
  animation-name: wiggle;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

/********
* swing *
*********/
@-webkit-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center;
  }
  20% {
    -webkit-transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.swing.go {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

/*******
* tada *
********/
@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
  }
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
  }
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
.tada.go {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/*********
* wobble *
**********/
@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.wobble.go {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

/********
* pulse *
*********/
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.pulse.go {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

/***************
* lightSpeedInRight *
****************/
@-webkit-keyframes lightSpeedInRight {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedInRight {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedInRight.go {
  -webkit-animation-name: lightSpeedInRight;
  animation-name: lightSpeedInRight;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/***************
* lightSpeedInLeft *
****************/
@-webkit-keyframes lightSpeedInLeft {
  0% {
    -webkit-transform: translateX(-100%) skewX(30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(20%) skewX(-30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedInLeft {
  0% {
    transform: translateX(-100%) skewX(30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(20%) skewX(-30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedInLeft.go {
  -webkit-animation-name: lightSpeedInLeft;
  animation-name: lightSpeedInLeft;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/*******
* Flip *
*******/
@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    transform: perspective(400px) rotateY(0);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) scale(1);
    animation-timing-function: ease-in;
  }
}
.flip.go {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flip;
  backface-visibility: visible !important;
  animation-name: flip;
}

/**********
* flipInX *
**********/
@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
.flipInX.go {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  backface-visibility: visible !important;
  animation-name: flipInX;
}

/**********
* flipInY *
**********/
@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipInY.go {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  backface-visibility: visible !important;
  animation-name: flipInY;
}

/*****************
* Out animations *
*****************/
/************
* bounceOut *
*************/
@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
.bounceOut.goAway {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

/************
* bounceOutUp *
*************/
@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.bounceOutUp.goAway {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

/************
* bounceOutDown *
*************/
@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.bounceOutDown.goAway {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

/************
* bounceOutLeft *
*************/
@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.bounceOutLeft.goAway {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

/************
* bounceOutRight *
*************/
@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.bounceOutRight.goAway {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

/************
* fadeOut *
*************/
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut.goAway {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

/************
* fadeOutUp *
*************/
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUp.goAway {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

/************
* fadeOutDown *
*************/
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDown.goAway {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

/************
* fadeOutLeft *
*************/
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeft.goAway {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

/************
* fadeOutRight *
*************/
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRight.goAway {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

/************
* flipOutX *
*************/
@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.flipOutX.goAway {
  -webkit-animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  animation-name: flipOutX;
  backface-visibility: visible !important;
}

/************
* flipOutY *
*************/
@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  backface-visibility: visible !important;
  animation-name: flipOutY;
}

/************
* lightSpeedOutRight *
*************/
@-webkit-keyframes lightSpeedOutRight {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOutRight {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
.lightSpeedOutRight.goAway {
  -webkit-animation-name: lightSpeedOutRight;
  animation-name: lightSpeedOutRight;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

/************
* lightSpeedOutLeft *
*************/
@-webkit-keyframes lightSpeedOutLeft {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(-100%) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOutLeft {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(-100%) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOutLeft.goAway {
  -webkit-animation-name: lightSpeedOutLeft;
  animation-name: lightSpeedOutLeft;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

/************
* rotateOut *
*************/
@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
.rotateOut.goAway {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

/************
* rotateOutUpLeft *
*************/
@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -transform-origin: left bottom;
    -transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutUpLeft.goAway {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

/************
* rotateOutDownLeft *
*************/
@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutDownLeft.goAway {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

/************
* rotateOutUpRight *
*************/
@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutUpRight.goAway {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

/************
* rollOut *
*************/
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
  }
}
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
.rollOut.goAway {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

/*****************
* Short Animations
*******************/
/*********************
* fadeInUpShort
*********************/
@-webkit-keyframes fadeInUpShort {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUpShort {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpShort {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
}

.fadeInUpShort.go {
  -webkit-animation-name: fadeInUpShort;
  animation-name: fadeInUpShort;
}

/*********************
* fadeInDownShort
*********************/
@-webkit-keyframes fadeInDownShort {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDownShort {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownShort {
  opacity: 0;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
}

.fadeInDownShort.go {
  -webkit-animation-name: fadeInDownShort;
  animation-name: fadeInDownShort;
}

/*********************
* fadeInRightShort 
*********************/
@-webkit-keyframes fadeInRightShort {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInRightShort {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightShort {
  opacity: 0;
  -webkit-transform: translateX(20px);
  transform: translateX(20px);
}

.fadeInRightShort.go {
  -webkit-animation-name: fadeInRightShort;
  animation-name: fadeInRightShort;
}

/*********************
* fadeInLeftShort 
*********************/
@-webkit-keyframes fadeInLeftShort {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInLeftShort {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftShort {
  opacity: 0;
  -webkit-transform: translateX(-20px);
  transform: translateX(-20px);
}

.fadeInLeftShort.go {
  -webkit-animation-name: fadeInLeftShort;
  animation-name: fadeInLeftShort;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  overflow-x: hidden;
}

ul {
  list-style: none;
  padding-left: 0px;
}

ul li {
  list-style-type: none;
}

img,
video {
  width: 100%;
}

a,
a:visited,
a:active {
  color: color("primary");
  text-decoration: underline;
}
a.btn,
a:visited.btn,
a:active.btn {
  color: #fff;
}
a:hover,
a:visited:hover,
a:active:hover {
  text-decoration: none;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.wrap {
  max-width: 1340px;
  margin: 0 auto;
  position: relative;
  width: 100%;
}

.wrap-tight {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.img-block {
  background-size: cover;
  border-radius: 10px;
  border: 3px solid #aad4b4;
  min-height: 400px;
}

section,
footer,
.padding {
  padding: 6rem 2rem;
}

.header-pad {
  padding: 2rem 1rem;
}

@media only screen and (min-width: 768px) {
  section,
  footer,
  .padding {
    padding: 4rem 4vw;
  }
  .header-pad {
    padding: 2rem 4vw;
  }
}
@media only screen and (min-width: 1248px) {
  .header-pad {
    padding: 1rem 6vw;
  }
  section,
  footer,
  .padding {
    padding: 4rem 6vw;
  }
}
.test {
  border: 1px solid red;
}

.rel {
  position: relative;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.overflow-visible {
  overflow: visible;
}

.overflow-hidden {
  overflow: hidden;
}

.clickable {
  cursor: pointer;
}

.nowrap {
  white-space: nowrap;
}

@media only screen and (max-width: 559px) {
  .s-show {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .m-show {
    display: none !important;
  }
}

@media only screen and (max-width: 1247px) {
  .l-show {
    display: none !important;
  }
}

@media only screen and (min-width: 560px) {
  .s-hide {
    display: none !important;
  }
}

@media only screen and (min-width: 1024px) {
  .m-hide {
    display: none !important;
  }
}

@media only screen and (min-width: 1248px) {
  .l-hide {
    display: none !important;
  }
}

.m-0 {
  margin: 0;
}

.m-1 {
  margin: 1rem;
}

.m-2 {
  margin: 2rem;
}

.m-3 {
  margin: 3rem;
}

.m-4 {
  margin: 4rem;
}

.m-5 {
  margin: 5rem;
}

.m-6 {
  margin: 8rem;
}

.m-7 {
  margin: 7rem;
}

.m-8 {
  margin: 8rem;
}

.m-9 {
  margin: 9rem;
}

.m-10 {
  margin: 10rem;
}

.mt-0 {
  margin-top: 0rem;
}

.mt-1 {
  margin-top: 1rem;
}

.mt-2 {
  margin-top: 2rem;
}

.mt-3 {
  margin-top: 3rem;
}

.mt-4 {
  margin-top: 4rem;
}

.mt-5 {
  margin-top: 5rem;
}

.mt-6 {
  margin-top: 6rem;
}

.mt-7 {
  margin-top: 7rem;
}

.mt-8 {
  margin-top: 8rem;
}

.mt-9 {
  margin-top: 9rem;
}

.mt-10 {
  margin-top: 10rem;
}

.mr-0 {
  margin-right: 0rem;
}

.mr-1 {
  margin-right: 1rem;
}

.mr-2 {
  margin-right: 2rem;
}

.mr-3 {
  margin-right: 3rem;
}

.mr-4 {
  margin-right: 4rem;
}

.mr-5 {
  margin-right: 5rem;
}

.mr-6 {
  margin-right: 6rem;
}

.mr-7 {
  margin-right: 7rem;
}

.mr-8 {
  margin-right: 8rem;
}

.mr-9 {
  margin-right: 9rem;
}

.mr-10 {
  margin-right: 10rem;
}

.mb-0 {
  margin-bottom: 0rem;
}

.mb-1 {
  margin-bottom: 1rem;
}

.mb-2 {
  margin-bottom: 2rem;
}

.mb-3 {
  margin-bottom: 3rem;
}

.mb-4 {
  margin-bottom: 4rem;
}

.mb-5 {
  margin-bottom: 5rem;
}

.mb-6 {
  margin-bottom: 6rem;
}

.mb-7 {
  margin-bottom: 7rem;
}

.mb-8 {
  margin-bottom: 8rem;
}

.mb-9 {
  margin-bottom: 9rem;
}

.mb-10 {
  margin-bottom: 10rem;
}

.ml-0 {
  margin-left: 0rem;
}

.ml-1 {
  margin-left: 1rem;
}

.ml-2 {
  margin-left: 2rem;
}

.ml-3 {
  margin-left: 3rem;
}

.ml-4 {
  margin-left: 4rem;
}

.ml-5 {
  margin-left: 5rem;
}

.ml-6 {
  margin-left: 6rem;
}

.ml-7 {
  margin-left: 7rem;
}

.ml-8 {
  margin-left: 8rem;
}

.ml-9 {
  margin-left: 9rem;
}

.ml-10 {
  margin-left: 10rem;
}

.my-0 {
  margin-top: 0rem;
  padding-bottom: 0rem;
}

.my-1 {
  margin-top: 1rem;
  padding-bottom: 1rem;
}

.my-2 {
  margin-top: 2rem;
  padding-bottom: 2rem;
}

.my-3 {
  margin-top: 3rem;
  padding-bottom: 3rem;
}

.my-4 {
  margin-top: 4rem;
  padding-bottom: 4rem;
}

.my-5 {
  margin-top: 5rem;
  padding-bottom: 5rem;
}

.my-6 {
  margin-top: 6rem;
  padding-bottom: 6rem;
}

.my-7 {
  margin-top: 7rem;
  padding-bottom: 7rem;
}

.my-8 {
  margin-top: 8rem;
  padding-bottom: 8rem;
}

.my-9 {
  margin-top: 9rem;
  padding-bottom: 9rem;
}

.my-10 {
  margin-top: 10rem;
  padding-bottom: 10rem;
}

.mx-0 {
  margin-left: 0rem;
  padding-right: 0rem;
}

.mx-1 {
  margin-left: 1rem;
  padding-right: 1rem;
}

.mx-2 {
  margin-left: 2rem;
  padding-right: 2rem;
}

.mx-3 {
  margin-left: 3rem;
  padding-right: 3rem;
}

.mx-4 {
  margin-left: 4rem;
  padding-right: 4rem;
}

.mx-5 {
  margin-left: 5rem;
  padding-right: 5rem;
}

.mx-6 {
  margin-left: 6rem;
  padding-right: 6rem;
}

.mx-7 {
  margin-left: 7rem;
  padding-right: 7rem;
}

.mx-8 {
  margin-left: 8rem;
  padding-right: 8rem;
}

.mx-9 {
  margin-left: 9rem;
  padding-right: 9rem;
}

.mx-10 {
  margin-left: 10rem;
  padding-right: 10rem;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.my-auto {
  margin-top: auto;
  margin-left: auto;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.p-0 {
  padding: 0;
}

.p-1 {
  padding: 1rem;
}

.p-2 {
  padding: 2rem;
}

.p-3 {
  padding: 3rem;
}

.p-4 {
  padding: 4rem;
}

.p-5 {
  padding: 5rem;
}

.p-6 {
  padding: 6rem;
}

.p-7 {
  padding: 7rem;
}

.p-8 {
  padding: 8rem;
}

.p-9 {
  padding: 9rem;
}

.p-10 {
  padding: 10rem;
}

.pt-0 {
  padding-top: 0rem;
}

.pt-1 {
  padding-top: 1rem;
}

.pt-2 {
  padding-top: 2rem;
}

.pt-3 {
  padding-top: 3rem;
}

.pt-4 {
  padding-top: 4rem;
}

.pt-5 {
  padding-top: 5rem;
}

.pt-6 {
  padding-top: 6rem;
}

.pt-7 {
  padding-top: 7rem;
}

.pt-8 {
  padding-top: 8rem;
}

.pt-9 {
  padding-top: 9rem;
}

.pt-10 {
  padding-top: 10rem;
}

.pt-12 {
  padding-top: 12rem;
}

.pt-14 {
  padding-top: 14rem;
}

.pr-0 {
  padding-right: 0;
}

.pr-1 {
  padding-right: 1rem;
}

.pr-2 {
  padding-right: 2rem;
}

.pr-3 {
  padding-right: 3rem;
}

.pr-4 {
  padding-right: 4rem;
}

.pr-5 {
  padding-right: 5rem;
}

.pr-6 {
  padding-right: 6rem;
}

.pr-7 {
  padding-right: 7rem;
}

.pr-8 {
  padding-right: 8rem;
}

.pr-9 {
  padding-right: 9rem;
}

.pr-10 {
  padding-right: 10rem;
}

.pb-0 {
  padding-bottom: 0rem;
}

.pb-1 {
  padding-bottom: 1rem;
}

.pb-2 {
  padding-bottom: 2rem;
}

.pb-3 {
  padding-bottom: 3rem;
}

.pb-4 {
  padding-bottom: 4rem;
}

.pb-5 {
  padding-bottom: 5rem;
}

.pb-6 {
  padding-bottom: 6rem;
}

.pb-7 {
  padding-bottom: 7rem;
}

.pb-8 {
  padding-bottom: 8rem;
}

.pb-9 {
  padding-bottom: 9rem;
}

.pb-10 {
  padding-bottom: 10rem;
}

.pb-14 {
  padding-bottom: 14rem;
}

.pl-0 {
  padding-left: 0rem;
}

.pl-1 {
  padding-left: 1rem;
}

.pl-2 {
  padding-left: 2rem;
}

.pl-3 {
  padding-left: 3rem;
}

.pl-4 {
  padding-left: 4rem;
}

.pl-5 {
  padding-left: 5rem;
}

.pl-6 {
  padding-left: 6rem;
}

.pl-7 {
  padding-left: 7rem;
}

.pl-8 {
  padding-left: 8rem;
}

.pl-9 {
  padding-left: 9rem;
}

.pl-10 {
  padding-left: 10rem;
}

.pt-0 {
  padding-top: 0rem !important;
}

.py-0 {
  padding-top: 0rem;
  padding-bottom: 0rem;
}

.py-1 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-2 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.py-3 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-4 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-5 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-6 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.py-7 {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.py-8 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.py-9 {
  padding-top: 9rem;
  padding-bottom: 9rem;
}

.py-10 {
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.px-0 {
  padding-left: 0rem;
  padding-right: 0rem;
}

.px-1 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-2 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.px-3 {
  padding-left: 3rem;
  padding-right: 3rem;
}

.px-4 {
  padding-left: 4rem;
  padding-right: 4rem;
}

.px-5 {
  padding-left: 5rem;
  padding-right: 5rem;
}

.px-6 {
  padding-left: 6rem;
  padding-right: 6rem;
}

.px-7 {
  padding-left: 7rem;
  padding-right: 7rem;
}

.px-8 {
  padding-left: 8rem;
  padding-right: 8rem;
}

.px-9 {
  padding-left: 9rem;
  padding-right: 9rem;
}

.px-10 {
  padding-left: 10rem;
  padding-right: 10rem;
}

@media only screen and (max-width: 1023px) {
  .pt-14 {
    padding-top: 4rem;
  }
  .pb-14 {
    padding-bottom: 4rem;
  }
}
.h-full {
  height: 100%;
}

.w-half {
  width: 90%;
}

@media only screen and (min-width: 768px) {
  .w-75 {
    width: 90%;
  }
  .w-90 {
    width: 90%;
  }
  .w-half {
    width: 75%;
  }
}
@media only screen and (min-width: 1248px) {
  .w-75 {
    width: 75%;
  }
  .w-half {
    width: 50%;
  }
}
/*
Font: 		Ratch
Style: 		Bold
URL: 		https://youworkforthem.com/font/T29210/ratch
Foundry: 	Roman Melikhov
Foundry: 	https://youworkforthem.com/designer/1473/roman-melikhov
Copyright:	Roman Melikhov
Version: 	17
Created:	June 09, 2025
License: 	https://www.youworkforthem.com/font-license 
License: 	The WebFont(s) listed in this document must follow the YouWorkForThem
			WebFont license rules. All other parties are strictly restricted 
			from using the WebFonts(s) listed without a purchased license. 
			All details above must always remain unaltered and visible in your CSS.
*/
html {
  font-size: 62.5%;
  line-height: 2.5rem;
}

.lh--1 {
  letter-spacing: -0.1rem;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.55em;
  font-family: "League Spartan", sans-serif;
}

.text-highlight {
  color: #aad4b4;
}

h1 {
  letter-spacing: -3px;
}

.text-6xl {
  font-size: 6.5rem;
}

.text-5xl {
  font-size: 6rem;
}

.text-4xl {
  font-size: 5rem;
}

.text-6xl, .text-5xl, .text-4xl {
  line-height: 0.9em;
  font-family: "League Spartan", sans-serif;
}

h1, h2, h3 {
  letter-spacing: -1px;
}

h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em {
  font-style: normal;
  color: #aad4b4;
}

.hr {
  border-top: 2px solid #aad4b4;
}

hr {
  opacity: 0;
}

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

.text-bold {
  font-weight: 700;
}

.lh-1 {
  line-height: 1em;
}

.text-xs {
  font-size: 1.1rem;
}

body {
  font-size: 1.6rem;
  color: #168936;
  font-weight: 300;
  font-family: "poppins", sans-serif;
}

p {
  line-height: 1.6em;
  font-size: 1.6rem;
}

h6 {
  border-bottom: 4px dotted #bbb;
  padding-bottom: 1em;
  margin-bottom: 2em;
  text-transform: uppercase;
}

blockquote {
  font-size: 1.6rem;
  line-height: 1.4em;
  font-family: "League Spartan", sans-serif;
}

h1,
.text-head {
  font-size: 6rem;
  letter-spacing: -1px;
}

h2,
.text-2xl,
h3,
.text-xl {
  font-size: 2.2rem;
  line-height: 1.2em;
}

h4,
.text-l {
  font-size: 2rem;
  line-height: 1.1em;
}

h5,
.text-ml,
h6,
.text-n {
  font-size: 1.8rem;
  line-height: 2.5rem;
}

.text-s {
  font-size: 1.3rem;
  line-height: 1.6em;
}

@media only screen and (min-width: 560px) {
  h1,
  .text-head {
    font-size: 6rem;
    letter-spacing: 0;
  }
  h2,
  .text-2xl,
  h3,
  .text-xl {
    font-size: 2.75rem;
    line-height: 1.1em;
  }
}
@media only screen and (min-width: 1024px) {
  body {
    font-size: 1.7rem;
  }
  h1,
  .text-head {
    line-height: 0.9em;
    font-size: 7.5rem;
  }
  h2,
  .text-2xl {
    font-size: 3rem;
    line-height: 1.1em;
  }
  h3,
  .text-xl {
    font-size: 2.75rem;
    line-height: 1.1em;
  }
  h4,
  .text-l {
    line-height: 4.5rem;
    font-size: 2.2rem;
    line-height: 1.1em;
  }
  h5,
  .text-ml {
    font-size: 2rem;
    line-height: 1.1em;
  }
  h6,
  .text-n {
    font-size: 1.8rem;
    line-height: 1.1em;
  }
}
a.link,
.link {
  color: color("primary");
  text-decoration: underline;
}

strong {
  font-weight: 600;
}

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

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

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

.ul {
  text-decoration: underline;
}

.uppercase {
  text-transform: uppercase;
}

.font-thin {
  font-weight: 100;
}

.font-extralight {
  font-weight: 200;
}

.font-light {
  font-weight: 300;
}

.font-normal {
  font-weight: 400;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.font-bold {
  font-weight: 700;
}

.font-extrabold {
  font-weight: 800;
}

.font-black {
  font-weight: 900;
}

.row-xl .text-right,
.row-l .text-right,
.row-m .text-right,
.row-s .text-right {
  text-align: unset;
}

@media only screen and (min-width: 1600px) {
  .row-xl .text-right {
    text-align: right;
  }
}
@media only screen and (min-width: 1248px) {
  .row-l .text-right {
    text-align: right;
  }
}
@media only screen and (min-width: 768px) {
  .row-m .text-right {
    text-align: right;
  }
}
@media only screen and (min-width: 560px) {
  .row-s .text-right {
    text-align: right;
  }
}
.bg-img {
  position: absolute;
  object-fit: cover;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.fourthree {
  padding-bottom: 100%;
}

.videoWrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.row-m,
.row-s,
.row-l,
.row-xl {
  display: block;
}

.gap-025 {
  gap: 0.25em;
}

.gap-05 {
  gap: 0.5em;
}

.gap-1 {
  gap: 1em;
}

.gap-2 {
  gap: 2em;
}

.gap-3 {
  gap: 3em;
}

.gap-4 {
  gap: 4em;
}

.gap-6 {
  gap: 6em;
}

.gap-8 {
  gap: 8em;
}

.gap-10 {
  gap: 10em;
}

.gap-12 {
  gap: 12em;
}

.flip-layout {
  flex-direction: row-reverse;
}

.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.align-end {
  align-self: flex-end;
}

.row, .flex {
  display: flex;
}

.flex-center {
  justify-content: center;
  align-items: center;
}

.flex-end {
  justify-content: flex-end;
}

.flex-reverse {
  flex-direction: row-reverse;
}

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

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-sb {
  justify-content: space-between;
}

.flex-col {
  display: flex;
  flex-direction: column;
}

.flex-1 {
  flex: 1;
}

.flex-2 {
  flex: 2;
}

.flex-3 {
  flex: 3;
}

.flex-4 {
  flex: 4;
}

@media only screen and (min-width: 1600px) {
  .row-xl {
    display: flex;
  }
  .row-xl.row-reverse {
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1248px) {
  .row-l {
    display: flex;
  }
  .row-l.row-reverse {
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 1024px) {
  .row-m {
    display: flex;
  }
  .row-m.row-reverse {
    flex-direction: row-reverse;
  }
}
@media only screen and (min-width: 560px) {
  .row-s {
    display: flex;
  }
  .row-s.row-reverse {
    flex-direction: row-reverse;
  }
}
@media only screen and (max-width: 1023px) {
  .mob-block {
    display: block;
    margin-bottom: 1em;
  }
  .flex .col {
    margin: 40px 0;
  }
  .columns {
    padding: 4rem;
  }
  .columns .flex {
    display: block;
  }
  .team-grid .flex {
    display: block;
  }
  .team-grid .flex > * {
    margin-bottom: 4rem;
  }
  .team-grid .flex > * .team-link {
    max-height: 150px;
    max-width: 150px;
    margin: 0 auto;
    margin-bottom: 2rem;
  }
  .flex > * {
    margin-bottom: 2rem;
  }
}
.grid {
  display: flex;
  flex-direction: column;
}

.grid {
  display: grid;
}

.grid-2-col {
  grid-template-columns: repeat(2, 1fr);
}

.grid-3-col {
  grid-template-columns: repeat(3, 1fr);
}

.grid-4-col {
  grid-template-columns: repeat(4, 1fr);
}

.grid-5-col {
  grid-template-columns: repeat(5, 1fr);
}

@media only screen and (max-width: 1023px) {
  .grid-5-col {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-3-col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 479px) {
  .grid-3-col {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media only screen and (max-width: 1247px) {
  .row-l > .col {
    margin-right: 0;
  }
  .row-l > .col.text-right {
    text-align: left;
  }
  .row-l > .col.double-gutter {
    margin-bottom: 4rem;
  }
  .row-l > .col.gutter {
    margin-bottom: 2rem;
  }
  .row-l > .col.half-gut {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 1023px) {
  .row-m > .col {
    margin-right: 0;
  }
  .row-m > .col.text-right {
    text-align: left;
  }
  .row-m > .col.double-gutter {
    margin-bottom: 4rem;
  }
  .row-m > .col.gutter {
    margin-bottom: 2rem;
  }
  .row-m > .col.half-gut {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 559px) {
  .row-s > .col {
    margin-right: 0;
  }
  .row-s > .col.text-right {
    text-align: left;
  }
  .row-s > .col.double-gutter {
    margin-bottom: 4rem;
  }
  .row-s > .col.gutter {
    margin-bottom: 2rem;
  }
  .row-s > .col.half-gut {
    margin-bottom: 1rem;
  }
}
:root {
  background-color: #fff;
}

.shadow {
  box-shadow: 5px 5px 15px rgba(51, 51, 51, 0.2);
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 2px solid #888;
  margin: 1em 0;
  padding: 0;
}

a.link,
.link {
  color: color("primary");
  text-decoration: underline;
}

.btn, a.btn {
  font-weight: 600;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  background-color: #168936;
  color: #fff;
  padding: 0.7em 1.2em 0.65em;
  text-decoration: none;
  border-radius: 10px;
  font-size: 1em;
  text-align: left;
  transition: all linear 0.1s;
  line-height: 1.5em;
  text-align: center;
}
.btn svg, a.btn svg {
  position: absolute;
  right: 20px;
  top: 50%;
  transition: all ease-in-out 0.2s;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  width: 25px;
  height: 20px;
}
.btn svg g path, a.btn svg g path {
  fill: #168936;
}
.btn:hover, a.btn:hover {
  color: #fff;
  background-color: #222;
  border-color: #aad4b4;
}
.btn:hover svg, a.btn:hover svg {
  right: 10px;
}
.btn:hover svg g path, a.btn:hover svg g path {
  fill: #aad4b4;
}
.btn.btn-ghost:hover, a.btn.btn-ghost:hover {
  color: color("primary");
  background-color: color("highlight");
}
.btn.btn-secondary, a.btn.btn-secondary {
  background-color: #aad4b4;
  color: #222;
}
.btn.btn-secondary svg path, a.btn.btn-secondary svg path {
  fill: #222;
}
.btn.btn-secondary:hover, a.btn.btn-secondary:hover {
  background-color: #222;
  color: #aad4b4;
}
.btn.btn-secondary:hover svg path, a.btn.btn-secondary:hover svg path {
  fill: #aad4b4;
}

/* svg .cls-3 { fill: blue !important} */
.btn svg rect {
  fill: #e61c6d !important;
  stroke: #e61c6d !important;
}

.btn-icon img {
  right: auto;
  left: 20px;
  height: 30px;
  width: auto;
  top: 10px;
  border-radius: 0;
}
.btn-icon:hover svg * {
  fill: #168936;
}

.swiper-container {
  width: 100%;
  height: 100%;
}

.swiper-autoplay .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  -o-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

ul.quotes_carousel {
  width: 100%;
  padding-left: 110px;
}

.slick-next,
.slick-prev {
  position: absolute;
  width: 80px;
  background-image: url(https://chaptrtechstg.wpengine.com/wp-content/uploads/2026/04/chaptr-arrow.svg);
  height: 80px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 1000px;
  border: 0px;
  text-indent: -9999em;
  top: 20px;
  left: 0px;
}

.slick-next {
  top: 113px;
}

.slick-prev {
  transform: rotate(180deg);
}

@media only screen and (max-width: 1023px) {
  ul.quotes_carousel {
    padding-left: 0px;
    position: relative;
  }
  ul.quotes_carousel .slick-next, ul.quotes_carousel .slick-prev {
    top: 0px;
    right: 0px;
    width: 50px;
    height: 50px;
    left: auto;
  }
  ul.quotes_carousel .slick-next {
    right: 0px;
  }
  ul.quotes_carousel .slick-prev {
    right: 60px;
  }
  ul.quotes_carousel blockquote {
    font-size: 2rem;
  }
}
.list-dot {
  color: black;
}
.list-dot li {
  display: inline-block;
}
.list-dot li:before {
  content: " •  ";
  color: black;
}
.list-dot li:first-child:before {
  content: "";
}

.list-breadcrumb {
  padding-bottom: 1rem;
}
.list-breadcrumb li {
  display: inline-block;
  font-weight: 400;
  line-height: 2.5rem;
  font-size: 1rem;
}
.list-breadcrumb li a {
  color: color("primary");
}
.list-breadcrumb li::before {
  content: "·";
  display: inline-block;
  font-weight: 900;
  margin: 0 0.15rem;
}
.list-breadcrumb li:first-child::before {
  content: "";
  display: none;
}

@media only screen and (min-width: 768px) {
  .swipe-left {
    transform: translateX(-100px);
  }
  .swipe-right {
    transform: translateX(100px);
  }
  .swipe-down {
    transform: translateY(-100px);
  }
  .swipe-up {
    transform: translateY(100px);
  }
  .fade-in {
    opacity: 0;
  }
}
.fade {
  transition: opacity 1.5s, transform 1.2s;
}

.appear {
  opacity: 1;
}

.position {
  transform: translate(0px, 0px);
}

.delay-1 {
  transition-delay: 0.25s !important;
}

.delay-2 {
  transition-delay: 0.5s;
}

.delay-3 {
  transition-delay: 0.75s;
}

.delay-4 {
  transition-delay: 1s;
}

.delay-5 {
  transition-delay: 1.25s;
}

a.cs-card-pic {
  background-size: cover;
  display: block;
  text-decoration: none;
  border-top: 5px solid #aad4b4;
  min-height: 530px;
  background-position: center;
}

.post__hero .bg-img {
  opacity: 0.25;
  z-index: 0;
}

.single-resource .bg-img {
  opacity: 0.25;
  z-index: 0;
}

.post__main {
  max-width: 1500px;
  margin: 0 auto;
}

.post__aside {
  padding: 4rem;
  padding-bottom: 16rem;
}

@media only screen and (min-width: 1024px) {
  .post__main {
    position: relative;
  }
  .post__main section {
    padding-right: 400px;
  }
  .post__aside {
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    padding: 4rem;
    padding-top: 8rem;
  }
}
.single-post .wrap section.pt-14.pb-14 {
  padding: 0;
}

.bg-grey {
  background-color: #eee;
}

.mini-pic img {
  width: 160px !important;
  height: 160px !important;
  border-radius: 500px;
  margin-right: 10px;
  border-color: #168936;
}

.mw-img {
  height: 200px;
  width: 100%;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.pagination {
  align-items: center;
  text-align: center;
  display: flex;
  gap: 2em;
  justify-content: space-between;
}

.cs-card {
  position: relative;
}
.cs-card span {
  z-index: 888;
  position: relative;
}
.cs-card .btn {
  position: absolute;
  bottom: 2rem;
  right: -100%;
  transition: all ease-in-out 0.2s;
}
.cs-card .text-content {
  bottom: 0rem;
  left: 2rem;
  width: calc(90% - 2rem);
  transition: all ease-in-out 0.2s;
}
.cs-card .text-content p {
  opacity: 1;
}
.cs-card a {
  position: relative;
  overflow: hidden;
}
.cs-card a > * {
  z-index: 222;
}
.cs-card a:before {
  transition: all ease-in-out 0.2s;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  content: "";
  display: block;
  background-color: #222;
  opacity: 0.8;
}
.cs-card:hover .btn {
  right: 2rem;
}
.cs-card:hover .text-content {
  bottom: 4rem;
}
.cs-card:hover .text-content p {
  opacity: 0;
}
.cs-card:hover a:before {
  opacity: 0.2;
}

.text-caps {
  text-transform: uppercase;
}

.text-white {
  color: #fff !important;
}

.ls-2 {
  letter-spacing: 2px;
}

.absolute {
  position: absolute;
}

.page-jobs .hero .job-search {
  margin: auto;
}
.page-jobs .hero .job-search input::placeholder {
  color: white;
}

.job-feed-wide {
  left: 0%;
  position: relative;
  width: 100%;
}

/* the slides */
.carousel-jobs .slick-slide {
  margin: 0 10px;
  padding: 10px 0;
}

/* the parent */
.carousel-jobs .slick-list {
  margin: 0 -10px;
}

.single-job .hero ul li:before {
  display: none;
}

.single-job .hero ul li svg {
  width: auto;
  height: 30px;
}

.job-card {
  background-color: #168936;
  position: relative;
  border: 2px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  margin-bottom: 1em;
  padding-bottom: 70px;
  min-height: 570px;
}
.job-card span.btn {
  width: auto;
  display: inline-block;
  position: absolute;
  bottom: 2rem;
  left: 3rem;
}
.job-card a {
  display: block;
  text-decoration: none;
  color: #01565b;
  transition: all linear 0.2s;
}
.job-card a * {
  transition: all linear 0.2s;
}
.job-card a img {
  border-radius: 200px;
  border: 3px solid #168936;
}
.job-card a h3 {
  color: #fff;
  margin-bottom: 1em;
  min-height: 12rem;
  font-size: 2.7rem;
}
.job-card a p, .job-card a ul {
  font-size: 1.35rem;
  color: #fff;
}
.job-card a p {
  line-height: 1.5em;
  font-size: 1.4rem;
  opacity: 1;
}
.job-card a ul {
  margin-bottom: 2.5em;
  position: relative;
}
.job-card a ul li {
  position: relative;
  font-size: 1.4rem;
  margin-top: 0.5em;
  padding-top: 0.5em;
  color: #fff;
  border-top: 1px dashed rgba(255, 255, 255, 0.3);
  line-height: 1.5em;
}
.job-card a ul li:first-child {
  border-top: 0px;
}
.job-card a .posted-by {
  position: absolute;
  bottom: 1em;
  left: 1em;
  gap: 1em;
}
.job-card a .posted-by img {
  width: 50px;
}
.job-card:hover {
  border: 2px solid #168936;
  background-color: #222;
}
.job-card:hover * {
  text-decoration: none;
}
.job-card:hover p, .job-card:hover ul {
  opacity: 0;
}

.arrow-more {
  position: absolute;
  width: 55px;
  overflow: hidden;
  height: 20px;
  bottom: 2rem;
  right: 3rem;
}
.arrow-more svg {
  max-width: 100%;
  height: auto;
}

.adv-by img {
  width: 100%;
  max-width: 300px;
  border-radius: 300px;
  border: 4px solid #168936;
  height: auto;
}
.adv-by ul {
  line-height: 1.55em;
}

.hero .job-meta li {
  padding-left: 20px;
  line-height: 1.55em;
  position: relative;
  font-size: 1.1em;
}
.hero .job-meta li:before {
  content: "";
  width: 5px;
  height: 5px;
  background-color: #aad4b4;
  display: block;
  position: absolute;
  top: 11px;
  left: 3px;
  border-radius: 10px;
}

.quote-pic {
  width: 150px;
  height: 150px;
  position: relative;
  overflow: hidden;
  border-radius: 150px;
  margin-bottom: 2rem;
}
.quote-pic img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 1024px) {
  .grid.grid-4-col {
    grid-template-columns: repeat(2, 1fr);
  }
  #jobinfo .flex {
    display: block;
  }
  .job-feed-wide {
    width: 100%;
    left: 0;
  }
  .hero > .wrap {
    padding-bottom: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .grid.grid-4-col {
    grid-template-columns: repeat(1, 1fr);
  }
  .testimonial .flex {
    display: block;
  }
  .img-block .flex {
    display: block;
  }
  .img-block.flex-1 {
    margin-bottom: 4rem;
  }
  .adv-by {
    padding: 4rem 6rem;
  }
  ul.job-meta {
    display: block;
    padding-top: 1em;
  }
  .pt-10 {
    padding-top: 5rem;
  }
}
.hero-job {
  background-color: #01565b;
}

img.watermark {
  position: absolute;
  right: -16em;
  width: 800px;
  top: -10em;
}

footer {
  padding-bottom: 10em;
  background-repeat: no-repeat;
  background-size: 800px;
  background-position: right -20px top -20px;
  background: #222;
}
footer p, footer a, footer li {
  color: #fff !important;
}
footer p.text-highlight {
  color: #aad4b4 !important;
}
footer h4 {
  margin-bottom: 1em;
}
footer li {
  line-height: 1.75em;
}
footer li ul.sub-menu {
  display: none;
}
footer img {
  max-height: 180px;
  width: auto;
  max-width: 150px;
  height: auto;
}
footer .cta-icons li {
  padding-left: 40px;
  background-size: 35px;
  padding: 0.25em 0.25em 0.25em 55px;
  background-position: left center;
  background-repeat: no-repeat;
}
footer li, footer p {
  font-size: 1.5rem;
  padding: 0.25em 0;
}
footer a {
  color: #aad4b4 !important;
}
footer footer .page_item {
  margin-left: 0;
}

@media only screen and (max-width: 960px) {
  footer .flex {
    display: block;
    padding: 0 2rem;
  }
  footer .flex .col {
    margin-bottom: 40px;
  }
}
.social-links {
  gap: 1rem;
}
.social-links svg {
  width: 50px;
  height: 50px;
}

/*
////////////////
    Mobile
////////////////
*/
.socials {
  position: relative;
  top: 2rem;
  left: 2rem;
  gap: 0.5em;
}

#menu-btn {
  background-color: #222;
  color: #fff;
  position: relative;
  font-family: "League Spartan", sans-serif;
  padding: 0.3rem 2rem 0.3rem 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  cursor: pointer;
  z-index: 99999;
  transition: all linear 0.2s;
}
#menu-btn:hover {
  background-color: #168936;
}
#menu-btn span {
  background: #aad4b4;
  width: 30px;
  height: 3px;
  border-radius: 5px;
  display: block;
  position: relative;
}
#menu-btn span:before, #menu-btn span:after {
  background: #aad4b4;
  display: block;
  content: "";
  width: 30px;
  height: 3px;
  position: absolute;
  top: -6px;
  left: auto;
  transition: all linear 0.2s;
}
#menu-btn span:after {
  top: 6px;
}

.nav-open #menu-btn {
  background-color: #168936;
}
.nav-open #overlay {
  padding: 0;
}
.nav-open #overlay .flex {
  display: flex;
}

.nav-right a {
  text-decoration: none;
}

.nav-top {
  display: flex;
  padding: 3rem 0 2rem;
  gap: 1.5rem;
  align-items: center;
}
.nav-top svg {
  max-width: 30px;
  height: auto;
}

#nav-popover {
  background: #E5FFEB;
  background: linear-gradient(15deg, rgb(229, 255, 235) 0%, rgb(255, 255, 255) 49%);
}

.media video {
  mix-blend-mode: lighten;
}

ul#menu-main {
  display: block;
  gap: 1em;
  justify-content: flex-end;
}
ul#menu-main li {
  margin-bottom: 1rem;
}
ul#menu-main li:first-child {
  border-top: 0px;
}
ul#menu-main li a {
  color: #168936;
  display: block;
  font-size: 4.5rem;
  padding: 2rem 3rem;
  border-radius: 10px;
  background: #E5FFEB;
  font-weight: bold;
  text-decoration: none;
  text-transform: lowercase;
}
ul#menu-main li a:hover {
  background: #168936;
  color: #fff;
}
ul#menu-main li.current-menu-item a {
  background: #168936;
  color: #fff;
}

nav ul li {
  position: relative;
}
nav ul li ul {
  display: none;
  width: 300px;
  position: absolute;
  top: 50px;
  z-index: 8888;
  border-radius: 10px;
  height: auto !important;
  left: 0px;
  background-color: #168936;
  padding: 1rem;
}
nav ul li ul li {
  width: 100%;
  display: block;
  margin-bottom: 1rem;
}
nav ul li ul li a {
  padding: 0.75rem;
  font-weight: bold;
  color: #168936 !important;
  display: block;
  background: #E5FFEB;
}
nav ul li ul li a:first-child {
  border-top: 0px;
}
nav ul li ul li a:hover {
  color: #aad4b4 !important;
  text-decoration: underline;
}

nav ul li {
  padding: 1em 0;
}
nav ul li ul li {
  padding: 0.25em 0;
}
nav ul li a {
  color: #fff !important;
}

.home .hero {
  padding-top: 80px !important;
}

nav ul li:hover ul {
  display: block;
}

.hamburger {
  background: #019b67;
  position: absolute;
  top: 0px;
  right: 0px;
}
.hamburger .hamburger-inner,
.hamburger .hamburger-inner::after,
.hamburger .hamburger-inner::before {
  background-color: #fff;
}

.video-embed video {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 1023px) {
  .overlay {
    max-width: 400px;
    border-right: #333 solid 4px;
    background-color: white;
  }
  .overlay {
    padding: 2rem;
    position: fixed;
    overflow: hidden;
    top: 0;
    left: -9999px;
    height: 100%;
    z-index: 9999;
    width: 100%;
    transform: translate(-100%);
  }
  .overlay-show .overlay {
    left: 0;
    transform: translate(0);
    transition: transform 0.5s, padding 0.5s;
  }
}
@media only screen and (max-width-width: 400px) {
  .overlay {
    padding: 5rem 2rem;
  }
}
/*
///////////////
    Desktop
///////////////
*/
@media only screen and (min-width: 1024px) {
  .main-navigation {
    height: 100%;
  }
  .main-navigation ul {
    align-items: center;
    height: 100%;
  }
}
/*
------------------------------------------------
   Navicon
------------------------------------------------
*/
#navicon:focus {
  outline: 0;
}

#navicon {
  margin-left: auto;
  z-index: 9999;
}

@media only screen and (min-width: 1248px) {
  #navicon {
    display: block;
  }
}
@media only screen and (max-width: 1024px) {
  nav ul, nav ul li ul {
    display: block !important;
    position: relative !important;
    border: 0px;
  }
  nav ul li ul {
    margin: 20px 0 0;
    padding: 0;
    top: 0;
    font-size: 1.4rem;
  }
}
/*
------------------------------------------------
   Full Page Menu Overlay
------------------------------------------------
*/
.menu-main-container,
.main-navigation {
  width: 100%;
}

#overlay {
  display: none;
  top: 0px;
  left: 0px;
  bottom: 0px;
  overflow-y: scroll;
  position: fixed;
  width: 100%;
  height: 100%;
  padding: 2rem;
  box-sizing: border-box;
  background-color: #222;
  z-index: 9996;
}
#overlay textarea {
  height: 100px;
}
#overlay ul#menu-main {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: center;
  justify-content: center;
}
#overlay ul#menu-main li {
  border-radius: 0px;
  flex-grow: 1;
  text-align: center;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 0px;
  position: relative;
}
#overlay ul#menu-main li a {
  display: block;
  text-align: left;
  width: 100%;
  font-size: 5rem;
  padding: 0 0 2rem;
  position: relative;
  -webkit-transition: all linear 0.3s;
  transition: all linear 0.3s;
}
#overlay ul#menu-main li a:hover {
  color: #168936 !important;
  text-decoration: line-through;
}

.nav-open #overlay {
  display: block;
}
.nav-open span {
  background-color: transparent;
}
.nav-open span:before {
  transform: rotate(45deg);
  top: 0px;
}
.nav-open span:after {
  transform: rotate(-45deg);
  top: 0px;
}

.nav-sticky ul#menu-main {
  position: fixed;
  width: 100%;
  top: 0px;
  left: 0px;
  background: #2c1757;
  padding: 1em;
}

.nav-open ul#menu-main {
  left: 0px;
}
.nav-open #navicon span {
  background-color: transparent;
}
.nav-open #navicon span:before {
  transform: rotate(45deg);
  top: 0px;
  left: 0px;
}
.nav-open #navicon span:after {
  transform: rotate(-45deg);
  top: 0px;
  left: 0px;
}

@media only screen and (max-width: 1023px) {
  .nav-open #overlay .flex {
    display: block;
  }
  .nav-open #overlay .flex ul li a {
    font-size: 3rem;
  }
}
#navicon {
  position: fixed;
  width: 120px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  border-radius: 75px;
  right: 2rem;
  cursor: pointer;
  color: #fff;
  font-weight: bold;
  z-index: 99999;
  top: 2rem;
  background-color: #168936;
}
#navicon span {
  position: absolute;
  display: block;
  width: 70%;
  height: 2px;
  left: 15%;
  top: 50%;
  border-radius: 10px;
  margin-top: -1.5px;
  background: #aad4b4;
}
#navicon span:before, #navicon span:after {
  content: "";
  display: block;
  border-radius: 10px;
  width: 100%;
  top: -8px;
  height: 2px;
  position: absolute;
  background-color: #aad4b4;
  transition: all linear 0.2s;
}
#navicon span:after {
  top: auto;
  bottom: -8px;
}

@media only screen and (max-width: 1023px) {
  .nav-top {
    display: none;
  }
}
.site-branding {
  width: 280px;
  height: 100px;
  top: 20px;
  left: 20px;
  position: relative;
  opacity: 1;
  transition: all linear 0.2s;
}
.site-branding a {
  display: block;
  width: 100%;
  height: auto;
}
.site-branding a svg {
  width: 100%;
  height: auto;
}

.nav-open .site-branding {
  opacity: 0;
}

.single-post .site-branding {
  max-width: 300px;
  top: 0px;
  left: 0px;
  position: relative;
  height: 100%;
  padding: 0.5em;
}

header {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: auto;
  z-index: 9999;
  align-items: flex-start svg;
  align-items-width: 100%;
}

header.bk-dk {
  background-color: transparent;
}

nav ul {
  display: flex;
  gap: 1em;
  padding-top: 1em;
}
nav ul li.page_item {
  margin: 0px;
}
nav ul li a, nav ul li a:visited, nav ul li a:active {
  color: #fff;
  text-decoration: none;
}

.nav-links {
  position: relative;
  top: 2rem;
  right: auto;
}
.nav-links img {
  max-height: 70px;
  width: auto;
}

@media only screen and (max-width: 1023px) {
  header .socials {
    display: none;
  }
}
@media only screen and (max-width: 479px) {
  header svg {
    max-width: 120px;
  }
  .nav-links img {
    max-height: 60px;
  }
  #menu-btn {
    height: 60px;
  }
}
.astro svg path {
  fill: #222;
}

.post-card h3 {
  font-size: 4rem;
}

.h-full {
  min-height: 100vh;
}

.bk-highlight {
  background-color: #e3114c !important;
}
.bk-highlight h1, .bk-highlight h2, .bk-highlight h3, .bk-highlight h4, .bk-highlight h5, .bk-highlight h6, .bk-highlight p {
  color: #fff;
}
.bk-highlight p a, .bk-highlight li a {
  color: #fff !important;
}

.lower-footer p, .lower-footer li {
  color: #fff;
}
.lower-footer p a, .lower-footer li a {
  color: #fff;
}

.accordion {
  padding: 2rem 0;
}
.accordion li {
  border-top: 1px dashed #aad4b4;
  padding: 2rem 0;
}
.accordion li:first-child {
  border-top: none;
}
.accordion li .accordion-content {
  display: none;
}
.accordion li.active .accordion-content {
  display: block;
}

.home .card-overlap {
  position: relative;
}
.home .card-overlap .wrap h1 {
  color: #fff;
}
.home .card-overlap > * {
  position: relative;
  z-index: 100;
}
.home .card-overlap:before {
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 700px;
  background-color: #222;
  z-index: -1;
}

.dark-strip-bottom {
  position: relative;
}
.dark-strip-bottom > * {
  position: relative;
  z-index: 100;
}
.dark-strip-bottom:after {
  width: 100%;
  height: 300px;
  content: "";
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0px;
  background-color: #222;
  z-index: 0;
}

.py-20 {
  padding-top: 20rem;
  padding-bottom: 20rem;
}

/* CAROUSEL */
/* the slides */
.slick-slide {
  margin: 0 20px;
  padding: 20px 0;
}

/* the parent */
.slick-list {
  margin: 0 -20px;
}

.division-scroller a {
  text-decoration: none;
}
.division-scroller a img {
  border: 10px solid #eee;
  border-radius: 500px;
}
.division-scroller a:hover img {
  border: 10px solid #2C1757;
}
.division-scroller a:hover h4 {
  text-decoration: underline;
}

cite img {
  max-width: 60px;
}

.marq-wrap {
  background: #E5FFEB;
  text-transform: uppercase;
  /* the parent */
}
.marq-wrap p {
  font-size: 2rem;
}
.marq-wrap .slick-slide {
  margin: 0 5px;
  padding: 20px 0;
}
.marq-wrap .slick-list {
  margin: 0 5px;
}

#quote-marks {
  z-index: -1;
  max-width: 70%;
  max-height: 70%;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.bt-1 .col {
  padding-top: 4rem !important;
  border-top: 1px solid #aad4b4;
}

.marq-wrap {
  height: 70px;
}
.marq-wrap .btn {
  position: absolute;
  right: 2rem;
  top: 1.5rem;
}

.br-5 {
  border-radius: 5px;
}

.division {
  text-align: center;
}
.division img {
  max-width: 300px;
  margin: 0 auto 1em;
}
.division h3 {
  margin-bottom: 0.25em;
  min-height: 100px;
  line-height: 3.3rem;
  padding-top: 2rem;
}

.tile {
  font-family: "League Spartan", sans-serif;
  font-weight: 500;
  font-size: 3.2rem;
  border-radius: 5px;
  padding: 1rem;
  max-width: 240px;
  background-color: rgba(0, 0, 0, 0.2);
}

.photo {
  padding: 0;
  border: 2px solid #aad4b4;
  border-radius: 5px;
  max-width: 220px;
}

/* the slides */
.marquee .slick-slide {
  margin: 0 10px;
}

.img-marquee .slick-list {
  margin: 0 -5px;
}
.img-marquee .slick-slide {
  margin: 0 5px;
}

.testimonial blockquote {
  font-family: "general sans medium", sans-serif;
}

.label {
  font-size: 1.2rem !important;
  padding: 1.2rem 2rem 1rem 40px;
  position: relative;
  background: #168936;
  color: #fff !important;
  display: inline-block;
  border-radius: 20px;
}
.label:before {
  content: "";
  display: block;
  background: #fff;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}

.post-card {
  position: relative;
  border: 2px solid #aad4b4;
}
.post-card .label {
  position: absolute;
  bottom: 3rem;
  left: 2rem;
}

.post-card__excerpt p {
  font-size: 1.5rem;
  margin: 1rem 0;
  color: #222;
}

.card article {
  padding-bottom: 3rem;
}
.card .btn {
  position: absolute;
  bottom: 0;
  left: 0;
}
.card figure, .card img {
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}
.card .wyg ul {
  padding-bottom: 2rem;
}
.card .wyg ul li {
  font-size: 1.6rem !important;
  padding: 0.45rem 0 0.45rem 20px;
  color: #222;
}
.card .wyg ul li:before {
  top: 14px;
  left: 4px;
}

.box-cols .columns-repeater__col {
  border: 4px solid #fff;
}

.text-marquee {
  padding-right: 260px;
  padding-top: 5px;
}

.quote-card {
  padding: 4rem;
  border-radius: 10px;
  background: #E5FFEB;
}
.quote-card blockquote {
  color: #222;
  font-size: 1.6rem;
  font-weight: 300;
  font-family: "League Spartan", sans-serif;
}
.quote-card p {
  color: #168936;
  font-weight: bold;
  text-align: right;
  line-height: 1.2em;
  font-size: 2.1rem;
}

.quoter-logo img {
  border: 0px solid #168936;
  height: 50px;
  margin-bottom: 3rem;
  padding: 0rem;
  border-radius: 0px;
  width: auto;
}

.box-cols .flex {
  gap: 2rem;
}
.box-cols .columns-repeater__col {
  border-radius: 20px;
  padding: 3rem;
  background: #CAF1D3;
}
.box-cols .columns-repeater__col img {
  max-height: 120px;
  width: auto;
}

.quoter-pic {
  text-align: center;
}
.quoter-pic img {
  border: 2px solid #001B5B;
  border-radius: 100px;
  margin-top: 2em;
  max-width: 80px;
}

p.lrg-num {
  position: absolute;
  font-family: "Mona Sans Bold", arial;
  font-size: 30rem;
  opacity: 0.1;
  z-index: -1;
  top: -100px;
  font-weight: 600;
  left: -75px;
}

.br-10 {
  border-radius: 10px;
}

.br-3 {
  border: 3px solid #168936;
  border-radius: 5px;
}

.hover-tiles div {
  background-color: #1B484A;
  min-height: 400px;
  transition: all linear 0.2s;
}
.hover-tiles div .num {
  font-size: 10rem;
  font-family: "Mona Sans Bold", arial;
}
.hover-tiles div h3 {
  margin-bottom: 2rem;
}
.hover-tiles div:hover {
  background-color: #ddd;
}
.hover-tiles div:hover p, .hover-tiles div:hover h3 {
  color: #1B484A;
}

.timeline-block {
  position: relative;
}
.timeline-block h3 {
  font-size: 4rem;
}
.timeline-block:after {
  width: 1px;
  height: 100%;
  border-left: 4px dashed #168936;
  position: absolute;
  left: 50%;
  top: 0px;
  z-index: 444;
  content: "";
  display: block;
}
.timeline-block:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: #E5FFEB;
  border: 5px solid #168936;
  border-radius: 100px;
  position: absolute;
  left: calc(50% + 1px);
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 7777;
}

.timeline-block__image {
  max-height: 400px;
  width: 100%;
  max-width: 400px;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
.timeline-block__image img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* or contain */
  object-position: center; /* center center */
  display: block;
}

.timeline-block__content {
  box-sizing: border-box;
}

.dotted-line-top {
  position: relative;
}
.dotted-line-top:before {
  content: "";
  display: block;
  width: 1px;
  border-left: 4px dashed #168936;
  position: absolute;
  top: 0px;
  left: 50%;
  height: 50%;
  z-index: 1;
}

.flex-reverse .flex-rev-img-align {
  display: flex;
  justify-content: flex-end;
}

.dark-text-box .timeline-block__content {
  background: #168936;
}
.dark-text-box .timeline-block__content h1, .dark-text-box .timeline-block__content h2, .dark-text-box .timeline-block__content h3, .dark-text-box .timeline-block__content h4, .dark-text-box .timeline-block__content h5, .dark-text-box .timeline-block__content h6, .dark-text-box .timeline-block__content p {
  color: #fff !important;
}

figure.viewpoint-header {
  position: absolute;
  left: -40px;
  width: 80px;
  top: 180px;
  height: auto;
}
figure.viewpoint-header svg {
  width: 40px;
  height: auto;
}

.loc-1,
.loc-2,
.loc-3,
.loc-4 {
  position: absolute;
  width: 40px;
  height: 40px;
  z-index: 200;
}
.loc-1 svg,
.loc-2 svg,
.loc-3 svg,
.loc-4 svg {
  width: 100%;
  height: auto;
}

.loc-1 {
  top: 29%;
  left: 36%;
}

.loc-2 {
  top: 32%;
  left: 44%;
}

.loc-3 {
  top: 71%;
  left: 49%;
}

.loc-4 {
  top: 45%;
  left: 75%;
}

/* the parent */
.marquee .slick-list {
  margin: 0 -10px;
}

.page-id-213 .hero.video-section {
  height: 70vh;
  min-height: 500px;
}
.page-id-213 .hero.video-section .btn {
  display: none;
}

.key-contact {
  border-radius: 10px;
}

.team-pic img {
  width: 80px;
  border-radius: 80px;
}

.team-info .bio {
  font-size: 1.2rem;
  line-height: 1.9rem;
}

.bg-lt-grey {
  background-color: #eee;
}

.br-5 {
  border-radius: 5px;
}

.bio {
  font-size: 1.3rem;
  line-height: 2.1rem;
}

.team-card {
  position: relative;
  padding-bottom: 6rem;
}
.team-card .icons {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
}
.team-card .icons a {
  text-decoration: none;
}
.team-card .icons svg {
  max-width: 40px;
  height: auto;
}

.q-pic img {
  width: 60px;
  height: 60px;
  border-radius: 60px;
  border: 2px solid #aad4b4;
}

/* SLOT ROLL TEST */
.slot-roll-wrap {
  position: relative;
  display: inline-block;
}

.slot-real {
  opacity: 0; /* keep layout, hide visually */
}

.slot-anim {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
}

.slot-anim .slot-word {
  display: inline-flex;
  white-space: nowrap;
  margin-right: 0.12em;
}

.slot-anim .slot-letter {
  display: inline-block;
  position: relative;
  overflow: hidden;
  height: 1em;
  line-height: 1em;
}

.slot-anim .slot-letter-inner {
  display: block;
}

.slot-anim .slot-letter-line {
  display: block;
  height: 1em;
  line-height: 1em;
  font: inherit;
}

.team-member-card {
  border: 0px;
  background: #E5FFEB;
}
.team-member-card__photo {
  width: 100%;
  height: auto;
  max-width: 200px;
  border-radius: 8px;
}
.team-member-card ul {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin: 3rem 0;
}
.team-member-card ul li {
  font-size: 1.5rem;
  padding: 1rem 2rem;
  background: #fff;
  border: 2px solid #168936;
  border-radius: 200px;
}
.team-member-card svg {
  width: 25px;
  margin-right: 0.25rem;
  height: auto;
  fill: #168936;
}
.team-member-card .linkedin-icon svg path {
  fill: #168936;
}

.accordion li .accordion-title {
  padding: 1rem 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.accordion li .accordion-title svg {
  width: 20px;
  height: 20px;
  fill: #aad4b4;
  transform: rotate(0deg);
  transition: all linear 0.2s;
}
.accordion li .accordion-title svg line {
  stroke: #aad4b4;
}
.accordion li.active .accordion-title svg {
  transform: rotate(45deg);
}

.accordion li .accordion-title {
  padding: 1rem 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.accordion li .accordion-title svg {
  width: 20px;
  height: 20px;
  fill: #aad4b4;
  transform: rotate(0deg);
  transition: all linear 0.2s;
}
.accordion li .accordion-title svg line {
  stroke: #aad4b4;
}
.accordion li.active .accordion-title svg {
  transform: rotate(45deg);
}

.mob-show {
  display: none !important;
}

.mob-hide {
  display: block !important;
}

#navicon em {
  display: block;
}

#navicon span {
  display: none;
}

@media screen and (max-width: 1024px) {
  #navicon {
    width: 55px;
  }
  #navicon em {
    display: none;
  }
  #navicon span {
    display: block;
  }
  .mob-cards {
    padding: 2rem !important;
  }
  .mob-cards .wrap {
    padding: 2rem;
  }
  .mob-cards article {
    margin-bottom: 2rem;
    border: 2px solid #fff;
    border-radius: 10px;
    background: #caf1d3;
  }
  .mob-cards article .p-4 {
    padding: 3rem;
  }
  .mob-cards figure {
    text-align: center;
    justify-content: center;
  }
  .mob-cards figure img {
    max-width: 250px;
  }
  body section.fl-world-map {
    display: block;
    height: auto;
  }
  body .fl-world-map__content {
    width: 100%;
    height: auto;
    padding: 20px;
  }
  body .fl-world-map__globe {
    width: 340px;
    height: 340px;
    margin: 0 auto;
  }
  .pin-spacer {
    display: none;
  }
  .mob-show {
    display: block !important;
  }
  .mob-hide {
    display: none !important;
  }
  .text-6xl {
    font-size: 5rem !important;
  }
  .mob-cards .wyg ul li {
    font-size: 1.6rem;
  }
  .wyg ul li:before {
    top: 22px;
  }
  .vid-burst h2 {
    font-size: 4rem !important;
  }
  div#nav-popover {
    padding: 4rem;
  }
  h1, h2, h3, h4, h5, h6 {
    line-height: 1em;
  }
  .flex.gap-2.align-center.mb-4 {
    display: block;
  }
  .hero h1 span {
    line-height: 1em !important;
  }
  .marq-wrap {
    height: 110px;
  }
  .marq-wrap .btn {
    position: absolute;
    right: auto;
    top: auto;
    left: 2rem;
    bottom: 0;
  }
  #custom-cursor-dot {
    display: none !important;
  }
  body {
    cursor: default !important;
  }
}
.flex-wrap {
  flex-wrap: wrap;
}

.flex-3-col > * {
  flex: 1 1 calc(33.333% - 5rem);
}

.flex-5-col > * {
  flex: 1 1 calc(25% - 5rem);
}

.tags li {
  display: inline-block;
  padding: 1em 1.5em;
  margin: 0.5em 0.5em 0.5em 0;
  border-radius: 50px;
  border: 2px dashed #aad4b4;
}

.bk-dk .post-card {
  background: #14082C;
  box-shadow: 1px 1px 2px #17EDDD;
}
.bk-dk .post-card h4 a {
  color: #aad4b4;
}

@media only screen and (max-width: 1023px) {
  .cs-feed .flex {
    display: block;
  }
  .cs-feed .flex div {
    margin-bottom: 1em;
  }
}
.home .hero .services article {
  border: 1px solid rgba(255, 255, 255, 0.1);
  margin: 0;
}
.home .hero .hero-main {
  padding: 15rem 0 15rem;
}

.stagger-colour .columns-repeater__col {
  border: 2px solid #aad4b4;
}
.stagger-colour .columns-repeater__col .btn {
  border: 2px solid #aad4b4;
}
.stagger-colour .columns-repeater__col:nth-child(1) {
  background-color: #168936;
}
.stagger-colour .columns-repeater__col:nth-child(1) p {
  color: #fff;
}
.stagger-colour .columns-repeater__col:nth-child(1) h3 {
  color: #fff;
}
.stagger-colour .columns-repeater__col:nth-child(2) {
  margin-top: 4rem;
  background-color: #E5FFEB;
}
.stagger-colour .columns-repeater__col:nth-child(3) {
  margin-top: 8rem;
  background-color: #fff;
}

.vid-burst video {
  mix-blend-mode: darken;
}

.link-prim {
  color: #168936;
}

.hero {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
  position: relative;
  overflow: hidden;
  min-height: 80vh;
}
.hero > .wrap {
  position: relative;
  z-index: 10;
}
.hero video {
  width: 150px;
  position: absolute;
  border-radius: 1000px;
  z-index: 0;
  mix-blend-mode: darken;
  /* &#vid-1 { top: 15%; right: 16%;} */
  /* &#vid-2 { top: 50%; right: 26%;}*/
  /* &#vid-3 { top: 25%; left: 12%;}*/
  /* &#vid-4 { top: 70%; left: 24%;} */
}
.hero p.absolute {
  position: absolute;
  bottom: 4rem;
  right: 4rem;
}

.spinny-currency {
  width: 110px;
  height: 110px;
  display: block;
  opacity: 0;
  transform: scale(0);
  position: absolute;
  animation: scale-in 2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.spinny-currency.spinny-1 {
  top: 15%;
  right: 16%;
  animation-delay: 0s;
}
.spinny-currency.spinny-2 {
  top: 60%;
  right: 10%;
  animation-delay: 0.15s;
}
.spinny-currency.spinny-3 {
  top: 25%;
  left: 12%;
  animation-delay: 0.3s;
}
.spinny-currency.spinny-4 {
  top: 70%;
  left: 24%;
  animation-delay: 0.45s;
}

@keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  70% {
    opacity: 0.5;
    transform: scale(1.12);
  }
  85% {
    transform: scale(0.95);
  }
  100% {
    opacity: 0.5;
    transform: scale(1);
  }
}
.no-vids {
  padding: 15rem 0 10rem !important;
  min-height: auto !important;
}
.no-vids img, .no-vids video {
  display: none !important;
}

#vid-1 {
  position: absolute;
  top: 15%;
  right: 6%;
  opacity: 0;
  transform: translate(-50%, 20%);
  animation: moveAndPause1 5.9s ease-in-out infinite;
}

@keyframes moveAndPause1 {
  /* Start position */
  0% {
    opacity: 0;
    transform: translate(-50%, 20%);
  }
  /* Animate in (first 20% of timeline ≈ 1.4s) */
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Hold final state (20% → 90% ≈ 5s pause) */
  90% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Reset instantly at end */
  100% {
    opacity: 0;
    transform: translate(-50%, 20%);
  }
}
#vid-2 {
  position: absolute;
  top: 60%;
  left: 6%;
  opacity: 0;
  transform: translate(-50%, 20%);
  animation: moveAndPause1 5.9s ease-in-out infinite;
}

@keyframes moveAndPause2 {
  /* Start position */
  0% {
    opacity: 0;
    transform: translate(-50%, -20%);
  }
  /* Animate in (first 20% of timeline ≈ 1.4s) */
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Hold final state (20% → 90% ≈ 5s pause) */
  90% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Reset instantly at end */
  100% {
    opacity: 0;
    transform: translate(-50%, -20%);
  }
}
#vid-3 {
  position: absolute;
  top: 20%;
  left: 10%;
  opacity: 0;
  transform: translate(-50%, 20%);
  animation: moveAndPause1 5.9s ease-in-out infinite;
}

@keyframes moveAndPause3 {
  /* Start position */
  0% {
    opacity: 0;
    transform: translate(50%, -20%);
  }
  /* Animate in (first 20% of timeline ≈ 1.4s) */
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Hold final state (20% → 90% ≈ 5s pause) */
  90% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Reset instantly at end */
  100% {
    opacity: 0;
    transform: translate(50%, -20%);
  }
}
#vid-4 {
  position: absolute;
  top: 70%;
  right: 4%;
  opacity: 0;
  transform: translate(-50%, 20%);
  animation: moveAndPause1 5.9s ease-in-out infinite;
}

@keyframes moveAndPause4 {
  /* Start position */
  0% {
    opacity: 0;
    transform: translate(50%, -20%);
  }
  /* Animate in (first 20% of timeline ≈ 1.4s) */
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Hold final state (20% → 90% ≈ 5s pause) */
  90% {
    opacity: 1;
    transform: translate(0, 0);
  }
  /* Reset instantly at end */
  100% {
    opacity: 0;
    transform: translate(50%, -20%);
  }
}
.vid-burst .wrap {
  position: relative;
  z-index: 10;
}
.vid-burst video {
  position: absolute;
  border-radius: 10px;
  mix-blend-mode: lighten;
  z-index: 0;
  border-radius: 1000px;
}
.vid-burst video#vid-1 {
  top: 20%;
  right: 5%;
}
.vid-burst video#vid-2 {
  top: 60%;
  right: 5%;
}
.vid-burst video#vid-3 {
  top: 10%;
  left: 5%;
}
.vid-burst video#vid-4 {
  display: none;
}

.hero-text {
  position: relative;
}
.hero-text p {
  position: absolute;
}
.hero-text .text1 {
  top: 10%;
  left: 10%;
}
.hero-text .text2 {
  top: 30%;
  left: 20%;
}
.hero-text .text1 {
  top: 60%;
  right: 10%;
}
.hero-text .text1 {
  top: 90%;
  right: 20%;
}

.text-3xl {
  font-size: 10rem;
  text-transform: lowercase;
}

.font-heading {
  font-family: "League Spartan", sans-serif;
}

.page-id-915 .hero.video-section {
  min-height: 300px;
  height: 60vh;
}
.page-id-915 .hero.video-section .btn {
  display: none;
}

.hero.bk-overlay {
  position: relative;
  overflow: hidden;
}
.hero.bk-overlay > * {
  z-index: 5555;
}
.hero.bk-overlay:before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  top: 0px;
  left: 0px;
  background-color: #222;
  opacity: 0.8;
  position: absolute;
  z-index: 3333;
}

.testimonial.bk-overlay {
  position: relative;
  overflow: hidden;
}
.testimonial.bk-overlay > * {
  z-index: 5555;
}
.testimonial.bk-overlay:before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  top: 0px;
  left: 0px;
  background-color: #222;
  opacity: 0.8;
  position: absolute;
  z-index: 3333;
}

.video-section {
  position: relative;
  width: 100%;
  overflow: hidden;
  /* &:before { 
     content: '';
     z-index: 333;
     width: 100%;
     height: 100%;
     position: absolute;
     background: rgba(20,35,108,0.5);
     top: 0px;
     left: 0px;
     display: block;
   }
   */
}
.video-section > .wrap {
  position: relative;
  z-index: 7777;
}

.bottom-strip {
  position: relative;
}
.bottom-strip:after {
  width: 100%;
  height: 100px;
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0px;
  content: "";
  z-index: 400;
  background-color: #fff;
}

#videoElement {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 0;
}

.bk-wm {
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: contain;
}

.video-section .wrap {
  position: relative;
}

.z-444 {
  z-index: 444;
}

.bk-wm-corner {
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 60%;
}

.bk-pic {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.bk-fix {
  background-attachment: fixed;
}

@media only screen and (max-width: 1024px) {
  .home .hero {
    height: auto;
  }
  .home .hero .vid-wrap {
    padding: 3em 0;
  }
  figure {
    text-align: center;
  }
  .hero img {
    max-width: 400px;
    margin: 40px auto;
    text-align: center;
  }
  .hero h1 {
    line-height: 1.2em;
  }
}
@media only screen and (max-width: 1023px) {
  .hero .services .flex {
    display: block;
  }
  .hero .services .flex article {
    margin-bottom: 0em;
  }
  .hero .services .flex p {
    margin: 2em 0;
  }
  .hero.bk-pic {
    background-position: left center;
  }
  .hero p a {
    margin-bottom: 1rem;
  }
  .bottom-strip:after {
    display: none;
  }
  video {
    display: none;
  }
  .hero h1 {
    font-size: 4.5rem;
    line-height: 0.85em;
  }
  .spinny-currency {
    width: 75px;
    opacity: 0.5 !important;
  }
  .photo {
    max-width: 140px;
  }
  .stacked-headings__item {
    font-size: 5rem !important;
  }
  .testimonial .wrap h2 {
    padding-right: 15rem;
    font-size: 6rem;
  }
  ul.quotes_carousel .slick-next, ul.quotes_carousel .slick-prev {
    top: -80px;
  }
  .card > .flex,
  .mob-blk {
    display: block;
  }
  .card > .flex > *,
  .mob-blk > * {
    margin-bottom: 3rem;
  }
  .card img {
    max-width: 300px;
    height: auto;
    margin: 0 auto;
  }
  .card p.label {
    display: none;
  }
  ul#menu-main li a {
    font-size: 3.5rem;
  }
  .timeline-row {
    display: block;
    padding-left: 6rem;
  }
  .timeline-block:before {
    left: 4rem;
    top: 8rem;
  }
  .timeline-block:after {
    left: 4rem;
  }
  .flex-reverse .flex-rev-img-align {
    justify-content: flex-start;
  }
  .dotted-line-top:before {
    left: 4rem;
  }
  h2, .text-2xl, h3, .text-xl {
    font-size: 3.2rem;
  }
  .spinny-currency {
    width: 60px;
    height: 60px;
  }
  .spinny-currency.spinny-1 {
    top: 5%;
    right: 5%;
    animation-delay: 0s;
  }
  .spinny-currency.spinny-2 {
    top: 7%;
    right: 76%;
    animation-delay: 0.15s;
  }
  .spinny-currency.spinny-3 {
    top: 72%;
    left: 10%;
    animation-delay: 0.3s;
  }
  .spinny-currency.spinny-4 {
    top: 70%;
    left: auto;
    right: 6%;
    animation-delay: 0.45s;
  }
  .text-marquee {
    padding-right: 0px;
  }
}
form {
  background: #E5FFEB;
  padding: 4rem;
  border-radius: 10px;
  border: 4px solid #168936;
}
form input,
form textarea {
  width: 100%;
  border: 2px solid #fff;
  padding: 0.9em;
  font-size: 1em;
  border-radius: 5px;
  width: 100%;
  margin: 0 0 1rem;
  background-color: #fff;
  color: #168936;
  font-family: "poppins", sans-serif;
}
form input::placeholder,
form textarea::placeholder {
  color: #222 !important;
}
form input[type=checkbox] {
  padding: 0;
  margin: 0;
  width: auto;
  height: auto;
}
form.single-search {
  width: 100%;
  position: relative;
}
form.single-search input[type=submit] {
  width: 30px;
  height: 30px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -15px;
  text-indent: -9999em;
  border: 0px;
  background-image: url(530a53403916f61651ae.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: transparent;
}
form.ghost {
  position: relative;
}
form.ghost input,
form.ghost textarea {
  border: 2px solid #0affff;
  border-radius: 5px;
  font-family: "poppins", sans-serif;
  color: #168936;
  position: relative;
}
form.ghost input:placeholder,
form.ghost textarea:placeholder {
  color: #222;
}
form.ghost input.mag,
form.ghost textarea.mag {
  border: 0px;
  background-image: url(530a53403916f61651ae.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 22px;
  height: 26px;
  position: absolute;
  right: 20px;
  top: 16px;
  text-indent: -9999em;
  padding: 0;
}
form span.wpcf7-list-item-label {
  line-height: 1.5em;
}

select {
  width: 100%;
  margin: 1rem 0 3rem;
  padding: 2rem;
  background-color: #ddd;
  border: 0px;
  font-size: 1.5rem;
  border-radius: 5px;
}

input.wpcf7-form-control.has-spinner.wpcf7-submit {
  width: auto;
  border: 0px;
  display: block;
  margin: 1em 0;
}

.hero input.mag {
  width: 130px;
  text-indent: -9999em;
  background-color: #aad4b4;
  background-image: url(530a53403916f61651ae.svg);
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: center;
}

textarea {
  height: 150px;
}

@media only screen and (max-width: 1023px) {
  .contact-cta .flex {
    display: block;
  }
  .hero form {
    display: block;
  }
}
.hero input,
.hero select {
  margin-bottom: 0.5em;
  border: 2px solid #aad4b4;
}

.wyg em {
  font-style: italic;
}
.wyg a {
  color: #168936;
}
.wyg b h1,
.wyg h2,
.wyg h3,
.wyg h4,
.wyg h5,
.wyg h6 {
  margin-bottom: 2rem;
}
.wyg b h1:not(:first-child),
.wyg h2:not(:first-child),
.wyg h3:not(:first-child),
.wyg h4:not(:first-child),
.wyg h5:not(:first-child),
.wyg h6:not(:first-child) {
  margin-top: 4rem;
}
.wyg h1 em,
.wyg h2 em,
.wyg h3 em,
.wyg h4 em {
  font-style: normal;
}
.wyg ol,
.wyg ol li {
  list-style: decimal;
}
.wyg blockquote {
  margin: 0;
  padding: 0;
}
.wyg blockquote p {
  font-family: "League Spartan", sans-serif;
  border-left: 0;
  margin: 4rem 0;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 4rem;
}
.wyg p,
.wyg blockquote {
  margin-bottom: 3rem;
  color: #222;
}
.wyg p p,
.wyg blockquote p {
  margin-top: 0px;
  margin-bottom: 0px;
}
.wyg .lrg li {
  font-size: 2.6rem;
  padding: 0.4em 0;
  line-height: 2.2rem;
}
.wyg img,
.wyg video {
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.wyg p b {
  font-weight: bold;
}

.testimonial svg {
  position: absolute;
  top: 0px;
  left: 50%;
  width: 200px;
  z-index: -1;
  margin-left: -100px;
}

.wyg ol,
.wyg ul {
  margin: 1rem 0 2rem 0;
}
.wyg ol li,
.wyg ul li {
  position: relative;
  padding: 0.75em;
  line-height: 1.5em;
  border-top: 1px dashed rgba(155, 155, 155, 0.5);
  line-height: 1.6em;
  font-size: 2rem;
}
.wyg ul li:before {
  width: 5px;
  height: 5px;
  background-color: #aad4b4;
  border-radius: 5px;
  content: "";
  position: absolute;
  left: 0px;
  top: 28px;
  display: block;
}
.wyg ol li::marker {
  color: #aad4b4;
  padding-left: 10px;
}

.wyg p img {
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 2000px !important;
}

.wyg p.text-l {
  line-height: 3.4rem;
}

.single-post .wyg img {
  width: 100%;
  height: auto;
  margin: 3rem 0;
}

.mw-1000 {
  max-width: 1000px;
}

.mw-800 {
  max-width: 800px;
}

.mw-600 {
  max-width: 600px;
}

.mw-500 {
  max-width: 500px;
}

.wyg p a.btn {
  color: #fff;
}

.wyg *.mb-0 {
  margin-bottom: 0 !important;
}

.wyg p img {
  width: auto;
  margin: 0 auto;
  text-align: center;
  max-width: 100%;
}

.icon-top img {
  height: 110px;
  width: auto;
}

.box-layout .gap-4 {
  gap: 2em;
}
.box-layout .gap-4 .wyg {
  background: #fff;
  padding: 3em;
  border-radius: 15px;
}

.box-layout.bk-dk .wyg {
  background: #222;
  border: 1px dashed #aad4b4;
}

.bk-dk .wyg p, .bk-dk .wyg li, .bk-dk .wyg h1, .bk-dk .wyg h2, .bk-dk .wyg h3, .bk-dk .wyg h4, .bk-dk .wyg h5, .bk-dk .wyg h6 {
  color: #fff;
}

.team-link a {
  display: block;
  position: relative;
}
.team-link a .shrinker {
  width: 100%;
  height: auto;
  border-radius: 1000px;
  border: 6px solid;
}
.team-link a svg {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: auto;
  opacity: 0;
  transform: rotate(180deg);
  transition: all linear 0.2s;
}
.team-link a:hover svg {
  opacity: 1;
  transform: rotate(0);
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNnQmhCO0VBQ0UsbUJBaEJjO0VBaUJkO0FEZEY7O0FDaUJBO0VBQ0Usc0JBYlc7QUREYjs7QUNnQkE7RUFBYSx5QkFuQkU7QURPZjs7QUNjQTtFQUNFLHlCQWpCWTtBRE1kOztBQ2FBO0VBQ0UseUJBN0JjO0FEbUJoQjs7QUNZQTtFQUNFO0FEVEY7O0FDWUE7RUFDRTtBRFRGOztBQ1lBO0VBQ0Usc0JBckNXO0FENEJiOztBQ1lBO0VBQ0U7QURURjs7QUNZQTtFQUNFLHNCQTdDVztBRG9DYjtBQ1VFO0VBQ0UsY0F6Q1U7QURpQ2Q7QUNXSTtFQUNFO0FEVE47O0FDY0E7RUFDRSx5QkE1RGM7QURpRGhCO0FDWUU7RUFDRTtBRFZKO0FDYUk7RUFDRTtBRFhOO0FDY0U7RUFDRTtBRFpKOztBQ2dCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FEYko7O0FDaUJBO0VBQ0U7RUFDQTtFQUNBO0FEZEY7O0FDa0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEZkY7O0FDbUJFO0VBQWdCO0FEZmxCOztBQ2tCQTtFQUNFO0lBQ0U7RURmRjtFQ2tCQTtJQUNFO0VEaEJGO0VDbUJBO0lBQ0U7RURqQkY7QUFDRjtBQ3FCQTtFQUNFLHlCQTVIYztBRHlHaEI7O0FDd0JBOztDQUFBO0FBNkJBO0VBQ0U7QUQvQ0Y7O0FDbURBOzs7OztFQUtFO0FEaERGOztBQ21EQTtFQUFRO0FEL0NSOztBQ2dEQTtFQUFRO0FENUNSOztBQytDRTtFQUNFLHlCQXpLYztFQTBLZDtBRDVDSjs7QUNnREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRDdDRjs7QUNpREU7RUFDRTtBRDlDSjs7QUV6SEE7O0NBQUE7QUFXQTs7Q0FBQTtBQXNCQTs7Q0FBQTtBQzVEQTtBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIZ0tEOztBRzlKQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhpS0Q7QUcvSkM7RUFDQztBSGlLRjtBRzlKQztFQUNDO0VBQ0E7QUhnS0Y7O0FHN0pBOztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhnS0Q7O0FHN0pBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIZ0tEO0FHOUpDO0VBRUM7RUFDQTtBSCtKRjtBRzVKQztFQUNDO0FIOEpGO0FHM0pDO0VBQ0M7QUg2SkY7O0FHMUpBO0VBQ0M7RUFDQTtFQUNBO0VBV0E7QUhtSkQ7QUc3SkM7RUFDQztBSCtKRjtBRzdKQztFQUNDO0FIK0pGO0FHN0pDO0VBQ0M7QUgrSkY7QUcxSkM7RUFDQztBSDRKRjtBR3pKQztFQUNDO0FIMkpGO0FHeEpDO0VBQ0M7QUgwSkY7QUd2SkM7RUFDQztFQUNBO0VBQ0E7QUh5SkY7O0FHdEpBO0VBQ0M7QUh5SkQ7O0FHckpDO0VBQ0M7RUFDQTtFQUNBO0FId0pGO0FHdEpDO0VBQ0M7RUFDQTtBSHdKRjtBR3RKQztFQUNDO0VBQ0E7QUh3SkY7QUd0SkM7RUFBYTtBSHlKZDtBR3hKQztFQUNDO0VBQ0E7RUFDQTtBSDBKRjtBR3pKRTtFQUNDO0VBQ0E7RUFDQTtBSDJKSDtBRzFKRztFQUNDLGFGcEhjO0FEZ1JsQjs7QUl4UkE7QUFFQTs7bUJBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FKd1JKOztBSXRSQTtFQUNLO0VBQ0Q7RUFDQTtFQUNBO0FKeVJKOztBSXZSQTtFQUNLO0VBQ0Q7RUFDQTtFQUNBO0FKMFJKOztBSXhSQTtFQUNLO0VBQ0Q7RUFDQTtFQUNBO0FKMlJKOztBSXhSQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUoyUko7O0FJelJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUo0Uko7O0FJMVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUo2Uko7O0FJM1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUo4Uko7O0FJNVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUorUko7O0FJN1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUpnU0o7O0FJOVJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUppU0o7O0FJL1JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUprU0o7O0FJaFNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUptU0o7O0FJalNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUpvU0o7O0FJbFNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUpxU0o7O0FJblNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUpzU0o7O0FJcFNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUp1U0o7O0FJcFNBO0VBQ0k7RUFDQTtFQUNBO0FKdVNKOztBSXJTQTtFQUNJO0VBQ0E7RUFDQTtBSndTSjs7QUlyU0E7RUFDSTtBSndTSjs7QUlyU0E7RUFDSTtFQUNBO0VBQ0E7QUp3U0o7O0FJclNBOztZQUFBO0FBR0E7RUFDSTtJQUNJO0lBQ0E7RUp3U047RUlyU0U7SUFDSTtJQUNBO0VKdVNOO0VJcFNFO0lBQ0k7RUpzU047RUluU0U7SUFDSztFSnFTUDtBQUNGO0FJbFNBO0VBQ0k7SUFDSTtJQUNBO0VKb1NOO0VJalNFO0lBQ0k7SUFDQTtFSm1TTjtFSWhTRTtJQUNJO0VKa1NOO0VJL1JFO0lBQ0k7RUppU047QUFDRjtBSTlSQTtFQUNJO0VBQ0E7QUpnU0o7O0FJN1JBOztnQkFBQTtBQUlBO0VBQ0k7SUFDSTtJQUVBO0VKOFJOO0VJNVJFO0lBRUk7RUo2Uk47RUkzUkU7SUFDSTtFSjZSTjtFSTNSRTtJQUNBO0lBRUk7RUo0Uk47QUFDRjtBSXpSQTtFQUNJO0lBQ0k7SUFFQTtFSjBSTjtFSXhSRTtJQUVJO0VKeVJOO0VJdlJFO0lBQ0k7RUp5Uk47RUl2UkU7SUFDQTtJQUVJO0VKd1JOO0FBQ0Y7QUlwUkE7RUFDSTtFQUNBO0FKc1JKOztBSW5SQTs7bUJBQUE7QUFJQTtFQUNJO0lBQ0k7SUFFQTtFSm9STjtFSWxSRTtJQUVJO0VKbVJOO0VJalJFO0lBQ0k7RUptUk47RUlqUkU7SUFDSTtJQUVBO0VKa1JOO0FBQ0Y7QUkvUUE7RUFDSTtJQUNJO0lBRUE7RUpnUk47RUk5UUU7SUFFSTtFSitRTjtFSTdRRTtJQUNJO0VKK1FOO0VJN1FFO0lBQ0k7SUFFQTtFSjhRTjtBQUNGO0FJM1FBO0VBQ0k7RUFDQTtBSjZRSjs7QUkxUUE7O21CQUFBO0FBSUE7RUFDSTtJQUNJO0lBRUE7RUoyUU47RUl6UUU7SUFFSTtFSjBRTjtFSXhRRTtJQUNJO0VKMFFOO0VJeFFFO0lBQ0k7SUFFQTtFSnlRTjtBQUNGO0FJdFFBO0VBQ0k7SUFDSTtJQUVBO0VKdVFOO0VJclFFO0lBRUk7RUpzUU47RUlwUUU7SUFDSTtFSnNRTjtFSXBRRTtJQUNJO0lBRUE7RUpxUU47QUFDRjtBSWxRQTtFQUNJO0VBQ0E7QUpvUUo7O0FJaFFBOzttQkFBQTtBQUlBO0VBQ0k7SUFDSTtJQUVBO0VKaVFOO0VJL1BFO0lBRUk7RUpnUU47RUk5UEU7SUFDSTtFSmdRTjtFSTlQRTtJQUNJO0lBRUE7RUorUE47QUFDRjtBSTVQQTtFQUNJO0lBQ0k7SUFFQTtFSjZQTjtFSTNQRTtJQUVJO0VKNFBOO0VJMVBFO0lBQ0k7RUo0UE47RUkxUEU7SUFDSTtJQUVBO0VKMlBOO0FBQ0Y7QUl4UEE7RUFDSTtFQUNBO0FKMFBKOztBSXRQQTs7VUFBQTtBQUdBO0VBQ0k7SUFBSTtFSjBQTjtFSXpQRTtJQUFNO0lBQ0Y7RUo0UE47QUFDRjtBSTNQQTtFQUNJO0lBQUk7RUo4UE47RUk3UEU7SUFBTTtJQUNGO0VKZ1FOO0FBQ0Y7QUkvUEE7RUFDSTtBSmlRSjs7QUkvUEE7RUFDSTtFQUNBO0FKa1FKOztBSS9QQTs7V0FBQTtBQUlBO0VBQ0k7SUFDSTtJQUNBO0VKaVFOO0VJL1BFO0lBQ0k7RUppUU47RUk5UEU7SUFDSTtJQUNBO0VKZ1FOO0FBQ0Y7QUk5UEE7RUFDSTtJQUNJO0lBQ0E7RUpnUU47RUk5UEU7SUFDSTtFSmdRTjtFSTdQRTtJQUNJO0lBQ0E7RUorUE47QUFDRjtBSTdQQTtFQUVJO0VBQ0E7RUFDQTtBSjhQSjs7QUk1UEE7RUFDSTtFQUNBO0FKK1BKOztBSTVQQTs7UUFBQTtBQUdBO0VBQ0k7SUFBVTtFSmdRWjtFSS9QRTtJQUF5QjtFSmtRM0I7RUlqUUU7SUFBb0I7RUpvUXRCO0FBQ0Y7QUluUUE7RUFDSTtJQUFVO0VKc1FaO0VJclFFO0lBQXlCO0VKd1EzQjtFSXZRRTtJQUFvQjtFSjBRdEI7QUFDRjtBSXpRQTtFQUNJO0VBQ0E7QUoyUUo7O0FJeFFBOztRQUFBO0FBR0E7RUFDSTtJQUFVO0VKNFFaO0VJM1FFO0lBQXlCO0VKOFEzQjtFSTdRRTtJQUFvQjtFSmdSdEI7QUFDRjtBSS9RQTtFQUNJO0lBQVU7RUprUlo7RUlqUkU7SUFBeUI7RUpvUjNCO0VJblJFO0lBQW9CO0VKc1J0QjtBQUNGO0FJclJBO0VBQ0k7RUFDQTtBSnVSSjs7QUlwUkE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtFSnNSTjtFSXBSRTtJQUNHO0VKc1JMO0VJcFJFO0lBQ0k7SUFDQTtFSnNSTjtBQUNGO0FJcFJBO0VBQ0k7SUFDSTtJQUNBO0VKc1JOO0VJcFJFO0lBQ0c7RUpzUkw7RUlwUkU7SUFDSTtJQUNBO0VKc1JOO0FBQ0Y7QUlwUkE7RUFDSTtFQUNBO0VBQ0E7QUpzUko7O0FJcFJBO0VBQ0k7RUFDQTtBSnVSSjs7QUluUkE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtFSnFSTjtFSW5SRTtJQUNHO0VKcVJMO0VJblJFO0lBQ0k7SUFDQTtFSnFSTjtBQUNGO0FJblJBO0VBQ0k7SUFDSTtJQUNBO0VKcVJOO0VJblJFO0lBQ0c7RUpxUkw7RUluUkU7SUFDSTtJQUNBO0VKcVJOO0FBQ0Y7QUluUkE7RUFDSTtFQUNBO0VBQ0E7QUpxUko7O0FJblJBO0VBQ0k7RUFDQTtBSnNSSjs7QUluUkE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtFSnFSTjtFSW5SRTtJQUNHO0VKcVJMO0VJblJFO0lBQ0k7SUFDQTtFSnFSTjtBQUNGO0FJblJBO0VBQ0k7SUFDSTtJQUNBO0VKcVJOO0VJblJFO0lBQ0c7RUpxUkw7RUluUkU7SUFDSTtJQUNBO0VKcVJOO0FBQ0Y7QUluUkE7RUFDSTtFQUNBO0VBQ0E7QUpxUko7O0FJblJBO0VBQ0k7RUFDQTtBSnNSSjs7QUluUkE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtFSnFSTjtFSW5SRTtJQUNHO0VKcVJMO0VJblJFO0lBQ0k7SUFDQTtFSnFSTjtBQUNGO0FJblJBO0VBQ0k7SUFDSTtJQUNBO0VKcVJOO0VJblJFO0lBQ0c7RUpxUkw7RUluUkU7SUFDSTtJQUNBO0VKcVJOO0FBQ0Y7QUluUkE7RUFDSTtFQUNBO0VBQ0E7QUpxUko7O0FJblJBO0VBQ0k7RUFDQTtBSnNSSjs7QUluUkE7O2lCQUFBO0FBR0E7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSnNSTjtFSXBSRTtJQUNJO0lBQ0E7SUFDQTtFSnNSTjtBQUNGO0FJcFJBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RUpzUk47RUlwUkU7SUFDSTtJQUNBO0lBQ0E7RUpzUk47QUFDRjtBSXBSQTtFQUNJO0VBQ0E7QUpzUko7O0FJblJBOztpQkFBQTtBQUlBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RUpxUk47RUluUkU7SUFDSTtJQUNBO0lBQ0E7RUpxUk47QUFDRjtBSW5SQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKcVJOO0VJblJFO0lBQ0k7SUFDQTtJQUNBO0VKcVJOO0FBQ0Y7QUluUkE7RUFDSTtFQUNBO0FKcVJKOztBSWxSQTs7bUJBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKcVJOO0VJblJFO0lBQ0k7SUFDQTtJQUNBO0VKcVJOO0FBQ0Y7QUluUkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSnFSTjtFSW5SRTtJQUNJO0lBQ0E7SUFDQTtFSnFSTjtBQUNGO0FJblJBO0VBQ0k7RUFDQTtBSnFSSjs7QUlsUkE7O21CQUFBO0FBSUE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSm9STjtFSWxSRTtJQUNJO0lBQ0E7SUFDQTtFSm9STjtBQUNGO0FJbFJBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RUpvUk47RUlsUkU7SUFDSTtJQUNBO0lBQ0E7RUpvUk47QUFDRjtBSWxSQTtFQUNJO0VBQ0E7QUpvUko7O0FJalJBOztvQkFBQTtBQUlBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RUptUk47RUlqUkU7SUFDSTtJQUNBO0lBQ0E7RUptUk47QUFDRjtBSWpSQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKbVJOO0VJalJFO0lBQ0k7SUFDQTtJQUNBO0VKbVJOO0FBQ0Y7QUlqUkE7RUFDSTtFQUNBO0FKbVJKOztBSWhSQTs7VUFBQTtBQUlBO0VBQ0k7SUFBSztJQUFZO0VKb1JuQjtFSW5SRTtJQUFPO0lBQVk7RUp1UnJCO0FBQ0Y7QUl0UkE7RUFDSTtJQUFLO0lBQVk7RUowUm5CO0VJelJFO0lBQU87SUFBWTtFSjZSckI7QUFDRjtBSTVSQTtFQUNJO0VBQ0E7QUo4Uko7O0FJM1JBOztVQUFBO0FBSUE7RUFDSTtJQUFLO0VKOFJQO0VJN1JFO0lBQU07RUpnU1I7RUkvUkU7SUFBTTtFSmtTUjtFSWpTRTtJQUFNO0VKb1NSO0VJblNFO0lBQU07RUpzU1I7RUlyU0U7SUFBTTtFSndTUjtFSXZTRTtJQUFNO0VKMFNSO0VJelNFO0lBQU07RUo0U1I7RUkzU0U7SUFBTTtFSjhTUjtFSTdTRTtJQUFNO0VKZ1RSO0VJL1NFO0lBQU87RUprVFQ7QUFDRjtBSWpUQTtFQUNJO0lBQUs7RUpvVFA7RUluVEU7SUFBTTtFSnNUUjtFSXJURTtJQUFNO0VKd1RSO0VJdlRFO0lBQU07RUowVFI7RUl6VEU7SUFBTTtFSjRUUjtFSTNURTtJQUFNO0VKOFRSO0VJN1RFO0lBQU07RUpnVVI7RUkvVEU7SUFBTTtFSmtVUjtFSWpVRTtJQUFNO0VKb1VSO0VJblVFO0lBQU07RUpzVVI7RUlyVUU7SUFBTztFSndVVDtBQUNGO0FJdlVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUp5VUo7O0FJdFVBOztTQUFBO0FBSUE7RUFDSTtJQUEyQjtFSnlVN0I7RUl4VUU7SUFBTTtFSjJVUjtFSTFVRTtJQUFNO0VKNlVSO0VJNVVFO0lBQU07RUorVVI7RUk5VUU7SUFBTTtFSmlWUjtFSWhWRTtJQUFPO0VKbVZUO0FBQ0Y7QUlsVkE7RUFDSTtJQUFNO0VKcVZSO0VJcFZFO0lBQU07RUp1VlI7RUl0VkU7SUFBTTtFSnlWUjtFSXhWRTtJQUFNO0VKMlZSO0VJMVZFO0lBQU87RUo2VlQ7QUFDRjtBSTVWQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FKOFZKOztBSTNWQTs7UUFBQTtBQUlBO0VBQ0k7SUFBSTtFSjhWTjtFSTdWRTtJQUFVO0VKZ1daO0VJL1ZFO0lBQW9CO0VKa1d0QjtFSWpXRTtJQUFlO0VKb1dqQjtFSW5XRTtJQUFNO0VKc1dSO0FBQ0Y7QUlyV0E7RUFDSTtJQUFJO0VKd1dOO0VJdldFO0lBQVU7RUowV1o7RUl6V0U7SUFBb0I7RUo0V3RCO0VJM1dFO0lBQWU7RUo4V2pCO0VJN1dFO0lBQU07RUpnWFI7QUFDRjtBSS9XQTtFQUNJO0VBQ0E7QUppWEo7O0FJOVdBOztVQUFBO0FBSUE7RUFDRTtJQUFLO0VKaVhMO0VJaFhBO0lBQU07RUptWE47RUlsWEE7SUFBTTtFSnFYTjtFSXBYQTtJQUFNO0VKdVhOO0VJdFhBO0lBQU07RUp5WE47RUl4WEE7SUFBTTtFSjJYTjtFSTFYQTtJQUFPO0VKNlhQO0FBQ0Y7QUk1WEE7RUFDRTtJQUFLO0VKK1hMO0VJOVhBO0lBQU07RUppWU47RUloWUE7SUFBTTtFSm1ZTjtFSWxZQTtJQUFNO0VKcVlOO0VJcFlBO0lBQU07RUp1WU47RUl0WUE7SUFBTTtFSnlZTjtFSXhZQTtJQUFPO0VKMllQO0FBQ0Y7QUkxWUE7RUFDSTtFQUNBO0FKNFlKOztBSXpZQTs7U0FBQTtBQUlBO0VBQ0k7SUFBSztFSjRZUDtFSTNZRTtJQUFNO0VKOFlSO0VJN1lFO0lBQU87RUpnWlQ7QUFDRjtBSS9ZQTtFQUNJO0lBQUs7RUprWlA7RUlqWkU7SUFBTTtFSm9aUjtFSW5aRTtJQUFPO0VKc1pUO0FBQ0Y7QUlyWkE7RUFDSTtFQUNBO0FKdVpKOztBSXBaQTs7Z0JBQUE7QUFHQTtFQUNHO0lBQUs7SUFBbUQ7RUp5WnpEO0VJeFpFO0lBQU07SUFBa0Q7RUo0WjFEO0VJM1pFO0lBQU07SUFBaUQ7RUorWnpEO0VJOVpFO0lBQU87SUFBK0M7RUprYXhEO0FBQ0Y7QUlqYUE7RUFDSTtJQUFLO0lBQTJDO0VKcWFsRDtFSXBhRTtJQUFNO0lBQTBDO0VKd2FsRDtFSXZhRTtJQUFNO0lBQXlDO0VKMmFqRDtFSTFhRTtJQUFPO0lBQXVDO0VKOGFoRDtBQUNGO0FJN2FBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUorYUo7O0FJNWFBOztnQkFBQTtBQUdBO0VBQ0c7SUFBSztJQUFtRDtFSmliekQ7RUloYkU7SUFBTTtJQUFrRDtFSm9iMUQ7RUluYkU7SUFBTTtJQUFnRDtFSnVieEQ7RUl0YkU7SUFBTztJQUErQztFSjBieEQ7QUFDRjtBSXpiQTtFQUNJO0lBQUs7SUFBMkM7RUo2YmxEO0VJNWJFO0lBQU07SUFBMEM7RUpnY2xEO0VJL2JFO0lBQU07SUFBd0M7RUptY2hEO0VJbGNFO0lBQU87SUFBdUM7RUpzY2hEO0FBQ0Y7QUlyY0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBSnVjSjs7QUluY0E7O09BQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtFSnNjTjtFSXBjRTtJQUNJO0lBQ0E7RUpzY047RUlwY0U7SUFDSTtJQUNBO0VKc2NOO0VJcGNFO0lBQ0k7SUFDQTtFSnNjTjtFSXBjRTtJQUNJO0lBQ0E7RUpzY047QUFDRjtBSXBjQTtFQUNJO0lBQ0k7SUFDQTtFSnNjTjtFSXBjRTtJQUNJO0lBQ0E7RUpzY047RUlwY0U7SUFDSTtJQUNBO0VKc2NOO0VJcGNFO0lBQ0k7SUFDQTtFSnNjTjtFSXBjRTtJQUNJO0lBQ0E7RUpzY047QUFDRjtBSXBjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FKc2NKOztBSW5jQTs7VUFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKc2NOO0VJcGNFO0lBQ0k7RUpzY047RUlwY0U7SUFDSTtFSnNjTjtFSXBjRTtJQUNJO0lBQ0E7RUpzY047QUFDRjtBSXBjQTtFQUNJO0lBQ0k7SUFDQTtFSnNjTjtFSXBjRTtJQUNJO0VKc2NOO0VJcGNFO0lBQ0k7RUpzY047RUlwY0U7SUFDSTtJQUNBO0VKc2NOO0FBQ0Y7QUlwY0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBSnNjSjs7QUluY0E7O1VBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtFSnFjTjtFSW5jRTtJQUNJO0VKcWNOO0VJbmNFO0lBQ0k7RUpxY047RUluY0U7SUFDSTtJQUNBO0VKcWNOO0FBQ0Y7QUluY0E7RUFDSTtJQUNJO0lBQ0E7RUpxY047RUluY0U7SUFDSTtFSnFjTjtFSW5jRTtJQUNJO0VKcWNOO0VJbmNFO0lBQ0k7SUFDQTtFSnFjTjtBQUNGO0FJbmNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUpxY0o7O0FJbGNBOztpQkFBQTtBQUtBOzthQUFBO0FBR0E7RUFDSTtJQUNJO0VKbWNOO0VJamNFO0lBQ0k7RUptY047RUlqY0U7SUFDSTtJQUNBO0VKbWNOO0VJamNFO0lBQ0k7SUFDQTtFSm1jTjtBQUNGO0FJamNBO0VBQ0k7SUFDSTtFSm1jTjtFSWpjRTtJQUNJO0VKbWNOO0VJamNFO0lBQ0k7SUFDQTtFSm1jTjtFSWpjRTtJQUNJO0lBQ0E7RUptY047QUFDRjtBSWpjQTtFQUNJO0VBQ0E7QUptY0o7O0FJaGNBOzthQUFBO0FBR0E7RUFDSTtJQUNJO0VKbWNOO0VJamNFO0lBQ0k7SUFDQTtFSm1jTjtFSWpjRTtJQUNJO0lBQ0E7RUptY047QUFDRjtBSWpjQTtFQUNJO0lBQ0k7RUptY047RUlqY0U7SUFDSTtJQUNBO0VKbWNOO0VJamNFO0lBQ0k7SUFDQTtFSm1jTjtBQUNGO0FJamNBO0VBQ0k7RUFDQTtBSm1jSjs7QUloY0E7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7RUptY047RUlqY0U7SUFDSTtJQUNBO0VKbWNOO0VJamNFO0lBQ0k7SUFDQTtFSm1jTjtBQUNGO0FJamNBO0VBQ0k7SUFDSTtFSm1jTjtFSWpjRTtJQUNJO0lBQ0E7RUptY047RUlqY0U7SUFDSTtJQUNBO0VKbWNOO0FBQ0Y7QUlqY0E7RUFDSTtFQUNBO0FKbWNKOztBSS9iQTs7YUFBQTtBQUdBO0VBQ0k7SUFDSTtFSmtjTjtFSWhjRTtJQUNJO0lBQ0E7RUprY047RUloY0U7SUFDSTtJQUNBO0VKa2NOO0FBQ0Y7QUloY0E7RUFDSTtJQUNJO0VKa2NOO0VJaGNFO0lBQ0k7SUFDQTtFSmtjTjtFSWhjRTtJQUNJO0lBQ0E7RUprY047QUFDRjtBSWhjQTtFQUNJO0VBQ0E7QUprY0o7O0FJL2JBOzthQUFBO0FBR0E7RUFDSTtJQUNJO0VKa2NOO0VJaGNFO0lBQ0k7SUFDQTtFSmtjTjtFSWhjRTtJQUNJO0lBQ0E7RUprY047QUFDRjtBSWhjQTtFQUNJO0lBQ0k7RUprY047RUloY0U7SUFDSTtJQUNBO0VKa2NOO0VJaGNFO0lBQ0k7SUFDQTtFSmtjTjtBQUNGO0FJaGNBO0VBQ0k7RUFDQTtBSmtjSjs7QUkvYkE7O2FBQUE7QUFHQTtFQUNJO0lBQUk7RUptY047RUlsY0U7SUFBTTtFSnFjUjtBQUNGO0FJcGNBO0VBQ0k7SUFBSTtFSnVjTjtFSXRjRTtJQUFNO0VKeWNSO0FBQ0Y7QUl4Y0E7RUFDSTtFQUNBO0FKMGNKOztBSXZjQTs7YUFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKMGNOO0VJeGNFO0lBQ0k7SUFDQTtFSjBjTjtBQUNGO0FJeGNBO0VBQ0k7SUFDSTtJQUNBO0VKMGNOO0VJeGNFO0lBQ0k7SUFDQTtFSjBjTjtBQUNGO0FJeGNBO0VBQ0k7RUFDQTtBSjBjSjs7QUl2Y0E7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtFSjBjTjtFSXhjRTtJQUNJO0lBQ0E7RUowY047QUFDRjtBSXhjQTtFQUNJO0lBQ0k7SUFDQTtFSjBjTjtFSXhjRTtJQUNJO0lBQ0E7RUowY047QUFDRjtBSXhjQTtFQUNJO0VBQ0E7QUowY0o7O0FJdmNBOzthQUFBO0FBR0E7RUFDSTtJQUNJO0lBQ0E7RUowY047RUl4Y0U7SUFDSTtJQUNBO0VKMGNOO0FBQ0Y7QUl4Y0E7RUFDSTtJQUNJO0lBQ0E7RUowY047RUl4Y0U7SUFDSTtJQUNBO0VKMGNOO0FBQ0Y7QUl4Y0E7RUFDSTtFQUNBO0FKMGNKOztBSXZjQTs7YUFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKMGNOO0VJeGNFO0lBQ0k7SUFDQTtFSjBjTjtBQUNGO0FJeGNBO0VBQ0k7SUFDSTtJQUNBO0VKMGNOO0VJeGNFO0lBQ0k7SUFDQTtFSjBjTjtBQUNGO0FJeGNBO0VBQ0k7RUFDQTtBSjBjSjs7QUl4Y0E7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtFSjJjTjtFSXpjRTtJQUNJO0lBQ0E7RUoyY047QUFDRjtBSXpjQTtFQUNJO0lBQ0k7SUFDQTtFSjJjTjtFSXpjRTtJQUNJO0lBQ0E7RUoyY047QUFDRjtBSXpjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FKMmNKOztBSXhjQTs7YUFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKMmNOO0VJemNFO0lBQ0k7SUFDQTtFSjJjTjtBQUNGO0FJemNBO0VBQ0k7SUFDSTtJQUNBO0VKMmNOO0VJemNFO0lBQ0k7SUFDQTtFSjJjTjtBQUNGO0FJemNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUoyY0o7O0FJeGNBOzthQUFBO0FBR0E7RUFDSTtJQUFLO0lBQStDO0VKNmN0RDtFSTVjRTtJQUFPO0lBQW1EO0VKZ2Q1RDtBQUNGO0FJL2NBO0VBQ0k7SUFBSztJQUF1QztFSm1kOUM7RUlsZEU7SUFBTztJQUEyQztFSnNkcEQ7QUFDRjtBSXJkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FKdWRKOztBSW5kQTs7YUFBQTtBQUdBO0VBQ0k7SUFBSztJQUErQztFSndkdEQ7RUl2ZEU7SUFBTztJQUFtRDtFSjJkNUQ7QUFDRjtBSTFkQTtFQUNJO0lBQUs7SUFBdUM7RUo4ZDlDO0VJN2RFO0lBQU87SUFBMkM7RUppZXBEO0FBQ0Y7QUloZUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBSmtlSjs7QUk5ZEE7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKaWVOO0VJL2RFO0lBQ0k7SUFDQTtJQUNBO0VKaWVOO0FBQ0Y7QUkvZEE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSmllTjtFSS9kRTtJQUNJO0lBQ0E7SUFDQTtFSmllTjtBQUNGO0FJL2RBO0VBQ0k7RUFDQTtBSmllSjs7QUk3ZEE7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKZ2VOO0VJOWRFO0lBQ0k7SUFDQTtJQUNBO0VKZ2VOO0FBQ0Y7QUk5ZEE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSmdlTjtFSTlkRTtJQUNJO0lBQ0E7SUFDQTtFSmdlTjtBQUNGO0FJOWRBO0VBQ0k7RUFDQTtBSmdlSjs7QUk3ZEE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtJQUNBO0VKK2ROO0FBQ0Y7QUk3ZEE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSitkTjtFSTdkRTtJQUNJO0lBQ0E7SUFDQTtFSitkTjtBQUNGO0FJN2RBO0VBQ0k7RUFDQTtBSitkSjs7QUk3ZEE7O2FBQUE7QUFJQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtJQUNBO0VKK2ROO0FBQ0Y7QUk3ZEE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFSitkTjtFSTdkRTtJQUNJO0lBQ0E7SUFDQTtFSitkTjtBQUNGO0FJN2RBO0VBQ0k7RUFDQTtBSitkSjs7QUk1ZEE7O2FBQUE7QUFHQTtFQUNJO0lBQ0k7SUFDQTtFSitkTjtFSTdkRTtJQUNJO0lBQ0E7RUorZE47QUFDRjtBSTdkQTtFQUNJO0lBQ0k7SUFDQTtFSitkTjtFSTdkRTtJQUNJO0lBQ0E7RUorZE47QUFDRjtBSTdkQTtFQUNJO0VBQ0E7QUorZEo7O0FJN2RBOzttQkFBQTtBQUlBOztxQkFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtFSitkTjtBQUNGO0FJNWRBO0VBQ0k7SUFDSTtJQUNBO0VKOGROO0VJNWRFO0lBQ0k7SUFDQTtFSjhkTjtBQUNGO0FJNWRBO0VBQ0k7RUFDQTtFQUNBO0FKOGRKOztBSTVkQTtFQUNJO0VBQ0E7QUorZEo7O0FJNWRBOztxQkFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtFSitkTjtBQUNGO0FJNWRBO0VBQ0k7SUFDSTtJQUNBO0VKOGROO0VJNWRFO0lBQ0k7SUFDQTtFSjhkTjtBQUNGO0FJNWRBO0VBQ0k7RUFDQTtFQUNBO0FKOGRKOztBSTVkQTtFQUNJO0VBQ0E7QUorZEo7O0FJNWRBOztxQkFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtFSitkTjtBQUNGO0FJN2RBO0VBQ0k7SUFDSTtJQUNBO0VKK2ROO0VJN2RFO0lBQ0k7SUFDQTtFSitkTjtBQUNGO0FJN2RBO0VBQ0k7RUFDQTtFQUNBO0FKK2RKOztBSTdkQTtFQUNJO0VBQ0E7QUpnZUo7O0FJN2RBOztxQkFBQTtBQUdBO0VBQ0k7SUFDSTtJQUNBO0VKZ2VOO0VJOWRFO0lBQ0k7SUFDQTtFSmdlTjtBQUNGO0FJOWRBO0VBQ0k7SUFDSTtJQUNBO0VKZ2VOO0VJOWRFO0lBQ0k7SUFDQTtFSmdlTjtBQUNGO0FJOWRBO0VBQ0k7RUFDQTtFQUNBO0FKZ2VKOztBSTlkQTtFQUNJO0VBQ0E7QUppZUo7O0FLN3dFQTtFQUNFO0VBQ0E7RUFDQTtBTGd4RUY7O0FLN3dFQTs7RUFHRTtBTCt3RUY7O0FLNXdFQTtFQUNFO0VBQ0E7QUwrd0VGOztBSzV3RUE7RUFDRTtBTCt3RUY7O0FLNXdFQTs7RUFFRTtBTCt3RUY7O0FLNXdFQTs7O0VBSUU7RUFDQTtBTDh3RUY7QUs1d0VFOzs7RUFBUTtBTGl4RVY7QUsvd0VFOzs7RUFDRTtBTG14RUo7O0FLL3dFQTs7O0NBQUE7QUFLQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUZFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTGl4RUY7O0FLL3dFQTtBQUNBOzs7Ozs7Ozs7OztFQVdFO0FMa3hFRjs7QUtoeEVBO0VBQ0U7QUxteEVGOztBS2p4RUE7O0VBRUU7QUxveEVGOztBS2x4RUE7O0VBRUU7QUxxeEVGOztBS254RUE7Ozs7RUFJRTtFQUNBO0FMc3hFRjs7QUtweEVBO0VBQ0U7RUFDQTtBTHV4RUY7O0FNOTdFQTtFQUNFLGlCTFdpQjtFS1ZqQjtFQUNBO0VBQ0E7QU5pOEVGOztBTTk3RUE7RUFDRSxnQkxLaUI7RUtKakI7RUFDQTtBTmk4RUY7O0FNOTdFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FOaThFSjs7QU0vN0VBOzs7RUFHRTtBTms4RUY7O0FNLzdFQTtFQUNFO0FOazhFRjs7QUVsOUVRO0VJcUJOOzs7SUFHRTtFTmk4RUY7RU05N0VBO0lBQ0U7RU5nOEVGO0FBQ0Y7QUU3OUVRO0VJaUNOO0lBQ0U7RU4rN0VGO0VNNTdFQTs7O0lBR0U7RU44N0VGO0FBQ0Y7QU9qL0VBO0VBQ0U7QVBtL0VGOztBT2gvRUE7RUFDRTtBUG0vRUY7O0FPaC9FQTtFQUNFO0FQbS9FRjs7QU9oL0VBO0VBQ0U7QVBtL0VGOztBT2gvRUE7RUFDRTtBUG0vRUY7O0FPai9FQTtFQUNFO0FQby9FRjs7QU9qL0VBO0VBQ0U7QVBvL0VGOztBT2ovRUE7RUFDRTtBUG8vRUY7O0FFdGdGUTtFS3NCUjtJTDBDUTtFRjI4RU47QUFDRjs7QUU1Z0ZRO0VLMEJSO0lMc0NRO0VGaTlFTjtBQUNGOztBRWxoRlE7RUs4QlI7SUxrQ1E7RUZ1OUVOO0FBQ0Y7O0FFeGhGUTtFS2tDUjtJTG9DUTtFRnU5RU47QUFDRjs7QUU5aEZRO0VLc0NSO0lMZ0NRO0VGNjlFTjtBQUNGOztBRXBpRlE7RUswQ1I7SUw0QlE7RUZtK0VOO0FBQ0Y7O0FRcGpGQTtFQUNFO0FSdWpGRjs7QVFwakZBO0VBQ0U7QVJ1akZGOztBUXJqRkE7RUFDRTtBUndqRkY7O0FRdGpGQTtFQUNFO0FSeWpGRjs7QVF2akZBO0VBQ0U7QVIwakZGOztBUXhqRkE7RUFDRTtBUjJqRkY7O0FRempGQTtFQUNFO0FSNGpGRjs7QVExakZBO0VBQ0U7QVI2akZGOztBUTNqRkE7RUFDRTtBUjhqRkY7O0FRNWpGQTtFQUNFO0FSK2pGRjs7QVE3akZBO0VBQ0U7QVJna0ZGOztBUTdqRkE7RUFDRTtBUmdrRkY7O0FROWpGQTtFQUNFO0FSaWtGRjs7QVEvakZBO0VBQ0U7QVJra0ZGOztBUWhrRkE7RUFDRTtBUm1rRkY7O0FRamtGQTtFQUNFO0FSb2tGRjs7QVFsa0ZBO0VBQ0U7QVJxa0ZGOztBUW5rRkE7RUFDRTtBUnNrRkY7O0FRcGtGQTtFQUNFO0FSdWtGRjs7QVFya0ZBO0VBQ0U7QVJ3a0ZGOztBUXRrRkE7RUFDRTtBUnlrRkY7O0FRdmtGQTtFQUNFO0FSMGtGRjs7QVF4a0ZBO0VBQ0U7QVIya0ZGOztBUXprRkE7RUFDRTtBUjRrRkY7O0FRMWtGQTtFQUNFO0FSNmtGRjs7QVEza0ZBO0VBQ0U7QVI4a0ZGOztBUTVrRkE7RUFDRTtBUitrRkY7O0FRN2tGQTtFQUNFO0FSZ2xGRjs7QVE5a0ZBO0VBQ0U7QVJpbEZGOztBUS9rRkE7RUFDRTtBUmtsRkY7O0FRaGxGQTtFQUNFO0FSbWxGRjs7QVFqbEZBO0VBQ0U7QVJvbEZGOztBUWxsRkE7RUFDRTtBUnFsRkY7O0FRbGxGQTtFQUNFO0FScWxGRjs7QVFubEZBO0VBQ0U7QVJzbEZGOztBUXBsRkE7RUFDRTtBUnVsRkY7O0FRcmxGQTtFQUNFO0FSd2xGRjs7QVF0bEZBO0VBQ0U7QVJ5bEZGOztBUXZsRkE7RUFDRTtBUjBsRkY7O0FReGxGQTtFQUNFO0FSMmxGRjs7QVF6bEZBO0VBQ0U7QVI0bEZGOztBUTFsRkE7RUFDRTtBUjZsRkY7O0FRM2xGQTtFQUNFO0FSOGxGRjs7QVE1bEZBO0VBQ0U7QVIrbEZGOztBUTVsRkE7RUFDRTtBUitsRkY7O0FRN2xGQTtFQUNFO0FSZ21GRjs7QVE5bEZBO0VBQ0U7QVJpbUZGOztBUS9sRkE7RUFDRTtBUmttRkY7O0FRaG1GQTtFQUNFO0FSbW1GRjs7QVFqbUZBO0VBQ0U7QVJvbUZGOztBUWxtRkE7RUFDRTtBUnFtRkY7O0FRbm1GQTtFQUNFO0FSc21GRjs7QVFwbUZBO0VBQ0U7QVJ1bUZGOztBUXJtRkE7RUFDRTtBUndtRkY7O0FRdG1GQTtFQUNFO0FSeW1GRjs7QVF0bUZBO0VBQ0U7RUFDQTtBUnltRkY7O0FRdm1GQTtFQUNFO0VBQ0E7QVIwbUZGOztBUXhtRkE7RUFDRTtFQUNBO0FSMm1GRjs7QVF6bUZBO0VBQ0U7RUFDQTtBUjRtRkY7O0FRMW1GQTtFQUNFO0VBQ0E7QVI2bUZGOztBUTNtRkE7RUFDRTtFQUNBO0FSOG1GRjs7QVE1bUZBO0VBQ0U7RUFDQTtBUittRkY7O0FRN21GQTtFQUNFO0VBQ0E7QVJnbkZGOztBUTltRkE7RUFDRTtFQUNBO0FSaW5GRjs7QVEvbUZBO0VBQ0U7RUFDQTtBUmtuRkY7O0FRaG5GQTtFQUNFO0VBQ0E7QVJtbkZGOztBUWpuRkE7RUFDRTtFQUNBO0FSb25GRjs7QVFsbkZBO0VBQ0U7RUFDQTtBUnFuRkY7O0FRbm5GQTtFQUNFO0VBQ0E7QVJzbkZGOztBUXBuRkE7RUFDRTtFQUNBO0FSdW5GRjs7QVFybkZBO0VBQ0U7RUFDQTtBUnduRkY7O0FRdG5GQTtFQUNFO0VBQ0E7QVJ5bkZGOztBUXZuRkE7RUFDRTtFQUNBO0FSMG5GRjs7QVF4bkZBO0VBQ0U7RUFDQTtBUjJuRkY7O0FRem5GQTtFQUNFO0VBQ0E7QVI0bkZGOztBUTFuRkE7RUFDRTtFQUNBO0FSNm5GRjs7QVEzbkZBO0VBQ0U7RUFDQTtBUjhuRkY7O0FRM25GQTtFQUNFO0FSOG5GRjs7QVE1bkZBO0VBQ0U7QVIrbkZGOztBUTduRkE7RUFDRTtFQUNBO0FSZ29GRjs7QVE5bkZBO0VBQ0U7RUFDQTtBUmlvRkY7O0FRL25GQTtFQUNFO0FSa29GRjs7QVEvbkZBO0VBQ0U7QVJrb0ZGOztBUWhvRkE7RUFDRTtBUm1vRkY7O0FRam9GQTtFQUNFO0FSb29GRjs7QVFsb0ZBO0VBQ0U7QVJxb0ZGOztBUW5vRkE7RUFDRTtBUnNvRkY7O0FRcG9GQTtFQUNFO0FSdW9GRjs7QVFyb0ZBO0VBQ0U7QVJ3b0ZGOztBUXRvRkE7RUFDRTtBUnlvRkY7O0FRdm9GQTtFQUNFO0FSMG9GRjs7QVF4b0ZBO0VBQ0U7QVIyb0ZGOztBUXhvRkE7RUFDRTtBUjJvRkY7O0FRem9GQTtFQUNFO0FSNG9GRjs7QVExb0ZBO0VBQ0U7QVI2b0ZGOztBUTNvRkE7RUFDRTtBUjhvRkY7O0FRNW9GQTtFQUNFO0FSK29GRjs7QVE3b0ZBO0VBQ0U7QVJncEZGOztBUTlvRkE7RUFDRTtBUmlwRkY7O0FRL29GQTtFQUNFO0FSa3BGRjs7QVFocEZBO0VBQ0U7QVJtcEZGOztBUWpwRkE7RUFDRTtBUm9wRkY7O0FRbHBGQTtFQUNFO0FScXBGRjs7QVFucEZBO0VBQ0U7QVJzcEZGOztBUW5wRkE7RUFDRTtBUnNwRkY7O0FRbnBGQTtFQUNFO0FSc3BGRjs7QVFucEZBO0VBQ0U7QVJzcEZGOztBUXBwRkE7RUFDRTtBUnVwRkY7O0FRcnBGQTtFQUNFO0FSd3BGRjs7QVF0cEZBO0VBQ0U7QVJ5cEZGOztBUXZwRkE7RUFDRTtBUjBwRkY7O0FReHBGQTtFQUNFO0FSMnBGRjs7QVF6cEZBO0VBQ0U7QVI0cEZGOztBUTFwRkE7RUFDRTtBUjZwRkY7O0FRM3BGQTtFQUNFO0FSOHBGRjs7QVE1cEZBO0VBQ0U7QVIrcEZGOztBUTVwRkE7RUFDRTtBUitwRkY7O0FRN3BGQTtFQUNFO0FSZ3FGRjs7QVE5cEZBO0VBQ0U7QVJpcUZGOztBUS9wRkE7RUFDRTtBUmtxRkY7O0FRaHFGQTtFQUNFO0FSbXFGRjs7QVFqcUZBO0VBQ0U7QVJvcUZGOztBUWxxRkE7RUFDRTtBUnFxRkY7O0FRbnFGQTtFQUNFO0FSc3FGRjs7QVFwcUZBO0VBQ0U7QVJ1cUZGOztBUXJxRkE7RUFDRTtBUndxRkY7O0FRdHFGQTtFQUNFO0FSeXFGRjs7QVF2cUZBO0VBQ0U7QVIwcUZGOztBUXZxRkE7RUFDRTtBUjBxRkY7O0FReHFGQTtFQUNFO0FSMnFGRjs7QVF6cUZBO0VBQ0U7QVI0cUZGOztBUTFxRkE7RUFDRTtBUjZxRkY7O0FRM3FGQTtFQUNFO0FSOHFGRjs7QVE1cUZBO0VBQ0U7QVIrcUZGOztBUTdxRkE7RUFDRTtBUmdyRkY7O0FROXFGQTtFQUNFO0FSaXJGRjs7QVEvcUZBO0VBQ0U7QVJrckZGOztBUWhyRkE7RUFDRTtBUm1yRkY7O0FRanJGQTtFQUNFO0FSb3JGRjs7QVFqckZBO0VBQVE7QVJxckZSOztBUW5yRkE7RUFDRTtFQUNBO0FSc3JGRjs7QVFwckZBO0VBQ0U7RUFDQTtBUnVyRkY7O0FRcnJGQTtFQUNFO0VBQ0E7QVJ3ckZGOztBUXRyRkE7RUFDRTtFQUNBO0FSeXJGRjs7QVF2ckZBO0VBQ0U7RUFDQTtBUjByRkY7O0FReHJGQTtFQUNFO0VBQ0E7QVIyckZGOztBUXpyRkE7RUFDRTtFQUNBO0FSNHJGRjs7QVExckZBO0VBQ0U7RUFDQTtBUjZyRkY7O0FRM3JGQTtFQUNFO0VBQ0E7QVI4ckZGOztBUTVyRkE7RUFDRTtFQUNBO0FSK3JGRjs7QVE3ckZBO0VBQ0U7RUFDQTtBUmdzRkY7O0FROXJGQTtFQUNFO0VBQ0E7QVJpc0ZGOztBUS9yRkE7RUFDRTtFQUNBO0FSa3NGRjs7QVFoc0ZBO0VBQ0U7RUFDQTtBUm1zRkY7O0FRanNGQTtFQUNFO0VBQ0E7QVJvc0ZGOztBUWxzRkE7RUFDRTtFQUNBO0FScXNGRjs7QVFuc0ZBO0VBQ0U7RUFDQTtBUnNzRkY7O0FRcHNGQTtFQUNFO0VBQ0E7QVJ1c0ZGOztBUXJzRkE7RUFDRTtFQUNBO0FSd3NGRjs7QVF0c0ZBO0VBQ0U7RUFDQTtBUnlzRkY7O0FRdnNGQTtFQUNFO0VBQ0E7QVIwc0ZGOztBUXhzRkE7RUFDRTtFQUNBO0FSMnNGRjs7QUVodUdRO0VNMmhCTjtJQUFTO0VSMHNGVDtFUXpzRkE7SUFBUztFUjRzRlQ7QUFDRjtBU252R0E7RUFDRTtBVHF2R0Y7O0FTbHZHQTtFQUNFO0FUcXZHRjs7QUVodkdRO0VPQU47SUFDRTtFVG92R0Y7RVNsdkdBO0lBQ0U7RVRvdkdGO0VTbHZHQTtJQUNFO0VUb3ZHRjtBQUNGO0FFNXZHUTtFT2NOO0lBQ0U7RVRpdkdGO0VTL3VHQTtJQUNFO0VUaXZHRjtBQUNGO0FVOXdHQTs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBO0VBQ0U7RUFDQSxtQlZ1Slk7QUR3b0dkOztBVzV4R0E7RUFDRTtBWCt4R0Y7O0FXNXhHQTtFQUNFO0VBQ0E7RUFDQSx5Q1YrSWE7QURncEdmOztBVzV4R0E7RUFBa0IsY1ZQQTtBRHV5R2xCOztBVzl4R0E7RUFBSztBWGt5R0w7O0FXaHlHQTtFQUFZO0FYb3lHWjs7QVdueUdBO0VBQVk7QVh1eUdaOztBV3R5R0E7RUFBWTtBWDB5R1o7O0FXeHlHQTtFQUFrQztFQUFvQix5Q1ZvSXZDO0FEeXFHZjs7QVczeUdBO0VBQWE7QVgreUdiOztBVzd5R0E7Ozs7OztFQUtRO0VBQW9CLGNWeEJWO0FEMDBHbEI7O0FXaHpHQTtFQUFNO0FYb3pHTjs7QVduekdBO0VBQUs7QVh1ekdMOztBV3J6R0E7RUFBYztBWHl6R2Q7O0FXdnpHQTtFQUFhO0FYMnpHYjs7QVd6ekdBO0VBQVE7QVg2ekdSOztBVzN6R0E7RUFBVyxpQlY2R0Q7QURrdEdWOztBVzd6R0E7RUFDRTtFQUNBLGNWekNXO0VVMENYO0VBQ0Esa0NWMkdhO0FEcXRHZjs7QVc3ekdBO0VBQ0U7RUFDQTtBWGcwR0Y7O0FXN3pHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYZzBHRjs7QVc3ekdFO0VBQ0U7RUFDQTtFQUNBLHlDVndGVztBRHd1R2Y7O0FXN3pHQTs7RUFFRTtFQUNBO0FYZzBHRjs7QVc1ekdBOzs7O0VBSUUsaUJWbUVPO0VVbEVQO0FYK3pHRjs7QVc1ekdBOztFQUVFLGVWOERRO0VVN0RSO0FYK3pHRjs7QVc1ekdBOzs7O0VBSUUsaUJWdURPO0VVdERQLG1CVnlEWTtBRHN3R2Q7O0FXM3pHQTtFQUNFLGlCVmtETztFVWpEUDtBWDh6R0Y7O0FFMTVHUTtFU2lHTjs7SUFFRTtJQUNBO0VYNnpHRjtFVzF6R0E7Ozs7SUFJRSxrQlY4Qk07SVU3Qk47RVg0ekdGO0FBQ0Y7QUV6NkdRO0VTbUhOO0lBQ0U7RVh5ekdGO0VXdHpHQTs7SUFFRTtJQUNBLGlCVmFRO0VEMnlHVjtFV3J6R0E7O0lBRUUsZVZTTztJVVJQO0VYdXpHRjtFV3B6R0E7O0lBRUUsa0JWSU07SVVITjtFWHN6R0Y7RVduekdBOztJQUVFO0lBQ0EsaUJWRks7SVVHTDtFWHF6R0Y7RVdsekdBOztJQUVFLGVWUE07SVVRTjtFWG96R0Y7RVdqekdBOztJQUVFLGlCVlpLO0lVYUw7RVhtekdGO0FBQ0Y7QVl2OUdBOztFQUVFO0VBQ0E7QVp5OUdGOztBWXQ5R0E7RUFDRTtBWnk5R0Y7O0FZdDlHQTtFQUNFO0FaeTlHRjs7QVl2OUdBO0VBQ0U7QVowOUdGOztBWXY5R0E7RUFDRTtBWjA5R0Y7O0FZdjlHQTtFQUNFO0FaMDlHRjs7QVl2OUdBO0VBQ0U7QVowOUdGOztBWXY5R0E7RUFDRTtBWjA5R0Y7O0FZeDlHQTtFQUNFO0FaMjlHRjs7QVl6OUdBO0VBQ0U7QVo0OUdGOztBWTE5R0E7RUFDRTtBWjY5R0Y7O0FZMzlHQTtFQUNFO0FaODlHRjs7QVk1OUdBO0VBQ0U7QVorOUdGOztBWTc5R0E7RUFDRTtBWmcrR0Y7O0FZOTlHQTtFQUNFO0FaaStHRjs7QVkvOUdBO0VBQ0U7QVprK0dGOztBWTM5R0U7Ozs7RUFDRTtBWmkrR0o7O0FFcmhIUTtFVTBESjtJQUNFO0VaKzlHSjtBQUNGO0FFM2hIUTtFVWlFSjtJQUNFO0VaNjlHSjtBQUNGO0FFaGlIUTtFVXdFSjtJQUNFO0VaMjlHSjtBQUNGO0FFcmlIUTtFVStFSjtJQUNFO0VaeTlHSjtBQUNGO0FhcGpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fic2pIRjs7QWFwakhBO0VBQ0U7QWJ1akhGOztBYXBqSEE7RUFDRTtFQUNBO0VBQ0E7QWJ1akhGOztBYXJqSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fid2pIRjs7QWMva0hBOzs7O0VBSUU7QWRrbEhGOztBYy9rSEE7RUFBVztBZG1sSFg7O0FjbGxIQTtFQUFVO0Fkc2xIVjs7QWNybEhBO0VBQVM7QWR5bEhUOztBY3hsSEE7RUFBUztBZDRsSFQ7O0FjM2xIQTtFQUFTO0FkK2xIVDs7QWM5bEhBO0VBQVM7QWRrbUhUOztBY2ptSEE7RUFBUztBZHFtSFQ7O0FjcG1IQTtFQUFTO0Fkd21IVDs7QWN2bUhBO0VBQVU7QWQybUhWOztBYzFtSEE7RUFBVTtBZDhtSFY7O0FjNW1IQTtFQUNFO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzNtSEE7RUFDRTtBZDhtSEY7O0FjM21IQTtFQUNFO0FkOG1IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzVtSEE7RUFDRTtFQUNBO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzVtSEE7RUFDRTtBZCttSEY7O0FjNW1IQTtFQUNFO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzVtSEE7RUFDRTtBZCttSEY7O0FjNW1IQTtFQUNFO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzVtSEE7RUFDRTtFQUNBO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBYzVtSEE7RUFDRTtBZCttSEY7O0FjNW1IQTtFQUNFO0FkK21IRjs7QWM1bUhBO0VBQ0U7QWQrbUhGOztBRTlySFE7RVlvRk47SUFDRTtFZDhtSEY7RWM1bUhFO0lBQ0U7RWQ4bUhKO0FBQ0Y7QUV2c0hRO0VZK0ZOO0lBQ0U7RWQybUhGO0Vjem1IRTtJQUNFO0VkMm1ISjtBQUNGO0FFL3NIUTtFWXlHTjtJQUNFO0VkeW1IRjtFY3ZtSEU7SUFDRTtFZHltSEo7QUFDRjtBRXZ0SFE7RVltSE47SUFDRTtFZHVtSEY7RWNybUhFO0lBQ0U7RWR1bUhKO0FBQ0Y7QUUvdEhRO0VZa0lOO0lBQ0U7SUFDQTtFZGdtSEY7RWMzbEhFO0lBQ0U7RWQ2bEhKO0VjemxIQTtJQUNFO0VkMmxIRjtFYzFsSEk7SUFDRTtFZDRsSE47RWN4bEhFO0lBQ0U7RWQwbEhKO0VjemxISTtJQUVFO0VkMGxITjtFYzNsSE07SUFBYTtJQUFrQjtJQUFrQjtJQUFnQjtFZGltSHZFO0VjNWxIRTtJQUNFO0VkOGxISjtBQUNGO0FldndIQTtFQUVFO0VBQ0E7QWZ3d0hGOztBZXJ3SEE7RUFDRTtBZnd3SEY7O0FlcndIQTtFQUFlO0FmeXdIZjs7QWV4d0hBO0VBQWU7QWY0d0hmOztBZTN3SEE7RUFBZTtBZit3SGY7O0FlOXdIQTtFQUFlO0Fma3hIZjs7QUVyeEhRO0VhUU47SUFBZTtFZmt4SGY7RWVqeEhBO0lBQWU7RWZveEhmO0FBQ0Y7QUU5eEhRO0VhZVI7SUFBZTtFZm14SGI7QUFDRjtBRW55SFE7RWNSSjtJQUNFO0VoQjh5SEo7RWdCNXlISTtJQUNFO0VoQjh5SE47RWdCM3lISTtJQUNFO0VoQjZ5SE47RWdCMXlISTtJQUNFO0VoQjR5SE47RWdCenlISTtJQUNFO0VoQjJ5SE47QUFDRjtBRXB6SFE7RWNpQko7SUFDRTtFaEJzeUhKO0VnQnB5SEk7SUFDRTtFaEJzeUhOO0VnQm55SEk7SUFDRTtFaEJxeUhOO0VnQmx5SEk7SUFDRTtFaEJveUhOO0VnQmp5SEk7SUFDRTtFaEJteUhOO0FBQ0Y7QUVyMEhRO0VjeUNKO0lBQ0U7RWhCK3hISjtFZ0I3eEhJO0lBQ0U7RWhCK3hITjtFZ0I1eEhJO0lBQ0U7RWhCOHhITjtFZ0IzeEhJO0lBQ0U7RWhCNnhITjtFZ0IxeEhJO0lBQ0U7RWhCNHhITjtBQUNGO0FpQmgySEE7RUFDRTtBakJrMkhGOztBa0JuMkhBO0VBQ0U7QWxCczJIRjs7QWtCcDJIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEJ1MkhGOztBbUJoM0hBOztFQUVFO0VBQ0E7QW5CbTNIRjs7QW9CdDNIQTtFQUNNO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJuQkpVO0VtQktWO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSjtBcEJ5M0hGO0FvQnQzSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCdzNISjtBb0J0M0hNO0VBQ0EsYW5CNUJVO0FEbzVIaEI7QW9CbjNIRTtFQUNFO0VBQ0Esc0JuQmhDUztFbUJpQ1QscUJuQjdCYztBRGs1SGxCO0FvQnAzSEk7RUFDRTtBcEJzM0hOO0FvQnIzSE07RUFDQSxhbkJqQ1k7QUR3NUhsQjtBb0JuM0hJO0VBQ0U7RUFDQTtBcEJxM0hOO0FvQmozSEU7RUFDRSx5Qm5CNUNjO0VtQjZDZCxXbkJqRFM7QURvNkhiO0FvQmozSE07RUFDSSxVbkJwREc7QUR1NkhiO0FvQmgzSEk7RUFDRSxzQm5CeERPO0VtQnlEUCxjbkJyRFk7QUR1NkhsQjtBb0JoM0hRO0VBQ0ksYW5CeERNO0FEMDZIbEI7O0FvQjMySEE7QUFHQTtFQUNFO0VBQ0E7QXBCNDJIRjs7QW9CdjJIRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIwMkhGO0FvQngySEU7RUFDRSxhbkJ6Rlk7QURtOEhoQjs7QXFCcDhIQTtFQUNDO0VBQ0E7QXJCdThIRDs7QXFCbjhIQztFQUNDO0VBQ0E7RUFDQTtBckJzOEhGOztBcUJsOEhBO0VBQ0M7RUFDQTtBckJxOEhEOztBcUJsOEhBOztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckJxOEhEOztBcUJuOEhBO0VBQ0M7QXJCczhIRDs7QXFCcDhIQTtFQUNDO0FyQnU4SEQ7O0FFbCtIUTtFbUJrQ1A7SUFDQztJQUNBO0VyQm84SEE7RXFCbjhIQTtJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJCcThIRDtFcUJuOEhBO0lBQ0M7RXJCcThIRDtFcUJuOEhBO0lBQ0M7RXJCcThIRDtFcUJuOEhBO0lBQ0M7RXJCcThIRDtBQUNGO0FzQm5nSUE7RUFDRTtBdEJxZ0lGO0FzQnBnSUU7RUFDRTtBdEJzZ0lKO0FzQnBnSUU7RUFDRTtFQUNBO0F0QnNnSUo7QXNCcGdJRTtFQUNFO0F0QnNnSUo7O0FzQmxnSUE7RUFDRTtBdEJxZ0lGO0FzQnBnSUU7RUFDRTtFQUNBO0VBQ0EsbUJyQnNJVTtFcUJySVY7QXRCc2dJSjtBc0JwZ0lJO0VBQ0U7QXRCc2dJTjtBc0JwZ0lJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCc2dJTjtBc0JwZ0lJO0VBQ0U7RUFDQTtBdEJzZ0lOOztBRTdoSVE7RXFCUE47SUFDRTtFdkJ3aUlGO0V1QnRpSUE7SUFDRTtFdkJ3aUlGO0V1QnRpSUE7SUFDRTtFdkJ3aUlGO0V1QnRpSUE7SUFDRTtFdkJ3aUlGO0V1QnJpSUE7SUFDRTtFdkJ1aUlGO0FBQ0Y7QXVCcGlJQTtFQUNFLHdDQXRCVztBdkI0akliOztBdUJuaUlBO0VBQ0U7QXZCc2lJRjs7QXVCbmlJQTtFQUNFO0F2QnNpSUY7O0F1Qm5pSUE7RUFDRTtBdkJzaUlGOztBdUJuaUlBO0VBQ0U7QXZCc2lJRjs7QXVCbmlJQTtFQUNFO0F2QnNpSUY7O0F1QnBpSUE7RUFDRTtBdkJ1aUlGOztBdUJyaUlBO0VBQ0U7QXZCd2lJRjs7QXdCdGxJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJ5bElKOztBd0JybElDO0VBQ0M7RUFDQTtBeEJ3bElGOztBd0JubElDO0VBQ0M7RUFDQTtBeEJzbElGOztBd0JsbElBO0VBQ0M7RUFDQTtBeEJxbElEOztBd0JubElBO0VBQ0M7RUFDQTtBeEJzbElEOztBRTNtSVE7RXNCeUJQO0lBQ0M7RXhCc2xJQTtFd0JybElBO0lBQ0M7RXhCdWxJRDtFd0JwbElEO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V4QnNsSUE7QUFDRjtBd0JubElBO0VBQ0M7QXhCcWxJRDs7QXdCbGxJQTtFQUNDO0F4QnFsSUQ7O0F3QmxsSUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBLHFCdkI5RGlCO0FEbXBJbEI7O0F3QmxsSUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCcWxJRDs7QXdCbGxJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCcWxJRDs7QXdCbGxJQTtFQUNDO0F4QnFsSUQ7QXdCcGxJQztFQUNDO0VBQ0E7QXhCc2xJRjtBd0JwbElDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXhCc2xJRjtBd0JwbElDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QXhCc2xJRjtBd0JybElFO0VBQ0M7QXhCdWxJSDtBd0JwbElDO0VBQ0M7RUFDQTtBeEJzbElGO0F3QnJsSUU7RUFDQztBeEJ1bElIO0F3QnJsSUU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0J2QnBIVTtFdUJxSFY7QXhCdWxJSDtBd0JubElFO0VBQ0M7QXhCcWxJSDtBd0JubElFO0VBQ0M7QXhCcWxJSDtBd0JwbElHO0VBQ0M7QXhCc2xJSjtBd0JsbElHO0VBQ0M7QXhCb2xJSjs7QXdCN2tJQTtFQUFhO0F4QmlsSWI7O0F3QmhsSUE7RUFBYztBeEJvbElkOztBd0JubElBO0VBQVE7QXhCdWxJUjs7QXdCdGxJQTtFQUFZO0F4QjBsSVo7O0F5QjF1SVE7RUFDSTtBekI2dUlaO0F5QjV1SVk7RUFDSTtBekI4dUloQjs7QXlCeHVJQTtFQUNJO0VBQ0E7RUFDQTtBekIydUlKOztBeUJ4dUlDO0FBQ0E7RUFDRztFQUNBO0F6QjJ1SUo7O0F5Qnh1SUU7QUFDQTtFQUNFO0F6QjJ1SUo7O0F5Qnh1SUE7RUFDSTtBekIydUlKOztBeUJ6dUlBO0VBQ0k7RUFDQTtBekI0dUlKOztBeUJ4dUlBO0VBQ0kseUJ4QnJDWTtFd0JzQ1o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6QjJ1SUo7QXlCMXVJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCNHVJUjtBeUIxdUlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXpCNHVJUjtBeUIxdUlRO0VBQ0k7QXpCNHVJWjtBeUIxdUlRO0VBQ0k7RUFDQTtBekI0dUlaO0F5QjF1SVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekI0dUlaO0F5QjF1SVE7RUFDSTtFQUNBO0F6QjR1SVo7QXlCMXVJUTtFQUNJO0VBQ0E7RUFDQTtBekI0dUlaO0F5Qnp1SVE7RUFDSTtFQUNBO0F6QjJ1SVo7QXlCenVJWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6QjJ1SWhCO0F5QjF1SWdCO0VBQWdCO0F6QjZ1SWhDO0F5Qnh1SUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekIwdUlKO0F5Qnp1SUk7RUFDSTtBekIydUlSO0F5QnJ1SUE7RUFJSTtFQUNBLHNCeEIvR1M7QURtMUliO0F5Qnh1SUk7RUFDQTtBekIwdUlKO0F5QnR1SUk7RUFDSTtBekJ3dUlSOztBeUJqdUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Qm91SUo7QXlCbnVJSTtFQUNJO0VBQ0E7QXpCcXVJUjs7QXlCL3RJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCa3VJSjtBeUJodUlJO0VBQ0k7QXpCa3VJUjs7QXlCNXRJUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6Qit0SVo7QXlCOXRJWTtFQUNJO0VBQ0E7RUFDQTtFQUNBLHlCeEIxSkU7RXdCMkpGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCZ3VJaEI7O0F5QjF0SUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCNnRJSjtBeUIzdElJO0VBQ0k7RUFDQTtBekI2dElSOztBeUJ2dElBO0VBRUk7SUFDSTtFekJ5dElOO0V5QnZ0SUU7SUFDSTtFekJ5dElOO0V5QnR0SUU7SUFBaUI7SUFBYTtFekIwdEloQztFeUJ4dElFO0lBQ0k7RXpCMHRJTjtBQUNGO0F5QnJ0SUU7RUFFRTtJQUNJO0V6QnN0SU47RXlCcHRJRTtJQUNJO0V6QnN0SU47RXlCbnRJRTtJQUNJO0V6QnF0SU47RXlCbnRJRTtJQUNJO0V6QnF0SU47RXlCbnRJRTtJQUNJO0V6QnF0SU47RXlCanRJRTtJQUNJO0lBQ0E7RXpCbXRJTjtFeUJodElFO0lBQ0k7RXpCa3RJTjtBQUNGO0F5QjVzSUU7RUFDRTtBekI4c0lKOztBeUIxc0lBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXpCNnNJSjs7QTBCdDhJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0J6QkRZO0FEMDhJYjtBMEJ4OElDO0VBQVc7QTFCMjhJWjtBMEIxOElDO0VBQW1CO0ExQjY4SXBCO0EwQjU4SUM7RUFDQztBMUI4OElGO0EwQjU4SUM7RUFDQztBMUI4OElGO0EwQjU4SUc7RUFDQztBMUI4OElKO0EwQjE4SUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtBMUI0OElGO0EwQno4SUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQjI4SUY7QTBCeDhJQztFQUNDO0VBQ0E7QTFCMDhJRjtBMEJ2OElDO0VBQ0M7QTFCeThJRjtBMEJ0OElDO0VBQ0M7QTFCdzhJRjs7QTBCcDhJQTtFQUNDO0lBQ0M7SUFDQTtFMUJ1OElBO0UwQnQ4SUE7SUFDQztFMUJ3OElEO0FBQ0Y7QTBCbjhJQTtFQUNDO0ExQnE4SUQ7QTBCcDhJQztFQUNDO0VBQ0E7QTFCczhJRjs7QTJCcmdKQTs7OztDQUFBO0FBU0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0JvZ0pGOztBMkJqZ0pBO0VBQ0Usc0IxQmJXO0UwQmNYO0VBQ0E7RUFDQSx5QzFCdUlhO0UwQnRJYjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQm9nSkY7QTJCbmdKRTtFQUNFLHlCMUI3Qlk7QURraUpoQjtBMkJuZ0pFO0VBQ0UsbUIxQnpCYztFMEIwQmQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0JxZ0pKO0EyQnBnSkk7RUFDRSxtQjFCaENZO0UwQmlDWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQnNnSk47QTJCcGdKSTtFQUNFO0EzQnNnSk47O0EyQmhnSkU7RUFDRSx5QjFCekRZO0FENGpKaEI7QTJCamdKRTtFQUNFO0EzQm1nSko7QTJCbGdKSTtFQUNFO0EzQm9nSk47O0EyQjkvSUk7RUFDRTtBM0JpZ0pOOztBMkI3L0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNCZ2dKRjtBMkIvL0lFO0VBQ0U7RUFDQTtBM0JpZ0pKOztBMkI3L0lBO0VBQ0U7RUFDRjtBM0JnZ0pBOztBMkI1L0lFO0VBQ0U7QTNCKy9JSjs7QTJCMy9JQTtFQUNFO0VBQ0E7RUFDQTtBM0I4L0lGO0EyQjcvSUU7RUFDRTtBM0IrL0lKO0EyQjkvSUk7RUFDRTtBM0JnZ0pOO0EyQjkvSUk7RUFDRSxjMUJ6R1U7RTBCMEdWO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUIxQjFHUztFMEIyR1Q7RUFDQTtFQUNBO0EzQmdnSk47QTJCLy9JTTtFQUNFLG1CMUJuSFE7RTBCb0hSO0EzQmlnSlI7QTJCOS9JSTtFQUNFLG1CMUJ4SFU7RTBCeUhWO0EzQmdnSk47O0EyQjMvSUE7RUFDRTtBM0I4L0lGO0EyQjcvSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUIxQnpJWTtFMEIwSVo7QTNCKy9JSjtBMkI5L0lJO0VBQ0U7RUFDQTtFQUNBO0EzQmdnSk47QTJCLy9JTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUIxQmhKTztBRGlwSmY7QTJCaGdKUTtFQUNFO0EzQmtnSlY7QTJCaGdKUTtFQUNFO0VBQ0E7QTNCa2dKVjs7QTJCMy9JQTtFQUNFO0EzQjgvSUY7QTJCNS9JRTtFQUNFO0EzQjgvSUo7QTJCMy9JRTtFQUNFO0EzQjYvSUo7O0EyQnovSUE7RUFDRTtBM0I0L0lGOztBMkJ6L0lBO0VBQXFCO0EzQjYvSXJCOztBMkIzL0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNCOC9JRjtBMkI1L0lFOzs7RUFHRTtBM0I4L0lKOztBMkJ6L0lFO0VBQ0U7RUFDQTtBM0I0L0lKOztBRXRySlE7RXlCaU1OO0lBQ0U7SUFDQTtJQUNBO0UzQnkvSUY7RTJCdC9JQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFM0J3L0lGO0UyQnAvSUU7SUFDRTtJQUNBO0lBQ0E7RTNCcy9JSjtBQUNGO0FFOXNKUTtFeUI2Tk47SUFDRTtFM0JvL0lGO0FBQ0Y7QTJCai9JQTs7OztDQUFBO0F6QmxPUTtFeUJ5T047SUFDRTtFM0JrL0lGO0UyQmovSUU7SUFDRTtJQUNBO0UzQm0vSUo7QUFDRjtBMkI3K0lBOzs7O0NBQUE7QUFNQTtFQUNFO0EzQjgrSUY7O0EyQjMrSUE7RUFDRTtFQUNBO0EzQjgrSUY7O0FFOXVKUTtFeUJvUU47SUFDRTtFM0I4K0lGO0FBQ0Y7QTJCMStJQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0UzQjQrSUY7RTJCeitJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0UzQjIrSUY7QUFDRjtBMkJ4K0lBOzs7O0NBQUE7QUFPQTs7RUFFRTtBM0J3K0lGOztBMkJyK0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQjFCdFRXO0UwQnVUWDtBM0J3K0lGO0EyQnQrSUU7RUFDRTtBM0J3K0lKO0EyQnIrSUE7RUFDTTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQnUrSU47QTJCdCtJTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCdytJUjtBMkJ2K0lRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0J5K0lWO0EyQngrSVU7RUFDRTtFQUNBO0EzQjArSVo7O0EyQi85SUU7RUFDRTtBM0JrK0lKO0EyQmgrSUM7RUFDRztBM0JrK0lKO0EyQmorSUk7RUFDRTtFQUNBO0EzQm0rSU47QTJCaitJSTtFQUNFO0VBQ0E7QTNCbStJTjs7QTJCNzlJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0JnK0lGOztBMkI1OUlFO0VBQWU7QTNCZytJakI7QTJCLzlJRTtFQUFnQjtBM0JrK0lsQjtBMkJqK0lJO0VBQVc7RUFBMEI7RUFBVTtBM0JzK0luRDtBMkJyK0lJO0VBQVU7RUFBMkI7RUFBVTtBM0IwK0luRDs7QUVwMkpRO0V5Qm1ZRjtJQUNFO0UzQnErSU47RTJCcCtJTTtJQUNFO0UzQnMrSVI7QUFDRjtBMkJoK0lFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCMUJyYVk7QUR1NEpoQjtBMkJqK0lJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CMUJ4YVk7QUQyNEpsQjtBMkJsK0lNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QjFCamJVO0UwQmtiVjtBM0JvK0lSO0EyQmwrSU07RUFDRTtFQUNBO0EzQm8rSVI7O0FFeDVKUTtFeUJpY0M7SUFBVztFM0I0OUlsQjtBQUNGO0E0Qng2SkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUIwNkpKO0E0Qno2Skk7RUFDSTtFQUNBO0VBQ0E7QTVCMjZKUjtBNEIxNkpRO0VBQ0k7RUFDQTtBNUI0NkpaOztBNEJ0NkpJO0VBQ0k7QTVCeTZKUjs7QTRCcDZKQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUJ1NkpKOztBNEJuNkpBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHRztBNUJvNkpQOztBNEJqNkpBO0VBQ0k7QTVCbzZKSjs7QTRCajZKQTtFQUNJO0VBQ0E7RUFDQTtBNUJvNkpKO0E0Qm42Skk7RUFDSTtBNUJxNkpSO0E0Qmg2Skk7RUFDSTtFQUNBO0E1Qms2SlI7O0E0Qjc1SkE7RUFDSTtFQUNBO0VBQ0E7QTVCZzZKSjtBNEIvNUpJO0VBQ0k7RUFDQTtBNUJpNkpSOztBRW4rSlE7RTBCd0VKO0lBQ0k7RTVCKzVKTjtBQUNGO0FFeitKUTtFMEI4RUo7SUFDSTtFNUI4NUpOO0U0QjU1SkU7SUFDSTtFNUI4NUpOO0U0QjU1SkU7SUFBWTtFNUIrNUpkO0FBQ0Y7QTZCMS9KSTtFQUNFLFU1QkRPO0FENi9KYjs7QTZCdi9KQTtFQUFnQjtBN0IyL0poQjs7QTZCei9KQTtFQUNFO0E3QjQvSkY7O0E2QjEvSkE7RUFDRTtBN0I2L0pGO0E2QjUvSkU7RUFDRTtBN0I4L0pKO0E2QjMvSkk7RUFDRTtBN0I2L0pOOztBNkJ2L0pFO0VBQ0U7QTdCMC9KSjtBNkJ6L0pNO0VBQUk7QTdCNC9KVjs7QTZCeC9KQTtFQUNFO0E3QjIvSkY7QTZCMS9KRTtFQUNFO0VBQ0E7QTdCNC9KSjtBNkIzL0pJO0VBQ0U7QTdCNi9KTjtBNkIzL0pJO0VBQ0U7QTdCNi9KTjtBNkIxL0pNO0VBQ0U7QTdCNC9KUjs7QTZCci9KQTtFQUtFO0E3Qm8vSkY7QTZCdi9KTTtFQUFLO0E3QjAvSlg7QTZCdC9KRTtFQUFNO0VBQW9CO0E3QjAvSjVCO0E2QnovSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCNUJqRVM7RTRCa0VUO0E3QjIvSko7O0E2QnIvSkE7RUFDRTtBN0J3L0pGO0E2QnYvSkU7RUFDRTtFQUNBO0E3QnkvSko7QTZCdi9KRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0I1QnRGUztFNEJ1RlQ7QTdCeS9KSjs7QTZCci9KQTtFQUNFO0VBQ0E7QTdCdy9KRjs7QTZCci9KQTtBQUVDO0FBQ0E7RUFDRztFQUNBO0E3QnUvSko7O0E2QnAvSkU7QUFDQTtFQUNFO0E3QnUvSko7O0E2QnAvSkU7RUFDRTtBN0J1L0pKO0E2QnQvSkk7RUFDRTtFQUNBO0E3QncvSk47QTZCci9KTTtFQUNFO0E3QnUvSlI7QTZCci9KTTtFQUNFO0E3QnUvSlI7O0E2QmovSk07RUFBTTtBN0JxL0paOztBNkJqL0pFO0VBQ0csbUI1QmxJVTtFNEJtSVY7RUFPQztBN0I4K0pOO0E2QnAvSks7RUFBSTtBN0J1L0pUO0E2QnQvSkk7RUFDSTtFQUNBO0E3QncvSlI7QTZCcC9KTTtFQUNFO0E3QnMvSlI7O0E2QmovSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCby9KSjs7QTZCLytKSTtFQUNFO0VBQ0E7QTdCay9KTjs7QTZCNytKRTtFQUNFO0E3QmcvSko7QTZCLytKSTtFQUNFO0VBQ0E7RUFDQTtBN0JpL0pOOztBNkI1K0pBO0VBQVE7QTdCZy9KUjs7QTZCOStKRTtFQUNJO0E3QmkvSk47QTZCaC9KTTtFQUNJO0VBQ0E7QTdCay9KVjtBNkJoL0pNO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdCay9KVjs7QTZCOStKRTtFQUNFLHlDNUIzQ1c7RTRCNENYO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0JpL0pKOztBNkI5K0pHO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QTdCaS9KSjs7QTZCOStKRztBQUNBO0VBQ0c7QTdCaS9KTjs7QTZCNStKSTtFQUNJO0E3QisrSlI7QTZCNytKSTtFQUNFO0E3QisrSk47O0E2QjMrSkE7RUFDRTtBN0I4K0pGOztBNkIzK0pBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUI1QjVPYztFNEI2T2Q7RUFDQTtFQUNBO0E3QjgrSkY7QTZCNytKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QisrSko7O0E2QjMrSkE7RUFDRTtFQUNBO0E3QjgrSkY7QTZCNytKRTtFQUNFO0VBQ0E7RUFDQTtBN0IrK0pKOztBNkIzK0pBO0VBQ0U7RUFDQTtFQUNBLFc1QnhRVztBRHN2S2I7O0E2QjErSkU7RUFDRTtBN0I2K0pKO0E2QjMrSkU7RUFDRTtFQUNBO0VBQ0E7QTdCNitKSjtBNkIzK0pFO0VBQ0U7RUFDQTtFQUNBO0E3QjYrSko7QTZCMStKSTtFQUNFO0E3QjQrSk47QTZCMytKTTtFQUNFO0VBQ0E7RUFDQSxXNUIvUks7QUQ0d0tiO0E2QjUrSlE7RUFDRTtFQUNBO0E3QjgrSlY7O0E2QnQrSkE7RUFDSTtBN0J5K0pKOztBNkJ0K0pBO0VBQ0U7RUFDQTtBN0J5K0pGOztBNkJ0K0pBO0VBQ0U7RUFDQTtFQUNBLG1CNUJyVGE7QUQ4eEtmO0E2QnQrSkU7RUFDRSxXNUIxVFM7RTRCMlRUO0VBQ0E7RUFDQSx5QzVCdEtXO0FEOG9LZjtBNkJ0K0pFO0VBQ0UsYzVCblVZO0U0Qm9VWjtFQUNBO0VBQ0E7RUFDQTtBN0J3K0pKOztBNkJuK0pJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QnMrSlI7O0E2QmgrSkU7RUFDRTtBN0JtK0pKO0E2QmorSkU7RUFDRTtFQUNBO0VBQ0E7QTdCbStKSjtBNkJsK0pJO0VBQ0U7RUFDQTtBN0JvK0pOOztBNkIvOUpBO0VBQ0U7QTdCaytKRjtBNkJqK0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdCbStKSjs7QTZCaCtKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCbStKRjs7QTZCOTlKQTtFQUNFO0E3QmkrSkY7O0E2Qjk5SkE7RUFBUTtFQUFrQztBN0JtK0oxQzs7QTZCaitKQTtFQUNFO0VBQ0E7RUFDQTtBN0JvK0pGO0E2QmwrSkU7RUFDRTtFQUNBO0E3Qm8rSko7QTZCbCtKRztFQUNDO0E3Qm8rSko7QTZCbCtKRztFQUNDLHNCNUJ2WVM7QUQyMktiO0E2Qm4rSkk7RUFBUztBN0JzK0piOztBNkJsK0pBO0VBQ0U7QTdCcStKRjtBNkJwK0pFO0VBQ0U7QTdCcytKSjtBNkJwK0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QnMrSko7QTZCcCtKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUI1QnJhVztFNEJzYVg7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCcytKSjs7QTZCbCtKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0JxK0pGO0E2QnArSkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QnMrSkY7O0E2QmwrSkE7RUFDRTtBN0JxK0pGOztBNkJsK0pBO0VBQ0U7QTdCcStKRjtBNkJwK0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QnMrSko7O0E2QmorSkU7RUFDRTtFQUNBO0E3Qm8rSko7O0E2Qi85SkU7RUFDRSxtQjVCaGVZO0FEazhLaEI7QTZCaitKSTtFQUNFO0E3Qm0rSk47O0E2Qjk5SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QmkrSkY7QTZCaCtKRTtFQUNFO0VBQ0E7QTdCaytKSjs7QTZCOTlKQTs7OztFQUlFO0VBQ0E7RUFDQTtFQUNBO0E3QmkrSkY7QTZCaCtKRTs7OztFQUNFO0VBQ0E7QTdCcStKSjs7QTZCaitKQTtFQUFTO0VBQ0w7QTdCcStKSjs7QTZCcCtKQTtFQUFTO0VBQ0w7QTdCdytKSjs7QTZCditKQTtFQUFTO0VBQ0w7QTdCMitKSjs7QTZCMStKQTtFQUFhO0VBQ1Q7QTdCOCtKSjs7QTZCNStKQTtBQUNBO0VBQ0k7QTdCKytKSjs7QTZCNStKRTtFQUNFO0VBQ0E7QTdCKytKSjtBNkI3K0pJO0VBQU87QTdCZy9KWDs7QTZCNStKRTtFQUNFO0E3QisrSko7O0E2QjUrSkU7RUFDRTtFQUNBO0E3QisrSko7O0E2QjMrSkU7RUFDRTtFQUNBO0E3QjgrSko7O0E2QjMrSkU7RUFDRTtBN0I4K0pKOztBNkIzK0pFO0VBQ0U7QTdCOCtKSjs7QTZCMytKRTtFQUNFO0VBQ0E7QTdCOCtKSjs7QTZCMytKRTtFQUNFO0VBQ0E7QTdCOCtKSjtBNkI3K0pNO0VBQ0U7RUFDQTtFQUNBO0E3QisrSlI7QTZCOStKUTtFQUNFO0E3QmcvSlY7QTZCOStKUTtFQUNBO0VBQ0E7QTdCZy9KUjs7QTZCNStKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3QisrSkY7O0E2QnorSkE7QUFFQTtFQUNDO0VBQ0E7QTdCMitKRDs7QTZCeCtKQTtFQUNDO0E3QjIrSkQ7O0E2QngrSkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QjIrSkQ7O0E2QngrSkE7RUFDQztFQUNBO0VBQ0E7QTdCMitKRDs7QTZCeCtKQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCMitKRDs7QTZCeCtKQTtFQUNDO0E3QjIrSkQ7O0E2QngrSkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBN0IyK0pEOztBNkJ4K0pBO0VBQ0U7RUFDQTtBN0IyK0pGO0E2QjErSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0I0K0pKO0E2QjErSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0I0K0pKO0E2QjMrSkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QjYrSk47QTZCMStKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGE1Qm5wQlk7QUQrbkxoQjtBNkJ4K0pNO0VBQ0UsYTVCeHBCUTtBRGtvTGhCOztBNkIvOUpNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdCaytKUjtBNkJqK0pRO0VBQ0U7RUFDQTtFQUNBLGE1QnBxQlE7RTRCcXFCUjtFQUNBO0E3Qm0rSlY7QTZCbCtKVTtFQUNFLGU1QnhxQk07QUQ0b0xsQjtBNkIvOUpNO0VBQ0U7QTdCaStKUjs7QTZCeDlKTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3QjI5SlI7QTZCMTlKUTtFQUNFO0VBQ0E7RUFDQSxhNUIvckJRO0U0QmdzQlI7RUFDQTtBN0I0OUpWO0E2QjM5SlU7RUFDRSxlNUJuc0JNO0FEZ3FMbEI7QTZCeDlKTTtFQUNFO0E3QjA5SlI7O0E2QnA5SkE7RUFBWTtBN0J3OUpaOztBNkJ2OUpBO0VBQVk7QTdCMjlKWjs7QTZCejlKRTtFQUFjO0E3QjY5SmhCOztBNkI1OUpFO0VBQWdCO0E3QmcrSmxCOztBNkI5OUpBO0VBRUU7SUFBVztFN0JpK0pYO0U2QmgrSkE7SUFBYztFN0JtK0pkO0U2QmwrSkE7SUFBZ0I7RTdCcStKaEI7RTZCbCtKQTtJQUNFO0U3Qm8rSkY7RTZCbitKRTtJQUNFO0U3QnErSko7RTZCbitKRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0U3QnErSko7RTZCcCtKSTtJQUNFO0U3QnMrSk47RTZCbitKRTtJQUNFO0lBQ0E7RTdCcStKSjtFNkJwK0pNO0lBQ0E7RTdCcytKTjtFNkJoK0pFO0lBQ0k7SUFDQTtFN0JrK0pOO0U2QmgrSkU7SUFBeUI7SUFBYTtJQUFjO0U3QnErSnREO0U2QnArSkU7SUFBdUI7SUFBYztJQUFlO0U3QnkrSnREO0U2QnYrSkU7SUFDRTtFN0J5K0pKO0U2QnQrSkU7SUFBWTtFN0J5K0pkO0U2QngrSkU7SUFBWTtFN0IyK0pkO0U2QnorSkU7SUFDQztFN0IyK0pIO0U2QnorSkU7SUFDSTtFN0IyK0pOO0U2QnorSkU7SUFBb0I7RTdCNCtKdEI7RTZCMStKRTtJQUNJO0U3QjQrSk47RTZCeitKRTtJQUNFO0U3QjIrSko7RTZCeCtKQTtJQUF5QjtFN0IyK0p6QjtFNkJ6K0pBO0lBQ0U7RTdCMitKRjtFNkJ4K0pGO0lBQ0k7RTdCMCtKRjtFNkJ2K0pBO0lBQ0U7RTdCeStKRjtFNkJ4K0pFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFN0IwK0pKO0U2QnIrSkE7SUFDRTtFN0J1K0pGO0U2QnArSkE7SUFBTztFN0J1K0pQO0FBQ0Y7QThCNXhMQTtFQUNJO0E5Qjh4TEo7O0E4QjN4TEk7RUFDSTtBOUI4eExSOztBOEJ6eExJO0VBQ0k7QTlCNHhMUjs7QThCdnhMSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCMHhMUjs7QStCOXlMSTtFQUNJO0VBQ0E7QS9CaXpMUjtBK0IveUxZO0VBQ0ksYzlCRUU7QUQreUxsQjs7QUU3eUxRO0U2Qk1BO0lBQ0k7RS9CMnlMVjtFK0IxeUxVO0lBQ0k7RS9CNHlMZDtBQUNGO0FnQzl6TEU7RUFDQztFQUNBO0FoQ2cwTEg7QWdDN3pMQztFQUNDO0FoQyt6TEY7O0FnQ3p6TEM7RUFDQztBaEM0ekxGO0FnQzN6TEU7RUFBTztBaEM4ekxUO0FnQzV6TEM7RUFDQyx5Qi9CbEJjO0FEZzFMaEI7QWdDN3pMRTtFQUFJO0FoQ2cwTE47QWdDL3pMRTtFQUFLO0FoQ2swTFA7QWdDaDBMQztFQUFzQztFQUFrQix5Qi9CbEIxQztBRHMxTGY7QWdDbjBMQztFQUFzQztFQUFrQjtBaEN1MEx6RDs7QWdDajBMQTtFQUFtQjtBaENxMExuQjs7QWdDbjBMQTtFQUFhLGMvQi9CRztBRHMyTGhCOztBZ0N0MExBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEN5MExEO0FnQ3gwTEM7RUFDQztFQUNBO0FoQzAwTEY7QWdDeDBMQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEMwMExGO0FnQ3gwTEM7RUFDQztFQUNBO0VBQ0E7QWhDMDBMRjs7QWdDcjBMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FoQ3UwTEY7QWdDcjBMRTtFQUFhO0VBQVU7RUFBWTtBaEMwMExyQztBZ0N6MExFO0VBQWE7RUFBVTtFQUFZO0FoQzgwTHJDO0FnQzcwTEU7RUFBYTtFQUFVO0VBQVc7QWhDazFMcEM7QWdDajFMRTtFQUFhO0VBQVU7RUFBVztBaENzMUxwQzs7QWdDbjFMQTtFQUNFO0lBQ0U7SUFDQTtFaENzMUxGO0VnQ24xTEE7SUFDRTtJQUNBO0VoQ3ExTEY7RWdDbDFMQTtJQUNFO0VoQ28xTEY7RWdDajFMQTtJQUNFO0lBQ0E7RWhDbTFMRjtBQUNGO0FnQ2gxTEE7RUFDQztFQUNBO0FoQ2sxTEQ7QWdDajFMQztFQUFhO0FoQ28xTGQ7O0FnQy8wTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDazFMRjs7QWdDOTBMQTtFQUVFO0VBQ0E7SUFDRTtJQUNBO0VoQ2cxTEY7RWdDNzBMQTtFQUNBO0lBQ0U7SUFDQTtFaEMrMExGO0VnQzUwTEE7RUFDQTtJQUNFO0lBQ0E7RWhDODBMRjtFZ0MzMExBO0VBQ0E7SUFDRTtJQUNBO0VoQzYwTEY7QUFDRjtBZ0N4MExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzAwTEY7O0FnQ3QwTEE7RUFFRTtFQUNBO0lBQ0U7SUFDQTtFaEN3MExGO0VnQ3IwTEE7RUFDQTtJQUNFO0lBQ0E7RWhDdTBMRjtFZ0NwMExBO0VBQ0E7SUFDRTtJQUNBO0VoQ3MwTEY7RWdDbjBMQTtFQUNBO0lBQ0U7SUFDQTtFaENxMExGO0FBQ0Y7QWdDajBMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENtMExGOztBZ0MvekxBO0VBRUU7RUFDQTtJQUNFO0lBQ0E7RWhDaTBMRjtFZ0M5ekxBO0VBQ0E7SUFDRTtJQUNBO0VoQ2cwTEY7RWdDN3pMQTtFQUNBO0lBQ0U7SUFDQTtFaEMrekxGO0VnQzV6TEE7RUFDQTtJQUNFO0lBQ0E7RWhDOHpMRjtBQUNGO0FnQzF6TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDNHpMRjs7QWdDeHpMQTtFQUVFO0VBQ0E7SUFDRTtJQUNBO0VoQzB6TEY7RWdDdnpMQTtFQUNBO0lBQ0U7SUFDQTtFaEN5ekxGO0VnQ3R6TEE7RUFDQTtJQUNFO0lBQ0E7RWhDd3pMRjtFZ0NyekxBO0VBQ0E7SUFDRTtJQUNBO0VoQ3V6TEY7QUFDRjtBZ0M1eUxDO0VBQ0M7RUFDQTtBaEM4eUxGO0FnQzV5TEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzh5TEY7QWdDN3lMRTtFQUFVO0VBQVU7QWhDaXpMdEI7QWdDaHpMRTtFQUFVO0VBQVU7QWhDb3pMdEI7QWdDbnpMRTtFQUFVO0VBQVU7QWhDdXpMdEI7QWdDdHpMRTtFQUFVO0FoQ3l6TFo7O0FnQ3J6TEE7RUFDQztBaEN3ekxEO0FnQ3Z6TEM7RUFDQztBaEN5ekxGO0FnQ3Z6TEM7RUFBUztFQUFVO0FoQzJ6THBCO0FnQzF6TEM7RUFBUztFQUFVO0FoQzh6THBCO0FnQzd6TEM7RUFBUztFQUFVO0FoQ2kwTHBCO0FnQ2gwTEM7RUFBUztFQUFVO0FoQ28wTHBCOztBZ0NsMExBO0VBQ0M7RUFDQTtBaENxMExEOztBZ0NsMExBO0VBQWdCLHlDL0JoSkQ7QURzOUxmOztBZ0NqMExDO0VBRUM7RUFDQTtBaENtMExGO0FnQ3IwTEU7RUFBTztBaEN3MExUOztBZ0NqMExDO0VBQ0M7RUFDQTtBaENvMExGO0FnQ24wTEU7RUFDQztBaENxMExIO0FnQ24wTEU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQi9CalVVO0UrQmtVVjtFQUNBO0VBQ0E7QWhDcTBMSDs7QWdDL3pMQztFQUNDO0VBQ0E7QWhDazBMRjtBZ0NqMExFO0VBQ0M7QWhDbTBMSDtBZ0NqMExFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0IvQnZWVTtFK0J3VlY7RUFDQTtFQUNBO0FoQ20wTEg7O0FnQzl6TEE7RUFDQztFQUNBO0VBQ0E7RUFLQTs7Ozs7Ozs7Ozs7SUFBQTtBaEN3MExEO0FnQzUwTEM7RUFDQztFQUNBO0FoQzgwTEY7O0FnQzl6TEE7RUFDQztBaENpMExEO0FnQ2gwTEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDazBMRjs7QWdDOXpMQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ2kwTEQ7O0FnQy96TEE7RUFFQztFQUNBO0VBQ0E7QWhDaTBMRDs7QWdDOXpMQTtFQUNDO0FoQ2kwTEQ7O0FnQzl6TEE7RUFDQztBaENpMExEOztBZ0M5ekxBO0VBRUM7RUFDQTtFQUNBO0FoQ2cwTEQ7O0FnQzd6TEE7RUFDQztFQUNBO0VBQ0E7QWhDZzBMRDs7QWdDOXpMQTtFQUNDO0FoQ2kwTEQ7O0FnQzl6TEE7RUFDQztJQUNDO0VoQ2kwTEE7RWdDaDBMQTtJQUNDO0VoQ2swTEQ7RWdDOXpMRDtJQUNDO0VoQ2cwTEE7RWdDN3pMRDtJQUNDO0lBQ0E7SUFDQTtFaEMrekxBO0VnQzV6TEQ7SUFDQztFaEM4ekxBO0FBQ0Y7QUV4dk1RO0U4QitiTjtJQUNDO0VoQzR6TEQ7RWdDM3pMQztJQUNDO0VoQzZ6TEY7RWdDM3pMQztJQUNDO0VoQzZ6TEY7RWdDMXpMQTtJQUNDO0VoQzR6TEQ7RWdDenpMQztJQUNDO0VoQzJ6TEY7RWdDdnpMRDtJQUNDO0VoQ3l6TEE7RWdDdHpMRDtJQUNDO0VoQ3d6TEE7RWdDcHpMQTtJQUNDO0lBQ0s7RWhDc3pMTjtFZ0NsekxEO0lBQ0M7SUFDQTtFaENvekxBO0VnQ2x6TEQ7SUFDQztFaENvekxBO0VnQ2x6TEQ7SUFDQztFaENvekxBO0VnQ2x6TEQ7SUFDQztJQUNBO0VoQ296TEE7RWdDbHpMRDtJQUNDO0VoQ296TEE7RWdDbHpMRDs7SUFFQztFaENvekxBO0VnQ256TEE7O0lBQ0M7RWhDc3pMRDtFZ0NsekxBO0lBQ0M7SUFDQTtJQUNBO0VoQ296TEQ7RWdDbHpMQTtJQUNDO0VoQ296TEQ7RWdDanpMRDtJQUFvQjtFaENvekxuQjtFZ0NqekxEO0lBQ0M7SUFDQTtFaENtekxBO0VnQ2h6TEQ7SUFDQztJQUNBO0VoQ2t6TEE7RWdDaHpMRDtJQUNDO0VoQ2t6TEE7RWdDaHpMRDtJQUNDO0VoQ2t6TEE7RWdDaHpMRDtJQUNDO0VoQ2t6TEE7RWdDL3lMRDtJQUE4QjtFaENrekw3QjtFZ0NoekxEO0lBQ0M7SUFDQTtFaENrekxBO0VnQ2p6TEE7SUFBYTtJQUFTO0lBQVc7RWhDc3pMakM7RWdDcnpMQTtJQUFhO0lBQVM7SUFBWTtFaEMwekxsQztFZ0N6ekxBO0lBQWE7SUFBVTtJQUFXO0VoQzh6TGxDO0VnQzd6TEE7SUFBYTtJQUFVO0lBQVk7SUFBVztFaENtMEw5QztFZ0NoMExEO0lBQWdCO0VoQ20wTGY7QUFDRjtBaUNqM01BO0VBQ0MsbUJoQ0ljO0VnQ0hkO0VBQ0E7RUFDQTtBakNtM01EO0FpQ2wzTUM7O0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNoQ2RjO0VnQ2VkLGtDaEM0SWE7QUR3dU1mO0FpQ24zTUU7O0VBQ0M7QWpDczNNSDtBaUNuM01DO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QWpDcTNNRjtBaUNuM01DO0VBQ0M7RUFDQTtBakNxM01GO0FpQ3AzTUU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakNzM01IO0FpQ24zTUM7RUFDQztBakNxM01GO0FpQ3AzTUU7O0VBRUM7RUFDQTtFQUNBLGtDaEN3R1k7RWdDdkdaLGNoQ3BEYTtFZ0NxRGI7QWpDczNNSDtBaUNyM01HOztFQUNDLFdoQ3BEUztBRDQ2TWI7QWlDdDNNRzs7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDeTNNSjtBaUNyM01DO0VBQ0M7QWpDdTNNRjs7QWlDbjNNQTtFQUNDO0VBQ0E7RUFDQTtFQUNBLHNCaEMxRVk7RWdDMkVaO0VBQ0E7RUFDQTtBakNzM01EOztBaUNuM01BO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QWpDczNNRDs7QWlDcDNNQTtFQUNDO0VBQ0E7RUFDQSx5QmhDMUZpQjtFZ0MyRmpCO0VBQ0E7RUFDQTtFQUNBO0FqQ3UzTUQ7O0FpQ3AzTUE7RUFBVztBakN3M01YOztBRXY5TVE7RStCa0dQO0lBQ0M7RWpDeTNNQTtFaUN2M01EO0lBQ0M7RWpDeTNNQTtBQUNGO0FpQ3IzTUM7O0VBRUM7RUFDQTtBakN1M01GOztBa0M5K01DO0VBQ0M7QWxDaS9NRjtBa0MvK01DO0VBQUksY2pDSFc7QURxL01oQjtBa0NoL01DOzs7Ozs7RUFVQztBbEM4K01GO0FrQ2wvTUU7Ozs7OztFQUNDO0FsQ3kvTUg7QWtDcC9NQzs7OztFQUlDO0FsQ3MvTUY7QWtDbC9NRTs7RUFFQztBbENvL01IO0FrQ2gvTUM7RUFDQztFQUNBO0FsQ2svTUY7QWtDai9NRTtFQUNDLHlDakN1SFk7RWlDdEhaO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDbS9NSDtBa0NoL01DOztFQUVDO0VBS0EsV2pDL0NXO0FENmhOYjtBa0NsL01FOztFQUNDO0VBQ0E7QWxDcS9NSDtBa0NoL01FO0VBQ0M7RUFDQTtFQUNBO0FsQ2svTUg7QWtDLytNQzs7RUFFQztFQUNBO0VBQ0E7QWxDaS9NRjs7QWtDNytNQTtFQUNDO0FsQ2cvTUQ7O0FrQzcrTUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDZy9NRDs7QWtDNStNQzs7RUFFQztBbEMrK01GO0FrQzkrTUU7O0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ2kvTUg7QWtDNStNRztFQUNDO0VBQ0E7RUFDQSx5QmpDM0ZjO0VpQzRGZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDOCtNSjtBa0N4K01HO0VBQ0MsY2pDeEdjO0VpQ3lHZDtBbEMwK01KOztBa0NyK01BO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QWxDdytNRDs7QWtDcitNQTtFQUNDO0FsQ3crTUQ7O0FrQ3IrTUE7RUFDQztFQUNBO0VBQ0E7QWxDdytNRDs7QWtDcitNQTtFQUNDO0FsQ3crTUQ7O0FrQ3QrTUE7RUFDQztBbEN5K01EOztBa0N2K01BO0VBQ0M7QWxDMCtNRDs7QWtDeCtNQTtFQUNDO0FsQzIrTUQ7O0FrQ3grTUE7RUFDQztBbEMyK01EOztBa0N4K01BO0VBQ0M7QWxDMitNRDs7QWtDeCtNQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0FsQzIrTUQ7O0FrQ3grTUE7RUFDQztFQUNBO0FsQzIrTUQ7O0FrQ3YrTUM7RUFDQztBbEMwK01GO0FrQ3orTUU7RUFDQztFQUNBO0VBQ0E7QWxDMitNSDs7QWtDdCtNQztFQUNDLGdCakNoTFc7RWlDaUxYO0FsQ3krTUY7O0FrQ2wrTUU7RUFDQztBbENxK01IOztBbUNscU5BO0VBQ0k7RUFDQTtBbkNxcU5KO0FtQ3BxTkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkNzcU5SO0FtQ3BxTkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ3NxTlI7QW1DbnFOUTtFQUNJO0VBQ0E7QW5DcXFOWixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvYWJzdHJhY3RzL192YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy92ZW5kb3JzL19zbGljay5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL3ZlbmRvcnMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb3JlL19yZXNldC5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvX2FsaWdubWVudC5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvX3NwYWNlcnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb3JlL19zaXplcy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvdHlwb2dyYXBoeS9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb3JlL3R5cG9ncmFwaHkvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb3JlL3R5cG9ncmFwaHkvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvY29yZS9fZmxleC5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvcmUvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb3JlL19jb2xzLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvY29yZS9fY29sb3Vycy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvbXBvbmVudHMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb21wb25lbnRzL19saW5rcy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb21wb25lbnRzL19jYXJvdXNlbHMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb21wb25lbnRzL19saXN0cy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvbXBvbmVudHMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9jb21wb25lbnRzL19wb3N0cy5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2NvbXBvbmVudHMvX2pvYnMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9sYXlvdXQvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2xheW91dC9fbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovL3RoZW1lX3RlbXBsYXRlLy4vc3JjL2FwcC9zYXNzL2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvcGFnZXMvX2hvbWUuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9wYWdlcy9fYWJvdXQuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9wYWdlcy9fY2FzZXN0dWRpZXMuc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9ibG9ja3MvX2hlcm8uc2NzcyIsIndlYnBhY2s6Ly90aGVtZV90ZW1wbGF0ZS8uL3NyYy9hcHAvc2Fzcy9ibG9ja3MvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvYmxvY2tzL193eXNpd3lnLnNjc3MiLCJ3ZWJwYWNrOi8vdGhlbWVfdGVtcGxhdGUvLi9zcmMvYXBwL3Nhc3MvYmxvY2tzL190ZWFtLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjMTY4OTM2O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJrLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xufVxuXG4uYmstYnJpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U1RkZFQjtcbn1cblxuLmJrLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJrLXByaW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY4OTM2O1xufVxuXG4uYmstbHQtZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG59XG5cbnNlY3Rpb24uYmstcGljLnB0LTgucGItOC5jb2x1bW5zLmJrLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmJrLWRlZXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uYmstZGsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuLmJrLWRrIGgxLCAuYmstZGsgaDIsIC5iay1kayBoMywgLmJrLWRrIGg0LCAuYmstZGsgaDUsIC5iay1kayBoNiwgLmJrLWRrIGEsIC5iay1kayBwLCAuYmstZGsgbGksIC5iay1kayBsYWJlbCwgLmJrLWRrIGJsb2NrcXVvdGUge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5iay1kayAud3lnIGE6bm90KC5idG4pIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iay1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2ODkzNjtcbn1cbi5iay1wcmltYXJ5IGgxLCAuYmstcHJpbWFyeSBoMiwgLmJrLXByaW1hcnkgaDMsIC5iay1wcmltYXJ5IGg0LCAuYmstcHJpbWFyeSBoNSwgLmJrLXByaW1hcnkgaDYsIC5iay1wcmltYXJ5IGEsIC5iay1wcmltYXJ5IHAsIC5iay1wcmltYXJ5IGxpIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYmstcHJpbWFyeSAud3lnIGE6bm90KC5idG4pIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uYmstcHJpbWFyeSBoMiB7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi53cmFwLXRoaW4ge1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0NDQ7XG59XG5cbi5wdWxzZS1zaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFuaW1hdGlvbjogcHVsc2VTaGFkb3cgMnMgaW5maW5pdGUgZWFzZS1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDIwMHB4O1xufVxuXG4ubW91c2UtZm9sbG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgYmFja2dyb3VuZDogZ3JlZW47XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgdG9wOiAyMHB4O1xuICBsZWZ0OiAyMHB4O1xuICBvcGFjaXR5OiAwO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG59XG5cbi5tb3VzZS1hY3RpdmUgLm1vdXNlLWZvbGxvdyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbkBrZXlmcmFtZXMgcHVsc2VTaGFkb3cge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIH1cbiAgNzAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB9XG59XG4uYmstZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY4OTM2O1xufVxuXG4vKipcbk1lZGlhIFF1ZXJpZXNcbiovXG46cm9vdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuXG4uYmctbGlnaHQgaDEsXG4uYmctbGlnaHQgaDIsXG4uYmctbGlnaHQgaDMsXG4uYmctbGlnaHQgaDQsXG4uYmctbGlnaHQgcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnQtNSB7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCAjYWFkNGI0O1xufVxuXG4uYmItNSB7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjYWFkNGI0O1xufVxuXG4uYmstZGVlcCAuYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhZDRiNDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbiNuYXYtcG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogOTk5ODtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdi1vcGVuICNuYXYtcG9wb3ZlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICAgIENTUyBUcnVjYXRlXG4qL1xuLypcbiAgICBBc3BlY3QgUmF0aW9cbiovXG4vKlxuICAgQWJzb2x1dGUgcG9zaXRpb25cbiovXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogaGFuZDtcbn1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5zbGljay10cmFjazphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jYXJvdXNlbC1hc3NpZ25tZW50cyAuc2xpY2stbmV4dCwgLmNhcm91c2VsLWFzc2lnbm1lbnRzIC5zbGljay1wcmV2IHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgdG9wOiAtNjBweDtcbn1cbi5jYXJvdXNlbC1hc3NpZ25tZW50cyAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwcHg7XG4gIGxlZnQ6IGF1dG87XG59XG4uY2Fyb3VzZWwtYXNzaWdubWVudHMgLnNsaWNrLXByZXYge1xuICByaWdodDogNTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5jYXJvdXNlbC1hc3NpZ25tZW50cyAuZm9udC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5jYXJvdXNlbC1hc3NpZ25tZW50cyBsaSB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLmNhcm91c2VsLWFzc2lnbm1lbnRzIGxpIHN2ZyB7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5jYXJvdXNlbC1hc3NpZ25tZW50cyBsaSBzdmcgcGF0aCB7XG4gIGZpbGw6ICNhYWQ0YjQ7XG59XG5cbi8qYW5pbWF0aW9ucyovXG4vKioqKioqKioqKioqKioqKioqXG4qIEJvdW5jZSBpbiByaWdodCAqXG4qKioqKioqKioqKioqKioqKioqL1xuLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5zbG93IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4uc2xvd2VyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5zbG93ZXN0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDNzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDNzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi8qIEFkZGVkIGJ5IEFuZHkgTWVldGFuICovXG4uZGVsYXktMjUwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMjVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMC4yNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMC4yNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4yNXM7XG59XG5cbi5kZWxheS01MDAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDAuNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xufVxuXG4uZGVsYXktNzUwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNzVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMC43NXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMC43NXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC43NXM7XG59XG5cbi5kZWxheS0xMDAwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDFzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMXM7XG59XG5cbi5kZWxheS0xMjUwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDEuMjVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMS4yNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMS4yNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMS4yNXM7XG59XG5cbi5kZWxheS0xNTAwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDEuNXM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAxLjVzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDEuNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMS41cztcbn1cblxuLmRlbGF5LTE3NTAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMS43NXM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAxLjc1cztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAxLjc1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjc1cztcbn1cblxuLmRlbGF5LTIwMDAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMnM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAycztcbn1cblxuLmRlbGF5LTI1MDAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMi41cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDIuNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMi41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAyLjVzO1xufVxuXG4uZGVsYXktMjAwMCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDJzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDJzO1xuICBhbmltYXRpb24tZGVsYXk6IDJzO1xufVxuXG4uZGVsYXktMjUwMCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAyLjVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMi41cztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAyLjVzO1xuICBhbmltYXRpb24tZGVsYXk6IDIuNXM7XG59XG5cbi5kZWxheS0zMDAwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDNzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogM3M7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogM3M7XG59XG5cbi5kZWxheS0zNTAwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDMuNXM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAzLjVzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDMuNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMy41cztcbn1cblxuLmJvdW5jZUluUmlnaHQsIC5ib3VuY2VJbkxlZnQsIC5ib3VuY2VJblVwLCAuYm91bmNlSW5Eb3duIHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xufVxuXG4uZmFkZUluUmlnaHQsIC5mYWRlSW5MZWZ0LCAuZmFkZUluVXAsIC5mYWRlSW5Eb3duIHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xufVxuXG4uZmxpcEluWCwgLmZsaXBJblksIC5yb3RhdGVJbiwgLnJvdGF0ZUluVXBMZWZ0LCAucm90YXRlSW5VcFJpZ2h0LCAucm90YXRlSW5Eb3duTGVmdCwgLnJvdGF0ZURvd25VcFJpZ2h0LCAucm9sbEluIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmxpZ2h0U3BlZWRJblJpZ2h0LCAubGlnaHRTcGVlZEluTGVmdCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTtcbn1cblxuLyoqKioqKioqKioqXG4qIGJvdW5jZUluICpcbioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIH1cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMyk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuLmJvdW5jZUluLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcbn1cblxuLyoqKioqKioqKioqKioqKipcbiogYm91bmNlSW5SaWdodCAqXG4qKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLmJvdW5jZUluUmlnaHQuZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKlxuKiBCb3VuY2UgaW4gbGVmdCAqXG4qKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLmJvdW5jZUluTGVmdC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKlxuKiBCb3VuY2UgaW4gdXAgKlxuKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi5ib3VuY2VJblVwLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG59XG5cbi8qKioqKioqKioqKioqKioqKipcbiogQm91bmNlIGluIGRvd24gKlxuKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi5ib3VuY2VJbkRvd24uZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG59XG5cbi8qKioqKioqKioqXG4qIEZhZGUgSW4gKlxuKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5mYWRlSW4ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZmFkZUluLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuXG4vKioqKioqKioqKlxuKiBHcm93IGluICpcbioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGdyb3dJbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZ3Jvd0luIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmdyb3dJbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5ncm93SW4uZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBncm93SW47XG4gIGFuaW1hdGlvbi1uYW1lOiBncm93SW47XG59XG5cbi8qKioqKioqKlxuKiBTaGFrZSAqXG4qKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2hha2Uge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG59XG4uc2hha2UuZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xufVxuXG4vKioqKioqKipcbiogU2hha2VVcCAqXG4qKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZVVwIHtcbiAgMCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBzaGFrZVVwIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxufVxuLnNoYWtlVXAuZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZVVwO1xuICBhbmltYXRpb24tbmFtZTogc2hha2VVcDtcbn1cblxuLyoqKioqKioqKioqKipcbiogRmFkZUluTGVmdCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4uZmFkZUluTGVmdCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAwcHgpO1xufVxuXG4uZmFkZUluTGVmdC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xufVxuXG4vKioqKioqKioqKioqKlxuKiBGYWRlSW5SaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4uZmFkZUluUmlnaHQge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7XG59XG5cbi5mYWRlSW5SaWdodC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbi8qKioqKioqKioqKioqXG4qIEZhZGVJblVwICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi5mYWRlSW5VcCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbn1cblxuLmZhZGVJblVwLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbn1cblxuLyoqKioqKioqKioqKipcbiogRmFkZUluRG93biAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4uZmFkZUluRG93biB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpO1xufVxuXG4uZmFkZUluRG93bi5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xufVxuXG4vKioqKioqKioqKioqKioqKipcbiogcm90YXRlSW4gKlxuKioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5yb3RhdGVJbi5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG59XG5cbi8qKioqKioqKioqKioqKioqKlxuKiByb3RhdGVJblVwTGVmdCAqXG4qKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLnJvdGF0ZUluVXBMZWZ0LmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKipcbiogcm90YXRlSW5Eb3duTGVmdCAqXG4qKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4ucm90YXRlSW5Eb3duTGVmdC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xufVxuXG4vKioqKioqKioqKioqKioqKioqXG4qIHJvdGF0ZUluVXBSaWdodCAqXG4qKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5yb3RhdGVJblVwUmlnaHQuZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKlxuKiByb3RhdGVJbkRvd25SaWdodCAqXG4qKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5yb3RhdGVJbkRvd25SaWdodC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XG59XG5cbi8qKioqKioqKipcbiogcm9sbEluICpcbioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHJvdGF0ZSgtMTIwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvbGxJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICB9XG59XG4ucm9sbEluLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluO1xuICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xufVxuXG4vKioqKioqKioqXG4qIHdpZ2dsZSAqXG4qKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHdpZ2dsZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goOWRlZyk7XG4gIH1cbiAgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLThkZWcpO1xuICB9XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDdkZWcpO1xuICB9XG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC02ZGVnKTtcbiAgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNGRlZyk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goM2RlZyk7XG4gIH1cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTJkZWcpO1xuICB9XG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDFkZWcpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyB3aWdnbGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg5ZGVnKTtcbiAgfVxuICAxMCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xuICB9XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg3ZGVnKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTZkZWcpO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTRkZWcpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgzZGVnKTtcbiAgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTJkZWcpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxZGVnKTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgwZGVnKTtcbiAgfVxufVxuLndpZ2dsZS5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG4vKioqKioqKipcbiogc3dpbmcgKlxuKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlLCA0MCUsIDYwJSwgODAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIH1cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbi5zd2luZy5nbyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZztcbn1cblxuLyoqKioqKipcbiogdGFkYSAqXG4qKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMCUsIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdGFkYSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cbiAgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gIH1cbn1cbi50YWRhLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi8qKioqKioqKipcbiogd29iYmxlICpcbioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29iYmxlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuICAxNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgtNWRlZyk7XG4gIH1cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuICA0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNSUpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpIHJvdGF0ZSgyZGVnKTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgd29iYmxlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgMTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSkgcm90YXRlKC01ZGVnKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuICA0NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKSByb3RhdGUoLTNkZWcpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSkgcm90YXRlKDJkZWcpO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG4ud29iYmxlLmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlO1xuICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xufVxuXG4vKioqKioqKipcbiogcHVsc2UgKlxuKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbi5wdWxzZS5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7XG59XG5cbi8qKioqKioqKioqKioqKipcbiogbGlnaHRTcGVlZEluUmlnaHQgKlxuKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZEluUmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmxpZ2h0U3BlZWRJblJpZ2h0LmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW5SaWdodDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbi8qKioqKioqKioqKioqKipcbiogbGlnaHRTcGVlZEluTGVmdCAqXG4qKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZEluTGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgxNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5saWdodFNwZWVkSW5MZWZ0LmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbkxlZnQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuXG4vKioqKioqKlxuKiBGbGlwICpcbioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxNzBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTkwZGVnKSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgwLjk1KTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxpcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxNzBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxOTBkZWcpIHNjYWxlKDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDM2MGRlZykgc2NhbGUoMC45NSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZSgxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG59XG4uZmxpcC5nbyB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwO1xufVxuXG4vKioqKioqKioqKlxuKiBmbGlwSW5YICpcbioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTtcbiAgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMTBkZWcpO1xuICB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4uZmxpcEluWC5nbyB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xufVxuXG4vKioqKioqKioqKlxuKiBmbGlwSW5ZICpcbioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxpcEluWSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4uZmxpcEluWS5nbyB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xufVxuXG4vKioqKioqKioqKioqKioqKipcbiogT3V0IGFuaW1hdGlvbnMgKlxuKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMyk7XG4gIH1cbn1cbi5ib3VuY2VPdXQuZ29Bd2F5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xufVxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dFVwICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbi5ib3VuY2VPdXRVcC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xufVxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dERvd24gKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cbi5ib3VuY2VPdXREb3duLmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xufVxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbi5ib3VuY2VPdXRMZWZ0LmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xufVxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dFJpZ2h0ICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbi5ib3VuY2VPdXRSaWdodC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xufVxuXG4vKioqKioqKioqKioqXG4qIGZhZGVPdXQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLmZhZGVPdXQuZ29Bd2F5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG5cbi8qKioqKioqKioqKipcbiogZmFkZU91dFVwICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbi5mYWRlT3V0VXAuZ29Bd2F5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xufVxuXG4vKioqKioqKioqKioqXG4qIGZhZGVPdXREb3duICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuLmZhZGVPdXREb3duLmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG59XG5cbi8qKioqKioqKioqKipcbiogZmFkZU91dExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbi5mYWRlT3V0TGVmdC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG4vKioqKioqKioqKioqXG4qIGZhZGVPdXRSaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuLmZhZGVPdXRSaWdodC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XG59XG5cbi8qKioqKioqKioqKipcbiogZmxpcE91dFggKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxpcE91dFgge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi5mbGlwT3V0WC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqXG4qIGZsaXBPdXRZICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsaXBPdXRZIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4uZmxpcE91dFkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xufVxuXG4vKioqKioqKioqKioqXG4qIGxpZ2h0U3BlZWRPdXRSaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dFJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4ubGlnaHRTcGVlZE91dFJpZ2h0LmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRSaWdodDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG4vKioqKioqKioqKioqXG4qIGxpZ2h0U3BlZWRPdXRMZWZ0ICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZE91dExlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRMZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4ubGlnaHRTcGVlZE91dExlZnQuZ29Bd2F5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0TGVmdDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG4vKioqKioqKioqKioqXG4qIHJvdGF0ZU91dCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVPdXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4ucm90YXRlT3V0LmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDtcbn1cblxuLyoqKioqKioqKioqKlxuKiByb3RhdGVPdXRVcExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICAtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLnJvdGF0ZU91dFVwTGVmdC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG59XG5cbi8qKioqKioqKioqKipcbiogcm90YXRlT3V0RG93bkxlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLnJvdGF0ZU91dERvd25MZWZ0LmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7XG59XG5cbi8qKioqKioqKioqKipcbiogcm90YXRlT3V0VXBSaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi5yb3RhdGVPdXRVcFJpZ2h0LmdvQXdheSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xufVxuXG4vKioqKioqKioqKioqXG4qIHJvbGxPdXQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSByb3RhdGUoMTIwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyByb2xsT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpO1xuICB9XG59XG4ucm9sbE91dC5nb0F3YXkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcbn1cblxuLyoqKioqKioqKioqKioqKioqXG4qIFNob3J0IEFuaW1hdGlvbnNcbioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqXG4qIGZhZGVJblVwU2hvcnRcbioqKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcFNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcFNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4uZmFkZUluVXBTaG9ydCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG59XG5cbi5mYWRlSW5VcFNob3J0LmdvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXBTaG9ydDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwU2hvcnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiogZmFkZUluRG93blNob3J0XG4qKioqKioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93blNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluRG93blNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuLmZhZGVJbkRvd25TaG9ydCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbn1cblxuLmZhZGVJbkRvd25TaG9ydC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25TaG9ydDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25TaG9ydDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuKiBmYWRlSW5SaWdodFNob3J0IFxuKioqKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0U2hvcnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0U2hvcnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbi5mYWRlSW5SaWdodFNob3J0IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbn1cblxuLmZhZGVJblJpZ2h0U2hvcnQuZ28ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodFNob3J0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRTaG9ydDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuKiBmYWRlSW5MZWZ0U2hvcnQgXG4qKioqKioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdFNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluTGVmdFNob3J0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLmZhZGVJbkxlZnRTaG9ydCB7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbn1cblxuLmZhZGVJbkxlZnRTaG9ydC5nbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRTaG9ydDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRTaG9ydDtcbn1cblxuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG59XG5cbnVsIGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5pbWcsXG52aWRlbyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5hLFxuYTp2aXNpdGVkLFxuYTphY3RpdmUge1xuICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbmEuYnRuLFxuYTp2aXNpdGVkLmJ0bixcbmE6YWN0aXZlLmJ0biB7XG4gIGNvbG9yOiAjZmZmO1xufVxuYTpob3ZlcixcbmE6dmlzaXRlZDpob3ZlcixcbmE6YWN0aXZlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0LyBcbiAgIHYyLjAgfCAyMDExMDEyNlxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiovXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5hcHBsZXQsXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmEsXG5hYmJyLFxuYWNyb255bSxcbmFkZHJlc3MsXG5iaWcsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuaW1nLFxuaW5zLFxua2JkLFxucSxcbnMsXG5zYW1wLFxuc21hbGwsXG5zdHJpa2UsXG5zdHJvbmcsXG5zdWIsXG5zdXAsXG50dCxcbnZhcixcbmIsXG51LFxuaSxcbmNlbnRlcixcbmRsLFxuZHQsXG5kZCxcbm9sLFxudWwsXG5saSxcbmZpZWxkc2V0LFxuZm9ybSxcbmxhYmVsLFxubGVnZW5kLFxudGFibGUsXG5jYXB0aW9uLFxudGJvZHksXG50Zm9vdCxcbnRoZWFkLFxudHIsXG50aCxcbnRkLFxuYXJ0aWNsZSxcbmFzaWRlLFxuY2FudmFzLFxuZGV0YWlscyxcbmVtYmVkLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5vdXRwdXQsXG5ydWJ5LFxuc2VjdGlvbixcbnN1bW1hcnksXG50aW1lLFxubWFyayxcbmF1ZGlvLFxudmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWVudSxcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCxcbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuYmxvY2txdW90ZSxcbnEge1xuICBxdW90ZXM6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGU6YmVmb3JlLFxuYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLFxucTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi53cmFwIHtcbiAgbWF4LXdpZHRoOiAxMzQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud3JhcC10aWdodCB7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWctYmxvY2sge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjYWFkNGI0O1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuc2VjdGlvbixcbmZvb3Rlcixcbi5wYWRkaW5nIHtcbiAgcGFkZGluZzogNnJlbSAycmVtO1xufVxuXG4uaGVhZGVyLXBhZCB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBzZWN0aW9uLFxuICBmb290ZXIsXG4gIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA0cmVtIDR2dztcbiAgfVxuICAuaGVhZGVyLXBhZCB7XG4gICAgcGFkZGluZzogMnJlbSA0dnc7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0OHB4KSB7XG4gIC5oZWFkZXItcGFkIHtcbiAgICBwYWRkaW5nOiAxcmVtIDZ2dztcbiAgfVxuICBzZWN0aW9uLFxuICBmb290ZXIsXG4gIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA0cmVtIDZ2dztcbiAgfVxufVxuLnRlc3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG59XG5cbi5yZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ub3ZlcmZsb3ctdmlzaWJsZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNsaWNrYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTU5cHgpIHtcbiAgLnMtc2hvdyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm0tc2hvdyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI0N3B4KSB7XG4gIC5sLXNob3cge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2MHB4KSB7XG4gIC5zLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubS1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQ4cHgpIHtcbiAgLmwtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5tLTAge1xuICBtYXJnaW46IDA7XG59XG5cbi5tLTEge1xuICBtYXJnaW46IDFyZW07XG59XG5cbi5tLTIge1xuICBtYXJnaW46IDJyZW07XG59XG5cbi5tLTMge1xuICBtYXJnaW46IDNyZW07XG59XG5cbi5tLTQge1xuICBtYXJnaW46IDRyZW07XG59XG5cbi5tLTUge1xuICBtYXJnaW46IDVyZW07XG59XG5cbi5tLTYge1xuICBtYXJnaW46IDhyZW07XG59XG5cbi5tLTcge1xuICBtYXJnaW46IDdyZW07XG59XG5cbi5tLTgge1xuICBtYXJnaW46IDhyZW07XG59XG5cbi5tLTkge1xuICBtYXJnaW46IDlyZW07XG59XG5cbi5tLTEwIHtcbiAgbWFyZ2luOiAxMHJlbTtcbn1cblxuLm10LTAge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xufVxuXG4ubXQtMSB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5tdC0yIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuLm10LTMge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4ubXQtNCB7XG4gIG1hcmdpbi10b3A6IDRyZW07XG59XG5cbi5tdC01IHtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbn1cblxuLm10LTYge1xuICBtYXJnaW4tdG9wOiA2cmVtO1xufVxuXG4ubXQtNyB7XG4gIG1hcmdpbi10b3A6IDdyZW07XG59XG5cbi5tdC04IHtcbiAgbWFyZ2luLXRvcDogOHJlbTtcbn1cblxuLm10LTkge1xuICBtYXJnaW4tdG9wOiA5cmVtO1xufVxuXG4ubXQtMTAge1xuICBtYXJnaW4tdG9wOiAxMHJlbTtcbn1cblxuLm1yLTAge1xuICBtYXJnaW4tcmlnaHQ6IDByZW07XG59XG5cbi5tci0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4ubXItMiB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cblxuLm1yLTMge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG59XG5cbi5tci00IHtcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xufVxuXG4ubXItNSB7XG4gIG1hcmdpbi1yaWdodDogNXJlbTtcbn1cblxuLm1yLTYge1xuICBtYXJnaW4tcmlnaHQ6IDZyZW07XG59XG5cbi5tci03IHtcbiAgbWFyZ2luLXJpZ2h0OiA3cmVtO1xufVxuXG4ubXItOCB7XG4gIG1hcmdpbi1yaWdodDogOHJlbTtcbn1cblxuLm1yLTkge1xuICBtYXJnaW4tcmlnaHQ6IDlyZW07XG59XG5cbi5tci0xMCB7XG4gIG1hcmdpbi1yaWdodDogMTByZW07XG59XG5cbi5tYi0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbn1cblxuLm1iLTEge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ubWItMiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5tYi0zIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cblxuLm1iLTQge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xufVxuXG4ubWItNSB7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG5cbi5tYi02IHtcbiAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbn1cblxuLm1iLTcge1xuICBtYXJnaW4tYm90dG9tOiA3cmVtO1xufVxuXG4ubWItOCB7XG4gIG1hcmdpbi1ib3R0b206IDhyZW07XG59XG5cbi5tYi05IHtcbiAgbWFyZ2luLWJvdHRvbTogOXJlbTtcbn1cblxuLm1iLTEwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTByZW07XG59XG5cbi5tbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDByZW07XG59XG5cbi5tbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbi5tbC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG5cbi5tbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG59XG5cbi5tbC00IHtcbiAgbWFyZ2luLWxlZnQ6IDRyZW07XG59XG5cbi5tbC01IHtcbiAgbWFyZ2luLWxlZnQ6IDVyZW07XG59XG5cbi5tbC02IHtcbiAgbWFyZ2luLWxlZnQ6IDZyZW07XG59XG5cbi5tbC03IHtcbiAgbWFyZ2luLWxlZnQ6IDdyZW07XG59XG5cbi5tbC04IHtcbiAgbWFyZ2luLWxlZnQ6IDhyZW07XG59XG5cbi5tbC05IHtcbiAgbWFyZ2luLWxlZnQ6IDlyZW07XG59XG5cbi5tbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHJlbTtcbn1cblxuLm15LTAge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbn1cblxuLm15LTEge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLm15LTIge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuLm15LTMge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cblxuLm15LTQge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbn1cblxuLm15LTUge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbn1cblxuLm15LTYge1xuICBtYXJnaW4tdG9wOiA2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cblxuLm15LTcge1xuICBtYXJnaW4tdG9wOiA3cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogN3JlbTtcbn1cblxuLm15LTgge1xuICBtYXJnaW4tdG9wOiA4cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogOHJlbTtcbn1cblxuLm15LTkge1xuICBtYXJnaW4tdG9wOiA5cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogOXJlbTtcbn1cblxuLm15LTEwIHtcbiAgbWFyZ2luLXRvcDogMTByZW07XG4gIHBhZGRpbmctYm90dG9tOiAxMHJlbTtcbn1cblxuLm14LTAge1xuICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgcGFkZGluZy1yaWdodDogMHJlbTtcbn1cblxuLm14LTEge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLm14LTIge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cblxuLm14LTMge1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuLm14LTQge1xuICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cblxuLm14LTUge1xuICBtYXJnaW4tbGVmdDogNXJlbTtcbiAgcGFkZGluZy1yaWdodDogNXJlbTtcbn1cblxuLm14LTYge1xuICBtYXJnaW4tbGVmdDogNnJlbTtcbiAgcGFkZGluZy1yaWdodDogNnJlbTtcbn1cblxuLm14LTcge1xuICBtYXJnaW4tbGVmdDogN3JlbTtcbiAgcGFkZGluZy1yaWdodDogN3JlbTtcbn1cblxuLm14LTgge1xuICBtYXJnaW4tbGVmdDogOHJlbTtcbiAgcGFkZGluZy1yaWdodDogOHJlbTtcbn1cblxuLm14LTkge1xuICBtYXJnaW4tbGVmdDogOXJlbTtcbiAgcGFkZGluZy1yaWdodDogOXJlbTtcbn1cblxuLm14LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHJlbTtcbn1cblxuLm1sLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLm1yLWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5teS1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnAtMCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wLTEge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4ucC0yIHtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLnAtMyB7XG4gIHBhZGRpbmc6IDNyZW07XG59XG5cbi5wLTQge1xuICBwYWRkaW5nOiA0cmVtO1xufVxuXG4ucC01IHtcbiAgcGFkZGluZzogNXJlbTtcbn1cblxuLnAtNiB7XG4gIHBhZGRpbmc6IDZyZW07XG59XG5cbi5wLTcge1xuICBwYWRkaW5nOiA3cmVtO1xufVxuXG4ucC04IHtcbiAgcGFkZGluZzogOHJlbTtcbn1cblxuLnAtOSB7XG4gIHBhZGRpbmc6IDlyZW07XG59XG5cbi5wLTEwIHtcbiAgcGFkZGluZzogMTByZW07XG59XG5cbi5wdC0wIHtcbiAgcGFkZGluZy10b3A6IDByZW07XG59XG5cbi5wdC0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi5wdC0yIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5cbi5wdC0zIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG59XG5cbi5wdC00IHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG59XG5cbi5wdC01IHtcbiAgcGFkZGluZy10b3A6IDVyZW07XG59XG5cbi5wdC02IHtcbiAgcGFkZGluZy10b3A6IDZyZW07XG59XG5cbi5wdC03IHtcbiAgcGFkZGluZy10b3A6IDdyZW07XG59XG5cbi5wdC04IHtcbiAgcGFkZGluZy10b3A6IDhyZW07XG59XG5cbi5wdC05IHtcbiAgcGFkZGluZy10b3A6IDlyZW07XG59XG5cbi5wdC0xMCB7XG4gIHBhZGRpbmctdG9wOiAxMHJlbTtcbn1cblxuLnB0LTEyIHtcbiAgcGFkZGluZy10b3A6IDEycmVtO1xufVxuXG4ucHQtMTQge1xuICBwYWRkaW5nLXRvcDogMTRyZW07XG59XG5cbi5wci0wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnByLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4ucHItMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5cbi5wci0zIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cblxuLnByLTQge1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xufVxuXG4ucHItNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVyZW07XG59XG5cbi5wci02IHtcbiAgcGFkZGluZy1yaWdodDogNnJlbTtcbn1cblxuLnByLTcge1xuICBwYWRkaW5nLXJpZ2h0OiA3cmVtO1xufVxuXG4ucHItOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDhyZW07XG59XG5cbi5wci05IHtcbiAgcGFkZGluZy1yaWdodDogOXJlbTtcbn1cblxuLnByLTEwIHtcbiAgcGFkZGluZy1yaWdodDogMTByZW07XG59XG5cbi5wYi0wIHtcbiAgcGFkZGluZy1ib3R0b206IDByZW07XG59XG5cbi5wYi0xIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi5wYi0yIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG5cbi5wYi0zIHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG59XG5cbi5wYi00IHtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5wYi01IHtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG59XG5cbi5wYi02IHtcbiAgcGFkZGluZy1ib3R0b206IDZyZW07XG59XG5cbi5wYi03IHtcbiAgcGFkZGluZy1ib3R0b206IDdyZW07XG59XG5cbi5wYi04IHtcbiAgcGFkZGluZy1ib3R0b206IDhyZW07XG59XG5cbi5wYi05IHtcbiAgcGFkZGluZy1ib3R0b206IDlyZW07XG59XG5cbi5wYi0xMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHJlbTtcbn1cblxuLnBiLTE0IHtcbiAgcGFkZGluZy1ib3R0b206IDE0cmVtO1xufVxuXG4ucGwtMCB7XG4gIHBhZGRpbmctbGVmdDogMHJlbTtcbn1cblxuLnBsLTEge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5cbi5wbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG4ucGwtMyB7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuLnBsLTQge1xuICBwYWRkaW5nLWxlZnQ6IDRyZW07XG59XG5cbi5wbC01IHtcbiAgcGFkZGluZy1sZWZ0OiA1cmVtO1xufVxuXG4ucGwtNiB7XG4gIHBhZGRpbmctbGVmdDogNnJlbTtcbn1cblxuLnBsLTcge1xuICBwYWRkaW5nLWxlZnQ6IDdyZW07XG59XG5cbi5wbC04IHtcbiAgcGFkZGluZy1sZWZ0OiA4cmVtO1xufVxuXG4ucGwtOSB7XG4gIHBhZGRpbmctbGVmdDogOXJlbTtcbn1cblxuLnBsLTEwIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHJlbTtcbn1cblxuLnB0LTAge1xuICBwYWRkaW5nLXRvcDogMHJlbSAhaW1wb3J0YW50O1xufVxuXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbn1cblxuLnB5LTEge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi5weS0yIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuXG4ucHktMyB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cblxuLnB5LTQge1xuICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5weS01IHtcbiAgcGFkZGluZy10b3A6IDVyZW07XG4gIHBhZGRpbmctYm90dG9tOiA1cmVtO1xufVxuXG4ucHktNiB7XG4gIHBhZGRpbmctdG9wOiA2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cblxuLnB5LTcge1xuICBwYWRkaW5nLXRvcDogN3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDdyZW07XG59XG5cbi5weS04IHtcbiAgcGFkZGluZy10b3A6IDhyZW07XG4gIHBhZGRpbmctYm90dG9tOiA4cmVtO1xufVxuXG4ucHktOSB7XG4gIHBhZGRpbmctdG9wOiA5cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogOXJlbTtcbn1cblxuLnB5LTEwIHtcbiAgcGFkZGluZy10b3A6IDEwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTByZW07XG59XG5cbi5weC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwcmVtO1xufVxuXG4ucHgtMSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLnB4LTIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5cbi5weC0zIHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuXG4ucHgtNCB7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cblxuLnB4LTUge1xuICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDVyZW07XG59XG5cbi5weC02IHtcbiAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xufVxuXG4ucHgtNyB7XG4gIHBhZGRpbmctbGVmdDogN3JlbTtcbiAgcGFkZGluZy1yaWdodDogN3JlbTtcbn1cblxuLnB4LTgge1xuICBwYWRkaW5nLWxlZnQ6IDhyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDhyZW07XG59XG5cbi5weC05IHtcbiAgcGFkZGluZy1sZWZ0OiA5cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA5cmVtO1xufVxuXG4ucHgtMTAge1xuICBwYWRkaW5nLWxlZnQ6IDEwcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnB0LTE0IHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgfVxuICAucGItMTQge1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICB9XG59XG4uaC1mdWxsIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4udy1oYWxmIHtcbiAgd2lkdGg6IDkwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudy03NSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuICAudy05MCB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuICAudy1oYWxmIHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDhweCkge1xuICAudy03NSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAudy1oYWxmIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4vKlxuRm9udDogXHRcdFJhdGNoXG5TdHlsZTogXHRcdEJvbGRcblVSTDogXHRcdGh0dHBzOi8veW91d29ya2ZvcnRoZW0uY29tL2ZvbnQvVDI5MjEwL3JhdGNoXG5Gb3VuZHJ5OiBcdFJvbWFuIE1lbGlraG92XG5Gb3VuZHJ5OiBcdGh0dHBzOi8veW91d29ya2ZvcnRoZW0uY29tL2Rlc2lnbmVyLzE0NzMvcm9tYW4tbWVsaWtob3ZcbkNvcHlyaWdodDpcdFJvbWFuIE1lbGlraG92XG5WZXJzaW9uOiBcdDE3XG5DcmVhdGVkOlx0SnVuZSAwOSwgMjAyNVxuTGljZW5zZTogXHRodHRwczovL3d3dy55b3V3b3JrZm9ydGhlbS5jb20vZm9udC1saWNlbnNlIFxuTGljZW5zZTogXHRUaGUgV2ViRm9udChzKSBsaXN0ZWQgaW4gdGhpcyBkb2N1bWVudCBtdXN0IGZvbGxvdyB0aGUgWW91V29ya0ZvclRoZW1cblx0XHRcdFdlYkZvbnQgbGljZW5zZSBydWxlcy4gQWxsIG90aGVyIHBhcnRpZXMgYXJlIHN0cmljdGx5IHJlc3RyaWN0ZWQgXG5cdFx0XHRmcm9tIHVzaW5nIHRoZSBXZWJGb250cyhzKSBsaXN0ZWQgd2l0aG91dCBhIHB1cmNoYXNlZCBsaWNlbnNlLiBcblx0XHRcdEFsbCBkZXRhaWxzIGFib3ZlIG11c3QgYWx3YXlzIHJlbWFpbiB1bmFsdGVyZWQgYW5kIHZpc2libGUgaW4geW91ciBDU1MuXG4qL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG59XG5cbi5saC0tMSB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbn1cblxuLnRleHQtaGlnaGxpZ2h0IHtcbiAgY29sb3I6ICNhYWQ0YjQ7XG59XG5cbmgxIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG59XG5cbi50ZXh0LTZ4bCB7XG4gIGZvbnQtc2l6ZTogNi41cmVtO1xufVxuXG4udGV4dC01eGwge1xuICBmb250LXNpemU6IDZyZW07XG59XG5cbi50ZXh0LTR4bCB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbn1cblxuLnRleHQtNnhsLCAudGV4dC01eGwsIC50ZXh0LTR4bCB7XG4gIGxpbmUtaGVpZ2h0OiAwLjllbTtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbn1cblxuaDEsIGgyLCBoMyB7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuXG5oMSBlbSxcbmgyIGVtLFxuaDMgZW0sXG5oNCBlbSxcbmg1IGVtLFxuaDYgZW0ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjYWFkNGI0O1xufVxuXG4uaHIge1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2FhZDRiNDtcbn1cblxuaHIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmxoLTEge1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4udGV4dC14cyB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGNvbG9yOiAjMTY4OTM2O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWZhbWlseTogXCJwb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbnAge1xuICBsaW5lLWhlaWdodDogMS42ZW07XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuXG5oNiB7XG4gIGJvcmRlci1ib3R0b206IDRweCBkb3R0ZWQgI2JiYjtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbn1cblxuaDEsXG4udGV4dC1oZWFkIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbn1cblxuaDIsXG4udGV4dC0yeGwsXG5oMyxcbi50ZXh0LXhsIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuaDQsXG4udGV4dC1sIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG59XG5cbmg1LFxuLnRleHQtbWwsXG5oNixcbi50ZXh0LW4ge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbn1cblxuLnRleHQtcyB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBsaW5lLWhlaWdodDogMS42ZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgaDEsXG4gIC50ZXh0LWhlYWQge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxuICBoMixcbiAgLnRleHQtMnhsLFxuICBoMyxcbiAgLnRleHQteGwge1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG4gIGgxLFxuICAudGV4dC1oZWFkIHtcbiAgICBsaW5lLWhlaWdodDogMC45ZW07XG4gICAgZm9udC1zaXplOiA3LjVyZW07XG4gIH1cbiAgaDIsXG4gIC50ZXh0LTJ4bCB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgfVxuICBoMyxcbiAgLnRleHQteGwge1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gIH1cbiAgaDQsXG4gIC50ZXh0LWwge1xuICAgIGxpbmUtaGVpZ2h0OiA0LjVyZW07XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB9XG4gIGg1LFxuICAudGV4dC1tbCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgfVxuICBoNixcbiAgLnRleHQtbiB7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB9XG59XG5hLmxpbmssXG4ubGluayB7XG4gIGNvbG9yOiBjb2xvcihcInByaW1hcnlcIik7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udWwge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb250LXRoaW4ge1xuICBmb250LXdlaWdodDogMTAwO1xufVxuXG4uZm9udC1leHRyYWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbn1cblxuLmZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZm9udC1ub3JtYWwge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZm9udC1tZWRpdW0ge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZm9udC1zZW1pYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5mb250LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZm9udC1leHRyYWJvbGQge1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uZm9udC1ibGFjayB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5yb3cteGwgLnRleHQtcmlnaHQsXG4ucm93LWwgLnRleHQtcmlnaHQsXG4ucm93LW0gLnRleHQtcmlnaHQsXG4ucm93LXMgLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiB1bnNldDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnJvdy14bCAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI0OHB4KSB7XG4gIC5yb3ctbCAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJvdy1tIC50ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NjBweCkge1xuICAucm93LXMgLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4uYmctaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmZvdXJ0aHJlZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4udmlkZW9XcmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG59XG5cbi52aWRlb1dyYXBwZXIgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5yb3ctbSxcbi5yb3ctcyxcbi5yb3ctbCxcbi5yb3cteGwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdhcC0wMjUge1xuICBnYXA6IDAuMjVlbTtcbn1cblxuLmdhcC0wNSB7XG4gIGdhcDogMC41ZW07XG59XG5cbi5nYXAtMSB7XG4gIGdhcDogMWVtO1xufVxuXG4uZ2FwLTIge1xuICBnYXA6IDJlbTtcbn1cblxuLmdhcC0zIHtcbiAgZ2FwOiAzZW07XG59XG5cbi5nYXAtNCB7XG4gIGdhcDogNGVtO1xufVxuXG4uZ2FwLTYge1xuICBnYXA6IDZlbTtcbn1cblxuLmdhcC04IHtcbiAgZ2FwOiA4ZW07XG59XG5cbi5nYXAtMTAge1xuICBnYXA6IDEwZW07XG59XG5cbi5nYXAtMTIge1xuICBnYXA6IDEyZW07XG59XG5cbi5mbGlwLWxheW91dCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmp1c3RpZnktc3RhcnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLnJvdywgLmZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZmxleC1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmZsZXgtcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmFsaWduLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmp1c3RpZnktc2Ige1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5mbGV4LWNvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LTEge1xuICBmbGV4OiAxO1xufVxuXG4uZmxleC0yIHtcbiAgZmxleDogMjtcbn1cblxuLmZsZXgtMyB7XG4gIGZsZXg6IDM7XG59XG5cbi5mbGV4LTQge1xuICBmbGV4OiA0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAucm93LXhsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5yb3cteGwucm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjQ4cHgpIHtcbiAgLnJvdy1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5yb3ctbC5yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucm93LW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLnJvdy1tLnJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgLnJvdy1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5yb3ctcy5yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAubW9iLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cbiAgLmZsZXggLmNvbCB7XG4gICAgbWFyZ2luOiA0MHB4IDA7XG4gIH1cbiAgLmNvbHVtbnMge1xuICAgIHBhZGRpbmc6IDRyZW07XG4gIH1cbiAgLmNvbHVtbnMgLmZsZXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC50ZWFtLWdyaWQgLmZsZXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC50ZWFtLWdyaWQgLmZsZXggPiAqIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG4gIC50ZWFtLWdyaWQgLmZsZXggPiAqIC50ZWFtLWxpbmsge1xuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuICAuZmxleCA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4uZ3JpZC0yLWNvbCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG59XG5cbi5ncmlkLTMtY29sIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbn1cblxuLmdyaWQtNC1jb2wge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xufVxuXG4uZ3JpZC01LWNvbCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ncmlkLTUtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG4gIC5ncmlkLTMtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5ncmlkLTMtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNDdweCkge1xuICAucm93LWwgPiAuY29sIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLnJvdy1sID4gLmNvbC50ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5yb3ctbCA+IC5jb2wuZG91YmxlLWd1dHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxuICAucm93LWwgPiAuY29sLmd1dHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuICAucm93LWwgPiAuY29sLmhhbGYtZ3V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucm93LW0gPiAuY29sIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLnJvdy1tID4gLmNvbC50ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5yb3ctbSA+IC5jb2wuZG91YmxlLWd1dHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxuICAucm93LW0gPiAuY29sLmd1dHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuICAucm93LW0gPiAuY29sLmhhbGYtZ3V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1OXB4KSB7XG4gIC5yb3ctcyA+IC5jb2wge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAucm93LXMgPiAuY29sLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnJvdy1zID4gLmNvbC5kb3VibGUtZ3V0dGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG4gIC5yb3ctcyA+IC5jb2wuZ3V0dGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5yb3ctcyA+IC5jb2wuaGFsZi1ndXQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbjpyb290IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IDVweCA1cHggMTVweCByZ2JhKDUxLCA1MSwgNTEsIDAuMik7XG59XG5cbmhyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjODg4O1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5hLmxpbmssXG4ubGluayB7XG4gIGNvbG9yOiBjb2xvcihcInByaW1hcnlcIik7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnRuLCBhLmJ0biB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjg5MzY7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwLjdlbSAxLjJlbSAwLjY1ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4xcztcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYnRuIHN2ZywgYS5idG4gc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAwLjJzO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuLmJ0biBzdmcgZyBwYXRoLCBhLmJ0biBzdmcgZyBwYXRoIHtcbiAgZmlsbDogIzE2ODkzNjtcbn1cbi5idG46aG92ZXIsIGEuYnRuOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGJvcmRlci1jb2xvcjogI2FhZDRiNDtcbn1cbi5idG46aG92ZXIgc3ZnLCBhLmJ0bjpob3ZlciBzdmcge1xuICByaWdodDogMTBweDtcbn1cbi5idG46aG92ZXIgc3ZnIGcgcGF0aCwgYS5idG46aG92ZXIgc3ZnIGcgcGF0aCB7XG4gIGZpbGw6ICNhYWQ0YjQ7XG59XG4uYnRuLmJ0bi1naG9zdDpob3ZlciwgYS5idG4uYnRuLWdob3N0OmhvdmVyIHtcbiAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJoaWdobGlnaHRcIik7XG59XG4uYnRuLmJ0bi1zZWNvbmRhcnksIGEuYnRuLmJ0bi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFkNGI0O1xuICBjb2xvcjogIzIyMjtcbn1cbi5idG4uYnRuLXNlY29uZGFyeSBzdmcgcGF0aCwgYS5idG4uYnRuLXNlY29uZGFyeSBzdmcgcGF0aCB7XG4gIGZpbGw6ICMyMjI7XG59XG4uYnRuLmJ0bi1zZWNvbmRhcnk6aG92ZXIsIGEuYnRuLmJ0bi1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogI2FhZDRiNDtcbn1cbi5idG4uYnRuLXNlY29uZGFyeTpob3ZlciBzdmcgcGF0aCwgYS5idG4uYnRuLXNlY29uZGFyeTpob3ZlciBzdmcgcGF0aCB7XG4gIGZpbGw6ICNhYWQ0YjQ7XG59XG5cbi8qIHN2ZyAuY2xzLTMgeyBmaWxsOiBibHVlICFpbXBvcnRhbnR9ICovXG4uYnRuIHN2ZyByZWN0IHtcbiAgZmlsbDogI2U2MWM2ZCAhaW1wb3J0YW50O1xuICBzdHJva2U6ICNlNjFjNmQgIWltcG9ydGFudDtcbn1cblxuLmJ0bi1pY29uIGltZyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAyMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWljb246aG92ZXIgc3ZnICoge1xuICBmaWxsOiAjMTY4OTM2O1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zd2lwZXItYXV0b3BsYXkgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG51bC5xdW90ZXNfY2Fyb3VzZWwge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAxMTBweDtcbn1cblxuLnNsaWNrLW5leHQsXG4uc2xpY2stcHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDgwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwczovL2NoYXB0cnRlY2hzdGcud3BlbmdpbmUuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA0L2NoYXB0ci1hcnJvdy5zdmcpO1xuICBoZWlnaHQ6IDgwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXItcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlcjogMHB4O1xuICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgdG9wOiAyMHB4O1xuICBsZWZ0OiAwcHg7XG59XG5cbi5zbGljay1uZXh0IHtcbiAgdG9wOiAxMTNweDtcbn1cblxuLnNsaWNrLXByZXYge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICB1bC5xdW90ZXNfY2Fyb3VzZWwge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICB1bC5xdW90ZXNfY2Fyb3VzZWwgLnNsaWNrLW5leHQsIHVsLnF1b3Rlc19jYXJvdXNlbCAuc2xpY2stcHJldiB7XG4gICAgdG9wOiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICB1bC5xdW90ZXNfY2Fyb3VzZWwgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwcHg7XG4gIH1cbiAgdWwucXVvdGVzX2Nhcm91c2VsIC5zbGljay1wcmV2IHtcbiAgICByaWdodDogNjBweDtcbiAgfVxuICB1bC5xdW90ZXNfY2Fyb3VzZWwgYmxvY2txdW90ZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG4ubGlzdC1kb3Qge1xuICBjb2xvcjogYmxhY2s7XG59XG4ubGlzdC1kb3QgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubGlzdC1kb3QgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLCoOKAosKgwqBcIjtcbiAgY29sb3I6IGJsYWNrO1xufVxuLmxpc3QtZG90IGxpOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5saXN0LWJyZWFkY3J1bWIge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbi5saXN0LWJyZWFkY3J1bWIgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5saXN0LWJyZWFkY3J1bWIgbGkgYSB7XG4gIGNvbG9yOiBjb2xvcihcInByaW1hcnlcIik7XG59XG4ubGlzdC1icmVhZGNydW1iIGxpOjpiZWZvcmUge1xuICBjb250ZW50OiBcIsK3XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luOiAwIDAuMTVyZW07XG59XG4ubGlzdC1icmVhZGNydW1iIGxpOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zd2lwZS1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KTtcbiAgfVxuICAuc3dpcGUtcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDBweCk7XG4gIH1cbiAgLnN3aXBlLWRvd24ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICB9XG4gIC5zd2lwZS11cCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTtcbiAgfVxuICAuZmFkZS1pbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLmZhZGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNXMsIHRyYW5zZm9ybSAxLjJzO1xufVxuXG4uYXBwZWFyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBvc2l0aW9uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xufVxuXG4uZGVsYXktMSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzICFpbXBvcnRhbnQ7XG59XG5cbi5kZWxheS0yIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC41cztcbn1cblxuLmRlbGF5LTMge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjc1cztcbn1cblxuLmRlbGF5LTQge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbn1cblxuLmRlbGF5LTUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjI1cztcbn1cblxuYS5jcy1jYXJkLXBpYyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCAjYWFkNGI0O1xuICBtaW4taGVpZ2h0OiA1MzBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4ucG9zdF9faGVybyAuYmctaW1nIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgei1pbmRleDogMDtcbn1cblxuLnNpbmdsZS1yZXNvdXJjZSAuYmctaW1nIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgei1pbmRleDogMDtcbn1cblxuLnBvc3RfX21haW4ge1xuICBtYXgtd2lkdGg6IDE1MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wb3N0X19hc2lkZSB7XG4gIHBhZGRpbmc6IDRyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxNnJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBvc3RfX21haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAucG9zdF9fbWFpbiBzZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDtcbiAgfVxuICAucG9zdF9fYXNpZGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIHBhZGRpbmc6IDRyZW07XG4gICAgcGFkZGluZy10b3A6IDhyZW07XG4gIH1cbn1cbi5zaW5nbGUtcG9zdCAud3JhcCBzZWN0aW9uLnB0LTE0LnBiLTE0IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmJnLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4ubWluaS1waWMgaW1nIHtcbiAgd2lkdGg6IDE2MHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTYwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgYm9yZGVyLWNvbG9yOiAjMTY4OTM2O1xufVxuXG4ubXctaW1nIHtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDJlbTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uY3MtY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jcy1jYXJkIHNwYW4ge1xuICB6LWluZGV4OiA4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jcy1jYXJkIC5idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMnJlbTtcbiAgcmlnaHQ6IC0xMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4ycztcbn1cbi5jcy1jYXJkIC50ZXh0LWNvbnRlbnQge1xuICBib3R0b206IDByZW07XG4gIGxlZnQ6IDJyZW07XG4gIHdpZHRoOiBjYWxjKDkwJSAtIDJyZW0pO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4ycztcbn1cbi5jcy1jYXJkIC50ZXh0LWNvbnRlbnQgcCB7XG4gIG9wYWNpdHk6IDE7XG59XG4uY3MtY2FyZCBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmNzLWNhcmQgYSA+ICoge1xuICB6LWluZGV4OiAyMjI7XG59XG4uY3MtY2FyZCBhOmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAwLjJzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBvcGFjaXR5OiAwLjg7XG59XG4uY3MtY2FyZDpob3ZlciAuYnRuIHtcbiAgcmlnaHQ6IDJyZW07XG59XG4uY3MtY2FyZDpob3ZlciAudGV4dC1jb250ZW50IHtcbiAgYm90dG9tOiA0cmVtO1xufVxuLmNzLWNhcmQ6aG92ZXIgLnRleHQtY29udGVudCBwIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5jcy1jYXJkOmhvdmVyIGE6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yO1xufVxuXG4udGV4dC1jYXBzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRleHQtd2hpdGUge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ubHMtMiB7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG59XG5cbi5hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBhZ2Utam9icyAuaGVybyAuam9iLXNlYXJjaCB7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5wYWdlLWpvYnMgLmhlcm8gLmpvYi1zZWFyY2ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uam9iLWZlZWQtd2lkZSB7XG4gIGxlZnQ6IDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiB0aGUgc2xpZGVzICovXG4uY2Fyb3VzZWwtam9icyAuc2xpY2stc2xpZGUge1xuICBtYXJnaW46IDAgMTBweDtcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4vKiB0aGUgcGFyZW50ICovXG4uY2Fyb3VzZWwtam9icyAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbjogMCAtMTBweDtcbn1cblxuLnNpbmdsZS1qb2IgLmhlcm8gdWwgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNpbmdsZS1qb2IgLmhlcm8gdWwgbGkgc3ZnIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMzBweDtcbn1cblxuLmpvYi1jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2ODkzNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gIG1pbi1oZWlnaHQ6IDU3MHB4O1xufVxuLmpvYi1jYXJkIHNwYW4uYnRuIHtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDJyZW07XG4gIGxlZnQ6IDNyZW07XG59XG4uam9iLWNhcmQgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDE1NjViO1xuICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG59XG4uam9iLWNhcmQgYSAqIHtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xufVxuLmpvYi1jYXJkIGEgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMxNjg5MzY7XG59XG4uam9iLWNhcmQgYSBoMyB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIG1pbi1oZWlnaHQ6IDEycmVtO1xuICBmb250LXNpemU6IDIuN3JlbTtcbn1cbi5qb2ItY2FyZCBhIHAsIC5qb2ItY2FyZCBhIHVsIHtcbiAgZm9udC1zaXplOiAxLjM1cmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5qb2ItY2FyZCBhIHAge1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBvcGFjaXR5OiAxO1xufVxuLmpvYi1jYXJkIGEgdWwge1xuICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmpvYi1jYXJkIGEgdWwgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgcGFkZGluZy10b3A6IDAuNWVtO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbn1cbi5qb2ItY2FyZCBhIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMHB4O1xufVxuLmpvYi1jYXJkIGEgLnBvc3RlZC1ieSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxZW07XG4gIGxlZnQ6IDFlbTtcbiAgZ2FwOiAxZW07XG59XG4uam9iLWNhcmQgYSAucG9zdGVkLWJ5IGltZyB7XG4gIHdpZHRoOiA1MHB4O1xufVxuLmpvYi1jYXJkOmhvdmVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzE2ODkzNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbn1cbi5qb2ItY2FyZDpob3ZlciAqIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmpvYi1jYXJkOmhvdmVyIHAsIC5qb2ItY2FyZDpob3ZlciB1bCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5hcnJvdy1tb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNTVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3R0b206IDJyZW07XG4gIHJpZ2h0OiAzcmVtO1xufVxuLmFycm93LW1vcmUgc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5hZHYtYnkgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDMwMHB4O1xuICBib3JkZXI6IDRweCBzb2xpZCAjMTY4OTM2O1xuICBoZWlnaHQ6IGF1dG87XG59XG4uYWR2LWJ5IHVsIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbn1cblxuLmhlcm8gLmpvYi1tZXRhIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS41NWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG59XG4uaGVybyAuam9iLW1ldGEgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDVweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWQ0YjQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTFweDtcbiAgbGVmdDogM3B4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4ucXVvdGUtcGljIHtcbiAgd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnF1b3RlLXBpYyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZ3JpZC5ncmlkLTQtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG4gICNqb2JpbmZvIC5mbGV4IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuam9iLWZlZWQtd2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgfVxuICAuaGVybyA+IC53cmFwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZ3JpZC5ncmlkLTQtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG4gIC50ZXN0aW1vbmlhbCAuZmxleCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmltZy1ibG9jayAuZmxleCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmltZy1ibG9jay5mbGV4LTEge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbiAgLmFkdi1ieSB7XG4gICAgcGFkZGluZzogNHJlbSA2cmVtO1xuICB9XG4gIHVsLmpvYi1tZXRhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICB9XG4gIC5wdC0xMCB7XG4gICAgcGFkZGluZy10b3A6IDVyZW07XG4gIH1cbn1cbi5oZXJvLWpvYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTU2NWI7XG59XG5cbmltZy53YXRlcm1hcmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMTZlbTtcbiAgd2lkdGg6IDgwMHB4O1xuICB0b3A6IC0xMGVtO1xufVxuXG5mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMTBlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA4MDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTIwcHggdG9wIC0yMHB4O1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xufVxuZm9vdGVyIHAsIGZvb3RlciBhLCBmb290ZXIgbGkge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuZm9vdGVyIHAudGV4dC1oaWdobGlnaHQge1xuICBjb2xvcjogI2FhZDRiNCAhaW1wb3J0YW50O1xufVxuZm9vdGVyIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuZm9vdGVyIGxpIHtcbiAgbGluZS1oZWlnaHQ6IDEuNzVlbTtcbn1cbmZvb3RlciBsaSB1bC5zdWItbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5mb290ZXIgaW1nIHtcbiAgbWF4LWhlaWdodDogMTgwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDE1MHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5mb290ZXIgLmN0YS1pY29ucyBsaSB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiAzNXB4O1xuICBwYWRkaW5nOiAwLjI1ZW0gMC4yNWVtIDAuMjVlbSA1NXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbmZvb3RlciBsaSwgZm9vdGVyIHAge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgcGFkZGluZzogMC4yNWVtIDA7XG59XG5mb290ZXIgYSB7XG4gIGNvbG9yOiAjYWFkNGI0ICFpbXBvcnRhbnQ7XG59XG5mb290ZXIgZm9vdGVyIC5wYWdlX2l0ZW0ge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICBmb290ZXIgLmZsZXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgfVxuICBmb290ZXIgLmZsZXggLmNvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuLnNvY2lhbC1saW5rcyB7XG4gIGdhcDogMXJlbTtcbn1cbi5zb2NpYWwtbGlua3Mgc3ZnIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbn1cblxuLypcbi8vLy8vLy8vLy8vLy8vLy9cbiAgICBNb2JpbGVcbi8vLy8vLy8vLy8vLy8vLy9cbiovXG4uc29jaWFscyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAycmVtO1xuICBsZWZ0OiAycmVtO1xuICBnYXA6IDAuNWVtO1xufVxuXG4jbWVudS1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiAwLjNyZW0gMnJlbSAwLjNyZW0gMnJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xufVxuI21lbnUtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2ODkzNjtcbn1cbiNtZW51LWJ0biBzcGFuIHtcbiAgYmFja2dyb3VuZDogI2FhZDRiNDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogM3B4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jbWVudS1idG4gc3BhbjpiZWZvcmUsICNtZW51LWJ0biBzcGFuOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2FhZDRiNDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC02cHg7XG4gIGxlZnQ6IGF1dG87XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbn1cbiNtZW51LWJ0biBzcGFuOmFmdGVyIHtcbiAgdG9wOiA2cHg7XG59XG5cbi5uYXYtb3BlbiAjbWVudS1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY4OTM2O1xufVxuLm5hdi1vcGVuICNvdmVybGF5IHtcbiAgcGFkZGluZzogMDtcbn1cbi5uYXYtb3BlbiAjb3ZlcmxheSAuZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5uYXYtcmlnaHQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdi10b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAzcmVtIDAgMnJlbTtcbiAgZ2FwOiAxLjVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubmF2LXRvcCBzdmcge1xuICBtYXgtd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxuI25hdi1wb3BvdmVyIHtcbiAgYmFja2dyb3VuZDogI0U1RkZFQjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE1ZGVnLCByZ2IoMjI5LCAyNTUsIDIzNSkgMCUsIHJnYigyNTUsIDI1NSwgMjU1KSA0OSUpO1xufVxuXG4ubWVkaWEgdmlkZW8ge1xuICBtaXgtYmxlbmQtbW9kZTogbGlnaHRlbjtcbn1cblxudWwjbWVudS1tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGdhcDogMWVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxudWwjbWVudS1tYWluIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbnVsI21lbnUtbWFpbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDBweDtcbn1cbnVsI21lbnUtbWFpbiBsaSBhIHtcbiAgY29sb3I6ICMxNjg5MzY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDQuNXJlbTtcbiAgcGFkZGluZzogMnJlbSAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjRTVGRkVCO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxudWwjbWVudS1tYWluIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTY4OTM2O1xuICBjb2xvcjogI2ZmZjtcbn1cbnVsI21lbnUtbWFpbiBsaS5jdXJyZW50LW1lbnUtaXRlbSBhIHtcbiAgYmFja2dyb3VuZDogIzE2ODkzNjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbm5hdiB1bCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbm5hdiB1bCBsaSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwcHg7XG4gIHotaW5kZXg6IDg4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjg5MzY7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5uYXYgdWwgbGkgdWwgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5uYXYgdWwgbGkgdWwgbGkgYSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzE2ODkzNiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogI0U1RkZFQjtcbn1cbm5hdiB1bCBsaSB1bCBsaSBhOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMHB4O1xufVxubmF2IHVsIGxpIHVsIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI2FhZDRiNCAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxubmF2IHVsIGxpIHtcbiAgcGFkZGluZzogMWVtIDA7XG59XG5uYXYgdWwgbGkgdWwgbGkge1xuICBwYWRkaW5nOiAwLjI1ZW0gMDtcbn1cbm5hdiB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmhvbWUgLmhlcm8ge1xuICBwYWRkaW5nLXRvcDogODBweCAhaW1wb3J0YW50O1xufVxuXG5uYXYgdWwgbGk6aG92ZXIgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhhbWJ1cmdlciB7XG4gIGJhY2tncm91bmQ6ICMwMTliNjc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG59XG4uaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXIsXG4uaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLFxuLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4udmlkZW8tZW1iZWQgdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAub3ZlcmxheSB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBib3JkZXItcmlnaHQ6ICMzMzMgc29saWQgNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG4gIC5vdmVybGF5IHtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTtcbiAgfVxuICAub3ZlcmxheS1zaG93IC5vdmVybGF5IHtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzLCBwYWRkaW5nIDAuNXM7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aC13aWR0aDogNDAwcHgpIHtcbiAgLm92ZXJsYXkge1xuICAgIHBhZGRpbmc6IDVyZW0gMnJlbTtcbiAgfVxufVxuLypcbi8vLy8vLy8vLy8vLy8vL1xuICAgIERlc2t0b3Bcbi8vLy8vLy8vLy8vLy8vL1xuKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5tYWluLW5hdmlnYXRpb24ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAubWFpbi1uYXZpZ2F0aW9uIHVsIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgTmF2aWNvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuI25hdmljb246Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4jbmF2aWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNDhweCkge1xuICAjbmF2aWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIG5hdiB1bCwgbmF2IHVsIGxpIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMHB4O1xuICB9XG4gIG5hdiB1bCBsaSB1bCB7XG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRvcDogMDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgRnVsbCBQYWdlIE1lbnUgT3ZlcmxheVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm1lbnUtbWFpbi1jb250YWluZXIsXG4ubWFpbi1uYXZpZ2F0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNvdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAycmVtO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICB6LWluZGV4OiA5OTk2O1xufVxuI292ZXJsYXkgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDEwMHB4O1xufVxuI292ZXJsYXkgdWwjbWVudS1tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuI292ZXJsYXkgdWwjbWVudS1tYWluIGxpIHtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI292ZXJsYXkgdWwjbWVudS1tYWluIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgcGFkZGluZzogMCAwIDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuM3M7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbn1cbiNvdmVybGF5IHVsI21lbnUtbWFpbiBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNjg5MzYgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5uYXYtb3BlbiAjb3ZlcmxheSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm5hdi1vcGVuIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXYtb3BlbiBzcGFuOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdG9wOiAwcHg7XG59XG4ubmF2LW9wZW4gc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRvcDogMHB4O1xufVxuXG4ubmF2LXN0aWNreSB1bCNtZW51LW1haW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBiYWNrZ3JvdW5kOiAjMmMxNzU3O1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi5uYXYtb3BlbiB1bCNtZW51LW1haW4ge1xuICBsZWZ0OiAwcHg7XG59XG4ubmF2LW9wZW4gI25hdmljb24gc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm5hdi1vcGVuICNuYXZpY29uIHNwYW46YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xufVxuLm5hdi1vcGVuICNuYXZpY29uIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAubmF2LW9wZW4gI292ZXJsYXkgLmZsZXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5uYXYtb3BlbiAjb3ZlcmxheSAuZmxleCB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cbiNuYXZpY29uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNzVweDtcbiAgcmlnaHQ6IDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgdG9wOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY4OTM2O1xufVxuI25hdmljb24gc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA3MCU7XG4gIGhlaWdodDogMnB4O1xuICBsZWZ0OiAxNSU7XG4gIHRvcDogNTAlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAtMS41cHg7XG4gIGJhY2tncm91bmQ6ICNhYWQ0YjQ7XG59XG4jbmF2aWNvbiBzcGFuOmJlZm9yZSwgI25hdmljb24gc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAtOHB4O1xuICBoZWlnaHQ6IDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFkNGI0O1xuICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG59XG4jbmF2aWNvbiBzcGFuOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC04cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5uYXYtdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uc2l0ZS1icmFuZGluZyB7XG4gIHdpZHRoOiAyODBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgdG9wOiAyMHB4O1xuICBsZWZ0OiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbn1cbi5zaXRlLWJyYW5kaW5nIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zaXRlLWJyYW5kaW5nIGEgc3ZnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLm5hdi1vcGVuIC5zaXRlLWJyYW5kaW5nIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNpbmdsZS1wb3N0IC5zaXRlLWJyYW5kaW5nIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNWVtO1xufVxuXG5oZWFkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDk5OTk7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0IHN2ZztcbiAgYWxpZ24taXRlbXMtd2lkdGg6IDEwMCU7XG59XG5cbmhlYWRlci5iay1kayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5uYXYgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFlbTtcbiAgcGFkZGluZy10b3A6IDFlbTtcbn1cbm5hdiB1bCBsaS5wYWdlX2l0ZW0ge1xuICBtYXJnaW46IDBweDtcbn1cbm5hdiB1bCBsaSBhLCBuYXYgdWwgbGkgYTp2aXNpdGVkLCBuYXYgdWwgbGkgYTphY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubmF2LWxpbmtzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJyZW07XG4gIHJpZ2h0OiBhdXRvO1xufVxuLm5hdi1saW5rcyBpbWcge1xuICBtYXgtaGVpZ2h0OiA3MHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgaGVhZGVyIC5zb2NpYWxzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIGhlYWRlciBzdmcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gIH1cbiAgLm5hdi1saW5rcyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gIH1cbiAgI21lbnUtYnRuIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gIH1cbn1cbi5hc3RybyBzdmcgcGF0aCB7XG4gIGZpbGw6ICMyMjI7XG59XG5cbi5wb3N0LWNhcmQgaDMge1xuICBmb250LXNpemU6IDRyZW07XG59XG5cbi5oLWZ1bGwge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLmJrLWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzExNGMgIWltcG9ydGFudDtcbn1cbi5iay1oaWdobGlnaHQgaDEsIC5iay1oaWdobGlnaHQgaDIsIC5iay1oaWdobGlnaHQgaDMsIC5iay1oaWdobGlnaHQgaDQsIC5iay1oaWdobGlnaHQgaDUsIC5iay1oaWdobGlnaHQgaDYsIC5iay1oaWdobGlnaHQgcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmJrLWhpZ2hsaWdodCBwIGEsIC5iay1oaWdobGlnaHQgbGkgYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5sb3dlci1mb290ZXIgcCwgLmxvd2VyLWZvb3RlciBsaSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmxvd2VyLWZvb3RlciBwIGEsIC5sb3dlci1mb290ZXIgbGkgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuLmFjY29yZGlvbiBsaSB7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2FhZDRiNDtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuLmFjY29yZGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4uYWNjb3JkaW9uIGxpIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYWNjb3JkaW9uIGxpLmFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhvbWUgLmNhcmQtb3ZlcmxhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ob21lIC5jYXJkLW92ZXJsYXAgLndyYXAgaDEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5ob21lIC5jYXJkLW92ZXJsYXAgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA7XG59XG4uaG9tZSAuY2FyZC1vdmVybGFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDcwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmRhcmstc3RyaXAtYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRhcmstc3RyaXAtYm90dG9tID4gKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xufVxuLmRhcmstc3RyaXAtYm90dG9tOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzAwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5weS0yMCB7XG4gIHBhZGRpbmctdG9wOiAyMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDIwcmVtO1xufVxuXG4vKiBDQVJPVVNFTCAqL1xuLyogdGhlIHNsaWRlcyAqL1xuLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luOiAwIDIwcHg7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cblxuLyogdGhlIHBhcmVudCAqL1xuLnNsaWNrLWxpc3Qge1xuICBtYXJnaW46IDAgLTIwcHg7XG59XG5cbi5kaXZpc2lvbi1zY3JvbGxlciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmRpdmlzaW9uLXNjcm9sbGVyIGEgaW1nIHtcbiAgYm9yZGVyOiAxMHB4IHNvbGlkICNlZWU7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuLmRpdmlzaW9uLXNjcm9sbGVyIGE6aG92ZXIgaW1nIHtcbiAgYm9yZGVyOiAxMHB4IHNvbGlkICMyQzE3NTc7XG59XG4uZGl2aXNpb24tc2Nyb2xsZXIgYTpob3ZlciBoNCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5jaXRlIGltZyB7XG4gIG1heC13aWR0aDogNjBweDtcbn1cblxuLm1hcnEtd3JhcCB7XG4gIGJhY2tncm91bmQ6ICNFNUZGRUI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8qIHRoZSBwYXJlbnQgKi9cbn1cbi5tYXJxLXdyYXAgcCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi5tYXJxLXdyYXAgLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuLm1hcnEtd3JhcCAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbiNxdW90ZS1tYXJrcyB7XG4gIHotaW5kZXg6IC0xO1xuICBtYXgtd2lkdGg6IDcwJTtcbiAgbWF4LWhlaWdodDogNzAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uYnQtMSAuY29sIHtcbiAgcGFkZGluZy10b3A6IDRyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhYWQ0YjQ7XG59XG5cbi5tYXJxLXdyYXAge1xuICBoZWlnaHQ6IDcwcHg7XG59XG4ubWFycS13cmFwIC5idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAycmVtO1xuICB0b3A6IDEuNXJlbTtcbn1cblxuLmJyLTUge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5kaXZpc2lvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kaXZpc2lvbiBpbWcge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDAgYXV0byAxZW07XG59XG4uZGl2aXNpb24gaDMge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBsaW5lLWhlaWdodDogMy4zcmVtO1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cblxuLnRpbGUge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDMuMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXgtd2lkdGg6IDI0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5waG90byB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhYWQ0YjQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWF4LXdpZHRoOiAyMjBweDtcbn1cblxuLyogdGhlIHNsaWRlcyAqL1xuLm1hcnF1ZWUgLnNsaWNrLXNsaWRlIHtcbiAgbWFyZ2luOiAwIDEwcHg7XG59XG5cbi5pbWctbWFycXVlZSAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbjogMCAtNXB4O1xufVxuLmltZy1tYXJxdWVlIC5zbGljay1zbGlkZSB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi50ZXN0aW1vbmlhbCBibG9ja3F1b3RlIHtcbiAgZm9udC1mYW1pbHk6IFwiZ2VuZXJhbCBzYW5zIG1lZGl1bVwiLCBzYW5zLXNlcmlmO1xufVxuXG4ubGFiZWwge1xuICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAxLjJyZW0gMnJlbSAxcmVtIDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzE2ODkzNjtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xufVxuLmxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDIwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wb3N0LWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhYWQ0YjQ7XG59XG4ucG9zdC1jYXJkIC5sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzcmVtO1xuICBsZWZ0OiAycmVtO1xufVxuXG4ucG9zdC1jYXJkX19leGNlcnB0IHAge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4uY2FyZCBhcnRpY2xlIHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG59XG4uY2FyZCAuYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4uY2FyZCBmaWd1cmUsIC5jYXJkIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jYXJkIC53eWcgdWwge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbi5jYXJkIC53eWcgdWwgbGkge1xuICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjQ1cmVtIDAgMC40NXJlbSAyMHB4O1xuICBjb2xvcjogIzIyMjtcbn1cbi5jYXJkIC53eWcgdWwgbGk6YmVmb3JlIHtcbiAgdG9wOiAxNHB4O1xuICBsZWZ0OiA0cHg7XG59XG5cbi5ib3gtY29scyAuY29sdW1ucy1yZXBlYXRlcl9fY29sIHtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbn1cblxuLnRleHQtbWFycXVlZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDI2MHB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuXG4ucXVvdGUtY2FyZCB7XG4gIHBhZGRpbmc6IDRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNFNUZGRUI7XG59XG4ucXVvdGUtY2FyZCBibG9ja3F1b3RlIHtcbiAgY29sb3I6ICMyMjI7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xufVxuLnF1b3RlLWNhcmQgcCB7XG4gIGNvbG9yOiAjMTY4OTM2O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZm9udC1zaXplOiAyLjFyZW07XG59XG5cbi5xdW90ZXItbG9nbyBpbWcge1xuICBib3JkZXI6IDBweCBzb2xpZCAjMTY4OTM2O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIHBhZGRpbmc6IDByZW07XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5ib3gtY29scyAuZmxleCB7XG4gIGdhcDogMnJlbTtcbn1cbi5ib3gtY29scyAuY29sdW1ucy1yZXBlYXRlcl9fY29sIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogM3JlbTtcbiAgYmFja2dyb3VuZDogI0NBRjFEMztcbn1cbi5ib3gtY29scyAuY29sdW1ucy1yZXBlYXRlcl9fY29sIGltZyB7XG4gIG1heC1oZWlnaHQ6IDEyMHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnF1b3Rlci1waWMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucXVvdGVyLXBpYyBpbWcge1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAxQjVCO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgbWFyZ2luLXRvcDogMmVtO1xuICBtYXgtd2lkdGg6IDgwcHg7XG59XG5cbnAubHJnLW51bSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1mYW1pbHk6IFwiTW9uYSBTYW5zIEJvbGRcIiwgYXJpYWw7XG4gIGZvbnQtc2l6ZTogMzByZW07XG4gIG9wYWNpdHk6IDAuMTtcbiAgei1pbmRleDogLTE7XG4gIHRvcDogLTEwMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZWZ0OiAtNzVweDtcbn1cblxuLmJyLTEwIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLmJyLTMge1xuICBib3JkZXI6IDNweCBzb2xpZCAjMTY4OTM2O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5ob3Zlci10aWxlcyBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUI0ODRBO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xufVxuLmhvdmVyLXRpbGVzIGRpdiAubnVtIHtcbiAgZm9udC1zaXplOiAxMHJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTW9uYSBTYW5zIEJvbGRcIiwgYXJpYWw7XG59XG4uaG92ZXItdGlsZXMgZGl2IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5ob3Zlci10aWxlcyBkaXY6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xufVxuLmhvdmVyLXRpbGVzIGRpdjpob3ZlciBwLCAuaG92ZXItdGlsZXMgZGl2OmhvdmVyIGgzIHtcbiAgY29sb3I6ICMxQjQ4NEE7XG59XG5cbi50aW1lbGluZS1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi50aW1lbGluZS1ibG9jayBoMyB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbn1cbi50aW1lbGluZS1ibG9jazphZnRlciB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBkYXNoZWQgIzE2ODkzNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMHB4O1xuICB6LWluZGV4OiA0NDQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnRpbWVsaW5lLWJsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjRTVGRkVCO1xuICBib3JkZXI6IDVweCBzb2xpZCAjMTY4OTM2O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKDUwJSArIDFweCk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogNzc3Nztcbn1cblxuLnRpbWVsaW5lLWJsb2NrX19pbWFnZSB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLnRpbWVsaW5lLWJsb2NrX19pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjsgLyogb3IgY29udGFpbiAqL1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjsgLyogY2VudGVyIGNlbnRlciAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRpbWVsaW5lLWJsb2NrX19jb250ZW50IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmRvdHRlZC1saW5lLXRvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kb3R0ZWQtbGluZS10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0OiA0cHggZGFzaGVkICMxNjg5MzY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgaGVpZ2h0OiA1MCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5mbGV4LXJldmVyc2UgLmZsZXgtcmV2LWltZy1hbGlnbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5kYXJrLXRleHQtYm94IC50aW1lbGluZS1ibG9ja19fY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICMxNjg5MzY7XG59XG4uZGFyay10ZXh0LWJveCAudGltZWxpbmUtYmxvY2tfX2NvbnRlbnQgaDEsIC5kYXJrLXRleHQtYm94IC50aW1lbGluZS1ibG9ja19fY29udGVudCBoMiwgLmRhcmstdGV4dC1ib3ggLnRpbWVsaW5lLWJsb2NrX19jb250ZW50IGgzLCAuZGFyay10ZXh0LWJveCAudGltZWxpbmUtYmxvY2tfX2NvbnRlbnQgaDQsIC5kYXJrLXRleHQtYm94IC50aW1lbGluZS1ibG9ja19fY29udGVudCBoNSwgLmRhcmstdGV4dC1ib3ggLnRpbWVsaW5lLWJsb2NrX19jb250ZW50IGg2LCAuZGFyay10ZXh0LWJveCAudGltZWxpbmUtYmxvY2tfX2NvbnRlbnQgcCB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbmZpZ3VyZS52aWV3cG9pbnQtaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtNDBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIHRvcDogMTgwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cbmZpZ3VyZS52aWV3cG9pbnQtaGVhZGVyIHN2ZyB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sb2MtMSxcbi5sb2MtMixcbi5sb2MtMyxcbi5sb2MtNCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgei1pbmRleDogMjAwO1xufVxuLmxvYy0xIHN2Zyxcbi5sb2MtMiBzdmcsXG4ubG9jLTMgc3ZnLFxuLmxvYy00IHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sb2MtMSB7XG4gIHRvcDogMjklO1xuICBsZWZ0OiAzNiU7XG59XG5cbi5sb2MtMiB7XG4gIHRvcDogMzIlO1xuICBsZWZ0OiA0NCU7XG59XG5cbi5sb2MtMyB7XG4gIHRvcDogNzElO1xuICBsZWZ0OiA0OSU7XG59XG5cbi5sb2MtNCB7XG4gIHRvcDogNDUlO1xuICBsZWZ0OiA3NSU7XG59XG5cbi8qIHRoZSBwYXJlbnQgKi9cbi5tYXJxdWVlIC5zbGljay1saXN0IHtcbiAgbWFyZ2luOiAwIC0xMHB4O1xufVxuXG4ucGFnZS1pZC0yMTMgLmhlcm8udmlkZW8tc2VjdGlvbiB7XG4gIGhlaWdodDogNzB2aDtcbiAgbWluLWhlaWdodDogNTAwcHg7XG59XG4ucGFnZS1pZC0yMTMgLmhlcm8udmlkZW8tc2VjdGlvbiAuYnRuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmtleS1jb250YWN0IHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnRlYW0tcGljIGltZyB7XG4gIHdpZHRoOiA4MHB4O1xuICBib3JkZXItcmFkaXVzOiA4MHB4O1xufVxuXG4udGVhbS1pbmZvIC5iaW8ge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbn1cblxuLmJnLWx0LWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4uYnItNSB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLmJpbyB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBsaW5lLWhlaWdodDogMi4xcmVtO1xufVxuXG4udGVhbS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cbi50ZWFtLWNhcmQgLmljb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDJyZW07XG4gIGxlZnQ6IDJyZW07XG59XG4udGVhbS1jYXJkIC5pY29ucyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnRlYW0tY2FyZCAuaWNvbnMgc3ZnIHtcbiAgbWF4LXdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5xLXBpYyBpbWcge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBib3JkZXItcmFkaXVzOiA2MHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjYWFkNGI0O1xufVxuXG4vKiBTTE9UIFJPTEwgVEVTVCAqL1xuLnNsb3Qtcm9sbC13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbG90LXJlYWwge1xuICBvcGFjaXR5OiAwOyAvKiBrZWVwIGxheW91dCwgaGlkZSB2aXN1YWxseSAqL1xufVxuXG4uc2xvdC1hbmltIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC13b3JkIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogMC4xMmVtO1xufVxuXG4uc2xvdC1hbmltIC5zbG90LWxldHRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC1sZXR0ZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC1sZXR0ZXItbGluZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuLnRlYW0tbWVtYmVyLWNhcmQge1xuICBib3JkZXI6IDBweDtcbiAgYmFja2dyb3VuZDogI0U1RkZFQjtcbn1cbi50ZWFtLW1lbWJlci1jYXJkX19waG90byB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi50ZWFtLW1lbWJlci1jYXJkIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogM3JlbSAwO1xufVxuLnRlYW0tbWVtYmVyLWNhcmQgdWwgbGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMTY4OTM2O1xuICBib3JkZXItcmFkaXVzOiAyMDBweDtcbn1cbi50ZWFtLW1lbWJlci1jYXJkIHN2ZyB7XG4gIHdpZHRoOiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIGhlaWdodDogYXV0bztcbiAgZmlsbDogIzE2ODkzNjtcbn1cbi50ZWFtLW1lbWJlci1jYXJkIC5saW5rZWRpbi1pY29uIHN2ZyBwYXRoIHtcbiAgZmlsbDogIzE2ODkzNjtcbn1cblxuLmFjY29yZGlvbiBsaSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uYWNjb3JkaW9uIGxpIC5hY2NvcmRpb24tdGl0bGUgc3ZnIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZmlsbDogI2FhZDRiNDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbn1cbi5hY2NvcmRpb24gbGkgLmFjY29yZGlvbi10aXRsZSBzdmcgbGluZSB7XG4gIHN0cm9rZTogI2FhZDRiNDtcbn1cbi5hY2NvcmRpb24gbGkuYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUgc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4uYWNjb3JkaW9uIGxpIC5hY2NvcmRpb24tdGl0bGUge1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5hY2NvcmRpb24gbGkgLmFjY29yZGlvbi10aXRsZSBzdmcge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBmaWxsOiAjYWFkNGI0O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xufVxuLmFjY29yZGlvbiBsaSAuYWNjb3JkaW9uLXRpdGxlIHN2ZyBsaW5lIHtcbiAgc3Ryb2tlOiAjYWFkNGI0O1xufVxuLmFjY29yZGlvbiBsaS5hY3RpdmUgLmFjY29yZGlvbi10aXRsZSBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5tb2Itc2hvdyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1vYi1oaWRlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuI25hdmljb24gZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI25hdmljb24gc3BhbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAjbmF2aWNvbiB7XG4gICAgd2lkdGg6IDU1cHg7XG4gIH1cbiAgI25hdmljb24gZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI25hdmljb24gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1vYi1jYXJkcyB7XG4gICAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tb2ItY2FyZHMgLndyYXAge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gIH1cbiAgLm1vYi1jYXJkcyBhcnRpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjY2FmMWQzO1xuICB9XG4gIC5tb2ItY2FyZHMgYXJ0aWNsZSAucC00IHtcbiAgICBwYWRkaW5nOiAzcmVtO1xuICB9XG4gIC5tb2ItY2FyZHMgZmlndXJlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLm1vYi1jYXJkcyBmaWd1cmUgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICB9XG4gIGJvZHkgc2VjdGlvbi5mbC13b3JsZC1tYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBib2R5IC5mbC13b3JsZC1tYXBfX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG4gIGJvZHkgLmZsLXdvcmxkLW1hcF9fZ2xvYmUge1xuICAgIHdpZHRoOiAzNDBweDtcbiAgICBoZWlnaHQ6IDM0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5waW4tc3BhY2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5tb2Itc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAubW9iLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC02eGwge1xuICAgIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tb2ItY2FyZHMgLnd5ZyB1bCBsaSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbiAgLnd5ZyB1bCBsaTpiZWZvcmUge1xuICAgIHRvcDogMjJweDtcbiAgfVxuICAudmlkLWJ1cnN0IGgyIHtcbiAgICBmb250LXNpemU6IDRyZW0gIWltcG9ydGFudDtcbiAgfVxuICBkaXYjbmF2LXBvcG92ZXIge1xuICAgIHBhZGRpbmc6IDRyZW07XG4gIH1cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgfVxuICAuZmxleC5nYXAtMi5hbGlnbi1jZW50ZXIubWItNCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmhlcm8gaDEgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDFlbSAhaW1wb3J0YW50O1xuICB9XG4gIC5tYXJxLXdyYXAge1xuICAgIGhlaWdodDogMTEwcHg7XG4gIH1cbiAgLm1hcnEtd3JhcCAuYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IDJyZW07XG4gICAgYm90dG9tOiAwO1xuICB9XG4gICNjdXN0b20tY3Vyc29yLWRvdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIGJvZHkge1xuICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuICB9XG59XG4uZmxleC13cmFwIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZmxleC0zLWNvbCA+ICoge1xuICBmbGV4OiAxIDEgY2FsYygzMy4zMzMlIC0gNXJlbSk7XG59XG5cbi5mbGV4LTUtY29sID4gKiB7XG4gIGZsZXg6IDEgMSBjYWxjKDI1JSAtIDVyZW0pO1xufVxuXG4udGFncyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMWVtIDEuNWVtO1xuICBtYXJnaW46IDAuNWVtIDAuNWVtIDAuNWVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMnB4IGRhc2hlZCAjYWFkNGI0O1xufVxuXG4uYmstZGsgLnBvc3QtY2FyZCB7XG4gIGJhY2tncm91bmQ6ICMxNDA4MkM7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMnB4ICMxN0VEREQ7XG59XG4uYmstZGsgLnBvc3QtY2FyZCBoNCBhIHtcbiAgY29sb3I6ICNhYWQ0YjQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5jcy1mZWVkIC5mbGV4IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY3MtZmVlZCAuZmxleCBkaXYge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxufVxuLmhvbWUgLmhlcm8gLnNlcnZpY2VzIGFydGljbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIG1hcmdpbjogMDtcbn1cbi5ob21lIC5oZXJvIC5oZXJvLW1haW4ge1xuICBwYWRkaW5nOiAxNXJlbSAwIDE1cmVtO1xufVxuXG4uc3RhZ2dlci1jb2xvdXIgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhYWQ0YjQ7XG59XG4uc3RhZ2dlci1jb2xvdXIgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbCAuYnRuIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2FhZDRiNDtcbn1cbi5zdGFnZ2VyLWNvbG91ciAuY29sdW1ucy1yZXBlYXRlcl9fY29sOm50aC1jaGlsZCgxKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjg5MzY7XG59XG4uc3RhZ2dlci1jb2xvdXIgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbDpudGgtY2hpbGQoMSkgcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnN0YWdnZXItY29sb3VyIC5jb2x1bW5zLXJlcGVhdGVyX19jb2w6bnRoLWNoaWxkKDEpIGgzIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uc3RhZ2dlci1jb2xvdXIgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbDpudGgtY2hpbGQoMikge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTVGRkVCO1xufVxuLnN0YWdnZXItY29sb3VyIC5jb2x1bW5zLXJlcGVhdGVyX19jb2w6bnRoLWNoaWxkKDMpIHtcbiAgbWFyZ2luLXRvcDogOHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnZpZC1idXJzdCB2aWRlbyB7XG4gIG1peC1ibGVuZC1tb2RlOiBkYXJrZW47XG59XG5cbi5saW5rLXByaW0ge1xuICBjb2xvcjogIzE2ODkzNjtcbn1cblxuLmhlcm8ge1xuICBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogODB2aDtcbn1cbi5oZXJvID4gLndyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xufVxuLmhlcm8gdmlkZW8ge1xuICB3aWR0aDogMTUwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICB6LWluZGV4OiAwO1xuICBtaXgtYmxlbmQtbW9kZTogZGFya2VuO1xuICAvKiAmI3ZpZC0xIHsgdG9wOiAxNSU7IHJpZ2h0OiAxNiU7fSAqL1xuICAvKiAmI3ZpZC0yIHsgdG9wOiA1MCU7IHJpZ2h0OiAyNiU7fSovXG4gIC8qICYjdmlkLTMgeyB0b3A6IDI1JTsgbGVmdDogMTIlO30qL1xuICAvKiAmI3ZpZC00IHsgdG9wOiA3MCU7IGxlZnQ6IDI0JTt9ICovXG59XG4uaGVybyBwLmFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDRyZW07XG4gIHJpZ2h0OiA0cmVtO1xufVxuXG4uc3Bpbm55LWN1cnJlbmN5IHtcbiAgd2lkdGg6IDExMHB4O1xuICBoZWlnaHQ6IDExMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBhbmltYXRpb246IHNjYWxlLWluIDJzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKSBmb3J3YXJkcztcbn1cbi5zcGlubnktY3VycmVuY3kuc3Bpbm55LTEge1xuICB0b3A6IDE1JTtcbiAgcmlnaHQ6IDE2JTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbn1cbi5zcGlubnktY3VycmVuY3kuc3Bpbm55LTIge1xuICB0b3A6IDYwJTtcbiAgcmlnaHQ6IDEwJTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjE1cztcbn1cbi5zcGlubnktY3VycmVuY3kuc3Bpbm55LTMge1xuICB0b3A6IDI1JTtcbiAgbGVmdDogMTIlO1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG4uc3Bpbm55LWN1cnJlbmN5LnNwaW5ueS00IHtcbiAgdG9wOiA3MCU7XG4gIGxlZnQ6IDI0JTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ1cztcbn1cblxuQGtleWZyYW1lcyBzY2FsZS1pbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNzAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEyKTtcbiAgfVxuICA4NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbi5uby12aWRzIHtcbiAgcGFkZGluZzogMTVyZW0gMCAxMHJlbSAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4ubm8tdmlkcyBpbWcsIC5uby12aWRzIHZpZGVvIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4jdmlkLTEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTUlO1xuICByaWdodDogNiU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDIwJSk7XG4gIGFuaW1hdGlvbjogbW92ZUFuZFBhdXNlMSA1LjlzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIG1vdmVBbmRQYXVzZTEge1xuICAvKiBTdGFydCBwb3NpdGlvbiAqL1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICB9XG4gIC8qIEFuaW1hdGUgaW4gKGZpcnN0IDIwJSBvZiB0aW1lbGluZSDiiYggMS40cykgKi9cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIC8qIEhvbGQgZmluYWwgc3RhdGUgKDIwJSDihpIgOTAlIOKJiCA1cyBwYXVzZSkgKi9cbiAgOTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIC8qIFJlc2V0IGluc3RhbnRseSBhdCBlbmQgKi9cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICB9XG59XG4jdmlkLTIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNjAlO1xuICBsZWZ0OiA2JTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjAlKTtcbiAgYW5pbWF0aW9uOiBtb3ZlQW5kUGF1c2UxIDUuOXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgbW92ZUFuZFBhdXNlMiB7XG4gIC8qIFN0YXJ0IHBvc2l0aW9uICovXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0yMCUpO1xuICB9XG4gIC8qIEFuaW1hdGUgaW4gKGZpcnN0IDIwJSBvZiB0aW1lbGluZSDiiYggMS40cykgKi9cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIC8qIEhvbGQgZmluYWwgc3RhdGUgKDIwJSDihpIgOTAlIOKJiCA1cyBwYXVzZSkgKi9cbiAgOTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIC8qIFJlc2V0IGluc3RhbnRseSBhdCBlbmQgKi9cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTtcbiAgfVxufVxuI3ZpZC0zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwJTtcbiAgbGVmdDogMTAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICBhbmltYXRpb246IG1vdmVBbmRQYXVzZTEgNS45cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBtb3ZlQW5kUGF1c2UzIHtcbiAgLyogU3RhcnQgcG9zaXRpb24gKi9cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxuICAvKiBBbmltYXRlIGluIChmaXJzdCAyMCUgb2YgdGltZWxpbmUg4omIIDEuNHMpICovXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAvKiBIb2xkIGZpbmFsIHN0YXRlICgyMCUg4oaSIDkwJSDiiYggNXMgcGF1c2UpICovXG4gIDkwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAvKiBSZXNldCBpbnN0YW50bHkgYXQgZW5kICovXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxufVxuI3ZpZC00IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDcwJTtcbiAgcmlnaHQ6IDQlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICBhbmltYXRpb246IG1vdmVBbmRQYXVzZTEgNS45cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBtb3ZlQW5kUGF1c2U0IHtcbiAgLyogU3RhcnQgcG9zaXRpb24gKi9cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxuICAvKiBBbmltYXRlIGluIChmaXJzdCAyMCUgb2YgdGltZWxpbmUg4omIIDEuNHMpICovXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAvKiBIb2xkIGZpbmFsIHN0YXRlICgyMCUg4oaSIDkwJSDiiYggNXMgcGF1c2UpICovXG4gIDkwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAvKiBSZXNldCBpbnN0YW50bHkgYXQgZW5kICovXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxufVxuLnZpZC1idXJzdCAud3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG59XG4udmlkLWJ1cnN0IHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBtaXgtYmxlbmQtbW9kZTogbGlnaHRlbjtcbiAgei1pbmRleDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xufVxuLnZpZC1idXJzdCB2aWRlbyN2aWQtMSB7XG4gIHRvcDogMjAlO1xuICByaWdodDogNSU7XG59XG4udmlkLWJ1cnN0IHZpZGVvI3ZpZC0yIHtcbiAgdG9wOiA2MCU7XG4gIHJpZ2h0OiA1JTtcbn1cbi52aWQtYnVyc3QgdmlkZW8jdmlkLTMge1xuICB0b3A6IDEwJTtcbiAgbGVmdDogNSU7XG59XG4udmlkLWJ1cnN0IHZpZGVvI3ZpZC00IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlcm8tdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5oZXJvLXRleHQgcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5oZXJvLXRleHQgLnRleHQxIHtcbiAgdG9wOiAxMCU7XG4gIGxlZnQ6IDEwJTtcbn1cbi5oZXJvLXRleHQgLnRleHQyIHtcbiAgdG9wOiAzMCU7XG4gIGxlZnQ6IDIwJTtcbn1cbi5oZXJvLXRleHQgLnRleHQxIHtcbiAgdG9wOiA2MCU7XG4gIHJpZ2h0OiAxMCU7XG59XG4uaGVyby10ZXh0IC50ZXh0MSB7XG4gIHRvcDogOTAlO1xuICByaWdodDogMjAlO1xufVxuXG4udGV4dC0zeGwge1xuICBmb250LXNpemU6IDEwcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG4uZm9udC1oZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbn1cblxuLnBhZ2UtaWQtOTE1IC5oZXJvLnZpZGVvLXNlY3Rpb24ge1xuICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgaGVpZ2h0OiA2MHZoO1xufVxuLnBhZ2UtaWQtOTE1IC5oZXJvLnZpZGVvLXNlY3Rpb24gLmJ0biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oZXJvLmJrLW92ZXJsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaGVyby5iay1vdmVybGF5ID4gKiB7XG4gIHotaW5kZXg6IDU1NTU7XG59XG4uaGVyby5iay1vdmVybGF5OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBvcGFjaXR5OiAwLjg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMzMzMztcbn1cblxuLnRlc3RpbW9uaWFsLmJrLW92ZXJsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGVzdGltb25pYWwuYmstb3ZlcmxheSA+ICoge1xuICB6LWluZGV4OiA1NTU1O1xufVxuLnRlc3RpbW9uaWFsLmJrLW92ZXJsYXk6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIG9wYWNpdHk6IDAuODtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzMzMzO1xufVxuXG4udmlkZW8tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qICY6YmVmb3JlIHsgXG4gICAgIGNvbnRlbnQ6ICcnO1xuICAgICB6LWluZGV4OiAzMzM7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgYmFja2dyb3VuZDogcmdiYSgyMCwzNSwxMDgsMC41KTtcbiAgICAgdG9wOiAwcHg7XG4gICAgIGxlZnQ6IDBweDtcbiAgICAgZGlzcGxheTogYmxvY2s7XG4gICB9XG4gICAqL1xufVxuLnZpZGVvLXNlY3Rpb24gPiAud3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNzc3Nztcbn1cblxuLmJvdHRvbS1zdHJpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ib3R0b20tc3RyaXA6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogNDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4jdmlkZW9FbGVtZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMDtcbn1cblxuLmJrLXdtIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLnZpZGVvLXNlY3Rpb24gLndyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi56LTQ0NCB7XG4gIHotaW5kZXg6IDQ0NDtcbn1cblxuLmJrLXdtLWNvcm5lciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDYwJTtcbn1cblxuLmJrLXBpYyB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmJrLWZpeCB7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5ob21lIC5oZXJvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmhvbWUgLmhlcm8gLnZpZC13cmFwIHtcbiAgICBwYWRkaW5nOiAzZW0gMDtcbiAgfVxuICBmaWd1cmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuaGVybyBpbWcge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5oZXJvIGgxIHtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oZXJvIC5zZXJ2aWNlcyAuZmxleCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmhlcm8gLnNlcnZpY2VzIC5mbGV4IGFydGljbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDBlbTtcbiAgfVxuICAuaGVybyAuc2VydmljZXMgLmZsZXggcCB7XG4gICAgbWFyZ2luOiAyZW0gMDtcbiAgfVxuICAuaGVyby5iay1waWMge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICB9XG4gIC5oZXJvIHAgYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICAuYm90dG9tLXN0cmlwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHZpZGVvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oZXJvIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMC44NWVtO1xuICB9XG4gIC5zcGlubnktY3VycmVuY3kge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIG9wYWNpdHk6IDAuNSAhaW1wb3J0YW50O1xuICB9XG4gIC5waG90byB7XG4gICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgfVxuICAuc3RhY2tlZC1oZWFkaW5nc19faXRlbSB7XG4gICAgZm9udC1zaXplOiA1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRlc3RpbW9uaWFsIC53cmFwIGgyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXJlbTtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cbiAgdWwucXVvdGVzX2Nhcm91c2VsIC5zbGljay1uZXh0LCB1bC5xdW90ZXNfY2Fyb3VzZWwgLnNsaWNrLXByZXYge1xuICAgIHRvcDogLTgwcHg7XG4gIH1cbiAgLmNhcmQgPiAuZmxleCxcbiAgLm1vYi1ibGsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jYXJkID4gLmZsZXggPiAqLFxuICAubW9iLWJsayA+ICoge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbiAgLmNhcmQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuY2FyZCBwLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHVsI21lbnUtbWFpbiBsaSBhIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxuICAudGltZWxpbmUtcm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDZyZW07XG4gIH1cbiAgLnRpbWVsaW5lLWJsb2NrOmJlZm9yZSB7XG4gICAgbGVmdDogNHJlbTtcbiAgICB0b3A6IDhyZW07XG4gIH1cbiAgLnRpbWVsaW5lLWJsb2NrOmFmdGVyIHtcbiAgICBsZWZ0OiA0cmVtO1xuICB9XG4gIC5mbGV4LXJldmVyc2UgLmZsZXgtcmV2LWltZy1hbGlnbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5kb3R0ZWQtbGluZS10b3A6YmVmb3JlIHtcbiAgICBsZWZ0OiA0cmVtO1xuICB9XG4gIGgyLCAudGV4dC0yeGwsIGgzLCAudGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gIH1cbiAgLnNwaW5ueS1jdXJyZW5jeSB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICB9XG4gIC5zcGlubnktY3VycmVuY3kuc3Bpbm55LTEge1xuICAgIHRvcDogNSU7XG4gICAgcmlnaHQ6IDUlO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gIH1cbiAgLnNwaW5ueS1jdXJyZW5jeS5zcGlubnktMiB7XG4gICAgdG9wOiA3JTtcbiAgICByaWdodDogNzYlO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG4gIH1cbiAgLnNwaW5ueS1jdXJyZW5jeS5zcGlubnktMyB7XG4gICAgdG9wOiA3MiU7XG4gICAgbGVmdDogMTAlO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgfVxuICAuc3Bpbm55LWN1cnJlbmN5LnNwaW5ueS00IHtcbiAgICB0b3A6IDcwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiA2JTtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNDVzO1xuICB9XG4gIC50ZXh0LW1hcnF1ZWUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxufVxuZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNFNUZGRUI7XG4gIHBhZGRpbmc6IDRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlcjogNHB4IHNvbGlkICMxNjg5MzY7XG59XG5mb3JtIGlucHV0LFxuZm9ybSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBwYWRkaW5nOiAwLjllbTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMTY4OTM2O1xuICBmb250LWZhbWlseTogXCJwb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG59XG5mb3JtIGlucHV0OjpwbGFjZWhvbGRlcixcbmZvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMyMjIgIWltcG9ydGFudDtcbn1cbmZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG59XG5mb3JtLnNpbmdsZS1zZWFyY2gge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuZm9ybS5zaW5nbGUtc2VhcmNoIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIGJvcmRlcjogMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vYXNzZXRzL2ltYWdlcy9tYWcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuZm9ybS5naG9zdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmZvcm0uZ2hvc3QgaW5wdXQsXG5mb3JtLmdob3N0IHRleHRhcmVhIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzBhZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LWZhbWlseTogXCJwb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMTY4OTM2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5mb3JtLmdob3N0IGlucHV0OnBsYWNlaG9sZGVyLFxuZm9ybS5naG9zdCB0ZXh0YXJlYTpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMjIyO1xufVxuZm9ybS5naG9zdCBpbnB1dC5tYWcsXG5mb3JtLmdob3N0IHRleHRhcmVhLm1hZyB7XG4gIGJvcmRlcjogMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vYXNzZXRzL2ltYWdlcy9tYWcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMTZweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIHBhZGRpbmc6IDA7XG59XG5mb3JtIHNwYW4ud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG5zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxcmVtIDAgM3JlbTtcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyOiAwcHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbmlucHV0LndwY2Y3LWZvcm0tY29udHJvbC5oYXMtc3Bpbm5lci53cGNmNy1zdWJtaXQge1xuICB3aWR0aDogYXV0bztcbiAgYm9yZGVyOiAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFlbSAwO1xufVxuXG4uaGVybyBpbnB1dC5tYWcge1xuICB3aWR0aDogMTMwcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFkNGI0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vYXNzZXRzL2ltYWdlcy9tYWcuc3ZnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmNvbnRhY3QtY3RhIC5mbGV4IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGVybyBmb3JtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmhlcm8gaW5wdXQsXG4uaGVybyBzZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgYm9yZGVyOiAycHggc29saWQgI2FhZDRiNDtcbn1cblxuLnd5ZyBlbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi53eWcgYSB7XG4gIGNvbG9yOiAjMTY4OTM2O1xufVxuLnd5ZyBiIGgxLFxuLnd5ZyBoMixcbi53eWcgaDMsXG4ud3lnIGg0LFxuLnd5ZyBoNSxcbi53eWcgaDYge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnd5ZyBiIGgxOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnd5ZyBoMjpub3QoOmZpcnN0LWNoaWxkKSxcbi53eWcgaDM6bm90KDpmaXJzdC1jaGlsZCksXG4ud3lnIGg0Om5vdCg6Zmlyc3QtY2hpbGQpLFxuLnd5ZyBoNTpub3QoOmZpcnN0LWNoaWxkKSxcbi53eWcgaDY6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xufVxuLnd5ZyBoMSBlbSxcbi53eWcgaDIgZW0sXG4ud3lnIGgzIGVtLFxuLnd5ZyBoNCBlbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi53eWcgb2wsXG4ud3lnIG9sIGxpIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cbi53eWcgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi53eWcgYmxvY2txdW90ZSBwIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIG1hcmdpbjogNHJlbSAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDRyZW07XG59XG4ud3lnIHAsXG4ud3lnIGJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBjb2xvcjogIzIyMjtcbn1cbi53eWcgcCBwLFxuLnd5ZyBibG9ja3F1b3RlIHAge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cbi53eWcgLmxyZyBsaSB7XG4gIGZvbnQtc2l6ZTogMi42cmVtO1xuICBwYWRkaW5nOiAwLjRlbSAwO1xuICBsaW5lLWhlaWdodDogMi4ycmVtO1xufVxuLnd5ZyBpbWcsXG4ud3lnIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnd5ZyBwIGIge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRlc3RpbW9uaWFsIHN2ZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDIwMHB4O1xuICB6LWluZGV4OiAtMTtcbiAgbWFyZ2luLWxlZnQ6IC0xMDBweDtcbn1cblxuLnd5ZyBvbCxcbi53eWcgdWwge1xuICBtYXJnaW46IDFyZW0gMCAycmVtIDA7XG59XG4ud3lnIG9sIGxpLFxuLnd5ZyB1bCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMC43NWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgcmdiYSgxNTUsIDE1NSwgMTU1LCAwLjUpO1xuICBsaW5lLWhlaWdodDogMS42ZW07XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi53eWcgdWwgbGk6YmVmb3JlIHtcbiAgd2lkdGg6IDVweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWQ0YjQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMjhweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud3lnIG9sIGxpOjptYXJrZXIge1xuICBjb2xvcjogI2FhZDRiNDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ud3lnIHAgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAyMDAwcHggIWltcG9ydGFudDtcbn1cblxuLnd5ZyBwLnRleHQtbCB7XG4gIGxpbmUtaGVpZ2h0OiAzLjRyZW07XG59XG5cbi5zaW5nbGUtcG9zdCAud3lnIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogM3JlbSAwO1xufVxuXG4ubXctMTAwMCB7XG4gIG1heC13aWR0aDogMTAwMHB4O1xufVxuXG4ubXctODAwIHtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbn1cblxuLm13LTYwMCB7XG4gIG1heC13aWR0aDogNjAwcHg7XG59XG5cbi5tdy01MDAge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4ud3lnIHAgYS5idG4ge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnd5ZyAqLm1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi53eWcgcCBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uaWNvbi10b3AgaW1nIHtcbiAgaGVpZ2h0OiAxMTBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5ib3gtbGF5b3V0IC5nYXAtNCB7XG4gIGdhcDogMmVtO1xufVxuLmJveC1sYXlvdXQgLmdhcC00IC53eWcge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAzZW07XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbi5ib3gtbGF5b3V0LmJrLWRrIC53eWcge1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xuICBib3JkZXI6IDFweCBkYXNoZWQgI2FhZDRiNDtcbn1cblxuLmJrLWRrIC53eWcgcCwgLmJrLWRrIC53eWcgbGksIC5iay1kayAud3lnIGgxLCAuYmstZGsgLnd5ZyBoMiwgLmJrLWRrIC53eWcgaDMsIC5iay1kayAud3lnIGg0LCAuYmstZGsgLnd5ZyBoNSwgLmJrLWRrIC53eWcgaDYge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRlYW0tbGluayBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi50ZWFtLWxpbmsgYSAuc2hyaW5rZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAxMDAwcHg7XG4gIGJvcmRlcjogNnB4IHNvbGlkO1xufVxuLnRlYW0tbGluayBhIHN2ZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xufVxuLnRlYW0tbGluayBhOmhvdmVyIHN2ZyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xufSIsIlxuJGNvbG9yLXByaW1hcnk6ICMxNjg5MzY7XG4kY29sb3Itc2Vjb25kYXJ5OiAjMTY4OTM2O1xuJGNvbG9yLWhpZ2hsaWdodDogI2FhZDRiNDtcbiRjb2xvci1kZWVwOiAjMjIyO1xuJGNvbG9yLWJyaWdodDogI0U1RkZFQjtcbiRjb2xvci10ZXh0OiAjMTY4OTM2O1xuJGNvbG9yLWJsYWNrOiAjMTY4OTM2O1xuJGNvbG9yLWhpZ2hsaWdodDogI2FhZDRiNDtcbiRjb2xvci1ncmV5OiAjZGRkO1xuJGNvbG9yLXdoaXRlOiAjZmZmZmZmO1xuXG4kd3JhcC13aWR0aC1sYXJnZTogMTM0MHB4O1xuJHdyYXAtd2lkdGgtc21hbGw6IDkwMHB4O1xuJG5hdi1oZWlnaHQ6IDk1cHg7XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXByaW1hcnk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmstZ3JleSB7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTtcbn1cbi5iay1icmlnaHQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnJpZ2h0OyB9XG5cbi5iay13aGl0ZSB7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG59XG4uYmstcHJpbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xufVxuLmJrLWx0LWdyZXkgIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRkZDtcbn1cblxuc2VjdGlvbi5iay1waWMucHQtOC5wYi04LmNvbHVtbnMuYmstd2hpdGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uYmstZGVlcCAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVlcDtcbn1cblxuLmJnLXdoaXRlIHsgXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5iay1kayB7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVlcDtcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgYSwgcCwgbGksIGxhYmVsLCBibG9ja3F1b3RlIHsgXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgfVxuICAud3lnIHsgXG4gICAgYTpub3QoLmJ0bikge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cbi5iay1wcmltYXJ5IHsgXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBhLCBwLCBsaSB7IFxuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC53eWcgeyBcbiAgICBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbiAgaDIgeyBcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICB9XG59XG5cbi53cmFwLXRoaW4ge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDQ0NDtcbn1cblxuXG4ucHVsc2Utc2hhZG93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbmltYXRpb246IHB1bHNlU2hhZG93IDJzIGluZmluaXRlIGVhc2Utb3V0O1xuICBib3JkZXItcmFkaXVzOiAyMDBweDtcbn1cblxuXG4ubW91c2UtZm9sbG93IHsgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTk7XG4gIGJhY2tncm91bmQ6IGdyZWVuO1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIHRvcDogMjBweDsgXG4gIGxlZnQ6IDIwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDBcbn1cblxuLm1vdXNlLWFjdGl2ZSB7IFxuICAubW91c2UtZm9sbG93IHsgb3BhY2l0eTogMTt9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2VTaGFkb3cge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIH1cblxuICA3MCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDIwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgfVxufVxuXG5cbi5iay1ncmVlbiB7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTsgXG59XG5cblxuXG4vKipcbk1lZGlhIFF1ZXJpZXNcbiovXG4kYnJlYWtwb2ludHM6IChcbiAgXCJwaG9uZVwiOiA0MDBweCxcbiAgXCJwaG9uZS13aWRlXCI6IDQ4MHB4LFxuICBcInBoYWJsZXRcIjogNTYwcHgsXG4gIFwidGFibGV0LXNtYWxsXCI6IDY0MHB4LFxuICBcInRhYmxldFwiOiA3NjhweCxcbiAgXCJ0YWJsZXQtd2lkZVwiOiAxMDI0cHgsXG4gIFwiZGVza3RvcFwiOiAxMjQ4cHgsXG4gIFwiZGVza3RvcC13aWRlXCI6IDE2MDBweFxuKTtcblxuXG4kdGV4dC1oZWFkOiA3LjVyZW07XG4kdGV4dC0yeGw6IDNyZW07XG4kdGV4dC14bDogMi43NXJlbTsgXG4kdGV4dC1sOiAyLjJyZW07XG4kdGV4dC1tbDogMnJlbTtcbiR0ZXh0LW46IDEuOHJlbTsgXG4kdGV4dC1zOiAxLjNyZW07XG4kdGV4dC14czogMS4xcmVtO1xuJGxpbmUtaGVpZ2h0OiAyLjVyZW07XG5cbiRmb250LWhlYWRpbmc6ICdMZWFndWUgU3BhcnRhbicsIHNhbnMtc2VyaWY7IC8vLCBIZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuJGZvbnQtcHJpbWFyeTogJ3BvcHBpbnMnLCBzYW5zLXNlcmlmOyAvLywgSGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LXNlY29uZGFyeTogYXJpYWwsIGN1cnNpdmU7XG5cbjpyb290IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG5cblxuLmJnLWxpZ2h0IGgxLFxuLmJnLWxpZ2h0IGgyLFxuLmJnLWxpZ2h0IGgzLFxuLmJnLWxpZ2h0IGg0LFxuLmJnLWxpZ2h0IHAgeyBcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idC01IHsgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7IH1cbi5iYi01IHsgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7IH1cblxuLmJrLWRlZXAgeyBcbiAgLmJ0biB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6ICNmZmY7IFxuICB9XG59XG5cbiNuYXYtcG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogOTk5ODtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdi1vcGVuIHsgXG4gICNuYXYtcG9wb3ZlciB7IFxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59IiwiXG5cbkBtaXhpbiBtcSgkd2lkdGgsICR0eXBlOiBtaW4pIHtcbiAgICBAaWYgbWFwX2hhc19rZXkoJGJyZWFrcG9pbnRzLCAkd2lkdGgpIHtcbiAgICAgICAgJHdpZHRoOiBtYXBfZ2V0KCRicmVha3BvaW50cywgJHdpZHRoKTtcblxuICAgICAgICBAaWYgJHR5cGUgPT1tYXgge1xuICAgICAgICAgICAgJHdpZHRoOiAkd2lkdGggLSAxcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgjeyR0eXBlfS13aWR0aDogJHdpZHRoKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmICR0eXBlID09bWF4IHtcbiAgICAgICAgICAgICR3aWR0aDogJHdpZHRoIC0gMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoI3skdHlwZX0td2lkdGg6ICR3aWR0aCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLypcbiAgICBDU1MgVHJ1Y2F0ZVxuKi9cbkBtaXhpbiB0cnVuY2F0ZSgkdHJ1bmNhdGlvbi1ib3VuZGFyeSkge1xuICAgIG1heC13aWR0aDogJHRydW5jYXRpb24tYm91bmRhcnk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG5cbi8qXG4gICAgQXNwZWN0IFJhdGlvXG4qL1xuXG5AbWl4aW4gcmF0aW8oJHgsICR5LCAkcHNldWRvOiBmYWxzZSkge1xuICAgICRwYWRkaW5nOiB1bnF1b3RlKCgkeSAvICR4ICkgKiAxMDAgKyAnJScpO1xuICAgIFxuICAgIEBpZiAkcHNldWRvIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCRwb3M6IHJlbGF0aXZlKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBlbHNlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICAgIH1cbn1cblxuXG5cbi8qXG4gICBBYnNvbHV0ZSBwb3NpdGlvblxuKi9cbkBtaXhpbiBhYnMtcG9zaXRpb24gKCR0b3AsICRyaWdodCwgJGJvdHRvbSwgJGxlZnQpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkdG9wO1xuICAgIHJpZ2h0OiAkcmlnaHQ7XG4gICAgYm90dG9tOiAkYm90dG9tO1xuICAgIGxlZnQ6ICRsZWZ0O1xufVxuXG5cbkBtaXhpbiBzaG93KCRicmVha3BvaW50KXtcbiAgICBAaW5jbHVkZSBtcSgkYnJlYWtwb2ludCwgbWF4KXtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1peGluIGhpZGUoJGJyZWFrcG9pbnQpe1xuICAgIEBpbmNsdWRlIG1xKCRicmVha3BvaW50KXtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCIvKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG5cdHRvdWNoLWFjdGlvbjogcGFuLXk7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0Ji5kcmFnZ2luZyB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGN1cnNvcjogaGFuZDtcblx0fVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcblx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHRjbGVhcjogYm90aDtcblx0fVxuXG5cdC5zbGljay1sb2FkaW5nICYge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxufVxuLnNsaWNrLXNsaWRlIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMXB4O1xuXHRbZGlyPVwicnRsXCJdICYge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXHRpbWcge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdCYuc2xpY2stbG9hZGluZyBpbWcge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRkaXNwbGF5OiBub25lO1xuXG5cdCYuZHJhZ2dpbmcgaW1nIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXG5cdC5zbGljay1pbml0aWFsaXplZCAmIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdC5zbGljay1sb2FkaW5nICYge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdC5zbGljay12ZXJ0aWNhbCAmIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uY2Fyb3VzZWwtYXNzaWdubWVudHMgeyBcblx0LnNsaWNrLW5leHQsIC5zbGljay1wcmV2IHsgXG5cdFx0d2lkdGg6IDQ1cHg7XG5cdFx0aGVpZ2h0OiA0NXB4O1xuXHRcdHRvcDogLTYwcHg7XG5cdH1cblx0LnNsaWNrLW5leHQgIHsgXG5cdFx0cmlnaHQ6IDBweDsgXG5cdFx0bGVmdDogYXV0bztcblx0fVxuXHQuc2xpY2stcHJldiB7IFxuXHRcdHJpZ2h0OiA1MHB4O1xuXHRcdGxlZnQ6IGF1dG87XG5cdH1cblx0LmZvbnQtYm9sZCB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblx0bGkgeyBcblx0XHRwYWRkaW5nOiAycmVtO1xuXHRcdGJvcmRlci1yYWRpdXM6IDVweDtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG5cdFx0c3ZnIHsgXG5cdFx0XHRoZWlnaHQ6IDE1cHg7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdHBhdGggeyBcblx0XHRcdFx0ZmlsbDogJGNvbG9yLWhpZ2hsaWdodDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qYW5pbWF0aW9ucyovXG5cbi8qKioqKioqKioqKioqKioqKipcbiogQm91bmNlIGluIHJpZ2h0ICpcbioqKioqKioqKioqKioqKioqKiovXG5cblxuLmFuaW1hdGVkIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzOyBcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzOyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxufSBcbi5zbG93e1xuICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS41czsgXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzOyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxufVxuLnNsb3dlcntcbiAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzOyBcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDJzOyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IFxufVxuLnNsb3dlc3R7XG4gICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAzczsgXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzczsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyBcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyBcbn1cblxuLyogQWRkZWQgYnkgQW5keSBNZWV0YW4gKi9cbi5kZWxheS0yNTAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjAuMjVzO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OjAuMjVzO1xuICAgIC1vLWFuaW1hdGlvbi1kZWxheTowLjI1cztcbiAgICBhbmltYXRpb24tZGVsYXk6MC4yNXM7XG59XG4uZGVsYXktNTAwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTowLjVzO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OjAuNXM7XG4gICAgLW8tYW5pbWF0aW9uLWRlbGF5OjAuNXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjAuNXM7XG59XG4uZGVsYXktNzUwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTowLjc1cztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheTowLjc1cztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6MC43NXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjAuNzVzO1xufVxuLmRlbGF5LTEwMDAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjEuMHM7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6MS4wcztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6MS4wcztcbiAgICBhbmltYXRpb24tZGVsYXk6MS4wcztcbn1cbi5kZWxheS0xMjUwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheToxLjI1cztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheToxLjI1cztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6MS4yNXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjEuMjVzO1xufVxuLmRlbGF5LTE1MDAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjEuNXM7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6MS41cztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6MS41cztcbiAgICBhbmltYXRpb24tZGVsYXk6MS41cztcbn1cbi5kZWxheS0xNzUwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheToxLjc1cztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheToxLjc1cztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6MS43NXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjEuNzVzO1xufVxuLmRlbGF5LTIwMDAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjIuMHM7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6Mi4wcztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6Mi4wcztcbiAgICBhbmltYXRpb24tZGVsYXk6Mi4wcztcbn1cbi5kZWxheS0yNTAwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheToyLjVzO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OjIuNXM7XG4gICAgLW8tYW5pbWF0aW9uLWRlbGF5OjIuNXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjIuNXM7XG59XG4uZGVsYXktMjAwMCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6Mi4wcztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheToyLjBzO1xuICAgIC1vLWFuaW1hdGlvbi1kZWxheToyLjBzO1xuICAgIGFuaW1hdGlvbi1kZWxheToyLjBzO1xufVxuLmRlbGF5LTI1MDAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjIuNXM7XG4gICAgLW1vei1hbmltYXRpb24tZGVsYXk6Mi41cztcbiAgICAtby1hbmltYXRpb24tZGVsYXk6Mi41cztcbiAgICBhbmltYXRpb24tZGVsYXk6Mi41cztcbn1cbi5kZWxheS0zMDAwIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTozLjBzO1xuICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OjMuMHM7XG4gICAgLW8tYW5pbWF0aW9uLWRlbGF5OjMuMHM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OjMuMHM7XG59XG4uZGVsYXktMzUwMCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6My41cztcbiAgICAtbW96LWFuaW1hdGlvbi1kZWxheTozLjVzO1xuICAgIC1vLWFuaW1hdGlvbi1kZWxheTozLjVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTozLjVzO1xufVxuXG4uYm91bmNlSW5SaWdodCwgLmJvdW5jZUluTGVmdCwgLmJvdW5jZUluVXAsIC5ib3VuY2VJbkRvd257XG4gICAgb3BhY2l0eTowO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTsgXG59XG4uZmFkZUluUmlnaHQsIC5mYWRlSW5MZWZ0LCAuZmFkZUluVXAsIC5mYWRlSW5Eb3due1xuICAgIG9wYWNpdHk6MDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7IFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7IFxufVxuXG4uZmxpcEluWCwgLmZsaXBJblksIC5yb3RhdGVJbiwgLnJvdGF0ZUluVXBMZWZ0LCAucm90YXRlSW5VcFJpZ2h0LCAucm90YXRlSW5Eb3duTGVmdCwgLnJvdGF0ZURvd25VcFJpZ2h0LCAucm9sbElue1xuICAgIG9wYWNpdHk6MDtcbn1cblxuLmxpZ2h0U3BlZWRJblJpZ2h0LCAubGlnaHRTcGVlZEluTGVmdHtcbiAgICBvcGFjaXR5OjA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpOyBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpOyBcbn1cblxuLyoqKioqKioqKioqXG4qIGJvdW5jZUluICpcbioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjMpOyBcbiAgICB9IFxuXG4gICAgNTAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IFxuICAgIH0gXG5cbiAgICA3MCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC45KTsgXG4gICAgfSBcblxuICAgIDEwMCUgeyBcbiAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgXG4gICAgfSBcbn0gXG5cbkBrZXlmcmFtZXMgYm91bmNlSW4geyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguMyk7IFxuICAgIH0gXG5cbiAgICA1MCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IFxuICAgIH0gXG5cbiAgICA3MCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguOSk7IFxuICAgIH0gXG5cbiAgICAxMDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IFxuICAgIH0gXG59IFxuXG4uYm91bmNlSW4uZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluOyBcbn1cblxuLyoqKioqKioqKioqKioqKipcbiogYm91bmNlSW5SaWdodCAqXG4qKioqKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpOyBcbiAgICB9IFxuICAgIDYwJSB7IFxuICAgICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpOyBcbiAgICB9IFxuICAgIDgwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG59IFxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7IFxuICAgIH0gXG4gICAgNjAlIHsgXG4gICAgICAgIFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpOyBcbiAgICB9IFxuICAgIDgwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG5cblxuLmJvdW5jZUluUmlnaHQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0OyBcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDsgXG59XG5cbi8qKioqKioqKioqKioqKioqKipcbiogQm91bmNlIGluIGxlZnQgKlxuKioqKioqKioqKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwMHB4KTsgXG4gICAgfSBcbiAgICA2MCUgeyBcbiAgICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7IFxuICAgIH0gXG4gICAgODAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgIFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG5cbkBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwMHB4KTsgXG4gICAgfSBcbiAgICA2MCUgeyBcbiAgICAgICBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpOyBcbiAgICB9IFxuICAgIDgwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG5cbi5ib3VuY2VJbkxlZnQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7IFxufVxuXG4vKioqKioqKioqKioqKioqKioqXG4qIEJvdW5jZSBpbiB1cCAqXG4qKioqKioqKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5VcCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpOyBcbiAgICB9IFxuICAgIDYwJSB7IFxuICAgICAgIFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7IFxuICAgIH0gXG4gICAgODAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuQGtleWZyYW1lcyBib3VuY2VJblVwIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpOyBcbiAgICB9IFxuICAgIDYwJSB7IFxuICAgICAgIFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpOyBcbiAgICB9IFxuICAgIDgwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuLmJvdW5jZUluVXAuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwOyBcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDsgXG59XG5cblxuLyoqKioqKioqKioqKioqKioqKlxuKiBCb3VuY2UgaW4gZG93biAqXG4qKioqKioqKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpOyBcbiAgICB9IFxuICAgIDYwJSB7IFxuICAgICAgIFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTsgXG4gICAgfSBcbiAgICA4MCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24geyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpOyBcbiAgICB9IFxuICAgIDYwJSB7IFxuICAgICAgIFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7IFxuICAgIH0gXG4gICAgODAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuLmJvdW5jZUluRG93bi5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjsgXG59XG5cblxuLyoqKioqKioqKipcbiogRmFkZSBJbiAqXG4qKioqKioqKioqLyBcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4geyBcbiAgICAwJSB7b3BhY2l0eTogMDt9IFxuICAgIDEwMCUge29wYWNpdHk6IDE7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7fSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7IFxuICAgIDAlIHtvcGFjaXR5OiAwO30gXG4gICAgMTAwJSB7b3BhY2l0eTogMTtcbiAgICAgICAgZGlzcGxheTpibG9jazt9IFxufVxuLmZhZGVJbntcbiAgICBvcGFjaXR5OjA7XG59XG4uZmFkZUluLmdvIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluOyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluOyBcbn1cblxuLyoqKioqKioqKipcbiogR3JvdyBpbiAqXG4qKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGdyb3dJbiB7IFxuICAgIDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjIpOyBcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH0gXG4gICAgNTAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyBcbiAgICAgICAgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgXG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZ3Jvd0luIHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpOyBcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH0gXG4gICAgNTAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgXG4gICAgICAgIFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyBcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH0gXG59IFxuLmdyb3dJbiB7IFxuXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICAgIG9wYWNpdHk6MDtcbn1cbi5ncm93SW4uZ297XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZ3Jvd0luOyBcbiAgICBhbmltYXRpb24tbmFtZTogZ3Jvd0luOyBcbn1cblxuLyoqKioqKioqXG4qIFNoYWtlICpcbioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHsgXG4gICAgMCUsIDEwMCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO30gXG4gICAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTt9IFxuICAgIDIwJSwgNDAlLCA2MCUsIDgwJSB7LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7fSBcbn0gXG5Aa2V5ZnJhbWVzIHNoYWtlIHsgXG4gICAgMCUsIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTt9IFxuICAgIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO30gXG4gICAgMjAlLCA0MCUsIDYwJSwgODAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7fSBcbn0gXG4uc2hha2UuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlOyBcbn1cblxuLyoqKioqKioqXG4qIFNoYWtlVXAgKlxuKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2hha2VVcCB7IFxuICAgIDAlLCAxMDAlIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTt9IFxuICAgIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7fSBcbiAgICAyMCUsIDQwJSwgNjAlLCA4MCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO30gXG59IFxuQGtleWZyYW1lcyBzaGFrZVVwIHsgXG4gICAgMCUsIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTt9IFxuICAgIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO30gXG4gICAgMjAlLCA0MCUsIDYwJSwgODAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7fSBcbn0gXG4uc2hha2VVcC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNoYWtlVXA7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBzaGFrZVVwOyBcbn1cblxuLyoqKioqKioqKioqKipcbiogRmFkZUluTGVmdCAqXG4qKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAwcHgpOyBcbiAgICB9IFxuICAgIDUwJXtcbiAgICAgICBvcGFjaXR5OiAwLjM7IFxuICAgIH1cbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MDBweCk7IFxuICAgIH0gXG4gICAgNTAle1xuICAgICAgIG9wYWNpdHk6IDAuMzsgXG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG4uZmFkZUluTGVmdHsgXG4gICAgb3BhY2l0eTogMDsgXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwMHB4KTsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MDBweCk7XG59XG4uZmFkZUluTGVmdC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0OyBcbn1cblxuXG4vKioqKioqKioqKioqKlxuKiBGYWRlSW5SaWdodCAqXG4qKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDAwcHgpOyBcbiAgICB9IFxuICAgIDUwJXtcbiAgICAgICBvcGFjaXR5OiAwLjM7IFxuICAgIH1cbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MDBweCk7IFxuICAgIH0gXG4gICAgNTAle1xuICAgICAgIG9wYWNpdHk6IDAuMzsgXG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbn0gXG4uZmFkZUluUmlnaHR7IFxuICAgIG9wYWNpdHk6IDA7IFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwMHB4KTtcbn1cbi5mYWRlSW5SaWdodC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0OyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7IFxufVxuXG4vKioqKioqKioqKioqKlxuKiBGYWRlSW5VcCAqXG4qKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpOyBcbiAgICB9IFxuICAgIDUwJXtcbiAgICAgICBvcGFjaXR5OiAwLjM7IFxuICAgIH1cbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7IFxuICAgIH0gXG4gICAgNTAle1xuICAgICAgIG9wYWNpdHk6IDAuMzsgXG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgfSBcbn0gXG4uZmFkZUluVXB7IFxuICAgIG9wYWNpdHk6IDA7IFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbn1cbi5mYWRlSW5VcC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwOyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7IFxufVxuXG4vKioqKioqKioqKioqKlxuKiBGYWRlSW5Eb3duICpcbioqKioqKioqKioqKiovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MDBweCk7IFxuICAgIH0gXG4gICAgNTAle1xuICAgICAgIG9wYWNpdHk6IDAuMzsgXG4gICAgfVxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmFkZUluRG93biB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwMHB4KTsgXG4gICAgfSBcbiAgICA1MCV7XG4gICAgICAgb3BhY2l0eTogMC4zOyBcbiAgICB9XG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcbi5mYWRlSW5Eb3dueyBcbiAgICBvcGFjaXR5OiAwOyBcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDAwcHgpOyBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwMHB4KTtcbn1cbi5mYWRlSW5Eb3duLmdvIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247IFxufVxuXG4vKioqKioqKioqKioqKioqKipcbiogcm90YXRlSW4gKlxuKioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4geyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0yMDBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm90YXRlSW4geyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbn0gXG4ucm90YXRlSW4uZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluOyBcbn1cblxuLyoqKioqKioqKioqKioqKioqXG4qIHJvdGF0ZUluVXBMZWZ0ICpcbioqKioqKioqKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbn0gXG4ucm90YXRlSW5VcExlZnQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0OyBcbn1cblxuLyoqKioqKioqKioqKioqKioqKipcbiogcm90YXRlSW5Eb3duTGVmdCAqXG4qKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207IFxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG59IFxuLnJvdGF0ZUluRG93bkxlZnQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0OyBcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDsgXG59XG5cbi8qKioqKioqKioqKioqKioqKipcbiogcm90YXRlSW5VcFJpZ2h0ICpcbioqKioqKioqKioqKioqKioqKiovXG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQgeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207IFxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG59IFxuLnJvdGF0ZUluVXBSaWdodC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDsgXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKlxuKiByb3RhdGVJbkRvd25SaWdodCAqXG4qKioqKioqKioqKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207IFxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbi5yb3RhdGVJbkRvd25SaWdodC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0OyBcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7IFxufVxuXG4vKioqKioqKioqXG4qIHJvbGxJbiAqXG4qKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHsgXG4gICAgMCUgeyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpOyB9IFxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTsgfSBcbn0gXG5Aa2V5ZnJhbWVzIHJvbGxJbiB7IFxuICAgIDAlIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSByb3RhdGUoLTEyMGRlZyk7IH0gXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTsgfSBcbn0gXG4ucm9sbEluLmdvIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluOyBcbiAgICBhbmltYXRpb24tbmFtZTogcm9sbEluOyBcbn1cblxuLyoqKioqKioqKlxuKiB3aWdnbGUgKlxuKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHdpZ2dsZSB7IFxuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDlkZWcpOyB9IFxuICAgIDEwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtOGRlZyk7IH0gXG4gICAgMjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDdkZWcpOyB9IFxuICAgIDMwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNmRlZyk7IH0gXG4gICAgNDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDVkZWcpOyB9IFxuICAgIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNGRlZyk7IH0gXG4gICAgNjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDNkZWcpOyB9IFxuICAgIDcwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMmRlZyk7IH0gXG4gICAgODAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDFkZWcpOyB9IFxuICAgIDkwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwZGVnKTsgfSBcbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDBkZWcpOyB9IFxufSBcbkBrZXlmcmFtZXMgd2lnZ2xlIHsgXG4gICAgMCUgeyB0cmFuc2Zvcm06IHNrZXdYKDlkZWcpOyB9IFxuICAgIDEwJSB7IHRyYW5zZm9ybTogc2tld1goLThkZWcpOyB9IFxuICAgIDIwJSB7IHRyYW5zZm9ybTogc2tld1goN2RlZyk7IH0gXG4gICAgMzAlIHsgdHJhbnNmb3JtOiBza2V3WCgtNmRlZyk7IH0gXG4gICAgNDAlIHsgdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTsgfSBcbiAgICA1MCUgeyB0cmFuc2Zvcm06IHNrZXdYKC00ZGVnKTsgfSBcbiAgICA2MCUgeyB0cmFuc2Zvcm06IHNrZXdYKDNkZWcpOyB9IFxuICAgIDcwJSB7IHRyYW5zZm9ybTogc2tld1goLTJkZWcpOyB9IFxuICAgIDgwJSB7IHRyYW5zZm9ybTogc2tld1goMWRlZyk7IH0gXG4gICAgOTAlIHsgdHJhbnNmb3JtOiBza2V3WCgwZGVnKTsgfSBcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBza2V3WCgwZGVnKTsgfSBcbn0gXG4ud2lnZ2xlLmdvIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd2lnZ2xlOyBcbiAgICBhbmltYXRpb24tbmFtZTogd2lnZ2xlOyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxufSBcblxuLyoqKioqKioqXG4qIHN3aW5nICpcbioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHsgXG4gICAgMjAlLCA0MCUsIDYwJSwgODAlLCAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyOyB9IFxuICAgIDIwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpOyB9IFxuICAgIDQwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsgfSBcbiAgICA2MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDVkZWcpOyB9IFxuICAgIDgwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9IFxuICAgIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9IFxufSBcbkBrZXlmcmFtZXMgc3dpbmcgeyBcbiAgICAyMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7IH0gXG4gICAgNDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsgfSBcbiAgICA2MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfSBcbiAgICA4MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7IH0gXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9IFxufSBcbi5zd2luZy5nbyB7IFxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjsgXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBzd2luZzsgXG59XG5cbi8qKioqKioqXG4qIHRhZGEgKlxuKioqKioqKiovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHsgXG4gICAgMCUgey13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTt9IFxuICAgIDEwJSwgMjAlIHstd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO30gXG4gICAgMzAlLCA1MCUsIDcwJSwgOTAlIHstd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7fSBcbiAgICA0MCUsIDYwJSwgODAlIHstd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO30gXG4gICAgMTAwJSB7LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTt9IFxufSBcbkBrZXlmcmFtZXMgdGFkYSB7IFxuICAgIDAlIHt0cmFuc2Zvcm06IHNjYWxlKDEpO30gXG4gICAgMTAlLCAyMCUge3RyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO30gXG4gICAgMzAlLCA1MCUsIDcwJSwgOTAlIHt0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO30gXG4gICAgNDAlLCA2MCUsIDgwJSB7dHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7fSBcbiAgICAxMDAlIHt0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTt9IFxufSBcbi50YWRhLmdvIHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7IFxufVxuXG4vKioqKioqKioqXG4qIHdvYmJsZSAqXG4qKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29iYmxlIHsgXG4gIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9IFxuICAxNSUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoLTVkZWcpOyB9IFxuICAzMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTsgfSBcbiAgNDUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSkgcm90YXRlKC0zZGVnKTsgfSBcbiAgNjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKSByb3RhdGUoMmRlZyk7IH0gXG4gIDc1JSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTsgfSBcbiAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsgfSBcbn0gXG5Aa2V5ZnJhbWVzIHdvYmJsZSB7IFxuICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH0gXG4gIDE1JSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoLTVkZWcpOyB9IFxuICAzMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKSByb3RhdGUoM2RlZyk7IH0gXG4gIDQ1JSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKSByb3RhdGUoLTNkZWcpOyB9IFxuICA2MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKSByb3RhdGUoMmRlZyk7IH0gXG4gIDc1JSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNSUpIHJvdGF0ZSgtMWRlZyk7IH0gXG4gIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9IFxufSBcbi53b2JibGUuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiB3b2JibGU7IFxufVxuXG4vKioqKioqKipcbiogcHVsc2UgKlxuKioqKioqKioqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2UgeyBcbiAgICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSBcbiAgICA1MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfSBcbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOyB9IFxufSBcbkBrZXlmcmFtZXMgcHVsc2UgeyBcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gXG4gICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9IFxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IFxufSBcbi5wdWxzZS5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlOyBcbiAgICBhbmltYXRpb24tbmFtZTogcHVsc2U7IFxufVxuXG4vKioqKioqKioqKioqKioqXG4qIGxpZ2h0U3BlZWRJblJpZ2h0ICpcbioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluUmlnaHQgeyBcbiAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTsgb3BhY2l0eTogMDsgfSBcbiAgICA2MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgODAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKC0xNWRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTsgb3BhY2l0eTogMTsgfSBcbn0gXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJblJpZ2h0IHsgXG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTsgb3BhY2l0eTogMDsgfSBcbiAgICA2MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwJSkgc2tld1goMzBkZWcpOyBvcGFjaXR5OiAxOyB9IFxuICAgIDgwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTsgb3BhY2l0eTogMTsgfSBcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTsgb3BhY2l0eTogMTsgfSBcbn0gXG4ubGlnaHRTcGVlZEluUmlnaHQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW5SaWdodDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJblJpZ2h0OyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyBcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgXG59IFxuXG4vKioqKioqKioqKioqKioqXG4qIGxpZ2h0U3BlZWRJbkxlZnQgKlxuKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0IHsgXG4gICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSBza2V3WCgzMGRlZyk7IG9wYWNpdHk6IDA7IH0gXG4gICAgNjAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKSBza2V3WCgtMzBkZWcpOyBvcGFjaXR5OiAxOyB9IFxuICAgIDgwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgxNWRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTsgb3BhY2l0eTogMTsgfSBcbn0gXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbkxlZnQgeyBcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgc2tld1goMzBkZWcpOyBvcGFjaXR5OiAwOyB9IFxuICAgIDYwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHNrZXdYKC0zMGRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgODAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgxNWRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7IG9wYWNpdHk6IDE7IH0gXG59IFxuLmxpZ2h0U3BlZWRJbkxlZnQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW5MZWZ0OyBcbiAgICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluTGVmdDsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IFxufSBcblxuXG4vKioqKioqKlxuKiBGbGlwICpcbioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7IFxuICAgIDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwKTsgXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IFxuICAgIH0gXG4gICAgNDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxNzBkZWcpOyBcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgXG4gICAgfSBcbiAgICA1MCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE5MGRlZykgc2NhbGUoMSk7IFxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxuICAgIH0gXG4gICAgODAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgzNjBkZWcpIHNjYWxlKC45NSk7IFxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlKDEpOyBcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyBcbiAgICB9IFxufVxuQGtleWZyYW1lcyBmbGlwIHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwKTsgXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyBcbiAgICB9IFxuICAgIDQwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE3MGRlZyk7IFxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgXG4gICAgfSBcbiAgICA1MCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxOTBkZWcpIHNjYWxlKDEpOyBcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgXG4gICAgfSBcbiAgICA4MCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgzNjBkZWcpIHNjYWxlKC45NSk7IFxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUoMSk7IFxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyBcbiAgICB9IFxufSBcbi5mbGlwLmdvIHsgXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXA7IFxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXA7IFxufVxuXG4vKioqKioqKioqKlxuKiBmbGlwSW5YICpcbioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWCB7IFxuICAgIDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDQwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTsgXG4gICAgfSBcbiAgICA3MCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG59IFxuQGtleWZyYW1lcyBmbGlwSW5YIHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxuICAgIDQwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0xMGRlZyk7IFxuICAgIH0gXG4gICAgNzAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG59IFxuLmZsaXBJblguZ28geyBcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWDsgXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OyBcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWDsgXG59XG5cbi8qKioqKioqKioqXG4qIGZsaXBJblkgKlxuKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkgeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbiAgICA0MCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7IFxuICAgIH0gXG4gICAgNzAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmxpcEluWSB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbiAgICA0MCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTBkZWcpOyBcbiAgICB9IFxuICAgIDcwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxufSBcbi5mbGlwSW5ZLmdvIHsgXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7IFxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7IFxufVxuXG4vKioqKioqKioqKioqKioqKipcbiogT3V0IGFuaW1hdGlvbnMgKlxuKioqKioqKioqKioqKioqKiovXG5cblxuLyoqKioqKioqKioqKlxuKiBib3VuY2VPdXQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXQgeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7IFxuICAgIH0gXG4gICAgMjUlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguOTUpOyBcbiAgICB9IFxuICAgIDUwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zKTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dCB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IFxuICAgIH0gXG4gICAgMjUlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KTsgXG4gICAgfSBcbiAgICA1MCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4zKTsgXG4gICAgfSBcbn0gXG4uYm91bmNlT3V0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDsgXG59XG5cbi8qKioqKioqKioqKipcbiogYm91bmNlT3V0VXAgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7IFxuICAgIDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxuICAgIDIwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7IFxuICAgIH0gXG59IFxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgfSBcbiAgICAyMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7IFxuICAgIH0gXG59IFxuLmJvdW5jZU91dFVwLmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwOyBcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7IFxufVxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dERvd24gKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgIH0gXG4gICAgMjAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24geyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgIH0gXG4gICAgMjAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpOyBcbiAgICB9IFxufSBcbi5ib3VuY2VPdXREb3duLmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOyBcbn1cblxuXG4vKioqKioqKioqKioqXG4qIGJvdW5jZU91dExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG4gICAgMjAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG4gICAgMjAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpOyBcbiAgICB9IFxufSBcbi5ib3VuY2VPdXRMZWZ0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0OyBcbn1cblxuLyoqKioqKioqKioqKlxuKiBib3VuY2VPdXRSaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG4gICAgMjAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyBcbiAgICB9IFxuICAgIDIwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG4uYm91bmNlT3V0UmlnaHQuZ29Bd2F5IHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDsgXG59XG5cbi8qKioqKioqKioqKipcbiogZmFkZU91dCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQgeyBcbiAgICAwJSB7b3BhY2l0eTogMTt9IFxuICAgIDEwMCUge29wYWNpdHk6IDA7fSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVPdXQgeyBcbiAgICAwJSB7b3BhY2l0eTogMTt9IFxuICAgIDEwMCUge29wYWNpdHk6IDA7fSBcbn0gXG4uZmFkZU91dC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgXG59XG5cbi8qKioqKioqKioqKipcbiogZmFkZU91dFVwICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmFkZU91dFVwIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7IFxuICAgIH0gXG59IFxuLmZhZGVPdXRVcC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7IFxufVxuXG4vKioqKioqKioqKioqXG4qIGZhZGVPdXREb3duICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24geyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG4uZmFkZU91dERvd24uZ29Bd2F5IHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjsgXG59XG5cbi8qKioqKioqKioqKipcbiogZmFkZU91dExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7IFxuICAgIH0gXG59IFxuLmZhZGVPdXRMZWZ0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0OyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7IFxufVxuXG4vKioqKioqKioqKioqXG4qIGZhZGVPdXRSaWdodCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTsgXG4gICAgfSBcbn0gXG4uZmFkZU91dFJpZ2h0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDsgXG59XG4vKioqKioqKioqKioqXG4qIGZsaXBPdXRYICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFggeyBcbiAgICAwJSB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG59IFxuQGtleWZyYW1lcyBmbGlwT3V0WCB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxufSBcbi5mbGlwT3V0WC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDsgXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDsgXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OyBcbn1cblxuLyoqKioqKioqKioqKlxuKiBmbGlwT3V0WSAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRZIHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmxpcE91dFkgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbn0gXG4uZmxpcE91dFkgeyBcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7IFxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZOyBcbn1cblxuLyoqKioqKioqKioqKlxuKiBsaWdodFNwZWVkT3V0UmlnaHQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0UmlnaHQgeyBcbiAgICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTsgb3BhY2l0eTogMTsgfSBcbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTsgb3BhY2l0eTogMDsgfSBcbn0gXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRSaWdodCB7IFxuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTsgb3BhY2l0eTogMTsgfSBcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7IG9wYWNpdHk6IDA7IH0gXG59IFxuLmxpZ2h0U3BlZWRPdXRSaWdodC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0UmlnaHQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0UmlnaHQ7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgXG59IFxuXG5cbi8qKioqKioqKioqKipcbiogbGlnaHRTcGVlZE91dExlZnQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0TGVmdCB7IFxuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpOyBvcGFjaXR5OiAxOyB9IFxuICAgIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgc2tld1goMzBkZWcpOyBvcGFjaXR5OiAwOyB9IFxufSBcbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dExlZnQgeyBcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7IG9wYWNpdHk6IDE7IH0gXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgc2tld1goMzBkZWcpOyBvcGFjaXR5OiAwOyB9IFxufSBcbi5saWdodFNwZWVkT3V0TGVmdC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0TGVmdDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRMZWZ0OyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IFxuXG59IFxuXG4vKioqKioqKioqKioqXG4qIHJvdGF0ZU91dCAqXG4qKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7IFxuICAgIDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IFxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG59IFxuLnJvdGF0ZU91dC5nb0F3YXkgeyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7IFxufVxuXG5cbi8qKioqKioqKioqKipcbiogcm90YXRlT3V0VXBMZWZ0ICpcbioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG59IFxuQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQgeyBcbiAgICAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbn0gXG4ucm90YXRlT3V0VXBMZWZ0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDsgXG59XG5cbi8qKioqKioqKioqKipcbiogcm90YXRlT3V0RG93bkxlZnQgKlxuKioqKioqKioqKioqKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgfSBcbn0gXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207IFxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG59IFxuLnJvdGF0ZU91dERvd25MZWZ0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0OyBcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7IFxufVxuLyoqKioqKioqKioqKlxuKiByb3RhdGVPdXRVcFJpZ2h0ICpcbioqKioqKioqKioqKiovXG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7IFxuICAgIDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgIH0gXG59IFxuLnJvdGF0ZU91dFVwUmlnaHQuZ29Bd2F5IHsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7IFxufVxuXG4vKioqKioqKioqKioqXG4qIHJvbGxPdXQgKlxuKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgcm9sbE91dCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpOyBcbiAgICB9IFxufSBcbi5yb2xsT3V0LmdvQXdheSB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0OyBcbn1cbi8qKioqKioqKioqKioqKioqKlxuKiBTaG9ydCBBbmltYXRpb25zXG4qKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqXG4qIGZhZGVJblVwU2hvcnRcbioqKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcFNob3J0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuQGtleWZyYW1lcyBmYWRlSW5VcFNob3J0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgIH0gXG59IFxuLmZhZGVJblVwU2hvcnR7XG4gICAgb3BhY2l0eTogMDsgXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7IFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTsgXG59XG4uZmFkZUluVXBTaG9ydC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwU2hvcnQ7IFxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcFNob3J0OyBcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuKiBmYWRlSW5Eb3duU2hvcnRcbioqKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duU2hvcnQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyBcbiAgICB9IFxufSBcblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duU2hvcnQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IFxuICAgIH0gXG59IFxuLmZhZGVJbkRvd25TaG9ydHtcbiAgICBvcGFjaXR5OiAwOyBcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IFxufVxuLmZhZGVJbkRvd25TaG9ydC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25TaG9ydDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25TaG9ydDsgXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiogZmFkZUluUmlnaHRTaG9ydCBcbioqKioqKioqKioqKioqKioqKioqKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodFNob3J0IHsgXG4gICAgMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMDsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpOyBcbiAgICB9IFxuICAgIDEwMCUgeyBcbiAgICAgICAgb3BhY2l0eTogMTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyBcbiAgICB9IFxufSBcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRTaG9ydCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyBcbiAgICB9IFxufSBcbi5mYWRlSW5SaWdodFNob3J0IHsgXG4gICAgb3BhY2l0eTogMDsgXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7ICBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7IFxufVxuLmZhZGVJblJpZ2h0U2hvcnQuZ28geyBcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodFNob3J0OyBcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRTaG9ydDsgXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiogZmFkZUluTGVmdFNob3J0IFxuKioqKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnRTaG9ydCB7IFxuICAgIDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7IFxuICAgIH0gXG4gICAgMTAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAxOyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG59IFxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0U2hvcnQgeyBcbiAgICAwJSB7IFxuICAgICAgICBvcGFjaXR5OiAwOyBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTsgXG4gICAgfSBcbiAgICAxMDAlIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7IFxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IFxuICAgIH0gXG59IFxuLmZhZGVJbkxlZnRTaG9ydCB7IFxuICAgIG9wYWNpdHk6IDA7IFxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTsgIFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7IFxufVxuLmZhZGVJbkxlZnRTaG9ydC5nbyB7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRTaG9ydDsgXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRTaG9ydDsgXG59XG4iLCIqIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sLFxuYm9keSB7XG4gIC8vIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xufVxuXG51bCBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuaW1nLFxudmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuYSxcbmE6dmlzaXRlZCxcbmE6YWN0aXZlIHtcblxuICBjb2xvcjogY29sb3IoJ3ByaW1hcnknKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IFxuXG4gICYuYnRuIHsgY29sb3I6ICNmZmY7IH1cblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC8gXG4gICB2Mi4wIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5hcHBsZXQsXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmEsXG5hYmJyLFxuYWNyb255bSxcbmFkZHJlc3MsXG5iaWcsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuaW1nLFxuaW5zLFxua2JkLFxucSxcbnMsXG5zYW1wLFxuc21hbGwsXG5zdHJpa2UsXG5zdHJvbmcsXG5zdWIsXG5zdXAsXG50dCxcbnZhcixcbmIsXG51LFxuaSxcbmNlbnRlcixcbmRsLFxuZHQsXG5kZCxcbm9sLFxudWwsXG5saSxcbmZpZWxkc2V0LFxuZm9ybSxcbmxhYmVsLFxubGVnZW5kLFxudGFibGUsXG5jYXB0aW9uLFxudGJvZHksXG50Zm9vdCxcbnRoZWFkLFxudHIsXG50aCxcbnRkLFxuYXJ0aWNsZSxcbmFzaWRlLFxuY2FudmFzLFxuZGV0YWlscyxcbmVtYmVkLFxuZmlndXJlLFxuZmlnY2FwdGlvbixcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5vdXRwdXQsXG5ydWJ5LFxuc2VjdGlvbixcbnN1bW1hcnksXG50aW1lLFxubWFyayxcbmF1ZGlvLFxudmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5vbCxcbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmJsb2NrcXVvdGUsXG5xIHtcbiAgcXVvdGVzOiBub25lO1xufVxuYmxvY2txdW90ZTpiZWZvcmUsXG5ibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsXG5xOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG4iLCIud3JhcCB7XG4gIG1heC13aWR0aDogJHdyYXAtd2lkdGgtbGFyZ2U7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud3JhcC10aWdodCB7XG4gIG1heC13aWR0aDogJHdyYXAtd2lkdGgtc21hbGw7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWctYmxvY2sgeyBcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAzcHggc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cbnNlY3Rpb24sXG5mb290ZXIsXG4ucGFkZGluZyB7XG4gIHBhZGRpbmc6IDZyZW0gMnJlbTtcbn1cblxuLmhlYWRlci1wYWQge1xuICBwYWRkaW5nOiAycmVtIDFyZW07XG59XG5cbkBpbmNsdWRlIG1xKFwidGFibGV0XCIpIHtcblxuICBzZWN0aW9uLFxuICBmb290ZXIsXG4gIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA0cmVtIDR2dztcbiAgfVxuXG4gIC5oZWFkZXItcGFkIHtcbiAgICBwYWRkaW5nOiAycmVtIDR2dztcbiAgfVxufVxuXG5AaW5jbHVkZSBtcShcImRlc2t0b3BcIikge1xuICAuaGVhZGVyLXBhZCB7XG4gICAgcGFkZGluZzogMXJlbSA2dnc7XG4gIH1cblxuICBzZWN0aW9uLFxuICBmb290ZXIsXG4gIC5wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA0cmVtIDZ2dztcbiAgfVxufSIsIi50ZXN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xufVxuXG4ucmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm92ZXJmbG93LXZpc2libGUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2xpY2thYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG4ucy1zaG93IHtcbiAgQGluY2x1ZGUgc2hvdyhcInBoYWJsZXRcIik7XG59XG5cbi5tLXNob3d7XG4gIEBpbmNsdWRlIHNob3coXCJ0YWJsZXRcIik7XG59XG5cbi5sLXNob3d7XG4gIEBpbmNsdWRlIHNob3coXCJkZXNrdG9wXCIpO1xufVxuXG4ucy1oaWRlIHtcbiAgQGluY2x1ZGUgaGlkZShcInBoYWJsZXRcIik7XG59XG5cbi5tLWhpZGV7XG4gIEBpbmNsdWRlIGhpZGUoXCJ0YWJsZXQtd2lkZVwiKTtcbn1cblxuLmwtaGlkZXtcbiAgQGluY2x1ZGUgaGlkZShcImRlc2t0b3BcIik7XG59XG5cblxuXG4iLCIubS0wIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubS0xIHtcbiAgbWFyZ2luOiAxcmVtO1xufVxuLm0tMiB7XG4gIG1hcmdpbjogMnJlbTtcbn1cbi5tLTMge1xuICBtYXJnaW46IDNyZW07XG59XG4ubS00IHtcbiAgbWFyZ2luOiA0cmVtO1xufVxuLm0tNSB7XG4gIG1hcmdpbjogNXJlbTtcbn1cbi5tLTYge1xuICBtYXJnaW46IDhyZW07XG59XG4ubS03IHtcbiAgbWFyZ2luOiA3cmVtO1xufVxuLm0tOCB7XG4gIG1hcmdpbjogOHJlbTtcbn1cbi5tLTkge1xuICBtYXJnaW46IDlyZW07XG59XG4ubS0xMCB7XG4gIG1hcmdpbjogMTByZW07XG59XG5cbi5tdC0wIHtcbiAgbWFyZ2luLXRvcDogMHJlbTtcbn1cbi5tdC0xIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5tdC0yIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbi5tdC0zIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5tdC00IHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbn1cbi5tdC01IHtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbn1cbi5tdC02IHtcbiAgbWFyZ2luLXRvcDogNnJlbTtcbn1cbi5tdC03IHtcbiAgbWFyZ2luLXRvcDogN3JlbTtcbn1cbi5tdC04IHtcbiAgbWFyZ2luLXRvcDogOHJlbTtcbn1cbi5tdC05IHtcbiAgbWFyZ2luLXRvcDogOXJlbTtcbn1cbi5tdC0xMCB7XG4gIG1hcmdpbi10b3A6IDEwcmVtO1xufVxuLm1yLTAge1xuICBtYXJnaW4tcmlnaHQ6IDByZW07XG59XG4ubXItMSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5tci0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuLm1yLTMge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG59XG4ubXItNCB7XG4gIG1hcmdpbi1yaWdodDogNHJlbTtcbn1cbi5tci01IHtcbiAgbWFyZ2luLXJpZ2h0OiA1cmVtO1xufVxuLm1yLTYge1xuICBtYXJnaW4tcmlnaHQ6IDZyZW07XG59XG4ubXItNyB7XG4gIG1hcmdpbi1yaWdodDogN3JlbTtcbn1cbi5tci04IHtcbiAgbWFyZ2luLXJpZ2h0OiA4cmVtO1xufVxuLm1yLTkge1xuICBtYXJnaW4tcmlnaHQ6IDlyZW07XG59XG4ubXItMTAge1xuICBtYXJnaW4tcmlnaHQ6IDEwcmVtO1xufVxuXG4ubWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW07XG59XG4ubWItMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4ubWItMiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4ubWItMyB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG4ubWItNCB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG4ubWItNSB7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG4ubWItNiB7XG4gIG1hcmdpbi1ib3R0b206IDZyZW07XG59XG4ubWItNyB7XG4gIG1hcmdpbi1ib3R0b206IDdyZW07XG59XG4ubWItOCB7XG4gIG1hcmdpbi1ib3R0b206IDhyZW07XG59XG4ubWItOSB7XG4gIG1hcmdpbi1ib3R0b206IDlyZW07XG59XG4ubWItMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcbn1cblxuLm1sLTAge1xuICBtYXJnaW4tbGVmdDogMHJlbTtcbn1cbi5tbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWwtMiB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xufVxuLm1sLTMge1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbn1cbi5tbC00IHtcbiAgbWFyZ2luLWxlZnQ6IDRyZW07XG59XG4ubWwtNSB7XG4gIG1hcmdpbi1sZWZ0OiA1cmVtO1xufVxuLm1sLTYge1xuICBtYXJnaW4tbGVmdDogNnJlbTtcbn1cbi5tbC03IHtcbiAgbWFyZ2luLWxlZnQ6IDdyZW07XG59XG4ubWwtOCB7XG4gIG1hcmdpbi1sZWZ0OiA4cmVtO1xufVxuLm1sLTkge1xuICBtYXJnaW4tbGVmdDogOXJlbTtcbn1cbi5tbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHJlbTtcbn1cblxuLm15LTAge1xuICBtYXJnaW4tdG9wOiAwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbn1cbi5teS0xIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ubXktMiB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuLm15LTMge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cbi5teS00IHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG4ubXktNSB7XG4gIG1hcmdpbi10b3A6IDVyZW07XG4gIHBhZGRpbmctYm90dG9tOiA1cmVtO1xufVxuLm15LTYge1xuICBtYXJnaW4tdG9wOiA2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cbi5teS03IHtcbiAgbWFyZ2luLXRvcDogN3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDdyZW07XG59XG4ubXktOCB7XG4gIG1hcmdpbi10b3A6IDhyZW07XG4gIHBhZGRpbmctYm90dG9tOiA4cmVtO1xufVxuLm15LTkge1xuICBtYXJnaW4tdG9wOiA5cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogOXJlbTtcbn1cbi5teS0xMCB7XG4gIG1hcmdpbi10b3A6IDEwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTByZW07XG59XG4ubXgtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwcmVtO1xufVxuLm14LTEge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG4ubXgtMyB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuLm14LTQge1xuICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cbi5teC01IHtcbiAgbWFyZ2luLWxlZnQ6IDVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDVyZW07XG59XG4ubXgtNiB7XG4gIG1hcmdpbi1sZWZ0OiA2cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xufVxuLm14LTcge1xuICBtYXJnaW4tbGVmdDogN3JlbTtcbiAgcGFkZGluZy1yaWdodDogN3JlbTtcbn1cbi5teC04IHtcbiAgbWFyZ2luLWxlZnQ6IDhyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDhyZW07XG59XG4ubXgtOSB7XG4gIG1hcmdpbi1sZWZ0OiA5cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA5cmVtO1xufVxuLm14LTEwIHtcbiAgbWFyZ2luLWxlZnQ6MTByZW07XG4gIHBhZGRpbmctcmlnaHQ6MTByZW07XG59XG5cbi5tbC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ubXItYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5teS1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ubXgtYXV0byB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4ucC0wIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnAtMSB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG4ucC0yIHtcbiAgcGFkZGluZzogMnJlbTtcbn1cbi5wLTMge1xuICBwYWRkaW5nOiAzcmVtO1xufVxuLnAtNCB7XG4gIHBhZGRpbmc6IDRyZW07XG59XG4ucC01IHtcbiAgcGFkZGluZzogNXJlbTtcbn1cbi5wLTYge1xuICBwYWRkaW5nOiA2cmVtO1xufVxuLnAtNyB7XG4gIHBhZGRpbmc6IDdyZW07XG59XG4ucC04IHtcbiAgcGFkZGluZzogOHJlbTtcbn1cbi5wLTkge1xuICBwYWRkaW5nOiA5cmVtO1xufVxuLnAtMTAge1xuICBwYWRkaW5nOiAxMHJlbTtcbn1cblxuLnB0LTAge1xuICBwYWRkaW5nLXRvcDogMHJlbTtcbn1cbi5wdC0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG4ucHQtMiB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuLnB0LTMge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbn1cbi5wdC00IHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG59XG4ucHQtNSB7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuLnB0LTYge1xuICBwYWRkaW5nLXRvcDogNnJlbTtcbn1cbi5wdC03IHtcbiAgcGFkZGluZy10b3A6IDdyZW07XG59XG4ucHQtOCB7XG4gIHBhZGRpbmctdG9wOiA4cmVtO1xufVxuLnB0LTkge1xuICBwYWRkaW5nLXRvcDogOXJlbTtcbn1cbi5wdC0xMCB7XG4gIHBhZGRpbmctdG9wOiAxMHJlbTtcbn1cbi5wdC0xMiB7XG4gIHBhZGRpbmctdG9wOiAxMnJlbTtcbn1cblxuLnB0LTE0IHtcbiAgcGFkZGluZy10b3A6IDE0cmVtO1xufVxuXG4ucHItMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wci0xIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5wci0yIHtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5wci0zIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbn1cbi5wci00IHtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cbi5wci01IHtcbiAgcGFkZGluZy1yaWdodDogNXJlbTtcbn1cbi5wci02IHtcbiAgcGFkZGluZy1yaWdodDogNnJlbTtcbn1cbi5wci03IHtcbiAgcGFkZGluZy1yaWdodDogN3JlbTtcbn1cbi5wci04IHtcbiAgcGFkZGluZy1yaWdodDogOHJlbTtcbn1cbi5wci05IHtcbiAgcGFkZGluZy1yaWdodDogOXJlbTtcbn1cbi5wci0xMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcmVtO1xufVxuXG4ucGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwcmVtO1xufVxuLnBiLTEge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbi5wYi0yIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4ucGItMyB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xufVxuLnBiLTQge1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbn1cbi5wYi01IHtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG59XG4ucGItNiB7XG4gIHBhZGRpbmctYm90dG9tOiA2cmVtO1xufVxuLnBiLTcge1xuICBwYWRkaW5nLWJvdHRvbTogN3JlbTtcbn1cbi5wYi04IHtcbiAgcGFkZGluZy1ib3R0b206IDhyZW07XG59XG4ucGItOSB7XG4gIHBhZGRpbmctYm90dG9tOiA5cmVtO1xufVxuLnBiLTEwIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xufVxuLnBiLTE0IHtcbiAgcGFkZGluZy1ib3R0b206IDE0cmVtO1xufVxuXG4ucGwtMCB7XG4gIHBhZGRpbmctbGVmdDogMHJlbTtcbn1cbi5wbC0xIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuLnBsLTIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG4ucGwtMyB7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cbi5wbC00IHtcbiAgcGFkZGluZy1sZWZ0OiA0cmVtO1xufVxuLnBsLTUge1xuICBwYWRkaW5nLWxlZnQ6IDVyZW07XG59XG4ucGwtNiB7XG4gIHBhZGRpbmctbGVmdDogNnJlbTtcbn1cbi5wbC03IHtcbiAgcGFkZGluZy1sZWZ0OiA3cmVtO1xufVxuLnBsLTgge1xuICBwYWRkaW5nLWxlZnQ6IDhyZW07XG59XG4ucGwtOSB7XG4gIHBhZGRpbmctbGVmdDogOXJlbTtcbn1cbi5wbC0xMCB7XG4gIHBhZGRpbmctbGVmdDogMTByZW07XG59XG5cbi5wdC0wIHsgcGFkZGluZy10b3A6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbn1cbi5weS0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLnB5LTIge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4ucHktMyB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cbi5weS00IHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xufVxuLnB5LTUge1xuICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG59XG4ucHktNiB7XG4gIHBhZGRpbmctdG9wOiA2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cbi5weS03IHtcbiAgcGFkZGluZy10b3A6IDdyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3cmVtO1xufVxuLnB5LTgge1xuICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDhyZW07XG59XG4ucHktOSB7XG4gIHBhZGRpbmctdG9wOiA5cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogOXJlbTtcbn1cbi5weS0xMCB7XG4gIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xufVxuLnB4LTAge1xuICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gIHBhZGRpbmctcmlnaHQ6IDByZW07XG59XG4ucHgtMSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5weC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuLnB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XG59XG4ucHgtNCB7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cbi5weC01IHtcbiAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xufVxuLnB4LTYge1xuICBwYWRkaW5nLWxlZnQ6IDZyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDZyZW07XG59XG4ucHgtNyB7XG4gIHBhZGRpbmctbGVmdDogN3JlbTtcbiAgcGFkZGluZy1yaWdodDogN3JlbTtcbn1cbi5weC04IHtcbiAgcGFkZGluZy1sZWZ0OiA4cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA4cmVtO1xufVxuLnB4LTkge1xuICBwYWRkaW5nLWxlZnQ6IDlyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDlyZW07XG59XG4ucHgtMTAge1xuICBwYWRkaW5nLWxlZnQ6IDEwcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHJlbTtcbn1cblxuXG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsIG1heCl7XG4gIC5wdC0xNCB7IHBhZGRpbmctdG9wOiA0cmVtO31cbiAgLnBiLTE0IHsgcGFkZGluZy1ib3R0b206IDRyZW07fVxufVxuIFxuXG5cbiIsIi5oLWZ1bGwge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53LWhhbGYge1xuICB3aWR0aDogOTAlO1xufVxuXG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQnKXtcbiAgLnctNzV7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuICAudy05MHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG4gIC53LWhhbGYge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbn1cblxuXG5cbkBpbmNsdWRlIG1xKFwiZGVza3RvcFwiKXtcbiAgLnctNzV7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAudy1oYWxmIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIFxufVxuIiwiLypcbkZvbnQ6IFx0XHRSYXRjaFxuU3R5bGU6IFx0XHRCb2xkXG5VUkw6IFx0XHRodHRwczovL3lvdXdvcmtmb3J0aGVtLmNvbS9mb250L1QyOTIxMC9yYXRjaFxuRm91bmRyeTogXHRSb21hbiBNZWxpa2hvdlxuRm91bmRyeTogXHRodHRwczovL3lvdXdvcmtmb3J0aGVtLmNvbS9kZXNpZ25lci8xNDczL3JvbWFuLW1lbGlraG92XG5Db3B5cmlnaHQ6XHRSb21hbiBNZWxpa2hvdlxuVmVyc2lvbjogXHQxN1xuQ3JlYXRlZDpcdEp1bmUgMDksIDIwMjVcbkxpY2Vuc2U6IFx0aHR0cHM6Ly93d3cueW91d29ya2ZvcnRoZW0uY29tL2ZvbnQtbGljZW5zZSBcbkxpY2Vuc2U6IFx0VGhlIFdlYkZvbnQocykgbGlzdGVkIGluIHRoaXMgZG9jdW1lbnQgbXVzdCBmb2xsb3cgdGhlIFlvdVdvcmtGb3JUaGVtXG5cdFx0XHRXZWJGb250IGxpY2Vuc2UgcnVsZXMuIEFsbCBvdGhlciBwYXJ0aWVzIGFyZSBzdHJpY3RseSByZXN0cmljdGVkIFxuXHRcdFx0ZnJvbSB1c2luZyB0aGUgV2ViRm9udHMocykgbGlzdGVkIHdpdGhvdXQgYSBwdXJjaGFzZWQgbGljZW5zZS4gXG5cdFx0XHRBbGwgZGV0YWlscyBhYm92ZSBtdXN0IGFsd2F5cyByZW1haW4gdW5hbHRlcmVkIGFuZCB2aXNpYmxlIGluIHlvdXIgQ1NTLlxuKi9cblxuXG5cbiAiLCJodG1sIHtcbiAgZm9udC1zaXplOiA2Mi41JTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbn1cblxuLmxoLS0xIHsgXG4gIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtOyAgXG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYgeyBcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRpbmc7XG59XG5cbi50ZXh0LWhpZ2hsaWdodCB7IGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0OyB9XG5cbmgxIHsgbGV0dGVyLXNwYWNpbmc6IC0zcHg7IH1cblxuLnRleHQtNnhsIHsgZm9udC1zaXplOiA2LjVyZW07IH1cbi50ZXh0LTV4bCB7IGZvbnQtc2l6ZTogNnJlbTsgfVxuLnRleHQtNHhsIHsgZm9udC1zaXplOiA1cmVtOyB9XG5cbi50ZXh0LTZ4bCwgLnRleHQtNXhsLCAudGV4dC00eGwgeyBsaW5lLWhlaWdodDogMC45ZW07IGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5nOyB9XG5cbmgxLCBoMiwgaDMgeyBsZXR0ZXItc3BhY2luZzogLTFweDsgfVxuXG5oMSBlbSwgXG5oMiBlbSwgXG5oMyBlbSxcbmg0IGVtLFxuaDUgZW0sXG5oNiBlbSB7IGZvbnQtc3R5bGU6IG5vcm1hbDsgY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7IH1cblxuLmhyIHsgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7IH1cbmhyIHsgb3BhY2l0eTogMDsgfVxuXG4udGV4dC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWJvbGQgeyBmb250LXdlaWdodDogNzAwOyB9XG5cbi5saC0xIHsgbGluZS1oZWlnaHQ6IDFlbTsgfVxuXG4udGV4dC14cyB7IGZvbnQtc2l6ZTogJHRleHQteHM7IH1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xufVxuXG5wIHtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuaDYgIHsgXG4gIGJvcmRlci1ib3R0b206IDRweCBkb3R0ZWQgI2JiYjtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbn1cblxuaDEsXG4udGV4dC1oZWFke1xuICBmb250LXNpemU6IDZyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuXG5cbmgyLFxuLnRleHQtMnhsLFxuaDMsXG4udGV4dC14bCB7XG4gIGZvbnQtc2l6ZTogJHRleHQtbDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG5oNCxcbi50ZXh0LWwge1xuICBmb250LXNpemU6ICR0ZXh0LW1sO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG59XG5cbmg1LFxuLnRleHQtbWwsXG5oNixcbi50ZXh0LW4ge1xuICBmb250LXNpemU6ICR0ZXh0LW47XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG59XG5cblxuLnRleHQtcyB7XG4gIGZvbnQtc2l6ZTogJHRleHQtcztcbiAgbGluZS1oZWlnaHQ6IDEuNmVtO1xufVxuXG5AaW5jbHVkZSBtcSgncGhhYmxldCcpIHtcblxuICBoMSxcbiAgLnRleHQtaGVhZHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIH1cbiAgXG4gIGgyLFxuICAudGV4dC0yeGwsXG4gIGgzLFxuICAudGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAkdGV4dC14bDtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBtcSgndGFibGV0LXdpZGUnKSB7XG5cbiAgYm9keSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cblxuICBoMSxcbiAgLnRleHQtaGVhZCB7XG4gICAgbGluZS1oZWlnaHQ6IDAuOWVtO1xuICAgIGZvbnQtc2l6ZTogJHRleHQtaGVhZDtcbiAgfVxuXG4gIGgyLFxuICAudGV4dC0yeGwge1xuICAgIGZvbnQtc2l6ZTogJHRleHQtMnhsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgfVxuXG4gIGgzLFxuICAudGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAkdGV4dC14bDtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gIH1cblxuICBoNCxcbiAgLnRleHQtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDQuNXJlbTtcbiAgICBmb250LXNpemU6ICR0ZXh0LWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB9XG5cbiAgaDUsXG4gIC50ZXh0LW1sIHtcbiAgICBmb250LXNpemU6ICR0ZXh0LW1sO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgfVxuXG4gIGg2LFxuICAudGV4dC1uIHtcbiAgICBmb250LXNpemU6ICR0ZXh0LW47XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB9XG5cblxufSIsImEubGluayxcbi5saW5rIHtcbiAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZm9udC10aGluIHtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbn1cbi5mb250LWV4dHJhbGlnaHQge1xuICBmb250LXdlaWdodDogMjAwO1xufVxuLmZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuLmZvbnQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5mb250LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uZm9udC1zZW1pYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uZm9udC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5mb250LWV4dHJhYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4uZm9udC1ibGFjayB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5yb3cteGwsXG4ucm93LWwsXG4ucm93LW0sXG4ucm93LXMge1xuICAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogdW5zZXQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgbXEoXCJkZXNrdG9wLXdpZGVcIikge1xuICAucm93LXhsIHtcbiAgICAudGV4dC1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cbkBpbmNsdWRlIG1xKFwiZGVza3RvcFwiKSB7XG4gIC5yb3ctbCB7XG4gICAgLnRleHQtcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5AaW5jbHVkZSBtcShcInRhYmxldFwiKSB7XG4gIC5yb3ctbSB7XG4gICAgLnRleHQtcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5AaW5jbHVkZSBtcShcInBoYWJsZXRcIikge1xuICAucm93LXMge1xuICAgIC50ZXh0LXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLmJnLWltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogLTE7XG59XG4uZm91cnRocmVlIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi52aWRlb1dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMDtcbn1cbi52aWRlb1dyYXBwZXIgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4iLCIucm93LW0sXG4ucm93LXMsXG4ucm93LWwsXG4ucm93LXhsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5nYXAtMDI1IHsgZ2FwOiAwLjI1ZW07IH1cbi5nYXAtMDUgeyBnYXA6IDAuNWVtOyB9XG4uZ2FwLTEgeyBnYXA6IDFlbTsgfVxuLmdhcC0yIHsgZ2FwOiAyZW07IH1cbi5nYXAtMyB7IGdhcDogM2VtOyB9XG4uZ2FwLTQgeyBnYXA6IDRlbTsgfVxuLmdhcC02IHsgZ2FwOiA2ZW07IH1cbi5nYXAtOCB7IGdhcDogOGVtOyB9XG4uZ2FwLTEwIHsgZ2FwOiAxMGVtOyB9XG4uZ2FwLTEyIHsgZ2FwOiAxMmVtOyB9XG5cbi5mbGlwLWxheW91dCB7IFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5qdXN0aWZ5LXN0YXJ0IHsgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuXG4uanVzdGlmeS1lbmQgeyBcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLWVuZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuLnJvdywuZmxleHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWVuZCB7IFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uZmxleC1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uYWxpZ24tY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5qdXN0aWZ5LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uanVzdGlmeS1zYiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmZsZXgtY29sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZsZXgtMSB7XG4gIGZsZXg6IDE7XG59XG5cbi5mbGV4LTIge1xuICBmbGV4OiAyO1xufVxuXG4uZmxleC0zIHtcbiAgZmxleDogMztcbn1cblxuLmZsZXgtNCB7XG4gIGZsZXg6IDQ7XG59XG5cblxuQGluY2x1ZGUgbXEoXCJkZXNrdG9wLXdpZGVcIikge1xuICAucm93LXhsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi5yb3ctcmV2ZXJzZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG5cbn1cblxuQGluY2x1ZGUgbXEoXCJkZXNrdG9wXCIpIHtcbiAgLnJvdy1sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi5yb3ctcmV2ZXJzZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIG1xKFwidGFibGV0LXdpZGVcIikge1xuICAucm93LW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmLnJvdy1yZXZlcnNlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbXEoXCJwaGFibGV0XCIpIHtcbiAgLnJvdy1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi5yb3ctcmV2ZXJzZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG5cbn1cblxuXG5cblxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgbWF4KXtcblxuICAubW9iLWJsb2NrIHsgXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG5cbiAgXG4gIC5mbGV4IHsgXG4gICAgLmNvbCB7IFxuICAgICAgbWFyZ2luOiA0MHB4IDA7IFxuXG4gICAgfVxuICB9XG4gIC5jb2x1bW5zIHsgXG4gICAgcGFkZGluZzogNHJlbTtcbiAgICAgIC5mbGV4IHsgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50ZWFtLWdyaWQgLmZsZXggeyBcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgPiAqIHtcbiAgICAgICAgLnRlYW0tbGluayB7IG1heC1oZWlnaHQ6MTUwcHg7IG1heC13aWR0aDogMTUwcHg7IG1hcmdpbjogMCBhdXRvOyBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZsZXggPiAqIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxufSIsIi5ncmlkIHtcbiAgLy8gRmFsbGJhY2tcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4uZ3JpZC0yLWNvbCB7ICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyAgfVxuLmdyaWQtMy1jb2wgeyAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgIH1cbi5ncmlkLTQtY29sIHsgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7ICB9XG4uZ3JpZC01LWNvbCB7ICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpOyAgfVxuXG5cblxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgbWF4KXtcbiAgLmdyaWQtNS1jb2wgeyAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgIH1cbiAgLmdyaWQtMy1jb2wgeyAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgIH1cblxufVxuIFxuXG5AaW5jbHVkZSBtcSgncGhvbmUtd2lkZScsIG1heCl7XG4uZ3JpZC0zLWNvbCB7ICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyAgfVxuXG59IiwiQGluY2x1ZGUgbXEoXCJkZXNrdG9wXCIsIG1heCkge1xuICAucm93LWwge1xuICAgICY+LmNvbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICYudGV4dC1yaWdodCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYuZG91YmxlLWd1dHRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICB9XG5cbiAgICAgICYuZ3V0dGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIH1cblxuICAgICAgJi5oYWxmLWd1dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQGluY2x1ZGUgbXEoXCJ0YWJsZXQtd2lkZVwiLCBtYXgpIHtcbiAgLnJvdy1tIHtcbiAgICAmPi5jb2wge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAmLnRleHQtcmlnaHQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLmRvdWJsZS1ndXR0ZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgfVxuXG4gICAgICAmLmd1dHRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB9XG5cbiAgICAgICYuaGFsZi1ndXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtcShcInBoYWJsZXRcIiwgbWF4KSB7XG4gIC5yb3ctcyB7XG4gICAgJj4uY29sIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgJi50ZXh0LXJpZ2h0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi5kb3VibGUtZ3V0dGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgIH1cblxuICAgICAgJi5ndXR0ZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgfVxuXG4gICAgICAmLmhhbGYtZ3V0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCI6cm9vdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbiIsIi5zaGFkb3cge1xuICBib3gtc2hhZG93OiA1cHggNXB4IDE1cHggIzMzMzM7XG59XG5ociB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzg4ODtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgcGFkZGluZzogMDtcbn1cbiIsImEubGluayxcbi5saW5rIHtcbiAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuIiwiLmJ0biwgYS5idG4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiAwLjdlbSAxLjJlbSAwLjY1ZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjFzO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuICBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4ycztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG5cbiAgICAgIGcgcGF0aCB7IFxuICAgICAgZmlsbDogJGNvbG9yLXByaW1hcnk7XG4gICAgfVxuICB9XG5cblxuICAmOmhvdmVyIHsgXG4gICAgY29sb3I6ICNmZmY7ICAgICAgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZXA7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIHN2ZyB7IFxuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICBnIHBhdGggeyBcbiAgICAgIGZpbGw6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgfX1cbiAgfVxuICAmLmJ0bi1naG9zdCB7IFxuICAgICY6aG92ZXIgeyBcbiAgICAgIGNvbG9yOiBjb2xvcigncHJpbWFyeScpOyAgICAgIFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ2hpZ2hsaWdodCcpO1xuICAgIH1cblxuICB9XG4gICYuYnRuLXNlY29uZGFyeSB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgY29sb3I6ICRjb2xvci1kZWVwO1xuICAgIHN2ZyB7IFxuICAgICAgcGF0aCB7XG4gICAgICAgICAgZmlsbDogJGNvbG9yLWRlZXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAmOmhvdmVyIHsgXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVlcDtcbiAgICAgIGNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgICAgc3ZnIHsgXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgfVxufVxuXG4vKiBzdmcgLmNscy0zIHsgZmlsbDogYmx1ZSAhaW1wb3J0YW50fSAqL1xuXG5cbi5idG4gc3ZnIHJlY3Qge1xuICBmaWxsOiAjZTYxYzZkICFpbXBvcnRhbnQ7XG4gIHN0cm9rZTogI2U2MWM2ZCAhaW1wb3J0YW50O1xufVxuXG5cbi5idG4taWNvbiB7IFxuICBpbWcge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMjBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogYXV0bztcbiAgdG9wOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6aG92ZXIgc3ZnICogeyBcbiAgICBmaWxsOiAkY29sb3ItcHJpbWFyeTtcbiAgfVxufVxuIiwiLnN3aXBlci1jb250YWluZXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4uc3dpcGVyLWF1dG9wbGF5IHtcblx0LnN3aXBlci13cmFwcGVyIHtcblx0XHQtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcblx0XHQtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xuXHR9XG59XG5cbnVsLnF1b3Rlc19jYXJvdXNlbCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nLWxlZnQ6IDExMHB4O1xufVxuXG4uc2xpY2stbmV4dCxcbi5zbGljay1wcmV2IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogODBweDtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHBzOi8vY2hhcHRydGVjaHN0Zy53cGVuZ2luZS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDQvY2hhcHRyLWFycm93LnN2Zyk7XG5cdGhlaWdodDogODBweDtcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJvcmRlci1yYWRpdXM6IDEwMDBweDtcblx0Ym9yZGVyOiAwcHg7XG5cdHRleHQtaW5kZW50OiAtOTk5OWVtO1xuXHR0b3A6IDIwcHg7XG5cdGxlZnQ6IDBweDtcbn1cbi5zbGljay1uZXh0IHtcblx0dG9wOiAxMTNweDtcbn1cbi5zbGljay1wcmV2IHsgXG5cdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cblxuXG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsIG1heCl7XG5cdHVsLnF1b3Rlc19jYXJvdXNlbCB7IFxuXHRcdHBhZGRpbmctbGVmdDogMHB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQuc2xpY2stbmV4dCwgLnNsaWNrLXByZXYgeyBcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0cmlnaHQ6IDBweDtcblx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHR9XG5cdFx0LnNsaWNrLW5leHQgeyBcblx0XHRcdHJpZ2h0OiAwcHg7XG5cdFx0fVxuXHRcdC5zbGljay1wcmV2IHsgXG5cdFx0XHRyaWdodDogNjBweDtcblx0XHR9XG5cdFx0YmxvY2txdW90ZSB7IFxuXHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdH1cblx0fVxufSIsIi5saXN0LWRvdCB7XG4gIGNvbG9yOiBibGFjaztcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwwMGEwXFwyMDIyXFwwMGEwXFwwMGEwXCI7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG4gIGxpOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4ubGlzdC1icmVhZGNydW1iIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgIGEge1xuICAgICAgY29sb3I6IGNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMDBCN1wiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIG1hcmdpbjogMCAwLjE1cmVtO1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIkdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzLCB0cmFuc2Zvcm0gMS4ycztcblxuQGluY2x1ZGUgbXEoXCJ0YWJsZXRcIikge1xuICAuc3dpcGUtbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCk7XG4gIH1cbiAgLnN3aXBlLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwcHgpO1xuICB9XG4gIC5zd2lwZS1kb3duIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgfVxuICAuc3dpcGUtdXAge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG4gIH1cblxuICAuZmFkZS1pbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuXG4uYXBwZWFyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBvc2l0aW9uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xufVxuXG4uZGVsYXktMSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzICFpbXBvcnRhbnQ7XG59XG5cbi5kZWxheS0yIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC41cztcbn1cblxuLmRlbGF5LTMge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjc1cztcbn1cbi5kZWxheS00IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG4uZGVsYXktNSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMjVzO1xufVxuIiwiXG5cbmEuY3MtY2FyZC1waWMge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6IDUzMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLnBvc3RfX2hlcm8ge1xuXHQuYmctaW1nIHtcblx0XHRvcGFjaXR5OiAwLjI1O1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cbn1cblxuLnNpbmdsZS1yZXNvdXJjZSB7XG5cdC5iZy1pbWcge1xuXHRcdG9wYWNpdHk6IDAuMjU7XG5cdFx0ei1pbmRleDogMDtcblx0fVxufVxuXG4ucG9zdF9fbWFpbiB7XG5cdG1heC13aWR0aDogMTUwMHB4O1xuXHRtYXJnaW46IDAgYXV0bztcbn1cbi5wb3N0X19hc2lkZSB7XG5cdHBhZGRpbmc6IDRyZW07XG5cdHBhZGRpbmctYm90dG9tOiAxNnJlbTtcbn1cblxuQGluY2x1ZGUgbXEoXCJ0YWJsZXQtd2lkZVwiKSB7XG5cdC5wb3N0X19tYWluIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0c2VjdGlvbiB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA0MDBweDtcblx0XHR9XG5cdH1cblx0LnBvc3RfX2FzaWRlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHdpZHRoOiA0MDBweDtcblx0XHRwYWRkaW5nOiA0cmVtO1xuXHRcdHBhZGRpbmctdG9wOiA4cmVtO1xuXHR9XG59XG5cbi5zaW5nbGUtcG9zdCAud3JhcCBzZWN0aW9uLnB0LTE0LnBiLTE0IHtcblx0cGFkZGluZzogMDtcbn1cblxuLmJnLWdyZXkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4ubWluaS1waWMgaW1nIHtcblx0d2lkdGg6IDE2MHB4ICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMTYwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogNTAwcHg7XG5cdG1hcmdpbi1yaWdodDogMTBweDtcblx0Ym9yZGVyLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xufVxuXG4ubXctaW1nIHtcblx0aGVpZ2h0OiAyMDBweDtcblx0d2lkdGg6IDEwMCU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5wYWdpbmF0aW9uIHtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IDJlbTtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uY3MtY2FyZCB7IFxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHNwYW4geyBcblx0XHR6LWluZGV4OiA4ODg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cdC5idG4ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDJyZW07XG5cdFx0cmlnaHQ6IC0xMDAlO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAwLjJzO1xuXHR9XG5cdC50ZXh0LWNvbnRlbnQgeyBcblx0XHRib3R0b206IDByZW07XG5cdFx0bGVmdDogMnJlbTtcblx0XHR3aWR0aDogY2FsYyg5MCUgLSAycmVtKTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4ycztcblx0XHRwIHsgXG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxuXHRhIHsgXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0PiAqIHsgXG5cdFx0XHR6LWluZGV4OiAyMjI7XG5cdFx0fVxuXHRcdCY6YmVmb3JlIHsgXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4ycztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZXA7XG5cdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0fVxuXHR9XG5cdCY6aG92ZXIgeyBcblx0XHQuYnRuIHsgXG5cdFx0XHRyaWdodDogMnJlbTtcblx0XHR9XG5cdFx0LnRleHQtY29udGVudCB7IFxuXHRcdFx0Ym90dG9tOiA0cmVtO1xuXHRcdFx0cCB7IFxuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRhIHsgXG5cdFx0XHQmOmJlZm9yZSB7IFxuXHRcdFx0XHRvcGFjaXR5OiAwLjI7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cbn1cblxuLnRleHQtY2FwcyB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuLmxzLTIgeyBsZXR0ZXItc3BhY2luZzogMnB4OyB9XG4uYWJzb2x1dGUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuXG5cbiIsIi5wYWdlLWpvYnN7XG4gICAgLmhlcm97XG4gICAgICAgIC5qb2Itc2VhcmNoe1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgaW5wdXQ6OnBsYWNlaG9sZGVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmpvYi1mZWVkLXdpZGUgeyBcbiAgICBsZWZ0OiAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbiAvKiB0aGUgc2xpZGVzICovXG4gLmNhcm91c2VsLWpvYnMgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXJnaW46IDAgMTBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cbiAgXG4gIC8qIHRoZSBwYXJlbnQgKi9cbiAgLmNhcm91c2VsLWpvYnMgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgfVxuXG4uc2luZ2xlLWpvYiAuaGVybyB1bCBsaTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc2luZ2xlLWpvYiAuaGVybyB1bCBsaSBzdmcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMzBweDtcbn1cblxuXG4uam9iLWNhcmQgeyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDU3MHB4O1xuICAgIHNwYW4uYnRuIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDJyZW07XG4gICAgICAgIGxlZnQ6IDNyZW07XG4gICAgfVxuICAgIGEgeyBcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMwMTU2NWI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcblxuICAgICAgICAqIHsgXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICAgICAgaDMgeyBcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTJyZW07ICBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xuICAgICAgICB9XG4gICAgICAgIHAsIHVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICAgIHAgeyBcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIHVsIHsgXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgbGkgeyBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNWVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMHB4OyB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbn1cblxuLnBvc3RlZC1ieSB7IFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDFlbTtcbiAgICBsZWZ0OiAxZW07XG4gICAgZ2FwOiAxZW07XG4gICAgaW1nIHsgXG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgIH1cbn1cblxufVxuXG4mOmhvdmVyIHtcbiAgICAqIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1zZWNvbmRhcnk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZXA7XG4gICAgcCwgdWwgeyBcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgfVxuICAgXG59XG5cblxuLmFycm93LW1vcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNTVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3R0b206IDJyZW07XG4gICAgcmlnaHQ6IDNyZW07XG4gICAgc3ZnIHsgXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuXG4uYWR2LWJ5IHsgXG4gICAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwMHB4O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICRjb2xvci1zZWNvbmRhcnk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1ZW07XG4gICAgfVxufVxuXG4uaGVybyB7IFxuICAgIC5qb2ItbWV0YSB7IFxuICAgICAgICBsaSB7IFxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAmOmJlZm9yZSB7IFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDNweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucXVvdGUtcGljIHsgXG4gICAgd2lkdGg6IDE1MHB4O1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogMTUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgIGltZyB7IFxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gXG4gICAgLmdyaWQuZ3JpZC00LWNvbCB7IFxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLDFmcik7XG4gICAgfVxuICAgICNqb2JpbmZvIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmpvYi1mZWVkLXdpZGUgeyB3aWR0aDogMTAwJTsgbGVmdDogMDsgfVxuXG4gICAgLmhlcm8gPiAud3JhcCB7IFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gICAgXG4gIH1cblxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAgIC5ncmlkLmdyaWQtNC1jb2wgeyBcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwxZnIpO1xuICAgIH1cbiAgICAudGVzdGltb25pYWwgLmZsZXggeyBcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgXG4gICAgfVxuICAgIC5pbWctYmxvY2sgLmZsZXggeyBcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5pbWctYmxvY2suZmxleC0xIHsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgfVxuICAgIC5hZHYtYnkgeyBcbiAgICAgICAgcGFkZGluZzogNHJlbSA2cmVtO1xuICAgIH1cblxuXG4gICAgdWwuam9iLW1ldGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6IDFlbTtcbiAgICB9XG5cbiAgICAucHQtMTAgeyBcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgfVxuXG5cbiAgfVxuXG5cbiAgLmhlcm8tam9iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDE1NjViO1xufVxuXG5cbmltZy53YXRlcm1hcmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTE2ZW07XG4gICAgd2lkdGg6IDgwMHB4O1xuICAgIHRvcDogLTEwZW07XG59IiwiZm9vdGVyIHtcblx0cGFkZGluZy1ib3R0b206IDEwZW07XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogODAwcHg7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0yMHB4IHRvcCAtMjBweDtcblx0YmFja2dyb3VuZDogJGNvbG9yLWRlZXA7XG5cdHAsIGEsIGxpIHsgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuXHRwLnRleHQtaGlnaGxpZ2h0IHsgY29sb3I6ICRjb2xvci1oaWdobGlnaHQgIWltcG9ydGFudDsgfVxuXHRoNCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHR9XG5cdGxpIHtcblx0XHRsaW5lLWhlaWdodDogMS43NWVtO1xuXHRcdHVsIHsgXG5cdFx0XHQmLnN1Yi1tZW51IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0aW1nIHsgXG5cdFx0bWF4LWhlaWdodDogMTgwcHg7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0bWF4LXdpZHRoOiAxNTBweDsgXG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cblx0LmN0YS1pY29ucyBsaSB7XG5cdFx0cGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMzVweDtcblx0XHRwYWRkaW5nOiAwLjI1ZW0gMC4yNWVtIDAuMjVlbSA1NXB4O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cblx0fVxuXHRsaSwgcCB7IFxuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdHBhZGRpbmc6IDAuMjVlbSAwO1xuXHR9XG5cblx0YSB7XG5cdFx0Y29sb3I6ICRjb2xvci1oaWdobGlnaHQgIWltcG9ydGFudDtcblx0fVxuXG5cdGZvb3RlciAucGFnZV9pdGVtIHtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG5cdGZvb3RlciAuZmxleCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZzogMCAycmVtO1xuXHRcdC5jb2wge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHR9XG5cdH1cblxufVxuXG4uc29jaWFsLWxpbmtzIHtcblx0Z2FwOiAxcmVtO1xuXHRzdmcge1xuXHRcdHdpZHRoOiA1MHB4O1xuXHRcdGhlaWdodDogNTBweDtcblx0fVxufVxuXG4iLCIvKlxuLy8vLy8vLy8vLy8vLy8vL1xuICAgIE1vYmlsZVxuLy8vLy8vLy8vLy8vLy8vL1xuKi9cblxuXG5cblxuLnNvY2lhbHMgeyBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJyZW07XG4gIGxlZnQ6IDJyZW07XG4gIGdhcDogMC41ZW07XG59XG5cbiNtZW51LWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWVwO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgcGFkZGluZzogMC4zcmVtIDJyZW0gMC4zcmVtIDJyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogOTk5OTk7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbiAgJjpob3ZlciB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICB9XG4gIHNwYW4geyBcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNnB4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbiAgICB9XG4gICAgJjphZnRlciB7IFxuICAgICAgdG9wOiA2cHg7XG4gICAgfVxuICB9XG59XG5cbi5uYXYtb3BlbiB7IFxuICAjbWVudS1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICB9XG4gICNvdmVybGF5IHsgXG4gICAgcGFkZGluZzogMDtcbiAgICAuZmxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LXJpZ2h0IHsgXG4gICAgYSB7IFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLm5hdi10b3B7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDNyZW0gMCAycmVtO1xuICBnYXA6IDEuNXJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgc3ZnIHsgXG4gICAgbWF4LXdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4jbmF2LXBvcG92ZXIgeyBcbiAgYmFja2dyb3VuZDogI0U1RkZFQjtcbmJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNWRlZywgcmdiYSgyMjksIDI1NSwgMjM1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSA0OSUpO1xufVxuXG4ubWVkaWEgeyBcbiAgdmlkZW8geyBcbiAgICBtaXgtYmxlbmQtbW9kZTogbGlnaHRlbjtcbiAgfVxufVxuXG51bCNtZW51LW1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZ2FwOiAxZW07XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGxpIHsgXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAmOmZpcnN0LWNoaWxkIHsgXG4gICAgICBib3JkZXItdG9wOiAwcHg7XG4gICAgfVxuICAgIGEgeyBcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTs7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1icmlnaHQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAmOmhvdmVyIHsgXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jdXJyZW50LW1lbnUtaXRlbSBhIHsgXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG5uYXYgdWwgbGkgeyBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB1bCB7IFxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwcHg7XG4gICAgei1pbmRleDogODg4ODtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgYSB7IFxuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYnJpZ2h0O1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHsgXG4gICAgICAgICAgYm9yZGVyLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIgeyBcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWhpZ2hsaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbm5hdiB1bCBsaSB7XG4gIHBhZGRpbmc6IDFlbSAwO1xuXG4gIHVsIGxpIHsgXG4gICAgcGFkZGluZzogMC4yNWVtIDA7XG4gIH1cblxuICBhIHsgXG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudFxuICB9XG59XG5cbi5ob21lIC5oZXJvIHtcbiAgcGFkZGluZy10b3A6IDgwcHggIWltcG9ydGFudDtcbn1cblxubmF2IHVsIGxpOmhvdmVyIHVsIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmhhbWJ1cmdlciB7XG4gIGJhY2tncm91bmQ6ICMwMTliNjc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG5cbiAgLmhhbWJ1cmdlci1pbm5lciwgXG4gIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLCBcbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHsgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4udmlkZW8tZW1iZWQgeyBcbiAgdmlkZW8geyBcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuXG5cbkBpbmNsdWRlIG1xKFwidGFibGV0LXdpZGVcIiwgbWF4KSB7XG4gIC5vdmVybGF5IHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIGJvcmRlci1yaWdodDogIzMzMyBzb2xpZCA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIH1cblxuICAub3ZlcmxheSB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTk5OTlweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSk7XG4gIH1cblxuICAub3ZlcmxheS1zaG93IHtcbiAgICAub3ZlcmxheSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cywgcGFkZGluZyAwLjVzO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtcShcInBob25lXCIsIG1heC13aWR0aCkge1xuICAub3ZlcmxheSB7XG4gICAgcGFkZGluZzogNXJlbSAycmVtO1xuICB9XG59XG5cbi8qXG4vLy8vLy8vLy8vLy8vLy9cbiAgICBEZXNrdG9wXG4vLy8vLy8vLy8vLy8vLy9cbiovXG5cbkBpbmNsdWRlIG1xKFwidGFibGV0LXdpZGVcIikge1xuICAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdWwge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cblxuXG59XG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIE5hdmljb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuI25hdmljb246Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4jbmF2aWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG5AaW5jbHVkZSBtcShcImRlc2t0b3BcIikge1xuICAjbmF2aWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICBuYXYgdWwsIG5hdiB1bCBsaSB1bCB7IFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAgMHB4O1xuXG4gIH1cbiAgbmF2IHVsIGxpIHVsIHsgXG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRvcDogMDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuXG4vKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICBGdWxsIFBhZ2UgTWVudSBPdmVybGF5XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblxuLm1lbnUtbWFpbi1jb250YWluZXIsXG4ubWFpbi1uYXZpZ2F0aW9uIHsgXG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jb3ZlcmxheSB7IFxuICBkaXNwbGF5OiBub25lO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBib3R0b206IDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWVwO1xuICB6LWluZGV4OiA5OTk2O1xuXG4gIHRleHRhcmVhIHsgXG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgfVxuXG51bCNtZW51LW1haW4gIHsgXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZ2FwOiAwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbGkgeyBcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBhIHsgXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgICAgcGFkZGluZzogMCAwIDJyZW07XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIGxpbmVhciAuM3M7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAuM3M7XG4gICAgICAgICAgJjpob3ZlciB7IFxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgXG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuLm5hdi1vcGVuIHtcbiAgI292ZXJsYXkgeyBcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gc3BhbiB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICY6YmVmb3JlIHsgXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0b3A6IDBweDtcbiAgICB9XG4gICAgJjphZnRlciB7IFxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRvcDowcHhcbiAgICB9XG4gIH1cbn1cblxuXG4ubmF2LXN0aWNreSB1bCNtZW51LW1haW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICBiYWNrZ3JvdW5kOiAjMmMxNzU3O1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi5uYXYtb3BlbiB7IFxuICB1bCNtZW51LW1haW4geyBsZWZ0OiAwcHg7IH1cbiAgI25hdmljb24gc3BhbiB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICY6YmVmb3JlIHsgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB0b3A6IDBweDsgbGVmdDogMHB4OyB9IFxuICAgICY6YWZ0ZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB0b3A6IDBweDsgbGVmdDogMHB4OyB9XG4gICAgICBcbiAgfVxufVxuXG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsIG1heCl7XG4gIC5uYXYtb3BlbiB7IFxuICAgICAgI292ZXJsYXkgeyBcbiAgICAgIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHVsIGxpIGEgeyBcbiAgICAgICAgICBmb250LXNpemU6M3JlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4gICNuYXZpY29uIHsgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA3NXB4O1xuICAgIHJpZ2h0OiAycmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB6LWluZGV4OiA5OTk5OTtcbiAgICB0b3A6IDJyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgc3BhbiB7IFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogNzAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBsZWZ0OiAxNSU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMS41cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAtOHB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHsgXG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOi0gOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgbWF4KXtcblxuICAgIFxuICAgICAgXG5cbiAgICAgICAgIFxuICBcbiAgICAgICAgIC5uYXYtdG9wIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbiAgICAgICAgfVxuIiwiLnNpdGUtYnJhbmRpbmcge1xuICAgIHdpZHRoOiAyODBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHRvcDogMjBweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbiAgICBhIHsgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBzdmcgeyBcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2LW9wZW4geyBcbiAgICAuc2l0ZS1icmFuZGluZyB7IFxuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLnNpbmdsZS1wb3N0IHtcbi5zaXRlLWJyYW5kaW5nIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xufVxufVxuXG5oZWFkZXIgeyBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0XG5cbiAgICBzdmcgeyBcbiAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5oZWFkZXIuYmstZGsgeyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxubmF2IHVsIHsgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDFlbTtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgIGxpLnBhZ2VfaXRlbSB7IFxuICAgICAgICBtYXJnaW46IDBweDtcbiAgICB9XG5cbiAgICBsaSB7IFxuXG4gICAgYSwgYTp2aXNpdGVkLCBhOmFjdGl2ZSAgeyBcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG59XG5cbi5uYXYtbGlua3MgeyBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycmVtO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGltZyB7IFxuICAgICAgICBtYXgtaGVpZ2h0OiA3MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cblxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgbWF4KXsgICBcbiAgICBoZWFkZXIgLnNvY2lhbHMgeyBcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBpbmNsdWRlIG1xKCdwaG9uZS13aWRlJywgbWF4KXsgICBcbiAgICBoZWFkZXIgc3ZnIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICB9XG4gICAgLm5hdi1saW5rcyBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgIH1cbiAgICAjbWVudS1idG4geyBoZWlnaHQ6IDYwcHg7IH0gXG59XG5cbiIsIlxuXG4uYXN0cm8geyBcbiAgc3ZnIHsgXG4gICAgcGF0aCB7IFxuICAgICAgZmlsbDogJGNvbG9yLWRlZXA7XG4gICAgfVxuICB9XG59XG5cbi5wb3N0LWNhcmQgaDMgeyBmb250LXNpemU6IDRyZW07IH1cblxuLmgtZnVsbCB7IFxuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cbi5iay1oaWdobGlnaHQgeyBcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UzMTE0YyAhaW1wb3J0YW50O1xuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwIHsgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgcCwgbGkgeyBcbiAgICBhIHsgXG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ubG93ZXItZm9vdGVyIHsgXG4gIHAsIGxpIHsgXG4gICAgY29sb3I6ICNmZmY7IFxuICAgICAgYSB7IGNvbG9yOiAjZmZmOyB9XG59XG59XG5cbi5hY2NvcmRpb24geyBcbiAgcGFkZGluZzogMnJlbSAwO1xuICBsaSB7IFxuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQgeyBcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYuYWN0aXZlIHsgXG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQgeyBcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ob21lIHsgXG4uY2FyZC1vdmVybGFwIHsgXG4gIC53cmFwIHsgXG4gICAgICBoMSB7IGNvbG9yOiAjZmZmOyB9XG4gICAgXG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICA+ICogeyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDEwMDsgfVxuICAmOmJlZm9yZSB7IFxuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA3MDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVlcDtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxufVxufVxuXG5cbi5kYXJrLXN0cmlwLWJvdHRvbSB7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gID4gKiB7IFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgICBjb250ZW50OicnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZXA7XG4gICAgei1pbmRleDogMDtcbiAgfVxufVxuXG4ucHktMjAgeyBcbiAgcGFkZGluZy10b3A6IDIwcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMjByZW07ICBcbn1cblxuLyogQ0FST1VTRUwgKi9cblxuIC8qIHRoZSBzbGlkZXMgKi9cbiAuc2xpY2stc2xpZGUge1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgfVxuICBcbiAgLyogdGhlIHBhcmVudCAqL1xuICAuc2xpY2stbGlzdCB7XG4gICAgbWFyZ2luOiAwIC0yMHB4O1xuICB9XG5cbiAgLmRpdmlzaW9uLXNjcm9sbGVyIGEgeyBcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgaW1nIHsgXG4gICAgICBib3JkZXI6IDEwcHggc29saWQgI2VlZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICAgIH1cbiAgICAmOmhvdmVyIHsgXG4gICAgICBpbWcgeyBcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICMyQzE3NTc7XG4gICAgICB9XG4gICAgICBoNCB7IFxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjaXRlIHsgXG4gICAgICBpbWcgeyBtYXgtd2lkdGg6IDYwcHg7IH1cbiAgfVxuXG5cbiAgLm1hcnEtd3JhcCB7IFxuICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYnJpZ2h0O1xuICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICBwIHsgZm9udC1zaXplOiAycmVtOyB9XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvKiB0aGUgcGFyZW50ICovXG4gICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICB9XG4gIH1cblxuXG4gICNxdW90ZS1tYXJrcyB7XG4gICAgei1pbmRleDogLTE7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgbWF4LWhlaWdodDogNzAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgfVxuXG5cbiAgLmJ0LTEgeyBcbiAgICAuY29sIHsgXG4gICAgICBwYWRkaW5nLXRvcDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7XG4gICAgfVxuICB9XG5cblxuICAubWFycS13cmFwIHsgXG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIC5idG4geyBcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgdG9wOiAxLjVyZW07XG4gICAgfVxuICB9XG5cblxuLmJyLTUgeyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuICAuZGl2aXNpb24geyBcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGltZyB7IFxuICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMWVtO1xuICAgICAgfVxuICAgICAgaDMgeyBcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07IFxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjNyZW07XG4gICAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICB9XG4gIH1cblxuICAudGlsZSB7IFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMik7XG4gIH1cblxuICAgLnBob3RvIHsgXG4gICAgcGFkZGluZzogMDsgXG4gICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgfVxuIFxuICAgLyogdGhlIHNsaWRlcyAqL1xuICAgLm1hcnF1ZWUgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICB9XG5cblxuICAuaW1nLW1hcnF1ZWUgeyBcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMCAtNXB4O1xuICAgIH1cbiAgICAuc2xpY2stc2xpZGUgeyBcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuICB9XG5cbi50ZXN0aW1vbmlhbCBibG9ja3F1b3RlIHtcbiAgZm9udC1mYW1pbHk6IFwiZ2VuZXJhbCBzYW5zIG1lZGl1bVwiLCBzYW5zLXNlcmlmO1xufVxuXG4ubGFiZWwgeyBcbiAgZm9udC1zaXplOiAxLjJyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMS4ycmVtIDJyZW0gMXJlbSA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICY6YmVmb3JlIHsgXG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMjBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7ICBcbiAgfVxufVxuXG4ucG9zdC1jYXJkIHsgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLWhpZ2hsaWdodDtcbiAgLmxhYmVsIHsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogM3JlbTtcbiAgICBsZWZ0OiAycmVtO1xuICB9XG59XG5cbi5wb3N0LWNhcmRfX2V4Y2VycHQgcCB7IFxuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvbG9yOiAkY29sb3ItZGVlcDs7XG59XG5cbi5jYXJkIHsgXG4gIGFydGljbGUgeyBcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgfVxuICAuYnRuIHsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIGZpZ3VyZSwgaW1nIHsgXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAud3lnIHsgXG4gICAgdWwgeyBcbiAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgICAgbGkgeyBcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC40NXJlbSAwIDAuNDVyZW0gMjBweDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1kZWVwO1xuICAgICAgICAmOmJlZm9yZSB7IFxuICAgICAgICAgIHRvcDogMTRweDtcbiAgICAgICAgICBsZWZ0OiA0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4uYm94LWNvbHMgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbCB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbn1cblxuLnRleHQtbWFycXVlZSB7IFxuICBwYWRkaW5nLXJpZ2h0OiAyNjBweDtcbiAgcGFkZGluZy10b3A6IDVweDtcbn1cblxuLnF1b3RlLWNhcmQgeyBcbiAgcGFkZGluZzogNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJyaWdodDtcblxuXG4gIGJsb2NrcXVvdGUgeyBcbiAgICBjb2xvcjogJGNvbG9yLWRlZXA7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgfVxuICBwIHsgXG4gICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgfVxufVxuXG4ucXVvdGVyLWxvZ28geyBcbiAgICBpbWcgeyBcbiAgICAgICAgYm9yZGVyOiAwcHggc29saWQgJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgcGFkZGluZzogMHJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuXG4uYm94LWNvbHMgeyBcbiAgLmZsZXggeyBcbiAgICBnYXA6IDJyZW07XG4gIH1cbiAgLmNvbHVtbnMtcmVwZWF0ZXJfX2NvbCB7IFxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgICBiYWNrZ3JvdW5kOiAjQ0FGMUQzO1xuICAgIGltZyB7IFxuICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLnF1b3Rlci1waWMgeyBcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBpbWcgeyBcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDAxQjVCO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gIH1cbn1cbnAubHJnLW51bSAgeyBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LWZhbWlseTogJ01vbmEgU2FucyBCb2xkJywgYXJpYWw7XG4gIGZvbnQtc2l6ZTogMzByZW07XG4gIG9wYWNpdHk6IDAuMTtcbiAgei1pbmRleDogLTE7XG4gIHRvcDogLTEwMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZWZ0OiAtNzVweDtcbn1cblxuXG5cbi5ici0xMCB7IFxuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uYnItMyB7IGJvcmRlcjogM3B4IHNvbGlkICRjb2xvci1wcmltYXJ5OyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmhvdmVyLXRpbGVzIGRpdiB7IFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUI0ODRBO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xuXG4gIC5udW0geyBcbiAgICBmb250LXNpemU6IDEwcmVtO1xuICAgIGZvbnQtZmFtaWx5OiAnTW9uYSBTYW5zIEJvbGQnLCBhcmlhbDtcbiAgIH1cbiAgIGgzIHsgXG4gICAgbWFyZ2luLWJvdHRvbTogIDJyZW1cbiAgIH1cbiAgICY6aG92ZXIgeyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTtcbiAgICBwLCBoMyB7ICBjb2xvcjojMUI0ODRBOyB9XG4gICB9XG59XG5cbi50aW1lbGluZS1ibG9jayB7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGgzIHsgXG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG4gICY6YWZ0ZXIgeyBcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItbGVmdDogNHB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDBweDtcbiAgICB6LWluZGV4OiA0NDQ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgJjpiZWZvcmUgeyBcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJyaWdodDtcbiAgICBib3JkZXI6IDVweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgKyAxcHgpO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHotaW5kZXg6IDc3Nzc7XG4gIH1cbn1cblxuLnRpbWVsaW5lLWJsb2NrX19pbWFnZSB7IFxuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgaW1nIHsgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyAgICAgICAgIC8qIG9yIGNvbnRhaW4gKi9cbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7ICAgLyogY2VudGVyIGNlbnRlciAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4udGltZWxpbmUtYmxvY2tfX2NvbnRlbnQgeyBcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmRvdHRlZC1saW5lLXRvcCB7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YmVmb3JlIHsgXG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDFweDtcbiAgICBib3JkZXItbGVmdDogNHB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTsgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59IFxuXG4uZmxleC1yZXZlcnNlIHsgXG4gIC5mbGV4LXJldi1pbWctYWxpZ24geyBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuLmRhcmstdGV4dC1ib3ggeyBcbiAgLnRpbWVsaW5lLWJsb2NrX19jb250ZW50IHsgXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXByaW1hcnk7XG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7IFxuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuZmlndXJlLnZpZXdwb2ludC1oZWFkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC00MHB4O1xuICB3aWR0aDogODBweDtcbiAgdG9wOiAxODBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBzdmcgeyBcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmxvYy0xLFxuLmxvYy0yLFxuLmxvYy0zLFxuLmxvYy00IHsgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgei1pbmRleDogMjAwO1xuICBzdmcgeyBcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmxvYy0xIHsgdG9wOiAyOSU7XG4gICAgbGVmdDogMzYlOyB9XG4ubG9jLTIgeyB0b3A6IDMyJTtcbiAgICBsZWZ0OiA0NCU7IH1cbi5sb2MtMyB7IHRvcDogNzElO1xuICAgIGxlZnQ6IDQ5JTsgfVxuLmxvYy00IHsgICAgIHRvcDogNDUlO1xuICAgIGxlZnQ6IDc1JTsgfVxuXG4vKiB0aGUgcGFyZW50ICovXG4ubWFycXVlZSAuc2xpY2stbGlzdCB7XG4gICAgbWFyZ2luOiAwIC0xMHB4O1xufVxuXG4gIC5wYWdlLWlkLTIxMyAuaGVyby52aWRlby1zZWN0aW9uIHsgXG4gICAgaGVpZ2h0OiA3MHZoO1xuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuXG4gICAgLmJ0biB7IGRpc3BsYXk6IG5vbmU7IH1cbn1cblxuXG4gIC5rZXktY29udGFjdCB7IFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIH1cblxuICAudGVhbS1waWMgaW1nIHsgXG4gICAgd2lkdGg6IDgwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogODBweDtcblxuICB9XG5cbiAgLnRlYW0taW5mbyAuYmlvIHsgXG4gICAgZm9udC1zaXplOiAxLjJyZW07IFxuICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gIH1cblxuICAuYmctbHQtZ3JleSB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIH1cblxuICAuYnItNSB7IFxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgfVxuXG4gIC5iaW8geyBcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMi4xcmVtO1xuICB9XG5cbiAgLnRlYW0tY2FyZCB7IFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgICAgIC5pY29ucyB7IFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMnJlbTtcbiAgICAgICAgbGVmdDogMnJlbTtcbiAgICAgICAgYSB7IFxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBzdmcgeyBcbiAgICAgICAgbWF4LXdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxufVxuLnEtcGljIGltZyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDYwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7XG59ICBcblxuXG5cblxuLyogU0xPVCBST0xMIFRFU1QgKi9cblxuLnNsb3Qtcm9sbC13cmFwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbG90LXJlYWwge1xuXHRvcGFjaXR5OiAwOyAvKiBrZWVwIGxheW91dCwgaGlkZSB2aXN1YWxseSAqL1xufVxuXG4uc2xvdC1hbmltIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC13b3JkIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdG1hcmdpbi1yaWdodDogMC4xMmVtO1xufVxuXG4uc2xvdC1hbmltIC5zbG90LWxldHRlciB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRoZWlnaHQ6IDFlbTtcblx0bGluZS1oZWlnaHQ6IDFlbTtcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC1sZXR0ZXItaW5uZXIge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsb3QtYW5pbSAuc2xvdC1sZXR0ZXItbGluZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRoZWlnaHQ6IDFlbTtcblx0bGluZS1oZWlnaHQ6IDFlbTtcblx0Zm9udDogaW5oZXJpdDtcbn1cblxuLnRlYW0tbWVtYmVyLWNhcmQge1xuICBib3JkZXI6IDBweDsgXG4gIGJhY2tncm91bmQ6ICNFNUZGRUI7XG4gICZfX3Bob3RvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIH1cbiAgdWwgeyBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMXJlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAzcmVtIDA7XG4gICAgbGkgeyBcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gICAgfVxuICB9XG4gIHN2ZyB7IFxuICAgIHdpZHRoOiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZmlsbDogJGNvbG9yLXByaW1hcnk7XG4gIH1cbiAgLmxpbmtlZGluLWljb24geyBcbiAgICBzdmcgeyBcbiAgICAgIHBhdGggeyBcbiAgICAgICAgZmlsbDogJGNvbG9yLXByaW1hcnk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuXG5cbi5hY2NvcmRpb24geyBcbiAgbGkgeyBcbiAgICAgIC5hY2NvcmRpb24tdGl0bGUgeyBcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHN2ZyB7IFxuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBmaWxsOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4ycztcbiAgICAgICAgICBsaW5lIHtcbiAgICAgICAgICAgIHN0cm9rZTogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUgeyBcbiAgICAgIC5hY2NvcmRpb24tdGl0bGUgc3ZnIHsgXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4gIC5hY2NvcmRpb24geyBcbiAgICBsaSB7IFxuICAgICAgLmFjY29yZGlvbi10aXRsZSB7IFxuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgc3ZnIHsgXG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZpbGw6ICRjb2xvci1oaWdobGlnaHQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjJzO1xuICAgICAgICAgIGxpbmUge1xuICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItaGlnaGxpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7IFxuICAgICAgLmFjY29yZGlvbi10aXRsZSBzdmcgeyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubW9iLXNob3cgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbi5tb2ItaGlkZSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuICAjbmF2aWNvbiBlbSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICNuYXZpY29uIHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuXG4gICNuYXZpY29uIHsgd2lkdGg6IDU1cHg7IH1cbiAgI25hdmljb24gZW0geyBkaXNwbGF5OiBub25lOyB9XG4gICNuYXZpY29uIHNwYW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4gIFxuICAubW9iLWNhcmRzIHsgXG4gICAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50O1xuICAgIC53cmFwIHsgXG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgIH1cbiAgICBhcnRpY2xlIHsgXG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjY2FmMWQzO1xuICAgICAgLnAtNCB7IFxuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBmaWd1cmUgeyBcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaW1nIHsgXG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYm9keSB7IFxuICAgIHNlY3Rpb24uZmwtd29ybGQtbWFwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgLmZsLXdvcmxkLW1hcF9fY29udGVudCB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IHBhZGRpbmc6IDIwcHg7ICB9XG4gICAgLmZsLXdvcmxkLW1hcF9fZ2xvYmUgeyB3aWR0aDogMzQwcHg7IGhlaWdodDogMzQwcHg7IG1hcmdpbjogMCBhdXRvOyB9XG4gICAgfVxuICAgIC5waW4tc3BhY2VyIHsgXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tb2Itc2hvdyB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAubW9iLWhpZGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIC50ZXh0LTZ4bCB7XG4gICAgIGZvbnQtc2l6ZTogNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubW9iLWNhcmRzIC53eWcgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG4gICAgLnd5ZyB1bCBsaTpiZWZvcmUgeyB0b3A6IDIycHg7IH1cblxuICAgIC52aWQtYnVyc3QgaDIge1xuICAgICAgICBmb250LXNpemU6IDRyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBkaXYjbmF2LXBvcG92ZXIge1xuICAgICAgcGFkZGluZzogNHJlbTtcbiAgfVxuXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYgeyBsaW5lLWhlaWdodDogMWVtOyB9XG5cbiAgLmZsZXguZ2FwLTIuYWxpZ24tY2VudGVyLm1iLTQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGVybyBoMSBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMWVtICFpbXBvcnRhbnQ7XG59XG5cbiAgLm1hcnEtd3JhcCB7IFxuICAgIGhlaWdodDogMTEwcHg7XG4gICAgLmJ0biB7IFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBsZWZ0OiAycmVtO1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgI2N1c3RvbS1jdXJzb3ItZG90IHsgXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyBcbiAgfVxuXG4gIGJvZHkgeyBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDsgfVxuXG5cbn0iLCIuZmxleC13cmFwIHsgXG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuLmZsZXgtMy1jb2wgeyBcbiAgICA+ICogeyBcbiAgICAgICAgZmxleDogMSAxIGNhbGMoMzMuMzMzJSAtIDVyZW0pXG4gICAgfVxufVxuXG4uZmxleC01LWNvbCB7IFxuICAgID4gKiB7IFxuICAgICAgICBmbGV4OiAxIDEgY2FsYygyNSUgLSA1cmVtKVxuICAgIH1cbn1cblxuLnRhZ3Mge1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxZW0gMS41ZW07IFxuICAgICAgICBtYXJnaW46IDAuNWVtIDAuNWVtIDAuNWVtIDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIGJvcmRlcjogMnB4IGRhc2hlZCAkY29sb3ItaGlnaGxpZ2h0O1xuICAgIH1cbn0iLCIuYmstZGsge1xuICAgIC5wb3N0LWNhcmQgeyBcbiAgICAgICAgYmFja2dyb3VuZDogIzE0MDgyQztcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAycHggIzE3RURERDtcbiAgICAgICAgaDQgeyBcbiAgICAgICAgICAgIGEgeyBcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AaW5jbHVkZSBtcSgndGFibGV0LXdpZGUnLCBtYXgpe1xuXG4gICAgLmNzLWZlZWQgeyBcbiAgICAgICAgLmZsZXggeyBcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZGl2IHsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbn0iLCIuaG9tZSAuaGVybyB7XG5cdC5zZXJ2aWNlcyB7XG5cdFx0YXJ0aWNsZSB7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG5cdC5oZXJvLW1haW4ge1xuXHRcdHBhZGRpbmc6IDE1cmVtIDAgMTVyZW07XG5cdH1cblxufVxuXG4uc3RhZ2dlci1jb2xvdXIgeyBcblx0LmNvbHVtbnMtcmVwZWF0ZXJfX2NvbCB7IFxuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7IFxuXHRcdC5idG4geyBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItaGlnaGxpZ2h0OyB9XG5cdH1cblx0LmNvbHVtbnMtcmVwZWF0ZXJfX2NvbDpudGgtY2hpbGQoMSkgeyBcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHRwIHsgY29sb3I6ICNmZmY7IH1cblx0XHRoMyB7IGNvbG9yOiAjZmZmOyB9ICBcblx0fVxuXHQuY29sdW1ucy1yZXBlYXRlcl9fY29sOm50aC1jaGlsZCgyKSB7IG1hcmdpbi10b3A6IDRyZW07IGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1icmlnaHQ7IH1cblx0LmNvbHVtbnMtcmVwZWF0ZXJfX2NvbDpudGgtY2hpbGQoMykgeyBtYXJnaW4tdG9wOiA4cmVtOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG59XG5cblxuXG5cbi52aWQtYnVyc3QgdmlkZW8geyBtaXgtYmxlbmQtbW9kZTogZGFya2VuOyB9XG5cbi5saW5rLXByaW0geyBjb2xvcjogJGNvbG9yLXByaW1hcnk7IH1cbi5oZXJvIHtcblx0bWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OmhpZGRlbjtcblx0bWluLWhlaWdodDogODB2aDtcblx0PiAud3JhcCB7IFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxMFxuXHRcdH1cblx0dmlkZW8geyBcblx0XHR3aWR0aDogMTUwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDEwMDBweDtcblx0XHR6LWluZGV4OiAwO1xuXHRcdG1peC1ibGVuZC1tb2RlOiBkYXJrZW47XG5cdFx0LyogJiN2aWQtMSB7IHRvcDogMTUlOyByaWdodDogMTYlO30gKi9cblx0XHQvKiAmI3ZpZC0yIHsgdG9wOiA1MCU7IHJpZ2h0OiAyNiU7fSovXG5cdFx0LyogJiN2aWQtMyB7IHRvcDogMjUlOyBsZWZ0OiAxMiU7fSovXG5cdFx0LyogJiN2aWQtNCB7IHRvcDogNzAlOyBsZWZ0OiAyNCU7fSAqL1xuXHR9XG5cdHAuYWJzb2x1dGUgeyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiA0cmVtO1xuXHRcdHJpZ2h0OiA0cmVtOztcblx0fVxufVxuXG5cbi5zcGlubnktY3VycmVuY3kge1xuICB3aWR0aDogMTEwcHg7XG4gIGhlaWdodDogMTEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgYW5pbWF0aW9uOiBzY2FsZS1pbiAycyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSkgZm9yd2FyZHM7XG5cbiAgJi5zcGlubnktMSB7IHRvcDogMTUlOyByaWdodDogMTYlOyBhbmltYXRpb24tZGVsYXk6IDBzOyB9XG4gICYuc3Bpbm55LTIgeyB0b3A6IDYwJTsgcmlnaHQ6IDEwJTsgYW5pbWF0aW9uLWRlbGF5OiAwLjE1czsgfVxuICAmLnNwaW5ueS0zIHsgdG9wOiAyNSU7IGxlZnQ6IDEyJTsgYW5pbWF0aW9uLWRlbGF5OiAwLjNzOyB9XG4gICYuc3Bpbm55LTQgeyB0b3A6IDcwJTsgbGVmdDogMjQlOyBhbmltYXRpb24tZGVsYXk6IDAuNDVzOyB9XG59XG5cbkBrZXlmcmFtZXMgc2NhbGUtaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEyKTtcbiAgfVxuXG4gIDg1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5uby12aWRzIHsgXG5cdHBhZGRpbmc6IDE1cmVtIDAgMTByZW0gIWltcG9ydGFudDtcblx0bWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRpbWcsIHZpZGVvIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cdFxufVxuXG5cbiN2aWQtMSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNSU7XG4gIHJpZ2h0OiA2JTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjAlKTtcbiAgYW5pbWF0aW9uOiBtb3ZlQW5kUGF1c2UxIDUuOXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cblxuQGtleWZyYW1lcyBtb3ZlQW5kUGF1c2UxIHtcblxuICAvKiBTdGFydCBwb3NpdGlvbiAqL1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICB9XG5cbiAgLyogQW5pbWF0ZSBpbiAoZmlyc3QgMjAlIG9mIHRpbWVsaW5lIOKJiCAxLjRzKSAqL1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvKiBIb2xkIGZpbmFsIHN0YXRlICgyMCUg4oaSIDkwJSDiiYggNXMgcGF1c2UpICovXG4gIDkwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8qIFJlc2V0IGluc3RhbnRseSBhdCBlbmQgKi9cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyMCUpO1xuICB9XG59XG5cblxuXG4jdmlkLTIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNjAlO1xuICBsZWZ0OiA2JTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjAlKTtcbiAgYW5pbWF0aW9uOiBtb3ZlQW5kUGF1c2UxIDUuOXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cblxuQGtleWZyYW1lcyBtb3ZlQW5kUGF1c2UyIHtcblxuICAvKiBTdGFydCBwb3NpdGlvbiAqL1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTtcbiAgfVxuXG4gIC8qIEFuaW1hdGUgaW4gKGZpcnN0IDIwJSBvZiB0aW1lbGluZSDiiYggMS40cykgKi9cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLyogSG9sZCBmaW5hbCBzdGF0ZSAoMjAlIOKGkiA5MCUg4omIIDVzIHBhdXNlKSAqL1xuICA5MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvKiBSZXNldCBpbnN0YW50bHkgYXQgZW5kICovXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTIwJSk7XG4gIH1cbn1cblxuXG4jdmlkLTMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjAlO1xuICBsZWZ0OiAxMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDIwJSk7XG4gIGFuaW1hdGlvbjogbW92ZUFuZFBhdXNlMSA1LjlzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5cbkBrZXlmcmFtZXMgbW92ZUFuZFBhdXNlMyB7XG5cbiAgLyogU3RhcnQgcG9zaXRpb24gKi9cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxuXG4gIC8qIEFuaW1hdGUgaW4gKGZpcnN0IDIwJSBvZiB0aW1lbGluZSDiiYggMS40cykgKi9cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLyogSG9sZCBmaW5hbCBzdGF0ZSAoMjAlIOKGkiA5MCUg4omIIDVzIHBhdXNlKSAqL1xuICA5MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvKiBSZXNldCBpbnN0YW50bHkgYXQgZW5kICovXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMjAlKTtcbiAgfVxufVxuXG5cbiN2aWQtNCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA3MCU7XG4gIHJpZ2h0OiA0JTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjAlKTtcbiAgYW5pbWF0aW9uOiBtb3ZlQW5kUGF1c2UxIDUuOXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cblxuQGtleWZyYW1lcyBtb3ZlQW5kUGF1c2U0IHtcblxuICAvKiBTdGFydCBwb3NpdGlvbiAqL1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC0yMCUpO1xuICB9XG5cbiAgLyogQW5pbWF0ZSBpbiAoZmlyc3QgMjAlIG9mIHRpbWVsaW5lIOKJiCAxLjRzKSAqL1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvKiBIb2xkIGZpbmFsIHN0YXRlICgyMCUg4oaSIDkwJSDiiYggNXMgcGF1c2UpICovXG4gIDkwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8qIFJlc2V0IGluc3RhbnRseSBhdCBlbmQgKi9cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC0yMCUpO1xuICB9XG59XG5cblxuXG5cblxuXG5cblxuLnZpZC1idXJzdCB7IFxuXHQud3JhcCB7IFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxMDtcblx0fVxuXHRcdHZpZGVvIHsgXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdFx0bWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW47XG5cdFx0ei1pbmRleDogMDtcblx0XHRib3JkZXItcmFkaXVzOiAxMDAwcHg7XG5cdFx0JiN2aWQtMSB7IHRvcDogMjAlOyByaWdodDogNSU7fVxuXHRcdCYjdmlkLTIgeyB0b3A6IDYwJTsgcmlnaHQ6IDUlO31cblx0XHQmI3ZpZC0zIHsgdG9wOiAxMCU7IGxlZnQ6IDUlO31cblx0XHQmI3ZpZC00IHsgZGlzcGxheTogbm9uZTt9XG5cdH1cbn1cblxuLmhlcm8tdGV4dCB7IFxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHAgeyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdH1cblx0LnRleHQxIHsgdG9wOiAxMCU7IGxlZnQ6IDEwJTsgfVxuXHQudGV4dDIgeyB0b3A6IDMwJTsgbGVmdDogMjAlOyB9XG5cdC50ZXh0MSB7IHRvcDogNjAlOyByaWdodDogMTAlOyB9XG5cdC50ZXh0MSB7IHRvcDogOTAlOyByaWdodDogMjAlOyB9XG59XG4udGV4dC0zeGwgeyBcblx0Zm9udC1zaXplOiAxMHJlbTtcblx0dGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLmZvbnQtaGVhZGluZyB7IGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5nOyB9XG5cblxuXG4ucGFnZS1pZC05MTUgeyBcblx0Lmhlcm8udmlkZW8tc2VjdGlvbiB7IFxuXHRcdC5idG4geyBkaXNwbGF5OiBub25lOyB9XG5cdFx0bWluLWhlaWdodDogMzAwcHg7XG5cdFx0aGVpZ2h0OiA2MHZoO1xuXHR9XG59XG5cbi5oZXJvIHsgXG5cdCYuYmstb3ZlcmxheSB7IFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdD4gKiB7IFxuXHRcdFx0ei1pbmRleDogNTU1NTtcblx0XHR9XG5cdFx0JjpiZWZvcmUgeyBcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZXA7XG5cdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OiAzMzMzO1xuXHRcdH1cblx0fVxufVxuXG4udGVzdGltb25pYWwgeyBcblx0Ji5iay1vdmVybGF5IHsgXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0PiAqIHsgXG5cdFx0XHR6LWluZGV4OiA1NTU1O1xuXHRcdH1cblx0XHQmOmJlZm9yZSB7IFxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0dG9wOiAwcHg7XG5cdFx0XHRsZWZ0OiAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVlcDtcblx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IDMzMzM7XG5cdFx0fVxuXHR9XG59XG5cbi52aWRlby1zZWN0aW9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0PiAud3JhcCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDc3Nzc7XG5cdH1cblx0LyogJjpiZWZvcmUgeyBcbiAgICBjb250ZW50OiAnJztcbiAgICB6LWluZGV4OiAzMzM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwLDM1LDEwOCwwLjUpO1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAqL1xufVxuXG4uYm90dG9tLXN0cmlwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQmOmFmdGVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMHB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDBweDtcblx0XHRsZWZ0OiAwcHg7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHR6LWluZGV4OiA0MDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0fVxufVxuXG4jdmlkZW9FbGVtZW50IHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwcHg7XG5cdGxlZnQ6IDBweDtcblx0ei1pbmRleDogMDtcbn1cbi5iay13bSB7XG5cdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvd3AtY29udGVudC91cGxvYWRzLzIwMjMvMDUvd2F0ZXJtYXJrLnN2Zyk7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbi52aWRlby1zZWN0aW9uIC53cmFwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uei00NDQge1xuXHR6LWluZGV4OiA0NDQ7XG59XG5cbi5iay13bS1jb3JuZXIge1xuXHQvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIzLzA1L3dhdGVybWFyay1jb3JuZXIuc3ZnKTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogNjAlO1xufVxuXG4uYmstcGljIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLmJrLWZpeCB7XG5cdGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cdC5ob21lIC5oZXJvIHtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0LnZpZC13cmFwIHtcblx0XHRcdHBhZGRpbmc6IDNlbSAwO1xuXHRcdH1cblx0fVxuXG5cdGZpZ3VyZSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0Lmhlcm8gaW1nIHtcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xuXHRcdG1hcmdpbjogNDBweCBhdXRvO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdC5oZXJvIGgxIHtcblx0XHRsaW5lLWhlaWdodDogMS4yZW07XG5cdH1cbn1cblxuQGluY2x1ZGUgbXEoXCJ0YWJsZXQtd2lkZVwiLCBtYXgpIHtcblx0Lmhlcm8ge1xuXHRcdC5zZXJ2aWNlcyAuZmxleCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGFydGljbGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwZW07XG5cdFx0XHR9XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luOiAyZW0gMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5iay1waWMge1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0fVxuXHRcdHAge1xuXHRcdFx0YSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5ib3R0b20tc3RyaXA6YWZ0ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHR2aWRlbyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5oZXJvIHsgXG5cdFx0aDEgeyBcblx0XHRcdGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMC44NWVtO1xuXHRcdH1cblx0fVxuXG5cdC5zcGlubnktY3VycmVuY3kgeyBcblx0XHR3aWR0aDogNzVweDtcblx0XHRvcGFjaXR5OiAwLjUgIWltcG9ydGFudDtcblx0fVxuXHQucGhvdG8geyBcblx0XHRtYXgtd2lkdGg6IDE0MHB4O1xuXHR9XG5cdC5zdGFja2VkLWhlYWRpbmdzX19pdGVtIHsgXG5cdFx0Zm9udC1zaXplOiA1cmVtICFpbXBvcnRhbnQ7XG5cdH1cblx0LnRlc3RpbW9uaWFsIC53cmFwIGgyIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAxNXJlbTtcblx0XHRmb250LXNpemU6IDZyZW07XG5cdH1cblx0dWwucXVvdGVzX2Nhcm91c2VsIC5zbGljay1uZXh0LCB1bC5xdW90ZXNfY2Fyb3VzZWwgLnNsaWNrLXByZXYge1xuXHRcdHRvcDogLTgwcHg7XG5cdH1cblx0LmNhcmQgPiAuZmxleCxcblx0Lm1vYi1ibGsgeyBcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHQ+ICoge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogM3JlbTtcblx0XHR9XG5cdH1cblx0LmNhcmQgeyBcblx0XHRpbWcgeyBcblx0XHRcdG1heC13aWR0aDogMzAwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR9XG5cdFx0cC5sYWJlbCB7IFxuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblx0dWwjbWVudS1tYWluIGxpIGEgeyBmb250LXNpemU6IDMuNXJlbTsgfVxuXG5cblx0LnRpbWVsaW5lLXJvdyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZy1sZWZ0OiA2cmVtO1xuXHR9XG5cblx0LnRpbWVsaW5lLWJsb2NrOmJlZm9yZSB7XG5cdFx0bGVmdDogNHJlbTtcblx0XHR0b3A6IDhyZW07XG5cdH1cblx0LnRpbWVsaW5lLWJsb2NrOmFmdGVyIHsgXG5cdFx0bGVmdDogNHJlbTtcblx0fVxuXHQuZmxleC1yZXZlcnNlIC5mbGV4LXJldi1pbWctYWxpZ24geyBcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdH1cblx0LmRvdHRlZC1saW5lLXRvcDpiZWZvcmUgeyBcblx0XHRsZWZ0OiA0cmVtO1xuXHR9XG5cblx0aDIsIC50ZXh0LTJ4bCwgaDMsIC50ZXh0LXhsIHsgZm9udC1zaXplOiAzLjJyZW07IH1cblxuXHQuc3Bpbm55LWN1cnJlbmN5IHtcblx0XHR3aWR0aDogNjBweDtcblx0XHRoZWlnaHQ6IDYwcHg7XG5cdFx0Ji5zcGlubnktMSB7IHRvcDogNSU7IHJpZ2h0OiA1JTsgYW5pbWF0aW9uLWRlbGF5OiAwczsgfVxuXHRcdCYuc3Bpbm55LTIgeyB0b3A6IDclOyByaWdodDogNzYlOyBhbmltYXRpb24tZGVsYXk6IDAuMTVzOyB9XG5cdFx0Ji5zcGlubnktMyB7IHRvcDogNzIlOyBsZWZ0OiAxMCU7IGFuaW1hdGlvbi1kZWxheTogMC4zczsgfVxuXHRcdCYuc3Bpbm55LTQgeyB0b3A6IDcwJTsgbGVmdDogYXV0bzsgcmlnaHQ6IDYlOyBhbmltYXRpb24tZGVsYXk6IDAuNDVzOyB9XG5cdH1cblxuXHQudGV4dC1tYXJxdWVlIHsgcGFkZGluZy1yaWdodDogMHB4OyB9XG59XG4iLCJmb3JtIHtcblx0YmFja2dyb3VuZDogJGNvbG9yLWJyaWdodDtcblx0cGFkZGluZzogNHJlbTtcblx0Ym9yZGVyLXJhZGl1czogMTBweDsgXG5cdGJvcmRlcjogNHB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuXHRpbnB1dCxcblx0dGV4dGFyZWEge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG5cdFx0cGFkZGluZzogMC45ZW07XG5cdFx0Zm9udC1zaXplOiAxZW07XG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMCAwIDFyZW07XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG5cdFx0Jjo6cGxhY2Vob2xkZXIge1xuXHRcdFx0Y29sb3I6ICRjb2xvci1kZWVwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG5cdFx0cGFkZGluZzogMDtcblx0XHRtYXJnaW46IDA7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cdCYuc2luZ2xlLXNlYXJjaCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogMjBweDtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bWFyZ2luLXRvcDogLTE1cHg7XG5cdFx0XHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0XHRcdGJvcmRlcjogMHB4O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvbWFnLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHR9XG5cdCYuZ2hvc3Qge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRpbnB1dCxcblx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMGFmZmZmO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOnBsYWNlaG9sZGVyIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1kZWVwO1xuXHRcdFx0fVxuXHRcdFx0Ji5tYWcge1xuXHRcdFx0XHRib3JkZXI6IDBweDtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvbWFnLnN2Zyk7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHR3aWR0aDogMjJweDtcblx0XHRcdFx0aGVpZ2h0OiAyNnB4O1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OiAyMHB4O1xuXHRcdFx0XHR0b3A6IDE2cHg7XG5cdFx0XHRcdHRleHQtaW5kZW50OiAtOTk5OWVtO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRzcGFuLndwY2Y3LWxpc3QtaXRlbS1sYWJlbCB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNWVtO1xuXHR9XG59XG5cbnNlbGVjdCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW46IDFyZW0gMCAzcmVtO1xuXHRwYWRkaW5nOiAycmVtO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTtcblx0Ym9yZGVyOiAwcHg7XG5cdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbmlucHV0LndwY2Y3LWZvcm0tY29udHJvbC5oYXMtc3Bpbm5lci53cGNmNy1zdWJtaXQge1xuXHR3aWR0aDogYXV0bztcblx0Ym9yZGVyOiAwcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDFlbSAwO1xufVxuLmhlcm8gaW5wdXQubWFnIHtcblx0d2lkdGg6IDEzMHB4O1xuXHR0ZXh0LWluZGVudDogLTk5OTllbTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWhpZ2hsaWdodDtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvbWFnLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMzBweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG50ZXh0YXJlYSB7IGhlaWdodDogMTUwcHg7IH1cblxuQGluY2x1ZGUgbXEoXCJ0YWJsZXQtd2lkZVwiLCBtYXgpIHtcblx0LmNvbnRhY3QtY3RhIC5mbGV4IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHQuaGVybyBmb3JtIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4uaGVybyB7XG5cdGlucHV0LFxuXHRzZWxlY3Qge1xuXHRcdG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRjb2xvci1oaWdobGlnaHQ7XG5cdH1cbn1cbiIsIi53eWcge1xuXHRlbSB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG5cdGEgeyBjb2xvcjogJGNvbG9yLXByaW1hcnk7IH1cblxuXHRiIGgxLFxuXHRoMixcblx0aDMsXG5cdGg0LFxuXHRoNSxcblx0aDYge1xuXHRcdCY6bm90KDpmaXJzdC1jaGlsZCkge1xuXHRcdFx0bWFyZ2luLXRvcDogNHJlbTtcblx0XHR9XG5cblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHR9XG5cdGgxIGVtLFxuXHRoMiBlbSxcblx0aDMgZW0sXG5cdGg0IGVtIHtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdH1cblxuXHRvbCB7XG5cdFx0Jixcblx0XHRsaSB7XG5cdFx0XHRsaXN0LXN0eWxlOiBkZWNpbWFsO1xuXHRcdH1cblx0fVxuXG5cdGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdHAge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LWhlYWRpbmc7XG5cdFx0XHRib3JkZXItbGVmdDogMDtcblx0XHRcdG1hcmdpbjogNHJlbSAwO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGZvbnQtc2l6ZTogMi41cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDRyZW07XG5cdFx0fVxuXHR9XG5cdHAsXG5cdGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDNyZW07XG5cdFx0cCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwcHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdFx0fVxuXHRcdGNvbG9yOiAkY29sb3ItZGVlcDtcblx0fVxuXHQubHJnIHtcblx0XHRsaSB7XG5cdFx0XHRmb250LXNpemU6IDIuNnJlbTtcblx0XHRcdHBhZGRpbmc6IDAuNGVtIDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMi4ycmVtO1xuXHRcdH1cblx0fVxuXHRpbWcsXG5cdHZpZGVvIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0Ym9yZGVyLXJhZGl1czogMTBweDtcblx0fVxufVxuXG4ud3lnIHAgYiB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udGVzdGltb25pYWwgc3ZnIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDBweDtcblx0bGVmdDogNTAlO1xuXHR3aWR0aDogMjAwcHg7XG5cdHotaW5kZXg6IC0xO1xuXHRtYXJnaW4tbGVmdDogLTEwMHB4O1xufVxuXG4ud3lnIHtcblx0b2wsXG5cdHVsIHtcblx0XHRtYXJnaW46IDFyZW0gMCAycmVtIDA7XG5cdFx0bGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZzogMC43NWVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNWVtO1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IGRhc2hlZCByZ2JhKDE1NSwgMTU1LCAxNTUsIDAuNSk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS42ZW07XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0fVxuXHR9XG5cdHVsIHtcblx0XHRsaSB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHdpZHRoOiA1cHg7XG5cdFx0XHRcdGhlaWdodDogNXB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaGlnaGxpZ2h0O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0XHR0b3A6IDI4cHg7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRvbCB7XG5cdFx0bGkge1xuXHRcdFx0Jjo6bWFya2VyIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1oaWdobGlnaHQ7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi53eWcgcCBpbWcge1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG5cdG1heC1oZWlnaHQ6IDIwMDBweCAhaW1wb3J0YW50O1xufVxuXG4ud3lnIHAudGV4dC1sIHtcblx0bGluZS1oZWlnaHQ6IDMuNHJlbTtcbn1cblxuLnNpbmdsZS1wb3N0IC53eWcgaW1nIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcblx0bWFyZ2luOiAzcmVtIDA7XG59XG5cbi5tdy0xMDAwIHtcblx0bWF4LXdpZHRoOiAxMDAwcHg7XG59XG4ubXctODAwIHtcblx0bWF4LXdpZHRoOiA4MDBweDtcbn1cbi5tdy02MDAge1xuXHRtYXgtd2lkdGg6IDYwMHB4O1xufVxuLm13LTUwMCB7XG5cdG1heC13aWR0aDogNTAwcHg7XG59XG5cbi53eWcgcCBhLmJ0biB7XG5cdGNvbG9yOiAjZmZmO1xufVxuXG4ud3lnICoubWItMCB7XG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnd5ZyBwIGltZyB7XG5cdHdpZHRoOiBhdXRvO1xuXHRtYXJnaW46IDAgYXV0bztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5pY29uLXRvcCBpbWcge1xuXHRoZWlnaHQ6IDExMHB4O1xuXHR3aWR0aDogYXV0bztcbn1cblxuLmJveC1sYXlvdXQge1xuXHQuZ2FwLTQge1xuXHRcdGdhcDogMmVtO1xuXHRcdC53eWcge1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHRcdHBhZGRpbmc6IDNlbTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDE1cHg7XG5cdFx0fVxuXHR9XG59XG4uYm94LWxheW91dC5iay1kayB7XG5cdC53eWcge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1kZWVwO1xuXHRcdGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItaGlnaGxpZ2h0O1xuXHR9XG59XG5cblxuLmJrLWRrIHsgXG5cdC53eWcgeyBcblx0XHRwLCBsaSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7IFxuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0fVxuXHR9XG59IiwiLnRlYW0tbGluayBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnNocmlua2VyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICAgICAgICBib3JkZXI6IDZweCBzb2xpZDtcbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG4gICAgfVxuICAgICY6aG92ZXIgeyBcbiAgICAgICAgc3ZnIHsgXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/