@charset "UTF-8";
/*------------------------------------*\
	RESET
\*------------------------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body {
  margin: 0;
  min-height: 100vh;
}

body, h1, h2, h3, h4,
p, figure, blockquote, dl, dd {
  margin-block-start: 0;
  margin-block-end: 0;
}

h1, h2, h3, h4 {
  text-wrap: pretty;
}

ul,
ol {
  margin: unset;
  padding: unset;
  list-style: none;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img,
picture {
  display: block;
  max-width: 100%;
}

input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

button {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

fieldset {
  border: none;
  padding: 0;
}

textarea {
  max-width: 100%;
  box-sizing: border-box;
}

textarea:not([rows]) {
  min-height: 10em;
}

*[popover] {
  border: none;
  padding: 0;
}

:target {
  scroll-margin-block: 5ex;
}

/*------------------------------------*\
	MEDIA QUERY

	Wraps content in the appropriate media query.

	Usage:
	.block {
		@include media-query('768') { ... }
	}

	Available aliases:
	portrait, landscape
	768, 768-plus
	900, 900-plus
	1024, 1024-plus
	1440, 1440-plus
	1920, 1920-plus
\*------------------------------------*/
/*------------------------------------*\
	GRID
\*------------------------------------*/
.grid {
  display: grid;
  grid-column: 1/-1;
  row-gap: var(--grid-gap, 25px);
  column-gap: var(--grid-gap, 25px);
  width: 100%;
}

.grid--1 {
  grid-template-columns: 100%;
}

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

@media screen and (max-width: 767px) {
  .grid--2 {
    grid-template-columns: 100%;
  }
}
.grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--4 {
    grid-template-columns: 100%;
  }
}
.grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media screen and (max-width: 767px) {
  .grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media screen and (max-width: 1024px) {
  .grid--6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (max-width: 767px) {
  .grid--6 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid--split {
  grid-template-columns: var(--grid-columns, 1fr 1fr);
}

@media screen and (max-width: 1024px) {
  .grid--split {
    grid-template-columns: 100%;
  }
}
/*------------------------------------*\
	IMAGES
\*------------------------------------*/
/*------------------------------------*\
	TRANSITIONS
\*------------------------------------*/
.hover-zoom {
  display: block;
  overflow: hidden;
}

.hover-zoom img {
  transition: all 300ms ease;
  width: 100%;
  height: auto;
}

.hover-zoom:hover img {
  transform: scale(1.08);
}

.img--cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.img--contain {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

/*------------------------------------*\
	VISIBILITY
\*------------------------------------*/
.is-hidden {
  display: none;
}

@media screen and (max-width: 767px) {
  .is-hidden--mobile {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .is-hidden--tablet {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .is-hidden--desktop {
    display: none !important;
  }
}
@media (orientation: portrait) {
  .is-hidden--portrait {
    display: none !important;
  }
}
@media (orientation: landscape) {
  .is-hidden--landscape {
    display: none !important;
  }
}
/* 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;
}

[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;
}

/* Lightbox */
.slick-lightbox {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: black;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.slick-lightbox .slick-loading .slick-list {
  background-color: transparent;
}

.slick-lightbox .slick-prev {
  left: 15px;
}

.slick-lightbox .slick-next {
  right: 15px;
}

.slick-lightbox-hide {
  opacity: 0;
}

.slick-lightbox-hide.slick-lightbox-ie {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.slick-lightbox-hide-init {
  position: absolute;
  top: -9999px;
  opacity: 0;
}

.slick-lightbox-hide-init.slick-lightbox-ie {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.slick-lightbox-inner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slick-lightbox-slick-item {
  text-align: center;
  overflow: hidden;
}

.slick-lightbox-slick-item:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}

.slick-caption-bottom .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  width: 100%;
  margin-bottom: 20px;
}

.slick-caption-dynamic .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
  display: block;
  text-align: center;
}

.slick-lightbox-slick-item-inner {
  display: inline-block;
  vertical-align: middle;
  max-width: 90%;
  max-height: 90%;
}

.slick-lightbox-slick-img {
  margin: 0 auto;
  display: block;
  max-width: 90%;
  max-height: 90%;
}

.slick-lightbox-slick-caption {
  margin: 10px 0 0;
  color: white;
}

.slick-lightbox-close {
  position: absolute;
  top: 15px;
  right: 15px;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  padding: 0;
  border: none;
}

.slick-lightbox-close:focus {
  outline: none;
}

.slick-lightbox-close:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.85;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "×";
}

.wrapper {
  position: relative;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding-left: var(--gutter-small, 20px);
  padding-right: var(--gutter-small, 20px);
}

@media print {
  .wrapper {
    max-width: unset;
    padding: 0;
  }
}
.section {
  padding-top: var(--section-padding, 96px);
  padding-bottom: var(--section-padding, 96px);
}

.section__inner {
  position: relative;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding-left: var(--gutter-small, 20px);
  padding-right: var(--gutter-small, 20px);
}

.section > div:not(.section__inner) {
  position: relative;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding-left: var(--gutter-small, 20px);
  padding-right: var(--gutter-small, 20px);
}

.section--flush {
  --section-padding: 0;
}

.section--near-black {
  background-color: var(--near-black);
  color: var(--off-white);
}

.section--off-white {
  background-color: var(--off-white);
  color: var(--near-black);
}

.section--green {
  background-color: var(--green);
  color: var(--off-white);
}

.section--saffron {
  background-color: var(--saffron);
  color: var(--near-black);
}

.section--forest {
  background-color: var(--forest);
  color: var(--off-white);
}

.section--anchor {
  background-color: var(--anchor);
  color: var(--bright);
}

.section--bright {
  background-color: var(--bright);
  color: var(--anchor);
}

.section--primary {
  background-color: var(--primary);
  color: var(--bright);
}

/*------------------------------------*\
	HOVER

	Generates hover, focus, and active states.
	Pass $include-active: true to also include
	:active and .is-active states.
\*------------------------------------*/
/*------------------------------------*\
	BACKGROUND

	Shorthand for rgba background with opacity.

	Usage: @include background($dark-charcoal, 0.8);
\*------------------------------------*/
/*------------------------------------*\
	SITE HEAD
\*------------------------------------*/
.site-head {
  position: relative;
  width: 100%;
}

@media print {
  .site-head {
    display: none;
  }
}
.site-head__alerts__inner, .site-head__main__inner {
  position: relative;
  display: flex;
  height: 100%;
  width: 100%;
  max-width: var(--site-max-width, 1440px);
  margin: 0 auto;
  padding-left: var(--gutter-small, 20px);
  padding-right: var(--gutter-small, 20px);
}

.site-head__alerts {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .site-head__alerts {
    height: auto;
  }
}
.site-head__main {
  height: 75px;
}

.site-head__actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 15px;
  height: 100%;
  width: 300px;
  margin-left: auto;
  margin-right: 0;
}

.site-head__actions .icon {
  transition: all 300ms ease;
}

.site-head__actions__wishlist {
  display: flex;
  align-items: center;
}

.site-head__actions__basket {
  display: flex;
  align-items: center;
}

.site-head__actions__basket__count {
  margin-left: 3px;
}

/*------------------------------------*\
	SITE NAV
\*------------------------------------*/
.site-nav {
  display: flex;
  align-items: center;
  column-gap: 50px;
  height: 100%;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .site-nav {
    column-gap: 0;
  }
}
.site-nav__logo {
  display: flex;
  align-items: center;
  height: 100%;
  width: 160px;
}

@media screen and (max-width: 1024px) {
  .site-nav__logo {
    width: 50px;
  }
  .site-nav__logo--desktop {
    display: none;
  }
}
@media screen and (min-width: 1025px) {
  .site-nav__logo--mobile {
    display: none;
  }
}
.site-nav__logo img {
  height: auto;
  max-height: 75px;
  width: auto;
}

.site-nav__close {
  transition: all 180ms ease;
  position: absolute;
  top: 20px;
  right: 30px;
  background: transparent;
  border: none;
  cursor: pointer;
  opacity: 0;
}

.site-nav__close.is-active {
  opacity: 1;
}

.site-nav__close .icon {
  height: 30px;
  width: 30px;
}

.site-nav__menu {
  display: flex;
  column-gap: 25px;
}

@media screen and (max-width: 767px) {
  .site-nav__menu {
    display: none;
  }
}
.site-nav__menu__item {
  transition: all 180ms ease;
  text-transform: uppercase;
  text-decoration: none;
  margin-top: 5px;
  padding: 0 0 2px;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
}

.site-nav__menu__item:hover {
  padding-bottom: 2px;
  cursor: pointer;
}

.site-nav__burger {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 25px;
  cursor: pointer;
  background: none;
  padding: 5px;
  border: none;
  -webkit-tap-highlight-color: transparent;
}

@media screen and (min-width: 1025px) {
  .site-nav__burger {
    display: none;
  }
}
.site-nav__burger .icon {
  height: 30px;
  width: 35px;
  margin-bottom: 5px;
}

/*------------------------------------*\
	DESKTOP NAV
\*------------------------------------*/
.desktop-nav {
  position: absolute;
  height: 100%;
  width: fit-content !important;
  min-width: 750px;
  max-width: calc(100vw - 100px);
  margin: 0;
  padding: 0 170px 0 0;
  background: transparent;
  border: none;
  overflow: visible;
}

.desktop-nav::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -5;
  animation: desktop-nav-slide-in 0.35s ease-in-out;
}

@keyframes desktop-nav-slide-in {
  0% {
    right: 20%;
  }
  100% {
    right: 0;
  }
}
.desktop-nav::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 200%;
  height: 100%;
}

.desktop-nav__inner {
  display: grid;
  align-items: center;
  height: 75px;
  width: 100%;
  margin: 50px auto 0;
  padding: 0 20px;
}

.desktop-nav__menu {
  position: relative;
  height: calc(100% - 185px);
  width: fit-content;
  margin-left: 230px;
  padding-right: 25px;
}

.desktop-nav__menu__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 25px;
  height: 100%;
  width: fit-content;
  padding: 0;
  padding-bottom: 4px;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
}

.desktop-nav__menu__item a,
.desktop-nav__menu__item span {
  transition: all 180ms ease;
  padding-bottom: 3px;
  border-bottom: 2px solid transparent;
  white-space: nowrap;
}

.desktop-nav__menu__item .icon {
  height: 18px;
  width: 18px;
  margin-top: -6px;
  padding-bottom: 3px;
}

.desktop-nav__menu__item:hover {
  cursor: pointer;
}

.desktop-nav__menu__panel {
  display: none;
  flex-direction: column;
}

.desktop-nav__menu__panel.is-active {
  display: flex;
}

.desktop-nav__menu__drawer {
  transition: all 180ms ease;
  display: none;
  position: absolute;
  left: 100%;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-flow: column;
  grid-auto-rows: min-content;
  column-gap: 25px;
  row-gap: 20px;
  align-items: flex-start;
  height: 100%;
  width: fit-content;
  padding-left: 25px;
  border-left: 2px solid transparent;
  opacity: 0;
}

.desktop-nav__menu__drawer.is-active {
  display: grid;
  opacity: 1;
}

.desktop-nav__menu__drawer__item {
  transition: all 180ms ease;
  opacity: 0;
  white-space: nowrap;
}

.desktop-nav__menu__drawer__item.is-active {
  opacity: 1;
}

/*------------------------------------*\
	MOBILE NAV
\*------------------------------------*/
.mobile-nav,
.mobile-nav__panel {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  animation: mobile-nav-slide-in 0.2s ease-in-out;
}

@keyframes mobile-nav-slide-in {
  0% {
    left: -150vw;
  }
  100% {
    left: 0;
  }
}
.mobile-nav__header {
  display: flex;
  align-items: center;
  height: 55px;
}

.mobile-nav__header__title {
  display: flex;
  align-items: center;
  column-gap: 5px;
  line-height: 100%;
}

.mobile-nav__header__title__icon {
  position: relative;
  height: 15px;
  width: 15px;
  top: 1px;
  margin-left: 0;
  opacity: 1;
  animation: mobile-nav-title-enter 0.2s ease-in-out;
}

@keyframes mobile-nav-title-enter {
  0% {
    margin-left: -15px;
    opacity: 0;
  }
  100% {
    margin-left: 0;
    opacity: 1;
  }
}
.mobile-nav__header__close {
  display: flex;
  align-items: center;
  height: 100%;
  margin-right: 0;
  margin-left: auto;
}

.mobile-nav__header__close button {
  width: 50px;
  margin-right: -5px;
  padding-left: 10px;
  background: transparent;
  border: none;
}

.mobile-nav__header__close .icon {
  height: 25px;
  width: 25px;
}

.mobile-nav__list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 10px;
  height: 100%;
  padding: 0;
}

.mobile-nav__list__item:first-child {
  padding-top: 0;
  border-top: none;
}

.mobile-nav__list__item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.mobile-nav__list__item a,
.mobile-nav__list__item button {
  line-height: 16px;
  flex-grow: 1;
  text-align: left;
}

.mobile-nav__list__item .icon {
  position: relative;
  height: 15px;
  width: 15px;
  top: 1px;
}

/*------------------------------------*\
	FOOTER
\*------------------------------------*/
.footer {
  min-height: 400px;
  width: 100%;
}

@media print {
  .footer {
    display: none;
  }
}
.footer__cta {
  height: 80px;
}

.footer__cta__inner {
  height: 100%;
  width: 100%;
  margin: 0 auto;
}

.footer__inner {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-areas: "footer-columns footer-columns footer-columns footer-promo footer-promo" "footer-legal footer-legal footer-legal footer-legal footer-legal";
  height: 100%;
  width: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .footer__inner {
    grid-template-columns: 1fr;
    grid-template-areas: "footer-promo" "footer-columns" "footer-legal";
    column-gap: 0;
  }
}
.footer__columns {
  grid-area: footer-columns;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

@media screen and (max-width: 767px) {
  .footer__columns {
    grid-template-columns: 100%;
  }
}
.footer__columns__list li + li {
  margin-top: 5px;
}

.footer__columns__cta {
  grid-column: 1/-1;
}

.footer__promo {
  grid-area: footer-promo;
  width: 100%;
}

.footer__promo__logo img {
  height: auto;
  max-width: 300px;
}

.footer__legal {
  grid-area: footer-legal;
  width: 100%;
  text-align: center;
}

.cart-drawer {
  position: fixed;
  inset: 0 0 0 auto;
  width: min(28rem, 100vw);
  max-width: 100vw;
  height: 100vh;
  margin: 0;
  padding: 0;
  border: none;
  overflow: visible;
  background: var(--cart-drawer-bg, #fff);
  color: var(--cart-drawer-fg, inherit);
  translate: 100% 0;
  opacity: 0;
  transition: translate 250ms ease-out, opacity 200ms ease-out, overlay 250ms ease-out allow-discrete, display 250ms ease-out allow-discrete;
}

.cart-drawer:popover-open {
  translate: 0 0;
  opacity: 1;
}

@starting-style {
  .cart-drawer:popover-open {
    translate: 100% 0;
    opacity: 0;
  }
}
.cart-drawer::backdrop {
  background-color: transparent;
  transition: background-color 250ms ease-out;
}

.cart-drawer:popover-open::backdrop {
  background-color: rgba(0, 0, 0, 0.4);
}

@starting-style {
  .cart-drawer:popover-open::backdrop {
    background-color: transparent;
  }
}
.cart-drawer__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.cart-drawer__header {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 20px 25px;
  border-bottom: 1px solid var(--cart-drawer-divider, rgba(0, 0, 0, 0.1));
  flex-shrink: 0;
}

.cart-drawer__title {
  margin: 0;
  flex: 1;
}

.cart-drawer__full-link {
  font-size: 14px;
  text-decoration: underline;
}

.cart-drawer__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  font-size: 24px;
  line-height: 1;
  background: transparent;
  border: none;
  cursor: pointer;
}

.cart-drawer__body {
  flex: 1;
  overflow-y: auto;
  padding: 20px 25px;
  min-height: 0;
}

.cart-drawer__items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cart-drawer__item {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: 15px;
  align-items: start;
}

.cart-drawer__item__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
}

.cart-drawer__item__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.cart-drawer__item__title {
  margin: 0;
  font-size: 15px;
  line-height: 1.3;
}

.cart-drawer__item__title a {
  color: inherit;
  text-decoration: none;
}

.cart-drawer__item__variant {
  margin: 0;
  font-size: 13px;
  opacity: 0.7;
}

.cart-drawer__item__qty {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}

.cart-drawer__item__qty__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: transparent;
  border: 1px solid var(--cart-drawer-divider, rgba(0, 0, 0, 0.15));
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  line-height: 1;
}

.cart-drawer__item__qty__button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.cart-drawer__item__qty__value {
  min-width: 22px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.cart-drawer__item__price {
  font-weight: 600;
  margin-top: 4px;
}

.cart-drawer__item__remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: transparent;
  border: none;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  align-self: start;
}

.cart-drawer__empty {
  padding: 60px 25px 40px;
  text-align: center;
}

.cart-drawer__empty__title {
  margin: 0 0 10px;
}

.cart-drawer__empty__lead {
  margin: 0 0 25px;
  opacity: 0.7;
}

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

.cart-drawer__recs:empty {
  display: none;
}

.cart-drawer__recs {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--cart-drawer-divider, rgba(0, 0, 0, 0.1));
}

.cart-drawer__totals {
  padding: 20px 25px;
  border-top: 1px solid var(--cart-drawer-divider, rgba(0, 0, 0, 0.1));
  flex-shrink: 0;
}

.cart-drawer__totals__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 15px;
}

.cart-drawer__totals__row--subtotal {
  font-size: 18px;
  font-weight: 600;
}

.cart-drawer__totals__label {
  flex: 1;
}

.cart-drawer__totals__note {
  margin: 8px 0 0;
  font-size: 13px;
  opacity: 0.7;
}

/*----------------------------------------------
	TITLE
----------------------------------------------*/
.title {
  width: 100%;
}

.title__primary {
  font-size: var(--fs-section, 44px);
  line-height: calc(var(--fs-section, 44px) * 1.2);
}

@media screen and (max-width: 767px) {
  .title__primary {
    font-size: calc(var(--fs-section, 44px) - 6px);
    line-height: calc(var(--fs-section, 44px) * 1.2);
  }
}
.title__secondary {
  font-size: var(--fs-title, 32px);
  line-height: calc(var(--fs-title, 32px) * 1.3);
}

@media screen and (max-width: 767px) {
  .title__secondary {
    font-size: calc(var(--fs-title, 32px) - 6px);
    line-height: calc(var(--fs-title, 32px) * 1.3);
  }
}
.title__tertiary {
  font-size: var(--fs-heading, 28px);
  line-height: calc(var(--fs-heading, 28px) * 1.4);
}

.title__quaternary {
  font-size: var(--fs-base, 18px);
  line-height: calc(var(--fs-base, 18px) * 1.5);
}

/*----------------------------------------------
	ICON
----------------------------------------------*/
.icon {
  display: block;
  position: relative;
  height: var(--icon-size, 20px);
  width: var(--icon-size, 20px);
  max-width: 100%;
}

.icon--medium {
  height: var(--icon-size-md, 30px);
  width: var(--icon-size-md, 30px);
}

.icon--large {
  height: var(--icon-size-lg, 50px);
  width: var(--icon-size-lg, 50px);
}

.icon--extra-large {
  height: var(--icon-size-xl, 80px);
  width: var(--icon-size-xl, 80px);
}

/*----------------------------------------------
	WOOCOMMERCE COMPOSITE PRODUCTS
----------------------------------------------*/
.composite_form .composite_price p.price,
.single-product .composite_form .composite_price p.price {
  margin: 0 !important;
}

/*----------------------------------------------
	WOOCOMMERCE COUPON FORM
----------------------------------------------*/
.woocommerce-form-coupon .form__group--inline {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  margin-bottom: 10px;
}

.woocommerce-form-coupon .form__group--inline .form__input,
.woocommerce-form-coupon .form__group--inline .form__submit {
  width: fit-content;
}

@media screen and (max-width: 767px) {
  .woocommerce-form-coupon .form__group--inline {
    margin-bottom: 0;
  }
  .woocommerce-form-coupon .form__group--inline .form__input {
    width: 100%;
  }
  .woocommerce-form-coupon .form__group--inline .form__submit {
    margin-top: 10px;
  }
}
.woocommerce-form-coupon .form__group--inline .coupon-error-notice {
  display: block;
  width: 100%;
  margin-top: 10px;
}

/*----------------------------------------------
	WOOCOMMERCE NOTICES
----------------------------------------------*/
.woocommerce-notices-wrapper {
  grid-column: 1/-1;
  border: none;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  display: flex;
  grid-column: 1/-1;
  align-items: center;
  position: relative;
  max-width: var(--site-max-width, 1440px);
}

.woocommerce-message li + li,
.woocommerce-info li + li,
.woocommerce-error li + li {
  width: 100%;
}

.woocommerce-message:active, .woocommerce-message:focus,
.woocommerce-info:active,
.woocommerce-info:focus,
.woocommerce-error:active,
.woocommerce-error:focus {
  outline: none;
}

@media screen and (max-width: 767px) {
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    flex-direction: column;
    align-items: center;
  }
  .woocommerce-message > *,
  .woocommerce-info > *,
  .woocommerce-error > * {
    margin: 0 !important;
  }
  .woocommerce-message li,
  .woocommerce-info li,
  .woocommerce-error li {
    flex-direction: column;
  }
  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button {
    margin: 10px auto 0 0 !important;
  }
}
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
  white-space: nowrap;
  clear: both;
}

/*----------------------------------------------
	WOOCOMMERCE PRODUCT ATTRIBUTES
----------------------------------------------*/
.shop_attributes {
  width: 100%;
}

.shop_attributes .attribute_name_values {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .shop_attributes .attribute_name_values {
    display: block;
  }
  .shop_attributes .attribute_name_values tbody,
  .shop_attributes .attribute_name_values tr {
    display: block;
  }
}
.shop_attributes .attribute_name {
  white-space: nowrap;
}

/*----------------------------------------------
	WPFORMS
----------------------------------------------*/
.wpforms-container .wpforms-list-2-columns .wpforms-icon-choices {
  grid-template-columns: repeat(2, 1fr);
}

.wpforms-container .wpforms-list-3-columns .wpforms-icon-choices {
  grid-template-columns: repeat(3, 1fr);
}

.wpforms-container .wpforms-list-4-columns .wpforms-icon-choices {
  grid-template-columns: repeat(4, 1fr);
}

.wpforms-container .wpforms-icon-choices {
  display: grid;
}

.wpforms-container .wpforms-icon-choices-item {
  padding: 25% 0;
  text-align: center;
}

.wpforms-container .wpforms-icon-choices-item label {
  display: flex;
  flex-direction: column;
}

.wpforms-container .wpforms-icon-choices-item label input {
  display: none;
}

.wpforms-container .wpforms-icon-choices-icon svg {
  height: auto;
  max-width: 90%;
  width: 200px;
}

.wpforms-container .wpforms-hidden {
  display: none !important;
}

/*----------------------------------------------
	YAY PRICING
----------------------------------------------*/
.yaydp-original-prices {
  display: block;
}

.yaydp-original-prices + .yaydp-calculated-prices {
  display: block;
  margin-left: 15px;
}

@media screen and (max-width: 767px) {
  .yaydp-original-prices + .yaydp-calculated-prices {
    margin-top: 10px;
    margin-left: 0;
  }
}
.yaydp-discounted-price {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media screen and (max-width: 767px) {
  .yaydp-discounted-price {
    flex-direction: column;
    justify-content: center;
  }
}
.yaydp-calculated-prices-suffix {
  display: none;
}

/*----------------------------------------------
	WP BLOCK: MEDIA TEXT
----------------------------------------------*/
/* Structural overrides for wp-block-media-text are set per theme */
body {
  margin: 0;
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: inherit;
}

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.centered {
  text-align: center;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvcmUvX3Jlc2V0LnNjc3MiLCJmdW5jdGlvbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJjb3JlL19ncmlkLnNjc3MiLCJjb3JlL19pbWFnZXMuc2NzcyIsImZ1bmN0aW9ucy9fdHJhbnNpdGlvbnMuc2NzcyIsImNvcmUvX3Zpc2liaWxpdHkuc2NzcyIsInZlbmRvci9fc2xpY2suc2NzcyIsImxheW91dHMvX3dyYXBwZXIuc2NzcyIsImxheW91dHMvX3NlY3Rpb24uc2NzcyIsImZ1bmN0aW9ucy9faG92ZXIuc2NzcyIsImZ1bmN0aW9ucy9fYmFja2dyb3VuZC5zY3NzIiwibGF5b3V0cy9fc2l0ZS1oZWFkLnNjc3MiLCJsYXlvdXRzL19zaXRlLW5hdi5zY3NzIiwibGF5b3V0cy9fbmF2LWRlc2t0b3Auc2NzcyIsImxheW91dHMvX25hdi1tb2JpbGUuc2NzcyIsImxheW91dHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fY2FydC1kcmF3ZXIuc2NzcyIsImNvbXBvbmVudHMvX3RpdGxlLnNjc3MiLCJjb21wb25lbnRzL19pY29uLnNjc3MiLCJ0aGlyZC1wYXJ0eS9fd29vY29tbWVyY2UtY29tcG9zaXRlLXByb2R1Y3RzLnNjc3MiLCJ0aGlyZC1wYXJ0eS9fd29vY29tbWVyY2UtY291cG9uLWZvcm0uc2NzcyIsInRoaXJkLXBhcnR5L193b29jb21tZXJjZS1ub3RpY2VzLnNjc3MiLCJ0aGlyZC1wYXJ0eS9fd29vY29tbWVyY2UtcHJvZHVjdC1hdHRyaWJ1dGVzLnNjc3MiLCJ0aGlyZC1wYXJ0eS9fd3Bmb3Jtcy5zY3NzIiwidGhpcmQtcGFydHkvX3lheS1wcmljaW5nLnNjc3MiLCJibG9ja3MvX3dwLWJsb2NrLW1lZGlhLXRleHQuc2NzcyIsImdsb2JhbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7RUFJQzs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTs7O0FBSUQ7QUFBQTtFQUdDO0VBQ0E7OztBQUlEO0VBRUM7OztBQUlEO0FBQUE7RUFHQztFQUNBO0VBQ0E7OztBQUlEO0VBRUM7OztBQUlEO0FBQUE7RUFHQztFQUNBOzs7QUFJRDtBQUFBO0VBR0M7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7OztBQUlEO0VBRUM7OztBQVFEO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQzs7O0FDbEhEO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0VBO0FBQUE7QUFBQTtBQUlBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFFQzs7O0FBSUQ7RUFFQzs7O0FEeUNDO0VDM0NGO0lBTUU7OztBQU1GO0VBRUM7OztBRDZCQztFQy9CRjtJQU1FOzs7QUFNRjtFQUVDOzs7QURpQkM7RUNuQkY7SUFNRTs7O0FBTUY7RUFFQzs7O0FES0M7RUNQRjtJQU1FOzs7QUFNRjtFQUVDOzs7QURQQztFQ0tGO0lBTUU7OztBRFhBO0VDS0Y7SUFZRTs7O0FBWUY7RUFFQzs7O0FEL0JDO0VDNkJGO0lBTUU7OztBQ2xHSDtBQUFBO0FBQUE7QUNBQTtBQUFBO0FBQUE7QURNQTtFQUVDO0VBQ0E7OztBQUVBO0VDTEE7RURTQztFQUNBOzs7QUFNQTtFQUVDOzs7QUFVRjtFQUVDO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7OztBRTVDRjtBQUFBO0FBQUE7QUFJQTtFQUVDOzs7QUp1REU7RUlyREY7SUFJRTs7O0FKaURBO0VJM0NGO0lBSUU7OztBSnVDQTtFSWpDRjtJQUlFOzs7QUFRRDtFQUZEO0lBSUU7OztBQVFEO0VBRkQ7SUFJRTs7O0FDdERIO0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDQzs7O0FBR0Q7RUFDQztFQUNBOzs7QUFJRjtBQUFBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBSUY7RUFDQztFQUNBO0VBQ0E7OztBQUVBO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFJRjtFQUNDOzs7QUFJRDtBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUM5TkQ7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBVEQ7SUFXRTtJQUNBOzs7QUNVRjtFQUVDO0VBQ0E7OztBQUdBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFRRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBU0Q7RUFFQzs7O0FBT0Q7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7OztBQU9EO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7OztBQ3RJRjtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FDQUE7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FDRUE7QUFBQTtBQUFBO0FBSUE7RUFFQztFQUNBOzs7QUFFQTtFQUxEO0lBT0U7OztBQU9BO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBTUY7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBVnFCQztFVTVCRjtJQVdFOzs7QUFNRjtFQUVDOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VQL0REOzs7QU9xRUM7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7OztBQUVBO0VBRUM7OztBQ3ZGSjtBQUFBO0FBQUE7QUFJQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBWG1ERTtFV3pESDtJQVVFOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBOzs7QVhzQ0M7RVczQ0Y7SUFTRTs7RUFFQTtJQUVDOzs7QVg4QkQ7RVd0QkE7SUFFQzs7O0FBTUY7RUFFQztFQUNBO0VBQ0E7OztBQU1GO0VSekNBO0VRNkNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDOzs7QUFJRDtFQUVDO0VBQ0E7OztBQU1GO0VBRUM7RUFDQTs7O0FYMUJDO0VXdUJGO0lBT0U7OztBQUlEO0VSL0VEO0VRbUZFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBUUg7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBWHBFQztFVzBERjtJQWNFOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTs7O0FDN0lIO0FBQUE7QUFBQTtBQUlBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFFQztJQUVDOztFQUlEO0lBRUM7OztBQVFIO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtBQUFBO0VUekVGO0VTOEVHO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQzs7O0FBTUY7RUFFQztFQUNBOzs7QUFFQTtFQUVDOzs7QUFNRjtFVGxIRDtFU3NIRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDO0VBQ0E7OztBQUlEO0VUNUlGO0VTZ0pHO0VBQ0E7OztBQUVBO0VBRUM7OztBQ3ZLTDtBQUFBO0FBQUE7QUFXQTtBQUFBO0VBR0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDO0lBRUM7O0VBSUQ7SUFFQzs7O0FBVUY7RUFFQztFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7SUFFQztJQUNBOztFQUlEO0lBRUM7SUFDQTs7O0FBVUo7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTs7O0FBVUY7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtBQUFBO0VBR0M7RUFDQTtFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBOzs7QUN4Sko7QUFBQTtBQUFBO0FBSUE7RUFFQztFQUNBOzs7QUFFQTtFQUxEO0lBT0U7OztBQUlEO0VBRUM7OztBQUVBO0VBRUM7RUFDQTtFQUNBOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTs7O0FkdUJDO0VjaENGO0lBYUU7SUFDQTtJQUlBOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTs7O0FkSUM7RWNSRjtJQVFFOzs7QUFNQTtFQUVDOzs7QUFNRjtFQUVDOzs7QUFNRjtFQUVDO0VBQ0E7OztBQUlDO0VBRUM7RUFDQTs7O0FBUUg7RUFFQztFQUNBO0VBQ0E7OztBQzlGRjtFQUdDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7OztBQU1BO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztJQUVDO0lBQ0E7OztBQVFGO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQzs7O0FBSUQ7RUFFQztJQUVDOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTs7O0FBTUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFNRDtFQUVDO0VBQ0E7RUFDQTtFQUlBOzs7QUFNRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7RUFDQTs7O0FBSUM7RUFFQztFQUNBO0VBQ0E7RUFDQTs7O0FBTUY7RUFFQztFQUNBO0VBQ0E7RUFDQTs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBTUY7RUFFQztFQUNBO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFFQztFQUNBOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTs7O0FBTUY7RUFFQztFQUNBOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQVFGO0VBRUM7RUFDQTs7O0FBRUE7RUFFQzs7O0FBSUQ7RUFFQztFQUNBOzs7QUFJRDtFQUVDOzs7QUFVRDtFQUVDOzs7QUFKRjtFQVFDO0VBQ0E7RUFDQTs7O0FBTUQ7RUFFQztFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBTUY7RUFFQzs7O0FBSUQ7RUFFQztFQUNBO0VBQ0E7OztBQ2hXSDtBQUFBO0FBQUE7QUFJQTtFQUVDOzs7QUFFQTtFQUVDO0VBQ0E7OztBaEJrREM7RWdCckRGO0lBT0U7SUFDQTs7O0FBTUY7RUFFQztFQUNBOzs7QWhCb0NDO0VnQnZDRjtJQU9FO0lBQ0E7OztBQU1GO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUNoREY7QUFBQTtBQUFBO0FBSUE7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUVDO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUM3QkY7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUdDOzs7QUNMRDtBQUFBO0FBQUE7QUFNQztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0FBQUE7RUFHQzs7O0FuQjRDQTtFbUJ2REY7SUFpQkU7O0VBRUE7SUFFQzs7RUFJRDtJQUVDOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTs7O0FDM0NIO0FBQUE7QUFBQTtBQUlBO0VBRUM7RUFDQTs7O0FBSUQ7QUFBQTtBQUFBO0VBSUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7QUFBQTtBQUFBO0VBRUM7OztBQUlEO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFHQzs7O0FwQitCQztFb0JsREg7QUFBQTtBQUFBO0lBeUJFO0lBQ0E7O0VBRUE7QUFBQTtBQUFBO0lBRUM7O0VBSUQ7QUFBQTtBQUFBO0lBRUM7O0VBSUQ7QUFBQTtBQUFBO0lBRUM7OztBQU1GO0FBQUE7QUFBQTtFQUVDO0VBQ0E7OztBQzlERjtBQUFBO0FBQUE7QUFJQTtFQUVDOzs7QUFFQTtFQUVDOzs7QXJCbURDO0VxQnJERjtJQU1FOztFQUVBO0FBQUE7SUFHQzs7O0FBUUg7RUFFQzs7O0FDL0JGO0FBQUE7QUFBQTtBQU1DO0VBRUM7OztBQUlEO0VBRUM7OztBQUlEO0VBRUM7OztBQUlEO0VBRUM7OztBQUVBO0VBRUM7RUFDQTs7O0FBRUE7RUFFQztFQUNBOzs7QUFFQTtFQUVDOzs7QUFVRjtFQUVDO0VBQ0E7RUFDQTs7O0FBUUg7RUFFQzs7O0FDOURGO0FBQUE7QUFBQTtBQUlBO0VBRUM7OztBQUVBO0VBRUM7RUFDQTs7O0F2QmtEQztFdUJyREY7SUFPRTtJQUNBOzs7QUFRSDtFQUVDO0VBQ0E7RUFDQTs7O0F2QmlDRTtFdUJyQ0g7SUFRRTtJQUNBOzs7QUFNRjtFQUVDOzs7QUMzQ0Q7QUFBQTtBQUFBO0FBSUE7QUM2QkE7RUFFQztFQUNBOzs7QUFRRDtFQUVDO0VBQ0E7OztBQUlEO0VBRUM7RUFDQTtFQUNBOzs7QUFJRDtFQUVDIiwiZmlsZSI6Imdsb2JhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRSRVNFVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG59XG5cbmh0bWwge1xuXG5cdC1tb3otdGV4dC1zaXplLWFkanVzdDogbm9uZTtcblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuXHR0ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuXG59XG5cbmJvZHkge1xuXG5cdG1hcmdpbjogMDtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cbn1cblxuYm9keSwgaDEsIGgyLCBoMywgaDQsXG5wLCBmaWd1cmUsIGJsb2NrcXVvdGUsIGRsLCBkZCB7XG5cblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xuXG59XG5cbmgxLCBoMiwgaDMsIGg0IHtcblxuXHR0ZXh0LXdyYXA6IHByZXR0eTtcblxufVxuXG51bCxcbm9sIHtcblxuXHRtYXJnaW46IHVuc2V0O1xuXHRwYWRkaW5nOiB1bnNldDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblxufVxuXG5hOm5vdChbY2xhc3NdKSB7XG5cblx0dGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xuXG59XG5cbmltZyxcbnBpY3R1cmUge1xuXG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cbn1cblxuaW5wdXQsIGJ1dHRvbixcbnRleHRhcmVhLCBzZWxlY3Qge1xuXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXHRmb250LXNpemU6IGluaGVyaXQ7XG5cbn1cblxuYnV0dG9uIHtcblxuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxufVxuXG5maWVsZHNldCB7XG5cblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXG59XG5cbnRleHRhcmVhIHtcblxuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbn1cblxudGV4dGFyZWE6bm90KFtyb3dzXSkge1xuXG5cdG1pbi1oZWlnaHQ6IDEwZW07XG5cbn1cblxuLy8gUG9wb3ZlciByZXNldCDigJQgZHJvcCB0aGUgVUEtZGVmYXVsdCBzb2xpZCBib3JkZXIgKyAwLjI1ZW0gcGFkZGluZyBvbmx5LlxuLy8gU2l6aW5nICh3aWR0aC9oZWlnaHQpIGlzIHRoZSBwb3BvdmVyJ3Mgb3duIGNvbmNlcm47IHRoZSBtZW51IHBvcG92ZXJzXG4vLyAoZGVza3RvcC1uYXYsIG1vYmlsZS1uYXYpIHNldCB0aGVpciBvd24gd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCUgZXhwbGljaXRseSxcbi8vIGFuZCB0aGUgY2FydC1kcmF3ZXIgKyBmdXR1cmUgc2lkZS1wYW5lbCBwb3BvdmVycyBuZWVkIHRoZWlyIG93biBkaW1lbnNpb25zLlxuKltwb3BvdmVyXSB7XG5cblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXG59XG5cbjp0YXJnZXQge1xuXG5cdHNjcm9sbC1tYXJnaW4tYmxvY2s6IDVleDtcblxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0TUVESUEgUVVFUllcblxuXHRXcmFwcyBjb250ZW50IGluIHRoZSBhcHByb3ByaWF0ZSBtZWRpYSBxdWVyeS5cblxuXHRVc2FnZTpcblx0LmJsb2NrIHtcblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4JykgeyAuLi4gfVxuXHR9XG5cblx0QXZhaWxhYmxlIGFsaWFzZXM6XG5cdHBvcnRyYWl0LCBsYW5kc2NhcGVcblx0NzY4LCA3NjgtcGx1c1xuXHQ5MDAsIDkwMC1wbHVzXG5cdDEwMjQsIDEwMjQtcGx1c1xuXHQxNDQwLCAxNDQwLXBsdXNcblx0MTkyMCwgMTkyMC1wbHVzXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kYnJlYWtwb2ludC0tcG9ydHJhaXQ6ICAgICcob3JpZW50YXRpb246IHBvcnRyYWl0KSc7XG4kYnJlYWtwb2ludC0tbGFuZHNjYXBlOiAgICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknO1xuXG4kYnJlYWtwb2ludC0tNzY4OiAgICAgICAgICcobWF4LXdpZHRoOiA3NjdweCknO1xuJGJyZWFrcG9pbnQtLTc2OC1wbHVzOiAgICAnKG1pbi13aWR0aDogNzY4cHgpJztcblxuJGJyZWFrcG9pbnQtLTkwMDogICAgICAgICAnKG1heC13aWR0aDogOTAwcHgpJztcbiRicmVha3BvaW50LS05MDAtcGx1czogICAgJyhtaW4td2lkdGg6IDkwMXB4KSc7XG5cbiRicmVha3BvaW50LS0xMDI0OiAgICAgICAgJyhtYXgtd2lkdGg6IDEwMjRweCknO1xuJGJyZWFrcG9pbnQtLTEwMjQtcGx1czogICAnKG1pbi13aWR0aDogMTAyNXB4KSc7XG5cbiRicmVha3BvaW50LS0xNDQwOiAgICAgICAgJyhtYXgtd2lkdGg6IDE0MzlweCknO1xuJGJyZWFrcG9pbnQtLTE0NDAtcGx1czogICAnKG1pbi13aWR0aDogMTQ0MHB4KSc7XG5cbiRicmVha3BvaW50LS0xOTIwOiAgICAgICAgJyhtYXgtd2lkdGg6IDE5MTlweCknO1xuJGJyZWFrcG9pbnQtLTE5MjAtcGx1czogICAnKG1pbi13aWR0aDogMTkyMHB4KSc7XG5cbkBtaXhpbiBtZWRpYS1xdWVyeSgkYWxpYXMsICRzY3JlZW4tb25seTogdHJ1ZSkge1xuXG5cdCRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICcnO1xuXG5cdEBpZiAoJGFsaWFzID09ICdwb3J0cmFpdCcpICAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLXBvcnRyYWl0OyB9XG5cdEBpZiAoJGFsaWFzID09ICdsYW5kc2NhcGUnKSAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLWxhbmRzY2FwZTsgfVxuXG5cdEBpZiAoJGFsaWFzID09ICc3NjgnKSAgICAgICAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTc2ODsgfVxuXHRAaWYgKCRhbGlhcyA9PSAnNzY4LXBsdXMnKSAgICB7ICRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS03NjgtcGx1czsgfVxuXG5cdEBpZiAoJGFsaWFzID09ICc5MDAnKSAgICAgICAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTkwMDsgfVxuXHRAaWYgKCRhbGlhcyA9PSAnOTAwLXBsdXMnKSAgICB7ICRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS05MDAtcGx1czsgfVxuXG5cdEBpZiAoJGFsaWFzID09ICcxMDI0JykgICAgICAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTEwMjQ7IH1cblx0QGlmICgkYWxpYXMgPT0gJzEwMjQtcGx1cycpICAgeyAkY2FsY3VsYXRlZC1icmVha3BvaW50OiAkYnJlYWtwb2ludC0tMTAyNC1wbHVzOyB9XG5cblx0QGlmICgkYWxpYXMgPT0gJzE0NDAnKSAgICAgICAgeyAkY2FsY3VsYXRlZC1icmVha3BvaW50OiAkYnJlYWtwb2ludC0tMTQ0MDsgfVxuXHRAaWYgKCRhbGlhcyA9PSAnMTQ0MC1wbHVzJykgICB7ICRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS0xNDQwLXBsdXM7IH1cblxuXHRAaWYgKCRhbGlhcyA9PSAnMTkyMCcpICAgICAgICB7ICRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS0xOTIwOyB9XG5cdEBpZiAoJGFsaWFzID09ICcxOTIwLXBsdXMnKSAgIHsgJGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTE5MjAtcGx1czsgfVxuXG5cdEBpZiAoJGNhbGN1bGF0ZWQtYnJlYWtwb2ludCAhPSAnJykge1xuXG5cdFx0QGlmICgkc2NyZWVuLW9ubHkgPT0gdHJ1ZSkge1xuXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAjeyRjYWxjdWxhdGVkLWJyZWFrcG9pbnR9IHtcblxuXHRcdFx0XHRAY29udGVudDtcblxuXHRcdFx0fVxuXG5cdFx0fSBAZWxzZSB7XG5cblx0XHRcdEBtZWRpYSBhbGwgYW5kICN7JGNhbGN1bGF0ZWQtYnJlYWtwb2ludH0ge1xuXG5cdFx0XHRcdEBjb250ZW50O1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG59XG4iLCJAdXNlICcuLi9mdW5jdGlvbnMvbWVkaWEtcXVlcnknIGFzICo7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdEdSSURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5ncmlkIHtcblxuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLWNvbHVtbjogMSAvIC0xO1xuXHRyb3ctZ2FwOiB2YXIoLS1ncmlkLWdhcCwgMjVweCk7XG5cdGNvbHVtbi1nYXA6IHZhcigtLWdyaWQtZ2FwLCAyNXB4KTtcblx0d2lkdGg6IDEwMCU7XG5cblx0Ji0tMSB7XG5cblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XG5cblx0fVxuXG5cdCYtLTIge1xuXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpIHtcblxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmLS0zIHtcblxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCc3NjgnKSB7XG5cblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcblxuXHRcdH1cblxuXHR9XG5cblx0Ji0tNCB7XG5cblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEwMCU7XG5cblx0XHR9XG5cblx0fVxuXG5cdCYtLTUge1xuXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpIHtcblxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmLS02IHtcblxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIG1pbm1heCgwLCAxZnIpKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0Jykge1xuXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG5cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG5cblx0XHR9XG5cblx0fVxuXG5cdC8vIEFzeW1tZXRyaWMgdHdvLWNvbHVtbiBzcGxpdC4gQ29sdW1uIHJhdGlvIHZpYSB0aGUgYC0tZ3JpZC1jb2x1bW5zYFxuXHQvLyBjdXN0b20gcHJvcCBvbiB0aGUgZ3JpZCBlbGVtZW50OlxuXHQvLyAgIDxkaXYgY2xhc3M9XCJncmlkIGdyaWQtLXNwbGl0XCIgc3R5bGU9XCItLWdyaWQtY29sdW1uczogMS4xNWZyIDAuODVmcjtcIj5cblx0Ly8gRGVmYXVsdCBpcyBhIHBsYWluIDE6MSBzcGxpdCAoZXF1aXZhbGVudCB0byBgLmdyaWQtLTJgKSwgc28gdGhlXG5cdC8vIG1vZGlmaWVyIGlzIHN0aWxsIHVzZWZ1bCB3aGVuIHRoZSBjb2x1bW5zIGNvbWUgZnJvbSBKUyBvciBhblxuXHQvLyB1cHN0cmVhbSBjdXN0b20gcHJvcC4gQ29sbGFwc2VzIHRvIHNpbmdsZS1jb2x1bW4gYXQgMTAyNC5cblx0Ji0tc3BsaXQge1xuXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1ncmlkLWNvbHVtbnMsIDFmciAxZnIpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzEwMjQnKSB7XG5cblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcblxuXHRcdH1cblxuXHR9XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdElNQUdFU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQHVzZSAnLi4vZnVuY3Rpb25zL3RyYW5zaXRpb25zJyBhcyAqO1xuXG4uaG92ZXItem9vbSB7XG5cblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0aW1nIHtcblxuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24tYWxsO1xuXG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdH1cblxuXHQmOmhvdmVyIHtcblxuXHRcdGltZyB7XG5cblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG5cblx0XHR9XG5cblx0fVxuXG59XG5cbi5pbWcge1xuXG5cdCYtLWNvdmVyIHtcblxuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHR9XG5cblx0Ji0tY29udGFpbiB7XG5cblx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHR9XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdFRSQU5TSVRJT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWl4aW4gdHJhbnNpdGlvbi1hbGwge1xuXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuXG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWFsbC0tc2xvdyB7XG5cblx0dHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7XG5cbn1cblxuQG1peGluIHRyYW5zaXRpb24tYWxsLS1xdWljayB7XG5cblx0dHJhbnNpdGlvbjogYWxsIDE4MG1zIGVhc2U7XG5cbn1cblxuQG1peGluIHRyYW5zaXRpb24tYWxsLS1yYXBpZCB7XG5cblx0dHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcywgdmlzaWJpbGl0eSAwbXM7XG5cbn1cblxuQG1peGluIHRyYW5zaXRpb24tYWxsLS1pbi1zbG93IHtcblxuXHR0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZS1pbjtcblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zL21lZGlhLXF1ZXJ5JyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRWSVNJQklMSVRZXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaXMtaGlkZGVuIHtcblxuXHRkaXNwbGF5OiBub25lO1xuXG5cdCYtLW1vYmlsZSB7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cblx0XHR9XG5cblx0fVxuXG5cdCYtLXRhYmxldCB7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnMTAyNCcpIHtcblxuXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmLS1kZXNrdG9wIHtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0LXBsdXMnKSB7XG5cblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuXHRcdH1cblxuXHR9XG5cblx0Ji0tcG9ydHJhaXQge1xuXG5cdFx0QG1lZGlhIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcblxuXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmLS1sYW5kc2NhcGUge1xuXG5cdFx0QG1lZGlhIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG5cblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuXHRcdH1cblxuXHR9XG5cbn1cbiIsIi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcblx0dG91Y2gtYWN0aW9uOiBwYW4teTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWxpc3Qge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdFxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cdFxuXHQmLmRyYWdnaW5nIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Y3Vyc29yOiBoYW5kO1xuXHR9XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHR9XG5cdFxuXHQmOmFmdGVyIHtcblx0XHRjbGVhcjogYm90aDtcblx0fVxuXHRcblx0LnNsaWNrLWxvYWRpbmcgJiB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG59XG5cbi5zbGljay1zbGlkZSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG1pbi1oZWlnaHQ6IDFweDtcblx0XG5cdFtkaXI9J3J0bCddICYge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXHRcblx0aW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHRcblx0Ji5zbGljay1sb2FkaW5nIGltZyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0Ji5kcmFnZ2luZyBpbWcge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cdFxuXHQuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0XG5cdC5zbGljay1sb2FkaW5nICYge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXHRcblx0LnNsaWNrLXZlcnRpY2FsICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0fVxufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuXG4vKiBMaWdodGJveCAqL1xuLnNsaWNrLWxpZ2h0Ym94IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDk5OTk7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQ6IGJsYWNrO1xuXHQtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZVxufVxuXG4uc2xpY2stbGlnaHRib3ggLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudFxufVxuXG4uc2xpY2stbGlnaHRib3ggLnNsaWNrLXByZXYge1xuXHRsZWZ0OiAxNXB4XG59XG5cbi5zbGljay1saWdodGJveCAuc2xpY2stbmV4dCB7XG5cdHJpZ2h0OiAxNXB4XG59XG5cbi5zbGljay1saWdodGJveC1oaWRlIHtcblx0b3BhY2l0eTogMFxufVxuXG4uc2xpY2stbGlnaHRib3gtaGlkZS5zbGljay1saWdodGJveC1pZSB7XG5cdC1tcy1maWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKSc7XG5cdGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKVxufVxuXG4uc2xpY2stbGlnaHRib3gtaGlkZS1pbml0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC05OTk5cHg7XG5cdG9wYWNpdHk6IDBcbn1cblxuLnNsaWNrLWxpZ2h0Ym94LWhpZGUtaW5pdC5zbGljay1saWdodGJveC1pZSB7XG5cdC1tcy1maWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKSc7XG5cdGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKVxufVxuXG4uc2xpY2stbGlnaHRib3gtaW5uZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJVxufVxuXG4uc2xpY2stbGlnaHRib3gtc2xpY2staXRlbSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0b3ZlcmZsb3c6IGhpZGRlblxufVxuXG4uc2xpY2stbGlnaHRib3gtc2xpY2staXRlbTpiZWZvcmUge1xuXHRjb250ZW50OiAnJztcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdG1hcmdpbi1yaWdodDogLTAuMjVlbVxufVxuXG4uc2xpY2stY2FwdGlvbi1ib3R0b20gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWNhcHRpb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLWJvdHRvbTogMjBweFxufVxuXG4uc2xpY2stY2FwdGlvbi1keW5hbWljIC5zbGljay1saWdodGJveC1zbGljay1pdGVtIC5zbGljay1saWdodGJveC1zbGljay1pdGVtIC5zbGljay1saWdodGJveC1zbGljay1jYXB0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4uc2xpY2stbGlnaHRib3gtc2xpY2staXRlbS1pbm5lciB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWF4LXdpZHRoOiA5MCU7XG5cdG1heC1oZWlnaHQ6IDkwJVxufVxuXG4uc2xpY2stbGlnaHRib3gtc2xpY2staW1nIHtcblx0bWFyZ2luOiAwIGF1dG87XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXgtd2lkdGg6IDkwJTtcblx0bWF4LWhlaWdodDogOTAlXG59XG5cbi5zbGljay1saWdodGJveC1zbGljay1jYXB0aW9uIHtcblx0bWFyZ2luOiAxMHB4IDAgMDtcblx0Y29sb3I6IHdoaXRlXG59XG5cbi5zbGljay1saWdodGJveC1jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxNXB4O1xuXHRyaWdodDogMTVweDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMjBweDtcblx0d2lkdGg6IDIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRmb250LXNpemU6IDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiBub25lXG59XG5cbi5zbGljay1saWdodGJveC1jbG9zZTpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmVcbn1cblxuLnNsaWNrLWxpZ2h0Ym94LWNsb3NlOmJlZm9yZSB7XG5cdGZvbnQtZmFtaWx5OiAnc2xpY2snO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRjb2xvcjogd2hpdGU7XG5cdG9wYWNpdHk6IDAuODU7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRjb250ZW50OiAnw5cnXG59IiwiLy8gV3JhcHBlciDigJQgdW5pdmVyc2FsIHNpdGUtd2lkdGggY29udGFpbmVyLlxuLy9cbi8vIFRoZSBjYW5vbmljYWwgY29udGFpbmVyIHRoYXQgY29uc3RyYWlucyBjb250ZW50IHRvIHRoZSBzaXRlJ3MgbWF4LXdpZHRoIHdpdGhcbi8vIGhvcml6b250YWwgZ3V0dGVyIHBhZGRpbmcuIFVzZWQgZGlyZWN0bHkgb24gcGFnZXMgd2l0aG91dCBmdWxsLWJsZWVkIGNvbG91cmVkXG4vLyBiYWNrZ3JvdW5kcywgYW5kIGF1dG8tZXh0ZW5kZWQgb250byB0aGUgZmlyc3QgPGRpdj4gY2hpbGQgb2YgZXZlcnkgLnNlY3Rpb25cbi8vIChzZWUgX3NlY3Rpb24uc2NzcyBmb3IgdGhhdCBleGNlcHRpb24pLlxuLy9cbi8vIFRoZW1lcyBvdmVycmlkZSAtLXNpdGUtbWF4LXdpZHRoIGFuZCAtLWd1dHRlci1zbWFsbCB2aWEgOnJvb3QgaW4gdGhlaXIgc2V0dGluZ3Ncbi8vIHNjc3M7IGRlZmF1bHRzIHByb3ZpZGVkIGhlcmUgbWVhbiBnbG9iYWwuY3NzIHdvcmtzIHN0YW5kYWxvbmUgaWYgYSB0aGVtZSBpc1xuLy8gbWlzc2luZy5cblxuLndyYXBwZXIge1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdG1heC13aWR0aDogdmFyKC0tc2l0ZS1tYXgtd2lkdGgsIDE0NDBweCk7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWd1dHRlci1zbWFsbCwgMjBweCk7XG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLWd1dHRlci1zbWFsbCwgMjBweCk7XG5cblx0QG1lZGlhIHByaW50IHtcblxuXHRcdG1heC13aWR0aDogdW5zZXQ7XG5cdFx0cGFkZGluZzogMDtcblxuXHR9XG5cbn1cbiIsIi8vIFNlY3Rpb24g4oCUIGZ1bGwtYmxlZWQgYmFja2dyb3VuZCB0b25lIHdyYXBwZXIuXG4vL1xuLy8gT25lIG9mIHRocmVlIHN0cnVjdHVyYWwgbGF5ZXJzIChzZWN0aW9uIC8gd3JhcHBlciAvIGNvbXBvbmVudCkuIE93bnMgdmVydGljYWxcbi8vIHJoeXRobSArIHRvbmUgb25seS4gVHdvIHRvbmUgdm9jYWJ1bGFyaWVzIGNvZXhpc3QgZHVyaW5nIHRoZSBzZWN0aW9uLXdhbGtcbi8vIG1pZ3JhdGlvbjogbGVnYWN5IGNvbG91ci1uYW1lcyAoLnNlY3Rpb24tLW5lYXItYmxhY2sgLyAuLS1vZmYtd2hpdGUgL1xuLy8gLi0tZ3JlZW4sIGZyb20gdGhlIHJldGlyZWQgQkVNLWNvbnZlcnQgZXJhKSBhbmQgdGhlIGN1cnJlbnQgc2VtYW50aWMgZ3JvdW5kc1xuLy8gKC5zZWN0aW9uLS1hbmNob3IgLyAuLS1icmlnaHQgLyAuLS1wcmltYXJ5KSB0aGUgZGVzaWduIHBoYXNlIG5vdyBhdXRob3JzXG4vLyBkaXJlY3RseS4gTmV3IGJyYW5kIHdvcmsgdXNlcyB0aGUgc2VtYW50aWMgZ3JvdW5kczsgY29sb3VyLW5hbWVzIGFyZSByZXRhaW5lZFxuLy8gZm9yIHNlY3Rpb25zIG5vdCB5ZXQgbWlncmF0ZWQuIEVhY2ggdGhlbWUgZGVmaW5lcyB0aGUgbWF0Y2hpbmcgLS17dG9rZW59LlxuLy9cbi8vIENPTlRFTlQgV1JBUFBFUiDigJQgYC5zZWN0aW9uX19pbm5lcmAgKGFkZGVkIDIwMjYtMDctMzApLiBUaGUgY2Fub25pY2FsIHdheVxuLy8gdG8gY29uc3RyYWluIHRoZSBzZWN0aW9uJ3MgY29udGVudCBjb2x1bW4gYXQgd3JhcHBlciB3aWR0aCArIGd1dHRlci5cbi8vIEV4cGxpY2l0IEJFTSBjaGlsZCBvZiBgLnNlY3Rpb25gLCBhcHBsaWVkIGluIG1hcmt1cDpcbi8vXG4vLyAgIDxzZWN0aW9uIGNsYXNzPVwic2VjdGlvbiBzZWN0aW9uLS1jYXJib25cIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbl9faW5uZXJcIj5cbi8vICAgICAgIOKApmNvbnRlbnTigKZcbi8vICAgICA8L2Rpdj5cbi8vICAgPC9zZWN0aW9uPlxuLy9cbi8vIEtlcHQgZXhwbGljaXQgcmF0aGVyIHRoYW4gYXV0by13cmFwcGluZyBldmVyeSBkaXJlY3QgPGRpdj4gY2hpbGQgYmVjYXVzZVxuLy8gYXV0by13cmFwIGZvcmNlZCBtYXJnaW46MCBhdXRvIG9udG8gZXZlcnkgY29udGVudCBlbGVtZW50LCB3aXBpbmcgdGhlaXJcbi8vIG93biBtYXJnaW4tYm90dG9tIHJ1bGVzIGFuZCBicmVha2luZyB2ZXJ0aWNhbCByaHl0aG0gaW5zaWRlIHRoZSBzZWN0aW9uLlxuLy9cbi8vIFRoZSBsZWdhY3kgYD4gZGl2YCBhdXRvLXdyYXAgcnVsZSBiZWxvdyBpcyByZXRhaW5lZCBmb3Igb2xkZXIgc2VjdGlvbnNcbi8vIHRoYXQgZG9uJ3QgdXNlIGAuc2VjdGlvbl9faW5uZXJgIHlldCDigJQgbWlycm9ycyB0aGUgLndyYXBwZXIgcHJpbWl0aXZlJ3Ncbi8vIHJ1bGVzIHBlciB0aGUgbm90ZSBmdXJ0aGVyIGRvd24uIE5ldyBzZWN0aW9ucyB1c2UgYC5zZWN0aW9uX19pbm5lcmAuXG4vL1xuLy8gVG9uZSBtb2RpZmllcnMgcmVmZXJlbmNlIGJyYW5kIGNvbG91ciBDU1MgY3VzdG9tIHByb3BlcnRpZXMuIEVhY2ggY2hpbGQgdGhlbWVcbi8vIGRlY2xhcmVzIHRoZSBicmFuZCBwYWxldHRlIGluIGl0cyBzZXR0aW5ncyBhcyA6cm9vdCBjdXN0b20gcHJvcGVydGllczsgdGhlXG4vLyBzZWN0aW9uIG1vZGlmaWVycyBiZWxvdyByZXNvbHZlIHRob3NlIGF0IHJlbmRlciB0aW1lLiBUaGVtZXMgdGhhdCBkb24ndFxuLy8gcHVibGlzaCBhIGdpdmVuIHRvbmUgc2ltcGx5IHdvbid0IGhhdmUgYSBzZWN0aW9uIHVzaW5nIGl0LlxuXG4uc2VjdGlvbiB7XG5cblx0cGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb24tcGFkZGluZywgOTZweCk7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uLXBhZGRpbmcsIDk2cHgpO1xuXG5cdC8vIEV4cGxpY2l0IGNvbnRlbnQgd3JhcHBlciDigJQgdGhlIG5ldyBjb252ZW50aW9uLlxuXHQmX19pbm5lciB7XG5cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiB2YXIoLS1zaXRlLW1heC13aWR0aCwgMTQ0MHB4KTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRwYWRkaW5nLWxlZnQ6IHZhcigtLWd1dHRlci1zbWFsbCwgMjBweCk7XG5cdFx0cGFkZGluZy1yaWdodDogdmFyKC0tZ3V0dGVyLXNtYWxsLCAyMHB4KTtcblxuXHR9XG5cblx0Ly8gTGVnYWN5IGF1dG8td3JhcCBvbiB0aGUgZmlyc3QgZGlyZWN0IDxkaXY+IGNoaWxkLiBLZXB0IGZvciBiYWNrd2FyZFxuXHQvLyBjb21wYXRpYmlsaXR5IHdpdGggc2VjdGlvbnMgbm90IHlldCBtaWdyYXRlZCB0byBgLnNlY3Rpb25fX2lubmVyYC5cblx0Ly8gU2FtZSBydWxlcyBhcyB0aGUgYC53cmFwcGVyYCBwcmltaXRpdmUgKGlubGluZWQgYmVjYXVzZSBTYXNzIEBleHRlbmRcblx0Ly8gY2Fubm90IHJlYWNoIGFjcm9zcyBAdXNlL0Bmb3J3YXJkIG1vZHVsZSBib3VuZGFyaWVzKS5cblx0PiBkaXY6bm90KC5zZWN0aW9uX19pbm5lcikge1xuXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1heC13aWR0aDogdmFyKC0tc2l0ZS1tYXgtd2lkdGgsIDE0NDBweCk7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0cGFkZGluZy1sZWZ0OiB2YXIoLS1ndXR0ZXItc21hbGwsIDIwcHgpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IHZhcigtLWd1dHRlci1zbWFsbCwgMjBweCk7XG5cblx0fVxuXG5cdC8vIFN0cnVjdHVyYWwgbW9kaWZpZXIg4oCUIGRyb3AgdGhlIHZlcnRpY2FsIHJoeXRobSBzbyBhIGZ1bGwtYmxlZWQgY2hpbGRcblx0Ly8gKGUuZy4gYSBzcGxpdCBoZXJvIHdob3NlIG1lZGlhIGNvbHVtbiBzaG91bGQgcmVhY2ggdGhlIHNlY3Rpb24gZWRnZXMpXG5cdC8vIGNhbiBmaWxsIHRoZSBzZWN0aW9uJ3MgZnVsbCBoZWlnaHQuIE92ZXJyaWRlcyB0aGUgLS1zZWN0aW9uLXBhZGRpbmdcblx0Ly8gY3VzdG9tIHByb3BlcnR5IHRoZSBiYXNlIHJ1bGUgcmVhZHM7IHRoZSBjaGlsZCBvd25zIGl0cyBvd24gYnJlYXRoaW5nIHJvb20uXG5cblx0Ji0tZmx1c2gge1xuXG5cdFx0LS1zZWN0aW9uLXBhZGRpbmc6IDA7XG5cblx0fVxuXG5cdC8vIEJyYW5kLXRvbmUgbW9kaWZpZXJzIOKAlCBjb2xvdXItbmFtZWQsIG5ldmVyIHJvbGUtbmFtZWQuXG5cdC8vIEVhY2ggdGhlbWUgZGVmaW5lcyB0aGUgY29ycmVzcG9uZGluZyAtLXtjb2xvdXJ9IGN1c3RvbSBwcm9wZXJ0eS5cblxuXHQmLS1uZWFyLWJsYWNrIHtcblxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5lYXItYmxhY2spO1xuXHRcdGNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpO1xuXG5cdH1cblxuXHQmLS1vZmYtd2hpdGUge1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb2ZmLXdoaXRlKTtcblx0XHRjb2xvcjogdmFyKC0tbmVhci1ibGFjayk7XG5cblx0fVxuXG5cdCYtLWdyZWVuIHtcblxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuKTtcblx0XHRjb2xvcjogdmFyKC0tb2ZmLXdoaXRlKTtcblxuXHR9XG5cblx0Ji0tc2FmZnJvbiB7XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYWZmcm9uKTtcblx0XHRjb2xvcjogdmFyKC0tbmVhci1ibGFjayk7XG5cblx0fVxuXG5cdCYtLWZvcmVzdCB7XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mb3Jlc3QpO1xuXHRcdGNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpO1xuXG5cdH1cblxuXHQvLyBTZW1hbnRpYyBncm91bmRzIOKAlCB0aGUgZGVzaWduLXBoYXNlIHZvY2FidWxhcnkgKG1vY2t1cC1hdXRob3JlZCkuIEVhY2hcblx0Ly8gdGhlbWUgZGVjbGFyZXMgdGhlIG1hdGNoaW5nIC0tYW5jaG9yIC8gLS1icmlnaHQgLyAtLXByaW1hcnkgY3VzdG9tIHByb3BzLlxuXG5cdCYtLWFuY2hvciB7XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hbmNob3IpO1xuXHRcdGNvbG9yOiB2YXIoLS1icmlnaHQpO1xuXG5cdH1cblxuXHQmLS1icmlnaHQge1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJpZ2h0KTtcblx0XHRjb2xvcjogdmFyKC0tYW5jaG9yKTtcblxuXHR9XG5cblx0Ji0tcHJpbWFyeSB7XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5KTtcblx0XHRjb2xvcjogdmFyKC0tYnJpZ2h0KTtcblxuXHR9XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdEhPVkVSXG5cblx0R2VuZXJhdGVzIGhvdmVyLCBmb2N1cywgYW5kIGFjdGl2ZSBzdGF0ZXMuXG5cdFBhc3MgJGluY2x1ZGUtYWN0aXZlOiB0cnVlIHRvIGFsc28gaW5jbHVkZVxuXHQ6YWN0aXZlIGFuZCAuaXMtYWN0aXZlIHN0YXRlcy5cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBtaXhpbiBob3ZlcigkaW5jbHVkZS1hY3RpdmU6IGZhbHNlKSB7XG5cblx0QGlmICgkaW5jbHVkZS1hY3RpdmUpIHtcblxuXHRcdCY6dGFyZ2V0LFxuXHRcdCY6YWN0aXZlLFxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmLmlzLWFjdGl2ZSB7XG5cblx0XHRcdEBjb250ZW50O1xuXG5cdFx0fVxuXG5cdH0gQGVsc2Uge1xuXG5cdFx0Jjp0YXJnZXQsXG5cdFx0Jjpmb2N1cyxcblx0XHQmOmhvdmVyIHtcblxuXHRcdFx0QGNvbnRlbnQ7XG5cblx0XHR9XG5cblx0fVxuXG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRCQUNLR1JPVU5EXG5cblx0U2hvcnRoYW5kIGZvciByZ2JhIGJhY2tncm91bmQgd2l0aCBvcGFjaXR5LlxuXG5cdFVzYWdlOiBAaW5jbHVkZSBiYWNrZ3JvdW5kKCRkYXJrLWNoYXJjb2FsLCAwLjgpO1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1peGluIGJhY2tncm91bmQoJGNvbG9yLCAkb3BhY2l0eTogMC41KSB7XG5cblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRvcGFjaXR5KTtcblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRTSVRFIEhFQURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zaXRlLWhlYWQge1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cblx0QG1lZGlhIHByaW50IHtcblxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0fVxuXG5cdCZfX2FsZXJ0cyxcblx0Jl9fbWFpbiB7XG5cblx0XHQmX19pbm5lciB7XG5cblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1heC13aWR0aDogdmFyKC0tc2l0ZS1tYXgtd2lkdGgsIDE0NDBweCk7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdHBhZGRpbmctbGVmdDogdmFyKC0tZ3V0dGVyLXNtYWxsLCAyMHB4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IHZhcigtLWd1dHRlci1zbWFsbCwgMjBweCk7XG5cblx0XHR9XG5cblx0fVxuXG5cdCZfX2FsZXJ0cyB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRtaW4taGVpZ2h0OiA1MHB4O1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHR9XG5cblx0fVxuXG5cdCZfX21haW4ge1xuXG5cdFx0aGVpZ2h0OiA3NXB4O1xuXG5cdH1cblxuXHQmX19hY3Rpb25zIHtcblxuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGNvbHVtbi1nYXA6IDE1cHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAzMDBweDtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cblx0XHQuaWNvbiB7XG5cblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24tYWxsO1xuXG5cdFx0fVxuXG5cdFx0Jl9fd2lzaGxpc3Qge1xuXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdH1cblxuXHRcdCZfX2Jhc2tldCB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0XHQmX19jb3VudCB7XG5cblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDNweDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRTSVRFIE5BVlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNpdGUtbmF2IHtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2x1bW4tZ2FwOiA1MHB4O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0Jykge1xuXG5cdFx0Y29sdW1uLWdhcDogMDtcblxuXHR9XG5cblx0Jl9fbG9nbyB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxNjBweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0Jykge1xuXG5cdFx0XHR3aWR0aDogNTBweDtcblxuXHRcdFx0Ji0tZGVza3RvcCB7XG5cblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzEwMjQtcGx1cycpIHtcblxuXHRcdFx0Ji0tbW9iaWxlIHtcblxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHRpbWcge1xuXG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXgtaGVpZ2h0OiA3NXB4O1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHR9XG5cblx0fVxuXG5cdCZfX2Nsb3NlIHtcblxuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24tYWxsLS1xdWljaztcblxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDIwcHg7XG5cdFx0cmlnaHQ6IDMwcHg7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRvcGFjaXR5OiAwO1xuXG5cdFx0Ji5pcy1hY3RpdmUge1xuXG5cdFx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0fVxuXG5cdFx0Lmljb24ge1xuXG5cdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0XHR3aWR0aDogMzBweDtcblxuXHRcdH1cblxuXHR9XG5cblx0Jl9fbWVudSB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGNvbHVtbi1nYXA6IDI1cHg7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0fVxuXG5cdFx0Jl9faXRlbSB7XG5cblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24tYWxsLS1xdWljaztcblxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHRcdHBhZGRpbmc6IDAgMCAycHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDJweDtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cdCZfX2J1cmdlciB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRtYXJnaW4tcmlnaHQ6IDI1cHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0cGFkZGluZzogNXB4O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzEwMjQtcGx1cycpIHtcblxuXHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdH1cblxuXHRcdC5pY29uIHtcblxuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0d2lkdGg6IDM1cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cblx0XHR9XG5cblx0fVxuXG59XG4iLCJAdXNlICcuLi9mdW5jdGlvbnMnIGFzICo7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdERFU0tUT1AgTkFWXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZGVza3RvcC1uYXYge1xuXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogZml0LWNvbnRlbnQgIWltcG9ydGFudDtcblx0bWluLXdpZHRoOiA3NTBweDtcblx0bWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTAwcHgpO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDAgMTcwcHggMCAwO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiBub25lO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblxuXHQmOjphZnRlciB7XG5cblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR6LWluZGV4OiAtNTtcblx0XHRhbmltYXRpb246IGRlc2t0b3AtbmF2LXNsaWRlLWluIDAuMzVzIGVhc2UtaW4tb3V0O1xuXG5cdFx0QGtleWZyYW1lcyBkZXNrdG9wLW5hdi1zbGlkZS1pbiB7XG5cblx0XHRcdDAlIHtcblxuXHRcdFx0XHRyaWdodDogMjAlO1xuXG5cdFx0XHR9XG5cblx0XHRcdDEwMCUge1xuXG5cdFx0XHRcdHJpZ2h0OiAwO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cdCY6OmJlZm9yZSB7XG5cblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAyMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHR9XG5cblx0Jl9faW5uZXIge1xuXG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGhlaWdodDogNzVweDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46IDUwcHggYXV0byAwO1xuXHRcdHBhZGRpbmc6IDAgMjBweDtcblxuXHR9XG5cblx0Jl9fbWVudSB7XG5cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAxODVweCk7XG5cdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdG1hcmdpbi1sZWZ0OiAyMzBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXG5cdFx0Jl9faXRlbSB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0Y29sdW1uLWdhcDogMjVweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiBmaXQtY29udGVudDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNHB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdFx0YSxcblx0XHRcdHNwYW4ge1xuXG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24tYWxsLS1xdWljaztcblxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogM3B4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRcdH1cblxuXHRcdFx0Lmljb24ge1xuXG5cdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0d2lkdGg6IDE4cHg7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC02cHg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAzcHg7XG5cblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmX19wYW5lbCB7XG5cblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Jl9fZHJhd2VyIHtcblxuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbi1hbGwtLXF1aWNrO1xuXG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMTAwJTtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cdFx0XHRncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuXHRcdFx0Z3JpZC1hdXRvLXJvd3M6IG1pbi1jb250ZW50O1xuXHRcdFx0Y29sdW1uLWdhcDogMjVweDtcblx0XHRcdHJvdy1nYXA6IDIwcHg7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiBmaXQtY29udGVudDtcblx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcblx0XHRcdGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cblx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0b3BhY2l0eTogMTtcblxuXHRcdFx0fVxuXG5cdFx0XHQmX19pdGVtIHtcblxuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uLWFsbC0tcXVpY2s7XG5cblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdFx0XHQmLmlzLWFjdGl2ZSB7XG5cblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0TU9CSUxFIE5BVlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gQm90aCB0aGUgcm9vdCBkcmF3ZXIgYW5kIGVhY2ggc3ViLXBhbmVsIGFyZSBmdWxsLXNjcmVlbiBwb3BvdmVycyDigJQgdGhlXG4vLyBzdWItcGFuZWwgcmVuZGVycyBvbiB0b3Agb2YgdGhlIGRyYXdlciBpbiB0aGUgcG9wb3ZlciB0b3AtbGF5ZXIgKG5lc3RlZFxuLy8gdmlhIHBvcG92ZXJ0YXJnZXQpIGFuZCB2aXN1YWxseSByZXBsYWNlcyBpdC4gVGhlIHNoYXJlZCBzdHJ1Y3R1cmFsIHJ1bGVzXG4vLyAoc2l6ZSArIHNsaWRlLWluKSBnbyBvbiBib3RoIHNlbGVjdG9yczsgZWxlbWVudCBydWxlcyAoaGVhZGVyLCBsaXN0KVxuLy8gc3RheSB1bmRlciAubW9iaWxlLW5hdiBhbmQgY29tcGlsZSBmbGF0LCBzbyB0aGV5IG1hdGNoIGVsZW1lbnRzIGluc2lkZVxuLy8gLm1vYmlsZS1uYXZfX3BhbmVsIHRvby5cblxuLm1vYmlsZS1uYXYsXG4ubW9iaWxlLW5hdl9fcGFuZWwge1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRhbmltYXRpb246IG1vYmlsZS1uYXYtc2xpZGUtaW4gMC4ycyBlYXNlLWluLW91dDtcblxuXHRAa2V5ZnJhbWVzIG1vYmlsZS1uYXYtc2xpZGUtaW4ge1xuXG5cdFx0MCUge1xuXG5cdFx0XHRsZWZ0OiAtMTUwdnc7XG5cblx0XHR9XG5cblx0XHQxMDAlIHtcblxuXHRcdFx0bGVmdDogMDtcblxuXHRcdH1cblxuXHR9XG5cbn1cblxuLm1vYmlsZS1uYXYge1xuXG5cdCZfX2hlYWRlciB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0aGVpZ2h0OiA1NXB4O1xuXG5cdFx0Jl9fdGl0bGUge1xuXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGNvbHVtbi1nYXA6IDVweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxMDAlO1xuXG5cdFx0XHQmX19pY29uIHtcblxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGhlaWdodDogMTVweDtcblx0XHRcdFx0d2lkdGg6IDE1cHg7XG5cdFx0XHRcdHRvcDogMXB4O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0YW5pbWF0aW9uOiBtb2JpbGUtbmF2LXRpdGxlLWVudGVyIDAuMnMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0QGtleWZyYW1lcyBtb2JpbGUtbmF2LXRpdGxlLWVudGVyIHtcblxuXHRcdFx0XHRcdDAlIHtcblxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xNXB4O1xuXHRcdFx0XHRcdFx0b3BhY2l0eTogMDtcblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdDEwMCUge1xuXG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmX19jbG9zZSB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cblx0XHRcdGJ1dHRvbiB7XG5cblx0XHRcdFx0d2lkdGg6IDUwcHg7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLTVweDtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0XHR9XG5cblx0XHRcdC5pY29uIHtcblxuXHRcdFx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0XHRcdHdpZHRoOiAyNXB4O1xuXG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cdCZfX2xpc3Qge1xuXG5cdFx0Jl9faXRlbSB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0Y29sdW1uLWdhcDogMTBweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0XHRib3JkZXItdG9wOiBub25lO1xuXG5cdFx0XHR9XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cblx0XHRcdH1cblxuXHRcdFx0YSxcblx0XHRcdGJ1dHRvbiB7XG5cblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cdFx0XHRcdGZsZXgtZ3JvdzogMTtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdFx0fVxuXG5cdFx0XHQuaWNvbiB7XG5cblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRoZWlnaHQ6IDE1cHg7XG5cdFx0XHRcdHdpZHRoOiAxNXB4O1xuXHRcdFx0XHR0b3A6IDFweDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuXHRGT09URVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mb290ZXIge1xuXG5cdG1pbi1oZWlnaHQ6IDQwMHB4O1xuXHR3aWR0aDogMTAwJTtcblxuXHRAbWVkaWEgcHJpbnQge1xuXG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHR9XG5cblx0Jl9fY3RhIHtcblxuXHRcdGhlaWdodDogODBweDtcblxuXHRcdCZfX2lubmVyIHtcblxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblxuXHRcdH1cblxuXHR9XG5cblx0Jl9faW5uZXIge1xuXG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuXHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6XG5cdFx0XHQnZm9vdGVyLWNvbHVtbnMgZm9vdGVyLWNvbHVtbnMgZm9vdGVyLWNvbHVtbnMgZm9vdGVyLXByb21vIGZvb3Rlci1wcm9tbydcblx0XHRcdCdmb290ZXItbGVnYWwgZm9vdGVyLWxlZ2FsIGZvb3Rlci1sZWdhbCBmb290ZXItbGVnYWwgZm9vdGVyLWxlZ2FsJztcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRcdGdyaWQtdGVtcGxhdGUtYXJlYXM6XG5cdFx0XHRcdCdmb290ZXItcHJvbW8nXG5cdFx0XHRcdCdmb290ZXItY29sdW1ucydcblx0XHRcdFx0J2Zvb3Rlci1sZWdhbCc7XG5cdFx0XHRjb2x1bW4tZ2FwOiAwO1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmX19jb2x1bW5zIHtcblxuXHRcdGdyaWQtYXJlYTogZm9vdGVyLWNvbHVtbnM7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpIHtcblxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuXG5cdFx0fVxuXG5cdFx0Jl9fbGlzdCB7XG5cblx0XHRcdGxpICsgbGkge1xuXG5cdFx0XHRcdG1hcmdpbi10b3A6IDVweDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Jl9fY3RhIHtcblxuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAtMTtcblxuXHRcdH1cblxuXHR9XG5cblx0Jl9fcHJvbW8ge1xuXG5cdFx0Z3JpZC1hcmVhOiBmb290ZXItcHJvbW87XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHQmX19sb2dvIHtcblxuXHRcdFx0aW1nIHtcblxuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdG1heC13aWR0aDogMzAwcHg7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblx0Jl9fbGVnYWwge1xuXG5cdFx0Z3JpZC1hcmVhOiBmb290ZXItbGVnYWw7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdH1cblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gICBDQVJUIERSQVdFUiDigJQgdW5pdmVyc2FsIHN0cnVjdHVyYWwgc2tlbGV0b25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vL1xuLy8gICBTbGlkZS1pbiBtaW5pLWNhcnQgcGFuZWwuIEJyYW5kIHZpc3VhbHMgbGl2ZSBpbiB0aGUgYnJhbmQgc2lsb1xuLy8gICAoZnJhbWV3b3JrLXYyL3RoZW1lL3ticmFuZH0vc2Nzcy9jb21wb25lbnRzL19jYXJ0LWRyYXdlci5zY3NzKS5cbi8vXG4vLyAgIE1hcmt1cDogPGFzaWRlIGlkPVwiY2FydC1kcmF3ZXJcIiBwb3BvdmVyPVwiYXV0b1wiIGNsYXNzPVwiY2FydC1kcmF3ZXJcIj5cbi8vICAgU2VlOiAgICBvYnNpZGlhbi12YXVsdC9UaGVtZSBGYWN0b3J5L1RoZW1lIEZhY3RvcnkgLSBDYXJ0IERyYXdlci5tZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNhcnQtZHJhd2VyIHtcblxuXHQvLyBVQS1kZWZhdWx0IHBvcG92ZXIgcmVzZXQuXG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0aW5zZXQ6IDAgMCAwIGF1dG87XG5cdHdpZHRoOiBtaW4oMjhyZW0sIDEwMHZ3KTtcblx0bWF4LXdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IG5vbmU7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jYXJ0LWRyYXdlci1iZywgI2ZmZik7XG5cdGNvbG9yOiB2YXIoLS1jYXJ0LWRyYXdlci1mZywgaW5oZXJpdCk7XG5cblx0Ly8gU2xpZGUtaW4gZW50cnkvZXhpdC5cblx0Ly8gVXNlcyB0cmFuc2l0aW9uLWJlaGF2aW9yOiBhbGxvdy1kaXNjcmV0ZSBvbiBkaXNwbGF5ICsgb3ZlcmxheSBzbyB3ZSBjYW5cblx0Ly8gYW5pbWF0ZSBkaXNwbGF5Om5vbmUg4oaUIGRpc3BsYXk6YmxvY2sgKHBvcG92ZXIgdG9nZ2xlKSBzbW9vdGhseS5cblx0dHJhbnNsYXRlOiAxMDAlIDA7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zaXRpb246XG5cdFx0dHJhbnNsYXRlIDI1MG1zIGVhc2Utb3V0LFxuXHRcdG9wYWNpdHkgMjAwbXMgZWFzZS1vdXQsXG5cdFx0b3ZlcmxheSAyNTBtcyBlYXNlLW91dCBhbGxvdy1kaXNjcmV0ZSxcblx0XHRkaXNwbGF5IDI1MG1zIGVhc2Utb3V0IGFsbG93LWRpc2NyZXRlO1xuXG5cdCY6cG9wb3Zlci1vcGVuIHtcblxuXHRcdHRyYW5zbGF0ZTogMCAwO1xuXHRcdG9wYWNpdHk6IDE7XG5cblx0fVxuXG5cdEBzdGFydGluZy1zdHlsZSB7XG5cblx0XHQmOnBvcG92ZXItb3BlbiB7XG5cblx0XHRcdHRyYW5zbGF0ZTogMTAwJSAwO1xuXHRcdFx0b3BhY2l0eTogMDtcblxuXHRcdH1cblxuXHR9XG5cblx0Ly8gQmFja2Ryb3Agb3ZlcmxheSAodGhlIDo6YmFja2Ryb3AgcHNldWRvLWVsZW1lbnQgaXMgcGFydCBvZiB0aGVcblx0Ly8gcG9wb3Zlci9kaWFsb2cgdG9wIGxheWVyIHJlbmRlcmluZykuXG5cdCY6OmJhY2tkcm9wIHtcblxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZS1vdXQ7XG5cblx0fVxuXG5cdCY6cG9wb3Zlci1vcGVuOjpiYWNrZHJvcCB7XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG5cblx0fVxuXG5cdEBzdGFydGluZy1zdHlsZSB7XG5cblx0XHQmOnBvcG92ZXItb3Blbjo6YmFja2Ryb3Age1xuXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdH1cblxuXHR9XG5cblx0Jl9faW5uZXIge1xuXG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHR9XG5cblx0Ly8g4pSA4pSAIEhFQURFUiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuXHQmX19oZWFkZXIge1xuXG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGdhcDogMTVweDtcblx0XHRwYWRkaW5nOiAyMHB4IDI1cHg7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNhcnQtZHJhd2VyLWRpdmlkZXIsIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cblx0fVxuXG5cdCZfX3RpdGxlIHtcblxuXHRcdG1hcmdpbjogMDtcblx0XHRmbGV4OiAxO1xuXG5cdH1cblxuXHQmX19mdWxsLWxpbmsge1xuXG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG5cdH1cblxuXHQmX19jbG9zZSB7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0d2lkdGg6IDMycHg7XG5cdFx0aGVpZ2h0OiAzMnB4O1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdH1cblxuXHQvLyDilIDilIAgQk9EWSAoc2Nyb2xsIHJlZ2lvbikg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cblx0Jl9fYm9keSB7XG5cblx0XHRmbGV4OiAxO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0cGFkZGluZzogMjBweCAyNXB4O1xuXG5cdFx0Ly8gUmVzZXJ2ZSByb29tIGFib3ZlIHRoZSB0b3RhbHMgcm93IHdoZW4gdGhlIGJvZHkgaXMgZW1wdHkgKGUuZy4gY3Jvc3MtXG5cdFx0Ly8gc2VsbC1vbmx5IHNjZW5hcmlvcykgc28gaXQgZG9lc24ndCBjb2xsYXBzZSBvbiBpdHNlbGYuXG5cdFx0bWluLWhlaWdodDogMDtcblxuXHR9XG5cblx0Ly8g4pSA4pSAIElURU1TIExJU1Qg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cblx0Jl9faXRlbXMge1xuXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0Z2FwOiAyMHB4O1xuXG5cdH1cblxuXHQmX19pdGVtIHtcblxuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA4MHB4IDFmciBhdXRvO1xuXHRcdGdhcDogMTVweDtcblx0XHRhbGlnbi1pdGVtczogc3RhcnQ7XG5cblx0XHQmX19tZWRpYSB7XG5cblx0XHRcdGltZyB7XG5cblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Jl9fYm9keSB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0Z2FwOiA4cHg7XG5cdFx0XHRtaW4td2lkdGg6IDA7XG5cblx0XHR9XG5cblx0XHQmX190aXRsZSB7XG5cblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM7XG5cblx0XHRcdGEge1xuXG5cdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdCZfX3ZhcmlhbnQge1xuXG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0XHRvcGFjaXR5OiAwLjc7XG5cblx0XHR9XG5cblx0XHQmX19xdHkge1xuXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRnYXA6IDhweDtcblx0XHRcdG1hcmdpbi10b3A6IDRweDtcblxuXHRcdFx0Jl9fYnV0dG9uIHtcblxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0d2lkdGg6IDI4cHg7XG5cdFx0XHRcdGhlaWdodDogMjhweDtcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNhcnQtZHJhd2VyLWRpdmlkZXIsIHJnYmEoMCwgMCwgMCwgMC4xNSkpO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblxuXHRcdFx0XHQmOmRpc2FibGVkIHtcblxuXHRcdFx0XHRcdG9wYWNpdHk6IDAuNDtcblx0XHRcdFx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0XHQmX192YWx1ZSB7XG5cblx0XHRcdFx0bWluLXdpZHRoOiAyMnB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdCZfX3ByaWNlIHtcblxuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdG1hcmdpbi10b3A6IDRweDtcblxuXHRcdH1cblxuXHRcdCZfX3JlbW92ZSB7XG5cblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogMjhweDtcblx0XHRcdGhlaWdodDogMjhweDtcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRhbGlnbi1zZWxmOiBzdGFydDtcblxuXHRcdH1cblxuXHR9XG5cblx0Ly8g4pSA4pSAIEVNUFRZIFNUQVRFIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG5cdCZfX2VtcHR5IHtcblxuXHRcdHBhZGRpbmc6IDYwcHggMjVweCA0MHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdCZfX3RpdGxlIHtcblxuXHRcdFx0bWFyZ2luOiAwIDAgMTBweDtcblxuXHRcdH1cblxuXHRcdCZfX2xlYWQge1xuXG5cdFx0XHRtYXJnaW46IDAgMCAyNXB4O1xuXHRcdFx0b3BhY2l0eTogMC43O1xuXG5cdFx0fVxuXG5cdFx0Jl9fY3RhIHtcblxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0fVxuXG5cdH1cblxuXHQvLyDilIDilIAgQ1JPU1MtU0VMTCBSRUNTIFNMT1QgKGVtcHR5IGJ5IGRlZmF1bHQpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG5cdCZfX3JlY3Mge1xuXG5cdFx0JjplbXB0eSB7XG5cblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHR9XG5cblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jYXJ0LWRyYXdlci1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuXG5cdH1cblxuXHQvLyDilIDilIAgVE9UQUxTIChzdGlja3kgYm90dG9tKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuXHQmX190b3RhbHMge1xuXG5cdFx0cGFkZGluZzogMjBweCAyNXB4O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jYXJ0LWRyYXdlci1kaXZpZGVyLCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuXHRcdGZsZXgtc2hyaW5rOiAwO1xuXG5cdFx0Jl9fcm93IHtcblxuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblx0XHRcdGdhcDogMTVweDtcblxuXHRcdFx0Ji0tc3VidG90YWwge1xuXG5cdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Jl9fbGFiZWwge1xuXG5cdFx0XHRmbGV4OiAxO1xuXG5cdFx0fVxuXG5cdFx0Jl9fbm90ZSB7XG5cblx0XHRcdG1hcmdpbjogOHB4IDAgMDtcblx0XHRcdGZvbnQtc2l6ZTogMTNweDtcblx0XHRcdG9wYWNpdHk6IDAuNztcblxuXHRcdH1cblxuXHR9XG5cblx0Ly8g4pSA4pSAIE1PQklMRSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuXHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNDgwJykge1xuXG5cdFx0d2lkdGg6IDEwMHZ3O1xuXG5cdH1cblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0VElUTEVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udGl0bGUge1xuXG5cdHdpZHRoOiAxMDAlO1xuXG5cdCZfX3ByaW1hcnkge1xuXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mcy1zZWN0aW9uLCA0NHB4KTtcblx0XHRsaW5lLWhlaWdodDogY2FsYyh2YXIoLS1mcy1zZWN0aW9uLCA0NHB4KSAqIDEuMik7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRmb250LXNpemU6IGNhbGModmFyKC0tZnMtc2VjdGlvbiwgNDRweCkgLSA2cHgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IGNhbGModmFyKC0tZnMtc2VjdGlvbiwgNDRweCkgKiAxLjIpO1xuXG5cdFx0fVxuXG5cdH1cblxuXHQmX19zZWNvbmRhcnkge1xuXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mcy10aXRsZSwgMzJweCk7XG5cdFx0bGluZS1oZWlnaHQ6IGNhbGModmFyKC0tZnMtdGl0bGUsIDMycHgpICogMS4zKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCc3NjgnKSB7XG5cblx0XHRcdGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy10aXRsZSwgMzJweCkgLSA2cHgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IGNhbGModmFyKC0tZnMtdGl0bGUsIDMycHgpICogMS4zKTtcblxuXHRcdH1cblxuXHR9XG5cblx0Jl9fdGVydGlhcnkge1xuXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mcy1oZWFkaW5nLCAyOHB4KTtcblx0XHRsaW5lLWhlaWdodDogY2FsYyh2YXIoLS1mcy1oZWFkaW5nLCAyOHB4KSAqIDEuNCk7XG5cblx0fVxuXG5cdCZfX3F1YXRlcm5hcnkge1xuXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mcy1iYXNlLCAxOHB4KTtcblx0XHRsaW5lLWhlaWdodDogY2FsYyh2YXIoLS1mcy1iYXNlLCAxOHB4KSAqIDEuNSk7XG5cblx0fVxuXG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0SUNPTlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uIHtcblxuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IHZhcigtLWljb24tc2l6ZSwgMjBweCk7XG5cdHdpZHRoOiB2YXIoLS1pY29uLXNpemUsIDIwcHgpO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0Ji0tbWVkaXVtIHtcblxuXHRcdGhlaWdodDogdmFyKC0taWNvbi1zaXplLW1kLCAzMHB4KTtcblx0XHR3aWR0aDogdmFyKC0taWNvbi1zaXplLW1kLCAzMHB4KTtcblxuXHR9XG5cblx0Ji0tbGFyZ2Uge1xuXG5cdFx0aGVpZ2h0OiB2YXIoLS1pY29uLXNpemUtbGcsIDUwcHgpO1xuXHRcdHdpZHRoOiB2YXIoLS1pY29uLXNpemUtbGcsIDUwcHgpO1xuXG5cdH1cblxuXHQmLS1leHRyYS1sYXJnZSB7XG5cblx0XHRoZWlnaHQ6IHZhcigtLWljb24tc2l6ZS14bCwgODBweCk7XG5cdFx0d2lkdGg6IHZhcigtLWljb24tc2l6ZS14bCwgODBweCk7XG5cblx0fVxuXG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0V09PQ09NTUVSQ0UgQ09NUE9TSVRFIFBST0RVQ1RTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNvbXBvc2l0ZV9mb3JtIC5jb21wb3NpdGVfcHJpY2UgcC5wcmljZSxcbi5zaW5nbGUtcHJvZHVjdCAuY29tcG9zaXRlX2Zvcm0gLmNvbXBvc2l0ZV9wcmljZSBwLnByaWNlIHtcblxuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0V09PQ09NTUVSQ0UgQ09VUE9OIEZPUk1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24ge1xuXG5cdC5mb3JtX19ncm91cC0taW5saW5lIHtcblxuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG5cdFx0LmZvcm1fX2lucHV0LFxuXHRcdC5mb3JtX19zdWJtaXQge1xuXG5cdFx0XHR3aWR0aDogZml0LWNvbnRlbnQ7XG5cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0XHQuZm9ybV9faW5wdXQge1xuXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHR9XG5cblx0XHRcdC5mb3JtX19zdWJtaXQge1xuXG5cdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC5jb3Vwb24tZXJyb3Itbm90aWNlIHtcblxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cblx0XHR9XG5cblx0fVxuXG59XG4iLCJAdXNlICcuLi9mdW5jdGlvbnMnIGFzICo7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRXT09DT01NRVJDRSBOT1RJQ0VTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG5cblx0Z3JpZC1jb2x1bW46IDEgLyAtMTtcblx0Ym9yZGVyOiBub25lO1xuXG59XG5cbi53b29jb21tZXJjZS1tZXNzYWdlLFxuLndvb2NvbW1lcmNlLWluZm8sXG4ud29vY29tbWVyY2UtZXJyb3Ige1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWF4LXdpZHRoOiB2YXIoLS1zaXRlLW1heC13aWR0aCwgMTQ0MHB4KTtcblxuXHRsaSArIGxpIHtcblxuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdH1cblxuXHQmOmFjdGl2ZSxcblx0Jjpmb2N1cyB7XG5cblx0XHRvdXRsaW5lOiBub25lO1xuXG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jykge1xuXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0JiA+ICoge1xuXG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRcdH1cblxuXHRcdGxpIHtcblxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdH1cblxuXHRcdC5idXR0b24ge1xuXG5cdFx0XHRtYXJnaW46IDEwcHggYXV0byAwIDAgIWltcG9ydGFudDtcblxuXHRcdH1cblxuXHR9XG5cblx0LmJ1dHRvbiB7XG5cblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdGNsZWFyOiBib3RoO1xuXG5cdH1cblxufVxuIiwiQHVzZSAnLi4vZnVuY3Rpb25zJyBhcyAqO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0V09PQ09NTUVSQ0UgUFJPRFVDVCBBVFRSSUJVVEVTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNob3BfYXR0cmlidXRlcyB7XG5cblx0d2lkdGg6IDEwMCU7XG5cblx0LmF0dHJpYnV0ZV9uYW1lX3ZhbHVlcyB7XG5cblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCc3NjgnKSB7XG5cblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHR0Ym9keSxcblx0XHRcdHRyIHtcblxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxuXHQuYXR0cmlidXRlX25hbWUge1xuXG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHR9XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRXUEZPUk1TXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLndwZm9ybXMtY29udGFpbmVyIHtcblxuXHQud3Bmb3Jtcy1saXN0LTItY29sdW1ucyAud3Bmb3Jtcy1pY29uLWNob2ljZXMge1xuXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblxuXHR9XG5cblx0LndwZm9ybXMtbGlzdC0zLWNvbHVtbnMgLndwZm9ybXMtaWNvbi1jaG9pY2VzIHtcblxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cblx0fVxuXG5cdC53cGZvcm1zLWxpc3QtNC1jb2x1bW5zIC53cGZvcm1zLWljb24tY2hvaWNlcyB7XG5cblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuXG5cdH1cblxuXHQud3Bmb3Jtcy1pY29uLWNob2ljZXMge1xuXG5cdFx0ZGlzcGxheTogZ3JpZDtcblxuXHRcdCYtaXRlbSB7XG5cblx0XHRcdHBhZGRpbmc6IDI1JSAwO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRsYWJlbCB7XG5cblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0XHRpbnB1dCB7XG5cblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Ji1pY29uIHtcblxuXHRcdFx0c3ZnIHtcblxuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdG1heC13aWR0aDogOTAlO1xuXHRcdFx0XHR3aWR0aDogMjAwcHg7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblx0LndwZm9ybXMtaGlkZGVuIHtcblxuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuXHR9XG5cbn1cbiIsIkB1c2UgJy4uL2Z1bmN0aW9ucycgYXMgKjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdFlBWSBQUklDSU5HXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnlheWRwLW9yaWdpbmFsLXByaWNlcyB7XG5cblx0ZGlzcGxheTogYmxvY2s7XG5cblx0JiArIC55YXlkcC1jYWxjdWxhdGVkLXByaWNlcyB7XG5cblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tbGVmdDogMTVweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCc3NjgnKSB7XG5cblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblxuXHRcdH1cblxuXHR9XG5cbn1cblxuLnlheWRwLWRpc2NvdW50ZWQtcHJpY2Uge1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cblx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpIHtcblxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0fVxuXG59XG5cbi55YXlkcC1jYWxjdWxhdGVkLXByaWNlcy1zdWZmaXgge1xuXG5cdGRpc3BsYXk6IG5vbmU7XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRXUCBCTE9DSzogTUVESUEgVEVYVFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIFN0cnVjdHVyYWwgb3ZlcnJpZGVzIGZvciB3cC1ibG9jay1tZWRpYS10ZXh0IGFyZSBzZXQgcGVyIHRoZW1lICovXG4iLCIvLyBDYW1Db20gRnJhbWV3b3JrIFYyIOKAlCBHbG9iYWwgQ1NTXG4vLyBDb21waWxlZCBieSBHdWxwIOKGkiBjYW1jb20tdjIvY3NzL2dsb2JhbC5jc3Ncbi8vIEVucXVldWVkIGFzICdjYW1jb21fZ2xvYmFsJyBvbiBldmVyeSBjaGlsZCB0aGVtZSBzaXRlLlxuLy9cbi8vIFVOSVZFUlNBTCBTVUJTVFJBVEUuIFBvc3QgMjAyNi0wNy0zMCBjbGVhbnVwLCB0aGlzIHBpcGVsaW5lIHByb3ZpZGVzOlxuLy8gICAtIGNvcmUvICAgICAocmVzZXQsIGdyaWQsIGltYWdlcywgdmlzaWJpbGl0eSlcbi8vICAgLSBsYXlvdXRzLyAgKHdyYXBwZXIgKyBzZWN0aW9uICsgY2FtY29tLXYyIHBhcmVudCBjaHJvbWUg4oCUIHNpdGUtaGVhZCxcbi8vICAgICAgICAgICAgICAgIHNpdGUtbmF2LCBuYXYtZGVza3RvcCwgbmF2LW1vYmlsZSwgZm9vdGVyKVxuLy8gICAtIGNvbXBvbmVudHMvIChwYXJlbnQgY2hyb21lIGNvbXBvbmVudHMg4oCUIGNhcnQtZHJhd2VyLCB0aXRsZSwgaWNvbilcbi8vICAgLSBibG9ja3MvICAgKHVuaXZlcnNhbCBXUCBibG9jayB0cmVhdG1lbnRzKVxuLy8gICAtIHZlbmRvci8sIHRoaXJkLXBhcnR5L1xuLy9cbi8vIFwiVW5pdmVyc2FsXCIgaGVyZSBtZWFucyBlaXRoZXI6XG4vLyAgIOKAoiB0cnVseSBjcm9zcy1icmFuZCB1dGlsaXRpZXMgKGdyaWQsIHdyYXBwZXIsIHNlY3Rpb24sIG1peGlucyksIE9SXG4vLyAgIOKAoiBjYW1jb20tdjIgUEFSRU5UIGNocm9tZSBzdHlsaW5nIOKAlCBldmVyeSBicmFuZCBpbmhlcml0cyB0aGUgcGFyZW50J3Ncbi8vICAgICBoZWFkZXIvZm9vdGVyIFBIUCB2aWEgZ2V0X2hlYWRlcigpL2dldF9mb290ZXIoKSwgc28gYW55IGNsYXNzLXJvb3QgdGhlXG4vLyAgICAgcGFyZW50IHJlbmRlcnMgYmVsb25ncyBpbiBmcmFtZXdvcmsvZ2xvYmFsLlxuLy9cbi8vIEV2ZXJ5IGRlc2lnbi12YXJpZWQgYnJhbmQgY29tcG9uZW50IChoZXJvLCBwcm9kdWN0LWNhcmQsIGJ1dHRvbiwgZXllYnJvdyxcbi8vIHNlY3Rpb24taGVhZGVyLCBsaW5rLWJveCwgbmV3c2xldHRlciwgdGVzdGltb25pYWwtY2FyZCwgYWxsIGNhcmQgdmFyaWFudHMpXG4vLyBpcyBhdXRob3JlZCBwZXItYnJhbmQgaW4gZnJhbWV3b3JrLXYyL3RoZW1lL3ticmFuZH0vc2Nzcy8uIFNlZVxuLy8gc2VjdGlvbi13YWxrLW1ldGhvZG9sb2d5Lm1kIFBhc3MgMSBzdGVwIDEgZm9yIHRoZSByZXVzZS12cy1icmFuZC1hdXRob3Jcbi8vIGRpc2NpcGxpbmUuXG4vL1xuLy8gUHJlLWNsZWFudXAgc25hcHNob3Q6IGZyYW1ld29yay12Mi9fYXJjaGl2ZS8yMDI2LTA3LTMwLWdsb2JhbC1wcmUtY2xlYW51cC9cblxuQHVzZSAnY29yZSc7XG5AdXNlICd2ZW5kb3InO1xuQHVzZSAnbGF5b3V0cyc7XG5AdXNlICdjb21wb25lbnRzJztcbkB1c2UgJ3RoaXJkLXBhcnR5JztcbkB1c2UgJ2Jsb2Nrcyc7XG5cbmJvZHkge1xuXG5cdG1hcmdpbjogMDtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXG59XG5cbi8vIC53cmFwcGVyIGFuZCAuc2VjdGlvbiBsaXZlIGluIGxheW91dHMvX3dyYXBwZXIuc2NzcyBhbmQgbGF5b3V0cy9fc2VjdGlvbi5zY3NzLlxuLy8gVGhyZWUtbGF5ZXIgc3RydWN0dXJhbCBwYXR0ZXJuIChzZWN0aW9uIC8gd3JhcHBlciAvIGNvbXBvbmVudCkg4oCUIHNlZVxuLy8gZmVlZGJhY2tfYmVtX2hvd190by5tZCBhbmQgZmVlZGJhY2tfc2VjdGlvbl93cmFwcGVyX3BhdHRlcm4ubWQuXG5cbmEge1xuXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IGluaGVyaXQ7XG5cbn1cblxuLmNlbnRlciB7XG5cblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbn1cblxuLmNlbnRlcmVkIHtcblxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbn1cbiJdfQ== */
