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

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove default body rules */
body {
  margin: 0;
}

/* Remove default margin in favour of better control in authored CSS */
body, h1, h2, h3, h4, p,
figure, blockquote, dl, dd {
  margin-block-start: 0;
  margin-block-end: 0;
}

/* Set popover elements to be full height and width of the viewport with no additional padding */
*[popover] {
  height: 100%;
  width: 100%;
  padding: 0;
  border: none;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul,
ol {
  margin: unset;
  padding-left: 20px;
}

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

/* Set core body defaults */
body {
  min-height: 100vh;
}

/* Balance text wrapping on headings */
h1, h2,
h3, h4 {
  text-wrap: pretty;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  display: block;
  max-width: 100%;
}

/* Inherit fonts for inputs and buttons */
input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

fieldset {
  border: none;
}

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

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Remove padding around fieldsets */
fieldset {
  padding: 0;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

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

    This mixin will wrap your code in the appropriate media query of your choosing.

    For example. If you want to make the body background magenta on mobile only:

    body {
	    @include media-query(palm) {
	    	background: magenta;
	    }
    }
\*------------------------------------*/
.grid {
  display: grid;
  grid-column: 1/-1;
  grid-row-gap: 25px;
  grid-column-gap: 25px;
  width: 100%;
}

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

.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: repeat(2, minmax(0, 1fr));
  }
}
.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));
  }
}
.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);
}

/* 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: "×";
}

.is-hidden {
  display: none;
}

@media (orientation: portrait) {
  .is-hidden--portrait {
    display: none !important;
  }
}
@media (orientation: landscape) {
  .is-hidden--landscape {
    display: none !important;
  }
}
@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;
  }
}
/*------------------------------------*\
    HOVER

    A useful little mixin to help generate better hover / focus etc. states.
    This also has an 'include-active' flag which will help account for active states too.  
\*------------------------------------*/
.shopping-basket__row {
  display: flex;
  grid-gap: 50px;
}

@media screen and (max-width: 767px) {
  .shopping-basket__row {
    flex-direction: column;
    grid-gap: 25px;
  }
}
.shopping-basket__row + .shopping-basket__row {
  margin-top: 25px;
  padding-top: 25px;
}

.shopping-basket__image {
  display: flex;
  align-items: center;
  height: 110px;
  min-width: 110px;
  width: 110px;
  margin: 0 20px;
}

.shopping-basket__image a {
  height: 100%;
}

.shopping-basket__image img {
  max-height: 100%;
  object-fit: contain;
}

.shopping-basket__quantity {
  display: flex !important;
  flex-direction: column;
  align-self: center;
  margin-left: auto;
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .shopping-basket__quantity {
    flex-direction: row;
    align-self: flex-start;
    margin-left: 0;
  }
  .shopping-basket__quantity .atc__quantity {
    margin-bottom: 0 !important;
  }
}
.shopping-basket__body {
  display: flex;
  flex-direction: column;
}

.shopping-basket__body__row {
  display: flex;
}

.shopping-basket__body__row + .shopping-basket__body__row {
  margin-top: 10px;
  padding-top: 10px;
}

.shopping-basket__actions__item + .shopping-basket__actions__item {
  margin-left: 5px;
}

.shopping-basket__actions__item--negative {
  color: #E50000;
}

.camcom {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-template-areas: "body body body body promo promo promo" "body body body body sidebar sidebar sidebar";
  grid-column-gap: 50px;
  grid-template-rows: auto minmax(0, 1fr);
}

@media screen and (max-width: 767px) {
  .camcom {
    grid-template-columns: 100%;
    grid-template-areas: "body" "sidebar" "promo";
    grid-row-gap: 25px;
  }
}
.camcom .main-body {
  grid-area: body;
  height: fit-content;
  background: transparent;
  padding: 0;
}

.camcom .promo-area {
  grid-area: promo;
}

.camcom .sidebar {
  grid-area: sidebar;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvcmUvX3Jlc2V0LnNjc3MiLCJmdW5jdGlvbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJjb3JlL19ncmlkLnNjc3MiLCJjb3JlL19pbWFnZXMuc2NzcyIsImZ1bmN0aW9ucy9fdHJhbnNpdGlvbnMuc2NzcyIsImNvcmUvX3NsaWNrLnNjc3MiLCJjb3JlL192aXNpYmlsaXR5LnNjc3MiLCJmdW5jdGlvbnMvX2hvdmVyLnNjc3MiLCJsYXlvdXRzL19zaG9wcGluZy1iYXNrZXQuc2NzcyIsImxheW91dHMvX3dvb2NvbW1lcmNlLWNhcnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUFBO0FBQUE7RUFHQzs7O0FBR0Q7QUFDQTtFQUVDO0VBQ0E7RUFDQTs7O0FBSUQ7QUFDQTtFQUVDOzs7QUFJRDtBQUNBO0FBQUE7RUFFQztFQUNBOzs7QUFHRDtBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0FBQ0E7QUFBQTtFQUVDO0VBQ0E7OztBQUdEO0FBQUE7RUFHQztFQUNBOzs7QUFJRDtBQUNBO0VBQ0M7OztBQUdEO0FBQ0E7QUFBQTtFQUVDOzs7QUFHRDtBQUNBO0VBQ0M7OztBQUdEO0FBQ0E7QUFBQTtFQUVDO0VBQ0E7OztBQUdEO0FBQ0E7QUFBQTtFQUVDO0VBQ0E7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtBQUNBO0VBQ0M7OztBQUdEO0FBQ0E7RUFDQzs7O0FBR0Q7QUFDQTtFQUNDOzs7QUN6R0Q7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNFQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7OztBQUlEO0VBRUM7OztBRHNFQztFQ3hFRjtJQU1FOzs7QUFNRjtFQUVDOzs7QUQwREM7RUM1REY7SUFNRTs7O0FBTUY7RUFFQzs7O0FEOENDO0VDaERGO0lBTUU7OztBQU1GO0VBRUM7OztBRGtDQztFQ3BDRjtJQU1FOzs7QUN4REg7RUFFQztFQUNBOzs7QUFFQTtFQ0xBO0VEU0M7RUFDQTs7O0FBTUE7RUFFQzs7O0FFcEJIO0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDQzs7O0FBR0Q7RUFDQztFQUNBOzs7QUFJRjtBQUFBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBRUM7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQzs7O0FBSUY7RUFDQztFQUNBO0VBQ0E7OztBQUVBO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFJRjtFQUNDOzs7QUFJRDtBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtFQUNDO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBR0Q7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUN2T0Q7RUFFQzs7O0FBSUM7RUFGRDtJQUlFOzs7QUFRRDtFQUZEO0lBSUU7OztBTG9FQTtFSzlERjtJQUlFOzs7QUwwREE7RUtwREY7SUFJRTs7O0FMZ0RBO0VLMUNGO0lBSUU7OztBQ2xESDtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQ0lDO0VBRUM7RUFDQTs7O0FQaUZDO0VPcEZGO0lBT0U7SUFDQTs7O0FBSUQ7RUFFQztFQUNBOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFFQzs7O0FBSUQ7RUFFQztFQUNBOzs7QUFNRjtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBUGlDQztFT3ZDRjtJQVVFO0lBQ0E7SUFDQTs7RUFFQTtJQUVDOzs7QUFRSDtFQUVDO0VBQ0E7OztBQUVBO0VBRUM7OztBQUVBO0VBRUM7RUFDQTs7O0FBY0Q7RUFFQzs7O0FBSUQ7RUFFQzs7O0FDekdKO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FSZ0ZFO0VRdEZIO0lBVUU7SUFDQTtJQUNBOzs7QUFJRDtFQUVDO0VBQ0E7RUFDQTtFQUNBOzs7QUFJRDtFQUVDOzs7QUFJRDtFQUVDIiwiZmlsZSI6Indvb2NvbW1lcmNlLWNhcnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQm94IHNpemluZyBydWxlcyAqL1xyXG4qLFxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4vKiBQcmV2ZW50IGZvbnQgc2l6ZSBpbmZsYXRpb24gKi9cclxuaHRtbCB7XHJcblxyXG5cdC1tb3otdGV4dC1zaXplLWFkanVzdDogbm9uZTtcclxuXHQtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XHJcblx0dGV4dC1zaXplLWFkanVzdDogbm9uZTtcclxuXHJcbn1cclxuXHJcbi8qIFJlbW92ZSBkZWZhdWx0IGJvZHkgcnVsZXMgKi9cclxuYm9keXtcclxuXHRcclxuXHRtYXJnaW46IDA7XHJcblx0XHJcbn1cclxuXHJcbi8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBpbiBmYXZvdXIgb2YgYmV0dGVyIGNvbnRyb2wgaW4gYXV0aG9yZWQgQ1NTICovXHJcbmJvZHksIGgxLCBoMiwgaDMsIGg0LCBwLFxyXG5maWd1cmUsIGJsb2NrcXVvdGUsIGRsLCBkZCB7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDA7XHJcbn1cclxuXHJcbi8qIFNldCBwb3BvdmVyIGVsZW1lbnRzIHRvIGJlIGZ1bGwgaGVpZ2h0IGFuZCB3aWR0aCBvZiB0aGUgdmlld3BvcnQgd2l0aCBubyBhZGRpdGlvbmFsIHBhZGRpbmcgKi9cclxuKltwb3BvdmVyXSB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4vKiBSZW1vdmUgbGlzdCBzdHlsZXMgb24gdWwsIG9sIGVsZW1lbnRzIHdpdGggYSBsaXN0IHJvbGUsIHdoaWNoIHN1Z2dlc3RzIGRlZmF1bHQgc3R5bGluZyB3aWxsIGJlIHJlbW92ZWQgKi9cclxudWwsXHJcbm9sIHtcclxuXHRtYXJnaW46IHVuc2V0O1xyXG5cdHBhZGRpbmctbGVmdDogMjBweDtcclxufVxyXG5cclxudWwsXHJcbm9sIHtcclxuXHJcblx0cGFkZGluZzogdW5zZXQ7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcclxufVxyXG5cclxuLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xyXG5ib2R5IHtcclxuXHRtaW4taGVpZ2h0OiAxMDB2aDtcclxufVxyXG5cclxuLyogQmFsYW5jZSB0ZXh0IHdyYXBwaW5nIG9uIGhlYWRpbmdzICovXHJcbmgxLCBoMixcclxuaDMsIGg0IHtcclxuXHR0ZXh0LXdyYXA6IHByZXR0eTtcclxufVxyXG5cclxuLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cclxuYTpub3QoW2NsYXNzXSkge1xyXG5cdHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcclxufVxyXG5cclxuLyogTWFrZSBpbWFnZXMgZWFzaWVyIHRvIHdvcmsgd2l0aCAqL1xyXG5pbWcsXHJcbnBpY3R1cmUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogSW5oZXJpdCBmb250cyBmb3IgaW5wdXRzIGFuZCBidXR0b25zICovXHJcbmlucHV0LCBidXR0b24sXHJcbnRleHRhcmVhLCBzZWxlY3Qge1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxufVxyXG5cclxuZmllbGRzZXR7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG5idXR0b24ge1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcbn1cclxuXHJcbi8qIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgd2l0aG91dCBhIHJvd3MgYXR0cmlidXRlIGFyZSBub3QgdGlueSAqL1xyXG50ZXh0YXJlYTpub3QoW3Jvd3NdKSB7XHJcblx0bWluLWhlaWdodDogMTBlbTtcclxufVxyXG5cclxuLyogUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGZpZWxkc2V0cyAqL1xyXG5maWVsZHNldHtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBBbnl0aGluZyB0aGF0IGhhcyBiZWVuIGFuY2hvcmVkIHRvIHNob3VsZCBoYXZlIGV4dHJhIHNjcm9sbCBtYXJnaW4gKi9cclxuOnRhcmdldCB7XHJcblx0c2Nyb2xsLW1hcmdpbi1ibG9jazogNWV4O1xyXG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcclxuICAgIE1FRElBIFFVRVJZXHJcblxyXG4gICAgVGhpcyBtaXhpbiB3aWxsIHdyYXAgeW91ciBjb2RlIGluIHRoZSBhcHByb3ByaWF0ZSBtZWRpYSBxdWVyeSBvZiB5b3VyIGNob29zaW5nLlxyXG5cclxuICAgIEZvciBleGFtcGxlLiBJZiB5b3Ugd2FudCB0byBtYWtlIHRoZSBib2R5IGJhY2tncm91bmQgbWFnZW50YSBvbiBtb2JpbGUgb25seTpcclxuXHJcbiAgICBib2R5IHtcclxuXHQgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnkocGFsbSkge1xyXG5cdCAgICBcdGJhY2tncm91bmQ6IG1hZ2VudGE7XHJcblx0ICAgIH1cclxuICAgIH1cclxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuJGJyZWFrcG9pbnQtLXBvcnRyYWl0OiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknO1xyXG4kYnJlYWtwb2ludC0tbGFuZHNjYXBlOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJztcclxuXHJcbiRicmVha3BvaW50LS03Njg6ICcobWF4LXdpZHRoOiA3NjdweCknO1xyXG4kYnJlYWtwb2ludC0tNzY4LXBsdXM6ICcobWluLXdpZHRoOiA3NjhweCknO1xyXG5cclxuJGJyZWFrcG9pbnQtLTkwMDogJyhtYXgtd2lkdGg6IDkwMHB4KSc7XHJcbiRicmVha3BvaW50LS05MDAtcGx1czogJyhtaW4td2lkdGg6IDkwMXB4KSc7XHJcblxyXG4kYnJlYWtwb2ludC0tMTAyNDogJyhtYXgtd2lkdGg6IDEwMjRweCknO1xyXG4kYnJlYWtwb2ludC0tMTAyNC1wbHVzOiAnKG1pbi13aWR0aDogMTAyNXB4KSc7XHJcblxyXG4kYnJlYWtwb2ludC0tMTQ0MDogJyhtYXgtd2lkdGg6IDE0MzlweCknO1xyXG4kYnJlYWtwb2ludC0tMTQ0MC1wbHVzOiAnKG1pbi13aWR0aDogMTQ0MHB4KSc7XHJcblxyXG4kYnJlYWtwb2ludC0tMTkyMDogJyhtYXgtd2lkdGg6IDE5MjBweCknO1xyXG4kYnJlYWtwb2ludC0tMTkyMC1wbHVzOiAnKG1pbi13aWR0aDogMTkyMHB4KSc7XHJcblxyXG5AbWl4aW4gbWVkaWEtcXVlcnkoJGFsaWFzLCAkc2NyZWVuLW9ubHk6dHJ1ZSkge1xyXG5cdFxyXG5cdCRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICcnO1xyXG5cdFxyXG5cdEBpZiAoJGFsaWFzID09ICdwb3J0cmFpdCcpe1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLXBvcnRyYWl0O1xyXG5cdH1cclxuXHRcclxuXHRAaWYgKCRhbGlhcyA9PSAnbGFuZHNjYXBlJyl7XHJcblx0XHQkY2FsY3VsYXRlZC1icmVha3BvaW50OiAkYnJlYWtwb2ludC0tbGFuZHNjYXBlO1xyXG5cdH1cclxuXHRcclxuXHRAaWYgKCRhbGlhcyA9PSAnNzY4Jykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTc2ODtcclxuXHR9XHJcblx0QGlmICgkYWxpYXMgPT0gJzc2OC1wbHVzJykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTc2OC1wbHVzO1xyXG5cdH1cclxuXHRcclxuXHRcclxuXHRAaWYgKCRhbGlhcyA9PSAnOTAwJykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTkwMDtcclxuXHR9XHJcblx0QGlmICgkYWxpYXMgPT0gJzkwMC1wbHVzJykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTkwMC1wbHVzO1xyXG5cdH1cclxuXHRcclxuXHRcclxuXHRAaWYgKCRhbGlhcyA9PSAnMTAyNCcpIHtcclxuXHRcdCRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS0xMDI0O1xyXG5cdH1cclxuXHRAaWYgKCRhbGlhcyA9PSAnMTAyNC1wbHVzJykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTEwMjQtcGx1cztcclxuXHR9XHJcblx0XHJcblx0XHJcblx0QGlmICgkYWxpYXMgPT0gJzE0NDAnKSB7XHJcblx0XHQkY2FsY3VsYXRlZC1icmVha3BvaW50OiAkYnJlYWtwb2ludC0tMTQ0MDtcclxuXHR9XHJcblx0QGlmICgkYWxpYXMgPT0gJzE0NDAtcGx1cycpIHtcclxuXHRcdCRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS0xNDQwLXBsdXM7XHJcblx0fVxyXG5cdFxyXG5cdFxyXG5cdEBpZiAoJGFsaWFzID09ICcxOTIwJykge1xyXG5cdFx0JGNhbGN1bGF0ZWQtYnJlYWtwb2ludDogJGJyZWFrcG9pbnQtLTE5MjAtcGx1cztcclxuXHR9XHJcblx0QGlmICgkYWxpYXMgPT0gJzE5MjAtcGx1cycpIHtcclxuXHRcdCRjYWxjdWxhdGVkLWJyZWFrcG9pbnQ6ICRicmVha3BvaW50LS0xOTIwLXBsdXM7XHJcblx0fVxyXG5cdFxyXG5cdFxyXG5cdFxyXG5cdEBpZiAoJGNhbGN1bGF0ZWQtYnJlYWtwb2ludCAhPSAnJykge1xyXG5cdFx0XHJcblx0XHRAaWYgKCRzY3JlZW4tb25seSA9PSB0cnVlKSB7XHJcblx0XHRcdFxyXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAjeyRjYWxjdWxhdGVkLWJyZWFrcG9pbnR9IHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRAY29udGVudDtcclxuXHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcclxuXHRcdFx0QG1lZGlhIGFsbCBhbmQgI3skY2FsY3VsYXRlZC1icmVha3BvaW50fSB7XHJcblx0XHRcdFx0XHJcblx0XHRcdFx0QGNvbnRlbnQ7XHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcbn0iLCJAdXNlICcuLi9mdW5jdGlvbnMvbWVkaWEtcXVlcnknIGFzICo7XHJcblxyXG4uZ3JpZHtcclxuXHRcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtY29sdW1uOiAxIC8gLTE7XHJcblx0Z3JpZC1yb3ctZ2FwOiAyNXB4O1xyXG5cdGdyaWQtY29sdW1uLWdhcDogMjVweDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRcclxuXHQmLS0xe1xyXG5cdFx0XHJcblx0XHRncmlkLWNvbHVtbjogMSAvIC0xO1xyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCYtLTJ7XHJcblx0XHRcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpe1xyXG5cdFx0XHRcclxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHQmLS0ze1xyXG5cdFx0XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCc3NjgnKXtcclxuXHRcdFx0XHJcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Ji0tNHtcclxuXHRcdFxyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xyXG5cdFx0XHJcblx0XHRAaW5jbHVkZSBtZWRpYS1xdWVyeSgnNzY4Jyl7XHJcblxyXG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCYtLTV7XHJcblx0XHRcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIG1pbm1heCgwLCAxZnIpKTtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpe1xyXG5cclxuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxuXHRcclxufSIsIkB1c2UgJy4uL2Z1bmN0aW9ucy90cmFuc2l0aW9ucycgYXMgKjtcclxuXHJcbi5ob3Zlci16b29te1xyXG5cdFxyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHJcblx0aW1nIHtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbi1hbGw7XHJcblx0XHRcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCY6aG92ZXIge1xyXG5cdFx0XHJcblx0XHRpbWcge1xyXG5cdFx0XHRcclxuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcbn0iLCJAbWl4aW4gdHJhbnNpdGlvbi1hbGwge1xyXG5cdFxyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xyXG5cdFxyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbi1hbGwtLXNsb3cge1xyXG5cdFxyXG5cdHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xyXG5cdFxyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbi1hbGwtLXF1aWNrIHtcclxuXHRcclxuXHR0cmFuc2l0aW9uOiBhbGwgMTgwbXMgZWFzZTtcclxuXHRcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24tYWxsLS1yYXBpZCB7XHJcblx0XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcywgdmlzaWJpbGl0eSAwbXM7XHJcblx0XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWFsbC0taW4tc2xvdyB7XHJcblx0XHJcblx0dHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2UtaW47XHJcblx0XHJcbn0iLCIvKiBTbGlkZXIgKi9cclxuLnNsaWNrLXNsaWRlciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xyXG5cdHRvdWNoLWFjdGlvbjogcGFuLXk7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdFxyXG5cdCY6Zm9jdXMge1xyXG5cdFx0b3V0bGluZTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0Ji5kcmFnZ2luZyB7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRjdXJzb3I6IGhhbmQ7XHJcblx0fVxyXG59XHJcblxyXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcclxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuXHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbn1cclxuXHJcbi5zbGljay10cmFjayB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGxlZnQ6IDA7XHJcblx0dG9wOiAwO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHRcclxuXHQmOmJlZm9yZSxcclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ZGlzcGxheTogdGFibGU7XHJcblx0fVxyXG5cdFxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y2xlYXI6IGJvdGg7XHJcblx0fVxyXG5cdFxyXG5cdC5zbGljay1sb2FkaW5nICYge1xyXG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdH1cclxufVxyXG5cclxuLnNsaWNrLXNsaWRlIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0bWluLWhlaWdodDogMXB4O1xyXG5cdFxyXG5cdFtkaXI9J3J0bCddICYge1xyXG5cdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdH1cclxuXHRcclxuXHRpbWcge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG5cdFxyXG5cdCYuc2xpY2stbG9hZGluZyBpbWcge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0Ji5kcmFnZ2luZyBpbWcge1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0fVxyXG5cdFxyXG5cdC5zbGljay1pbml0aWFsaXplZCAmIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHRcclxuXHQuc2xpY2stbG9hZGluZyAmIHtcclxuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR9XHJcblx0XHJcblx0LnNsaWNrLXZlcnRpY2FsICYge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR9XHJcbn1cclxuXHJcbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKiBMaWdodGJveCAqL1xyXG4uc2xpY2stbGlnaHRib3gge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR6LWluZGV4OiA5OTk5O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiBibGFjaztcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlXHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveCAuc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94IC5zbGljay1wcmV2IHtcclxuXHRsZWZ0OiAxNXB4XHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveCAuc2xpY2stbmV4dCB7XHJcblx0cmlnaHQ6IDE1cHhcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LWhpZGUge1xyXG5cdG9wYWNpdHk6IDBcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LWhpZGUuc2xpY2stbGlnaHRib3gtaWUge1xyXG5cdC1tcy1maWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKSc7XHJcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApXHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveC1oaWRlLWluaXQge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IC05OTk5cHg7XHJcblx0b3BhY2l0eTogMFxyXG59XHJcblxyXG4uc2xpY2stbGlnaHRib3gtaGlkZS1pbml0LnNsaWNrLWxpZ2h0Ym94LWllIHtcclxuXHQtbXMtZmlsdGVyOiAncHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MCknO1xyXG5cdGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKVxyXG59XHJcblxyXG4uc2xpY2stbGlnaHRib3gtaW5uZXIge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCVcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0ge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRvdmVyZmxvdzogaGlkZGVuXHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveC1zbGljay1pdGVtOmJlZm9yZSB7XHJcblx0Y29udGVudDogJyc7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdG1hcmdpbi1yaWdodDogLTAuMjVlbVxyXG59XHJcblxyXG4uc2xpY2stY2FwdGlvbi1ib3R0b20gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0gLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWNhcHRpb24ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRib3R0b206IDA7XHJcblx0bGVmdDogMDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweFxyXG59XHJcblxyXG4uc2xpY2stY2FwdGlvbi1keW5hbWljIC5zbGljay1saWdodGJveC1zbGljay1pdGVtIC5zbGljay1saWdodGJveC1zbGljay1pdGVtIC5zbGljay1saWdodGJveC1zbGljay1jYXB0aW9uIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXJcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWl0ZW0taW5uZXIge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdG1heC13aWR0aDogOTAlO1xyXG5cdG1heC1oZWlnaHQ6IDkwJVxyXG59XHJcblxyXG4uc2xpY2stbGlnaHRib3gtc2xpY2staW1nIHtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXgtd2lkdGg6IDkwJTtcclxuXHRtYXgtaGVpZ2h0OiA5MCVcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LXNsaWNrLWNhcHRpb24ge1xyXG5cdG1hcmdpbjogMTBweCAwIDA7XHJcblx0Y29sb3I6IHdoaXRlXHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveC1jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTVweDtcclxuXHRyaWdodDogMTVweDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDA7XHJcblx0Zm9udC1zaXplOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IG5vbmVcclxufVxyXG5cclxuLnNsaWNrLWxpZ2h0Ym94LWNsb3NlOmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lXHJcbn1cclxuXHJcbi5zbGljay1saWdodGJveC1jbG9zZTpiZWZvcmUge1xyXG5cdGZvbnQtZmFtaWx5OiAnc2xpY2snO1xyXG5cdGZvbnQtc2l6ZTogMjBweDtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0b3BhY2l0eTogMC44NTtcclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG5cdGNvbnRlbnQ6ICfDlydcclxufSIsIkB1c2UgJy4uL2Z1bmN0aW9ucy9tZWRpYS1xdWVyeScgYXMgKjtcclxuXHJcbi5pcy1oaWRkZW57XHJcblx0XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRcclxuXHQmLS1wb3J0cmFpdHtcclxuXHRcdFxyXG5cdFx0QG1lZGlhKG9yaWVudGF0aW9uOnBvcnRyYWl0KXtcclxuXHRcdFx0XHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Ji0tbGFuZHNjYXBle1xyXG5cdFx0XHJcblx0XHRAbWVkaWEob3JpZW50YXRpb246bGFuZHNjYXBlKXtcclxuXHRcdFx0XHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Ji0tbW9iaWxle1xyXG5cdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpe1xyXG5cdFx0XHRcclxuXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHQmLS10YWJsZXR7XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0Jyl7XHJcblx0XHRcdFxyXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCYtLWRlc2t0b3B7XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIG1lZGlhLXF1ZXJ5KCcxMDI0LXBsdXMnKXtcclxuXHRcdFx0XHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxyXG4gICAgSE9WRVJcclxuICAgIFxyXG4gICAgQSB1c2VmdWwgbGl0dGxlIG1peGluIHRvIGhlbHAgZ2VuZXJhdGUgYmV0dGVyIGhvdmVyIC8gZm9jdXMgZXRjLiBzdGF0ZXMuXHJcbiAgICBUaGlzIGFsc28gaGFzIGFuICdpbmNsdWRlLWFjdGl2ZScgZmxhZyB3aGljaCB3aWxsIGhlbHAgYWNjb3VudCBmb3IgYWN0aXZlIHN0YXRlcyB0b28uICBcclxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuQG1peGluIGhvdmVyKCRpbmNsdWRlLWFjdGl2ZTogZmFsc2UpIHtcclxuXHRcclxuXHRAaWYoJGluY2x1ZGUtYWN0aXZlKSB7XHJcblx0XHQmOnRhcmdldCxcclxuXHRcdCY6YWN0aXZlLFxyXG5cdFx0Jjpob3ZlcixcclxuXHRcdCY6Zm9jdXMsXHJcblx0XHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRAZWxzZSB7XHJcblx0XHQmOnRhcmdldCxcclxuXHRcdCY6YWN0aXZlLFxyXG5cdFx0Jjpmb2N1cyxcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9XHJcbn0gIiwiQHVzZSAnLi4vZnJhbWV3b3JrJyBhcyAqO1xyXG5cclxuLnNob3BwaW5nLWJhc2tldHtcclxuXHRcclxuXHQmX19yb3d7XHJcblx0XHRcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRncmlkLWdhcDogNTBweDtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpe1xyXG5cdFx0XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdGdyaWQtZ2FwOiAyNXB4O1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0JiArICYge1xyXG5cdFx0XHRcclxuXHRcdFx0bWFyZ2luLXRvcDogMjVweDtcclxuXHRcdFx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCZfX2ltYWdle1xyXG5cdFx0XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGhlaWdodDogMTEwcHg7XHJcblx0XHRtaW4td2lkdGg6IDExMHB4O1xyXG5cdFx0d2lkdGg6IDExMHB4O1xyXG5cdFx0bWFyZ2luOiAwIDIwcHg7XHJcblx0XHRcclxuXHRcdGF7XHJcblx0XHRcdFxyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRpbWcge1xyXG5cdFx0XHRcclxuXHRcdFx0bWF4LWhlaWdodDogMTAwJTtcclxuXHRcdFx0b2JqZWN0LWZpdDogY29udGFpbjtcclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Jl9fcXVhbnRpdHl7XHJcblx0XHRcclxuXHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XHJcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpe1xyXG5cdFx0XHRcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFxyXG5cdFx0XHQuYXRjX19xdWFudGl0eXtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0Jl9fYm9keXtcclxuXHRcdFxyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcclxuXHRcdCZfX3Jvd3tcclxuXHRcdFx0XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFxyXG5cdFx0XHQmICsgJntcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0XHRcdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdCZfX2FjdGlvbnMge1xyXG5cdFx0XHJcblx0XHQvL21hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdFx0XHJcblx0XHQmX19pdGVtIHtcclxuXHRcdFx0XHJcblx0XHRcdCYgKyAmIHtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdFx0XHRcdFxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQmLS1uZWdhdGl2ZXtcclxuXHRcdFx0XHRcclxuXHRcdFx0XHRjb2xvcjogI0U1MDAwMDtcclxuXHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxuXHRcclxufSIsIkB1c2UgJy4uL2ZyYW1ld29yaycgYXMgKjtcclxuXHJcbi5jYW1jb20ge1xyXG5cdFxyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRncmlkLXRlbXBsYXRlLWFyZWFzOiAnYm9keSBib2R5IGJvZHkgYm9keSBwcm9tbyBwcm9tbyBwcm9tbycgJ2JvZHkgYm9keSBib2R5IGJvZHkgc2lkZWJhciBzaWRlYmFyIHNpZGViYXInO1xyXG5cdGdyaWQtY29sdW1uLWdhcDogNTBweDtcclxuXHRncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gbWlubWF4KDAsIDFmcik7XHJcblx0XHJcblx0QGluY2x1ZGUgbWVkaWEtcXVlcnkoJzc2OCcpIHtcclxuXHRcdFxyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogJ2JvZHknICdzaWRlYmFyJyAncHJvbW8nIDtcclxuXHRcdGdyaWQtcm93LWdhcDogMjVweDtcclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHQubWFpbi1ib2R5IHtcclxuXHRcdFxyXG5cdFx0Z3JpZC1hcmVhOiBib2R5O1xyXG5cdFx0aGVpZ2h0OiBmaXQtY29udGVudDtcclxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHQucHJvbW8tYXJlYSB7XHJcblx0XHRcclxuXHRcdGdyaWQtYXJlYTogcHJvbW87XHJcblx0XHRcclxuXHR9XHJcblx0XHJcblx0LnNpZGViYXIge1xyXG5cdFx0XHJcblx0XHRncmlkLWFyZWE6IHNpZGViYXI7XHJcblx0XHRcclxuXHR9XHJcblx0XHJcbn0iXX0= */
