/* ----------
 @ Bourbon
---------- */
/* ----------
 @ Bootstrap Variables
---------- */
/* ----------
 @ Custom Variables
---------- */
/* --------------------
 @@ Project Specific Variables
-------------------- */
/* ----------
 @ Options
---------- */
/* ----------
 @ Colors
---------- */
/* ----------
 @ Typography
---------- */
/* ----------
 @ Layout
---------- */
/* ----------
 @ Misc
---------- */
/* ----------
 @ Custom Utilities
---------- */
/* ----------
 @ Rounded Corners
---------- */
/* --------------------
 @@ Mixins
-------------------- */
/* ----------
 @ Maintain Aspect Ratio
	- *** requires that the element has an inner container element if there is inner content
	- $x => x portion of ratio
	- $y => y portion of ratio
    - $c => set to 'false' to skip :first-child styling
---------- */
/* ----------
 @ Background Image
	- Shortcut for linking images in the configured images folder
	- $i => image file name (relative to images folder)
	- $rest => any additional 'background' property shortcut declarations (ie: no-repeat)
---------- */
/* ----------
 @ Size
 	- Shortcut for setting height and width
 	- $width => width of element
 	- $height => height of element
 	- Single value will set both values (e.g. size(100%);
---------- */
/* --------------------
 @@ Functions
-------------------- */
/* ----------
 @ Color Get
 	- get value from the $theme-colors map
---------- */
/* ----------
 @ Breakpoint Get
 	- get value from the $grid-breakpoints map
 	- $type => 'max' | 'min', depending on media query type
---------- */
/* ----------
 @ Rems
	- convert pixels to rems
	- $p => pixel value
	- $b => base size (to use in formula) - defaults to $font-sizes root variable
---------- */
/* ----------
 @ Map Deep Get
 	- get value from nested maps
---------- */
/* ----------
 @ Weight Get
 	- get value from the $font-weights map
---------- */
.c-banner-single-news {
  position: relative;
  height: 35rem;
  border-radius: 0 4rem 0 4rem;
  overflow: hidden;
  z-index: 0;
}

.c-banner-single-news__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
}

.c-banner-single-news__bg--low-res {
  -webkit-filter: blur(2px);
          filter: blur(2px);
}

.c-banner-single-news__interactions {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  color: #fff;
  background-color: rgba(60, 55, 120, 0.9);
}

.c-banner-single-news__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.c-banner-single-news__back {
  font-weight: 600;
  color: #fff;
}

.c-banner-single-news__back::before {
  content: '\f060';
  display: inline-block;
  margin-right: 0.5em;
  font-family: 'Font Awesome 5 Pro';
  -webkit-transition: -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
  transition: -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
  transition: transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
  transition: transform 150ms cubic-bezier(0, 0, 0.55, 1.7), -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
}

.c-banner-single-news__back:hover, .c-banner-single-news__back:focus {
  text-decoration: none;
  color: #fff;
}

.c-banner-single-news__back:hover::before, .c-banner-single-news__back:focus::before {
  -webkit-transform: translateX(-0.5em);
          transform: translateX(-0.5em);
}

.c-banner-single-news__mobile-back {
  display: none;
}

.c-banner-single-news__share {
  margin: 0;
}

.c-banner-single-news__share .a2a_kit a {
  margin: 0;
}

.c-banner-single-news__share .a2a_kit a:hover, .c-banner-single-news__share .a2a_kit a:focus {
  opacity: 1;
}

.c-banner-single-news__share .a2a_kit a:hover .a2a_svg, .c-banner-single-news__share .a2a_kit a:focus .a2a_svg {
  padding: 0.15em;
  fill: #3c3778 !important;
  background-color: #fff !important;
  border-radius: 50%;
  opacity: 1;
}

.c-banner-single-news__share .a2a_kit a:hover svg,
.c-banner-single-news__share .a2a_kit a:hover path, .c-banner-single-news__share .a2a_kit a:focus svg,
.c-banner-single-news__share .a2a_kit a:focus path {
  fill: #3c3778 !important;
}

.c-banner-single-news__share .a2a_kit .a2a_svg {
  padding: 0.15em;
  fill: #dc5936 !important;
  background-color: #fff !important;
  border-radius: 50%;
}

.c-banner-single-news__share .a2a_kit svg,
.c-banner-single-news__share .a2a_kit path {
  fill: #dc5936 !important;
}

@media only screen and (max-width: 768px) {
  .c-banner-single-news {
    height: auto;
    border-radius: 0 2rem 0 2rem;
  }
  .c-banner-single-news::before {
    content: '';
    display: inline-block;
    padding-bottom: 75%;
  }
  .c-banner-single-news__container {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-banner-single-news__back {
    display: none;
  }
  .c-banner-single-news__mobile-back {
    display: block;
    margin-left: 1rem;
    font-weight: 600;
    color: #006b86;
  }
  .c-banner-single-news__mobile-back::before {
    content: '\f060';
    display: inline-block;
    margin-right: 0.5em;
    font-family: 'Font Awesome 5 Pro';
    -webkit-transition: -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
    transition: -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
    transition: transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
    transition: transform 150ms cubic-bezier(0, 0, 0.55, 1.7), -webkit-transform 150ms cubic-bezier(0, 0, 0.55, 1.7);
  }
  .c-banner-single-news__mobile-back:hover, .c-banner-single-news__mobile-back:focus {
    text-decoration: none;
    color: #006b86;
  }
  .c-banner-single-news__mobile-back:hover::before, .c-banner-single-news__mobile-back:focus::before {
    -webkit-transform: translateX(-0.5em);
            transform: translateX(-0.5em);
  }
}

.c-password-protected {
  margin-top: 3rem;
}

.c-password-protected form {
  text-align: center;
}

.c-password-protected input[type="password"] {
  position: relative;
  margin-top: 0;
  padding: 0.5em 0;
  font-weight: 500;
  line-height: 1.2;
  color: #3c3778;
  background: transparent;
  border-bottom: 2px solid #006b86;
  border-radius: 0;
  z-index: 1;
}

.c-password-protected input[type="submit"] {
  display: inline-block;
  margin-left: 1rem;
  padding: 1rem 2rem;
  font-size: 1.22222rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none;
  border-radius: 0 1rem 0 1rem;
  color: #fff;
  background-color: #3c3778;
  line-height: 1;
  -webkit-transition: border-radius 150ms ease-in-out;
  transition: border-radius 150ms ease-in-out;
}

.c-password-protected input[type="submit"]:hover, .c-password-protected input[type="submit"]:focus {
  color: #fff;
  text-decoration: none;
  border-radius: 1rem 0 1rem 0;
}

/* ----------
 @ Content Blocks for Block Builder
---------- */
.c-block {
  display: inline-block;
  width: 100%;
  margin-top: 5rem;
}

.c-block:first-of-type {
  margin-top: 0;
}

.c-block-text:has(:last-of-type(:is(h2, h3, h4))) {
  margin-bottom: -10rem;
}

.c-block-text + .c-block-text {
  margin-top: 1.5rem;
}

@media only screen and (max-width: 768px) {
  .c-block {
    margin-top: 3rem;
  }
}

.c-block-text__content {
  -webkit-column-gap: 5rem;
     -moz-column-gap: 5rem;
          column-gap: 5rem;
}

.c-block-text__content--two-col {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
}

.c-block-text__content--three-col {
  -webkit-columns: 3;
     -moz-columns: 3;
          columns: 3;
}

@media only screen and (max-width: 768px) {
  .c-block-text__content {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
  }
}

.c-block-blockquote__quote {
  padding-left: 2rem;
  font-family: "clarendon-text-pro", serif;
  font-size: 2.77778rem;
  line-height: 1.5;
  color: #3c3778;
  border-left: 3px solid #dc5936;
}

.c-block-blockquote__cite {
  display: block;
  margin-top: 1.25rem;
  padding-left: 2rem;
  font-size: 1rem;
  font-weight: 600;
  font-style: normal;
  color: #dc5936;
  text-align: left;
}

.c-block-buttons {
  margin-top: 3rem;
}

.c-block-buttons__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -0.5rem;
}

.c-block-buttons--left .c-block-buttons__wrapper {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.c-block-buttons--centre .c-block-buttons__wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-block-buttons__button {
  margin: 0.5rem;
}

.c-block-embed {
  width: 100%;
}

.c-block-embed__wrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.c-block-embed__wrapper--left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.c-block-embed__wrapper--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-block-embed__wrapper--right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.c-block-embed iframe,
.c-block-embed object,
.c-block-embed embed {
  max-width: 100%;
}

@media only screen and (max-width: 768px) {
  .c-block-embed__wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.c-block-figure {
  position: relative;
  overflow: hidden;
}

.c-block-figure__image {
  width: 100%;
  border-radius: 0 2rem 0 2rem;
}

.c-block-figure__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0.5em 2.5rem;
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom-left-radius: 2rem;
}

.c-block-form__wrapper {
  width: 100%;
  padding: clamp(2rem, 10vw, 6rem) clamp(1rem, 5vw, 10rem);
  background-color: #efefef;
  border-radius: 0 3rem 0 3rem;
}

.c-block-form__title {
  padding: 0 1rem;
}

.c-block-image--full-width .c-block-image__image {
  border-radius: 0 4rem 0 4rem;
}

.c-block-image--full-width .c-block-image__caption {
  padding: 0.5em 4.5rem;
}

.c-block-images__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -1rem;
}

.c-block-images__figure {
  width: calc((100% - 2rem * 2) / 2);
  margin: 1rem;
}

.c-block-images__image {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media only screen and (max-width: 768px) {
  .c-block-images__wrapper {
    margin: 0;
  }
  .c-block-images__figure {
    width: 100%;
    margin: 2rem 0 0 0;
  }
  .c-block-images__figure:first-child {
    margin-top: 0;
  }
}

.c-block-image-text__figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  width: 50%;
  max-height: 500px;
  border-radius: 0 2rem 0 2rem;
}

.c-block-image-text__figure--left {
  float: left;
  margin-right: 2rem;
}

.c-block-image-text__figure--right {
  float: right;
  margin-left: 2rem;
}

.c-block-image-text__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-block-image-text__text {
  display: inline;
}

@media only screen and (max-width: 768px) {
  .c-block-image-text__figure--left,
  .c-block-image-text__figure--right {
    float: none;
    width: 100%;
    margin: 0;
  }
  .c-block-image-text__text {
    display: block;
    margin-top: 1.5rem;
  }
}

.c-block-video {
  width: 100%;
}

.c-block-video--embed {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}

.c-block-video__wrapper {
  position: relative;
  margin-top: 1rem;
  border-radius: 0 2rem 0 2rem;
  overflow: hidden;
  cursor: pointer;
}

.c-block-video__wrapper::before {
  content: '';
  display: block;
  padding-bottom: 56.25%;
}

.c-block-video__wrapper:hover .c-intro-block__video__play-btn, .c-block-video__wrapper:focus .c-intro-block__video__play-btn {
  --intro-video-play-btn-scale: 1.1;
}

.c-block-video__wrapper__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}

.c-block-video--embed iframe,
.c-block-video--embed object,
.c-block-video--embed embed {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.c-intro-block__video__play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3rem;
  margin: 0;
  pointer-events: none;
  -webkit-transform: translate(-50%, -50%), scale(var(--intro-video-play-btn-scale, 1));
          transform: translate(-50%, -50%), scale(var(--intro-video-play-btn-scale, 1));
  -webkit-transition: opacity 0.25s ease-out, -webkit-transform 0.25s ease-out;
  transition: opacity 0.25s ease-out, -webkit-transform 0.25s ease-out;
  transition: opacity 0.25s ease-out, transform 0.25s ease-out;
  transition: opacity 0.25s ease-out, transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}

.has-video-playing .c-intro-block__video__play-btn {
  opacity: 0;
  -webkit-transition: opacity 100ms ease-out;
  transition: opacity 100ms ease-out;
}

.c-block-image-carousel {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding-bottom: 2.5rem;
  --page-gutter: Max(calc((100vw - 1440px) / 2), 1rem);
}

.c-block-image-carousel::before {
  content: '';
  position: absolute;
  inset: 7.5rem 0 0;
  background-color: #006b86;
}

.c-block-image-carousel__container {
  width: calc(100% - var(--page-gutter));
  -webkit-transform: translateX(var(--page-gutter));
          transform: translateX(var(--page-gutter));
  overflow: hidden;
  padding: 0 33.34% 0 0;
}

.c-block-image-carousel__carousel {
  width: 200%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-block-image-carousel__carousel .slick-list {
  overflow: visible !important;
}

.c-block-image-carousel__carousel .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-block-image-carousel__carousel .slick-slide {
  float: none;
  height: auto;
}

.c-block-image-carousel__progress-bar {
  --progress: 0%;
  position: relative;
  width: 100%;
  max-width: 375px;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.2);
}

.c-block-image-carousel__progress-bar::after {
  content: '';
  position: absolute;
  inset: 0;
  width: var(--progress);
  background-color: #fff;
  -webkit-transition: 150ms width ease;
  transition: 150ms width ease;
}

.c-block-image-carousel__slide {
  margin: 0 2rem 0 0;
  position: relative;
}

.c-block-image-carousel__slide::before {
  content: '';
  display: block;
  padding-top: 56.25%;
}

.c-block-image-carousel__figure {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.c-block-image-carousel__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-block-image-carousel__controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 2rem;
}

.c-block-image-carousel__buttons {
  margin-top: 0;
}

.c-block-image-carousel__button {
  width: 45px;
  height: 45px;
  margin-left: 0.25rem;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  text-align: center;
  -webkit-transition: 150ms color ease, 150ms background-color ease;
  transition: 150ms color ease, 150ms background-color ease;
}

.c-block-image-carousel__button::before {
  font-family: "Font Awesome 5 Pro";
  font-size: 1rem;
}

.c-block-image-carousel__button--prev {
  border-bottom-left-radius: 10px;
}

.c-block-image-carousel__button--prev::before {
  content: '\f060';
}

.c-block-image-carousel__button--next {
  border-top-right-radius: 10px;
}

.c-block-image-carousel__button--next::before {
  content: '\f061';
}

.c-block-image-carousel__button:hover, .c-block-image-carousel__button:focus {
  background-color: #fff;
  color: #006b86;
}

@media only screen and (max-width: 991.98px) {
  .c-block-image-carousel__progress-bar {
    max-width: 200px;
  }
  .c-block-image-carousel__container {
    width: 100%;
    padding: 0 0;
  }
}

.c-block-call-to-action {
  color: #fff;
  background-color: #3c3778;
  --headings-color: #fff;
}

.c-block-call-to-action__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-block-call-to-action__content {
  padding: 3.5rem 1rem;
}

.c-block-call-to-action__image {
  position: relative;
  height: 100%;
  margin-top: 0;
  margin-right: calc(min(calc(((100vw - 1476px + 1.2rem) / 2) * -1), -15px));
  margin-bottom: 0;
}

.c-block-call-to-action__img-el {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0 0 0 3rem;
}

.c-block-call-to-action__buttons {
  margin-top: 2rem;
}

.c-block-call-to-action--no-image {
  text-align: center;
}

.c-block-call-to-action--no-image .c-block-call-to-action__content {
  padding: 3.5rem 1rem;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 768px) {
  .c-block-call-to-action__image-wrapper {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .c-block-call-to-action__image {
    margin-left: -1rem;
  }
}

.c-block-people__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  padding: 4.5rem 8.33%;
  background-color: #efefef;
}

.c-person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  border-radius: 0 3rem 0 3rem;
  overflow: hidden;
}

.c-person:nth-of-type(odd) .c-person__image {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  margin: 0 auto 0 0;
}

.c-person__content {
  max-width: 60%;
  padding: 2.5rem 2.25rem;
}

.c-person__position {
  font-weight: 700;
}

.c-person__image {
  margin: 0 0 0 auto;
  max-width: 40%;
  overflow: hidden;
}

.c-person__img-el {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-person__show-bio {
  display: none;
}

@media only screen and (max-width: 991px) {
  .c-person {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-person__image {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
  .c-person__content,
  .c-person__image {
    max-width: 100%;
  }
  .c-person__image {
    max-height: 400px;
  }
  .c-block-people__items {
    margin-left: -15px;
    margin-right: -15px;
    padding: 2.5rem 1rem;
    gap: 2rem;
  }
}

@media only screen and (max-width: 768px) {
  .c-person__content {
    padding: 2rem 1.5rem;
  }
  .c-person__bio {
    margin: 0;
    height: 0;
    overflow: hidden;
  }
  .c-person__show-bio {
    display: block;
    margin-top: 0.75rem;
    color: #dc5936;
  }
}

.c-single-news-intro {
  margin-top: 6rem;
}

.c-single-news-intro__date {
  position: relative;
  font-family: "clarendon-text-pro", serif;
  font-size: 18px;
  color: #dc5936;
}

.c-single-news-intro__date::before {
  content: '';
  position: absolute;
  left: -1rem;
  top: 43%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 1.25em;
  width: 3px;
  background-color: currentColor;
}

.c-single-news-intro__subtitle {
  margin-top: 3rem;
  text-transform: capitalize;
}

.c-single-news-back-button {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 3rem auto 0;
}

@media only screen and (max-width: 768px) {
  .c-single-news-intro {
    margin-top: 4rem;
  }
  .c-single-news-intro__date {
    margin-left: 1rem;
  }
  .c-single-news-intro__subtitle {
    margin-top: 2rem;
    text-transform: capitalize;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl91dGlsaXRpZXMuc2NzcyIsInNpbmdsZS1jb21tdW5pdHkuY3NzIiwiX2N1c3RvbS11dGlsaXRpZXMuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Jhc2UtdGhlbWUvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL19taXhpbnMuc2NzcyIsImNvbXBvbmVudHMvX2Jhbm5lci1zaW5nbGUtbmV3cy5zY3NzIiwiY29tcG9uZW50cy9fcGFzc3dvcmQtcHJvdGVjdGVkLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQtYmxvY2tzL19jb250ZW50LWJsb2Nrcy5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fdGV4dC5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fYmxvY2txdW90ZS5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fZW1iZWQuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC1ibG9ja3MvX2ZpZ3VyZS5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9faW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC1ibG9ja3MvX2ltYWdlcy5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9faW1hZ2UtdGV4dC5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fdmlkZW8uc2NzcyIsImNvbXBvbmVudHMvY29udGVudC1ibG9ja3MvX2ltYWdlLWNhcm91c2VsLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQtYmxvY2tzL19jYWxsLXRvLWFjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9fcGVvcGxlLnNjc3MiLCJzaW5nbGUtY29tbXVuaXR5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5n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QUNJO0lBQ0ksZ0JBQWdCO0VyQjAwQnRCO0VxQngwQkU7SUFDSSxpQm5CK0RnQztFRjJ3QnRDO0VxQngwQkU7SUFDSSxnQkFBZ0I7SUFDaEIsMEJBQTBCO0VyQjAwQmhDO0FBQ0YiLCJmaWxlIjoic2luZ2xlLWNvbW11bml0eS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib3VyYm9uL2NvcmUvX2JvdXJib24uc2Nzc1wiO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvc2Nzcy9taXhpbnNcIjsiLCIvKiAtLS0tLS0tLS0tXG4gQCBCb3VyYm9uXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBCb290c3RyYXAgVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEBAIFByb2plY3QgU3BlY2lmaWMgVmFyaWFibGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgT3B0aW9uc1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3JzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBUeXBvZ3JhcGh5XG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBMYXlvdXRcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIE1pc2Ncbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIEN1c3RvbSBVdGlsaXRpZXNcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS1cbiBAIFJvdW5kZWQgQ29ybmVyc1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBNYWludGFpbiBBc3BlY3QgUmF0aW9cblx0LSAqKiogcmVxdWlyZXMgdGhhdCB0aGUgZWxlbWVudCBoYXMgYW4gaW5uZXIgY29udGFpbmVyIGVsZW1lbnQgaWYgdGhlcmUgaXMgaW5uZXIgY29udGVudFxuXHQtICR4ID0+IHggcG9ydGlvbiBvZiByYXRpb1xuXHQtICR5ID0+IHkgcG9ydGlvbiBvZiByYXRpb1xuICAgIC0gJGMgPT4gc2V0IHRvICdmYWxzZScgdG8gc2tpcCA6Zmlyc3QtY2hpbGQgc3R5bGluZ1xuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQmFja2dyb3VuZCBJbWFnZVxuXHQtIFNob3J0Y3V0IGZvciBsaW5raW5nIGltYWdlcyBpbiB0aGUgY29uZmlndXJlZCBpbWFnZXMgZm9sZGVyXG5cdC0gJGkgPT4gaW1hZ2UgZmlsZSBuYW1lIChyZWxhdGl2ZSB0byBpbWFnZXMgZm9sZGVyKVxuXHQtICRyZXN0ID0+IGFueSBhZGRpdGlvbmFsICdiYWNrZ3JvdW5kJyBwcm9wZXJ0eSBzaG9ydGN1dCBkZWNsYXJhdGlvbnMgKGllOiBuby1yZXBlYXQpXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQEAgRnVuY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQ29sb3IgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkdGhlbWUtY29sb3JzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgQnJlYWtwb2ludCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcFxuIFx0LSAkdHlwZSA9PiAnbWF4JyB8ICdtaW4nLCBkZXBlbmRpbmcgb24gbWVkaWEgcXVlcnkgdHlwZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgUmVtc1xuXHQtIGNvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcblx0LSAkcCA9PiBwaXhlbCB2YWx1ZVxuXHQtICRiID0+IGJhc2Ugc2l6ZSAodG8gdXNlIGluIGZvcm11bGEpIC0gZGVmYXVsdHMgdG8gJGZvbnQtc2l6ZXMgcm9vdCB2YXJpYWJsZVxuLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tXG4gQCBXZWlnaHQgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIHRoZSAkZm9udC13ZWlnaHRzIG1hcFxuLS0tLS0tLS0tLSAqL1xuLmMtYmFubmVyLXNpbmdsZS1uZXdzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDM1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwIDRyZW0gMCA0cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAwO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JnLS1sb3ctcmVzIHtcbiAgZmlsdGVyOiBibHVyKDJweCk7XG59XG5cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19faW50ZXJhY3Rpb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2MCwgNTUsIDEyMCwgMC45KTtcbn1cblxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmFjayB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JhY2s6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwNjAnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG4gIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjU1LCAxLjcpO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JhY2s6aG92ZXIsIC5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmFjazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmFjazpob3Zlcjo6YmVmb3JlLCAuYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JhY2s6Zm9jdXM6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC41ZW0pO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX21vYmlsZS1iYWNrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSAuYTJhX2tpdCBhIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX3NoYXJlIC5hMmFfa2l0IGE6aG92ZXIsIC5jLWJhbm5lci1zaW5nbGUtbmV3c19fc2hhcmUgLmEyYV9raXQgYTpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fc2hhcmUgLmEyYV9raXQgYTpob3ZlciAuYTJhX3N2ZywgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSAuYTJhX2tpdCBhOmZvY3VzIC5hMmFfc3ZnIHtcbiAgcGFkZGluZzogMC4xNWVtO1xuICBmaWxsOiAjM2MzNzc4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX3NoYXJlIC5hMmFfa2l0IGE6aG92ZXIgc3ZnLFxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSAuYTJhX2tpdCBhOmhvdmVyIHBhdGgsIC5jLWJhbm5lci1zaW5nbGUtbmV3c19fc2hhcmUgLmEyYV9raXQgYTpmb2N1cyBzdmcsXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX3NoYXJlIC5hMmFfa2l0IGE6Zm9jdXMgcGF0aCB7XG4gIGZpbGw6ICMzYzM3NzggIWltcG9ydGFudDtcbn1cblxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSAuYTJhX2tpdCAuYTJhX3N2ZyB7XG4gIHBhZGRpbmc6IDAuMTVlbTtcbiAgZmlsbDogI2RjNTkzNiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19zaGFyZSAuYTJhX2tpdCBzdmcsXG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX3NoYXJlIC5hMmFfa2l0IHBhdGgge1xuICBmaWxsOiAjZGM1OTM2ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtYmFubmVyLXNpbmdsZS1uZXdzIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogMCAycmVtIDAgMnJlbTtcbiAgfVxuICAuYy1iYW5uZXItc2luZ2xlLW5ld3M6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIH1cbiAgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19jb250YWluZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1iYW5uZXItc2luZ2xlLW5ld3NfX21vYmlsZS1iYWNrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDA2Yjg2O1xuICB9XG4gIC5jLWJhbm5lci1zaW5nbGUtbmV3c19fbW9iaWxlLWJhY2s6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjA2MCc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBQcm8nO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC41NSwgMS43KTtcbiAgfVxuICAuYy1iYW5uZXItc2luZ2xlLW5ld3NfX21vYmlsZS1iYWNrOmhvdmVyLCAuYy1iYW5uZXItc2luZ2xlLW5ld3NfX21vYmlsZS1iYWNrOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICMwMDZiODY7XG4gIH1cbiAgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19tb2JpbGUtYmFjazpob3Zlcjo6YmVmb3JlLCAuYy1iYW5uZXItc2luZ2xlLW5ld3NfX21vYmlsZS1iYWNrOmZvY3VzOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC41ZW0pO1xuICB9XG59XG5cbi5jLXBhc3N3b3JkLXByb3RlY3RlZCB7XG4gIG1hcmdpbi10b3A6IDNyZW07XG59XG5cbi5jLXBhc3N3b3JkLXByb3RlY3RlZCBmb3JtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1wYXNzd29yZC1wcm90ZWN0ZWQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nOiAwLjVlbSAwO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzNjMzc3ODtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA2Yjg2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4uYy1wYXNzd29yZC1wcm90ZWN0ZWQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAxLjIyMjIycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMXJlbSAwIDFyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2MzNzc4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLXJhZGl1cyAxNTBtcyBlYXNlLWluLW91dDtcbn1cblxuLmMtcGFzc3dvcmQtcHJvdGVjdGVkIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIC5jLXBhc3N3b3JkLXByb3RlY3RlZCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMXJlbSAwIDFyZW0gMDtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgQ29udGVudCBCbG9ja3MgZm9yIEJsb2NrIEJ1aWxkZXJcbi0tLS0tLS0tLS0gKi9cbi5jLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbn1cblxuLmMtYmxvY2s6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jLWJsb2NrLXRleHQ6aGFzKDpsYXN0LW9mLXR5cGUoOmlzKGgyLCBoMywgaDQpKSkge1xuICBtYXJnaW4tYm90dG9tOiAtMTByZW07XG59XG5cbi5jLWJsb2NrLXRleHQgKyAuYy1ibG9jay10ZXh0IHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG59XG5cbi5jLWJsb2NrLXRleHRfX2NvbnRlbnQge1xuICBjb2x1bW4tZ2FwOiA1cmVtO1xufVxuXG4uYy1ibG9jay10ZXh0X19jb250ZW50LS10d28tY29sIHtcbiAgY29sdW1uczogMjtcbn1cblxuLmMtYmxvY2stdGV4dF9fY29udGVudC0tdGhyZWUtY29sIHtcbiAgY29sdW1uczogMztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1ibG9jay10ZXh0X19jb250ZW50IHtcbiAgICBjb2x1bW5zOiAxO1xuICB9XG59XG5cbi5jLWJsb2NrLWJsb2NrcXVvdGVfX3F1b3RlIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBmb250LWZhbWlseTogXCJjbGFyZW5kb24tdGV4dC1wcm9cIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMi43Nzc3OHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMzYzM3Nzg7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI2RjNTkzNjtcbn1cblxuLmMtYmxvY2stYmxvY2txdW90ZV9fY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogI2RjNTkzNjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmMtYmxvY2stYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IDNyZW07XG59XG5cbi5jLWJsb2NrLWJ1dHRvbnNfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogLTAuNXJlbTtcbn1cblxuLmMtYmxvY2stYnV0dG9ucy0tbGVmdCAuYy1ibG9jay1idXR0b25zX193cmFwcGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYy1ibG9jay1idXR0b25zLS1jZW50cmUgLmMtYmxvY2stYnV0dG9uc19fd3JhcHBlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1ibG9jay1idXR0b25zX19idXR0b24ge1xuICBtYXJnaW46IDAuNXJlbTtcbn1cblxuLmMtYmxvY2stZW1iZWQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtYmxvY2stZW1iZWRfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYy1ibG9jay1lbWJlZF9fd3JhcHBlci0tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmMtYmxvY2stZW1iZWRfX3dyYXBwZXItLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1ibG9jay1lbWJlZF9fd3JhcHBlci0tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYy1ibG9jay1lbWJlZCBpZnJhbWUsXG4uYy1ibG9jay1lbWJlZCBvYmplY3QsXG4uYy1ibG9jay1lbWJlZCBlbWJlZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1ibG9jay1lbWJlZF9fd3JhcHBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLmMtYmxvY2stZmlndXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1ibG9jay1maWd1cmVfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMnJlbSAwIDJyZW07XG59XG5cbi5jLWJsb2NrLWZpZ3VyZV9fY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41ZW0gMi41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJyZW07XG59XG5cbi5jLWJsb2NrLWZvcm1fX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogY2xhbXAoMnJlbSwgMTB2dywgNnJlbSkgY2xhbXAoMXJlbSwgNXZ3LCAxMHJlbSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIGJvcmRlci1yYWRpdXM6IDAgM3JlbSAwIDNyZW07XG59XG5cbi5jLWJsb2NrLWZvcm1fX3RpdGxlIHtcbiAgcGFkZGluZzogMCAxcmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZS0tZnVsbC13aWR0aCAuYy1ibG9jay1pbWFnZV9faW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiAwIDRyZW0gMCA0cmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZS0tZnVsbC13aWR0aCAuYy1ibG9jay1pbWFnZV9fY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAuNWVtIDQuNXJlbTtcbn1cblxuLmMtYmxvY2staW1hZ2VzX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IC0xcmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZXNfX2ZpZ3VyZSB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMnJlbSAqIDIpIC8gMik7XG4gIG1hcmdpbjogMXJlbTtcbn1cblxuLmMtYmxvY2staW1hZ2VzX19pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jLWJsb2NrLWltYWdlc19fd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5jLWJsb2NrLWltYWdlc19fZmlndXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDJyZW0gMCAwIDA7XG4gIH1cbiAgLmMtYmxvY2staW1hZ2VzX19maWd1cmU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmMtYmxvY2staW1hZ2UtdGV4dF9fZmlndXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHdpZHRoOiA1MCU7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xuICBib3JkZXItcmFkaXVzOiAwIDJyZW0gMCAycmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZS10ZXh0X19maWd1cmUtLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZS10ZXh0X19maWd1cmUtLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbn1cblxuLmMtYmxvY2staW1hZ2UtdGV4dF9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtYmxvY2staW1hZ2UtdGV4dF9fdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1ibG9jay1pbWFnZS10ZXh0X19maWd1cmUtLWxlZnQsXG4gIC5jLWJsb2NrLWltYWdlLXRleHRfX2ZpZ3VyZS0tcmlnaHQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAuYy1ibG9jay1pbWFnZS10ZXh0X190ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIH1cbn1cblxuLmMtYmxvY2stdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtYmxvY2stdmlkZW8tLWVtYmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5jLWJsb2NrLXZpZGVvX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwIDJyZW0gMCAycmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jLWJsb2NrLXZpZGVvX193cmFwcGVyOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5jLWJsb2NrLXZpZGVvX193cmFwcGVyOmhvdmVyIC5jLWludHJvLWJsb2NrX192aWRlb19fcGxheS1idG4sIC5jLWJsb2NrLXZpZGVvX193cmFwcGVyOmZvY3VzIC5jLWludHJvLWJsb2NrX192aWRlb19fcGxheS1idG4ge1xuICAtLWludHJvLXZpZGVvLXBsYXktYnRuLXNjYWxlOiAxLjE7XG59XG5cbi5jLWJsb2NrLXZpZGVvX193cmFwcGVyX192aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi5jLWJsb2NrLXZpZGVvLS1lbWJlZCBpZnJhbWUsXG4uYy1ibG9jay12aWRlby0tZW1iZWQgb2JqZWN0LFxuLmMtYmxvY2stdmlkZW8tLWVtYmVkIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jLWludHJvLWJsb2NrX192aWRlb19fcGxheS1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAzcmVtO1xuICBtYXJnaW46IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSwgc2NhbGUodmFyKC0taW50cm8tdmlkZW8tcGxheS1idG4tc2NhbGUsIDEpKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjVzIGVhc2Utb3V0O1xufVxuXG4uaGFzLXZpZGVvLXBsYXlpbmcgLmMtaW50cm8tYmxvY2tfX3ZpZGVvX19wbGF5LWJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTAwbXMgZWFzZS1vdXQ7XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbiAgLS1wYWdlLWd1dHRlcjogTWF4KGNhbGMoKDEwMHZ3IC0gMTQ0MHB4KSAvIDIpLCAxcmVtKTtcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiA3LjVyZW0gMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2Yjg2O1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fY29udGFpbmVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZ2UtZ3V0dGVyKSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1wYWdlLWd1dHRlcikpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDMzLjM0JSAwIDA7XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19jYXJvdXNlbCB7XG4gIHdpZHRoOiAyMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fY2Fyb3VzZWwgLnNsaWNrLWxpc3Qge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fY2Fyb3VzZWwgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fY2Fyb3VzZWwgLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX3Byb2dyZXNzLWJhciB7XG4gIC0tcHJvZ3Jlc3M6IDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDM3NXB4O1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fcHJvZ3Jlc3MtYmFyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB3aWR0aDogdmFyKC0tcHJvZ3Jlc3MpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiAxNTBtcyB3aWR0aCBlYXNlO1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fc2xpZGUge1xuICBtYXJnaW46IDAgMnJlbSAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX3NsaWRlOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19maWd1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2NvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19idXR0b24ge1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAxNTBtcyBjb2xvciBlYXNlLCAxNTBtcyBiYWNrZ3JvdW5kLWNvbG9yIGVhc2U7XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19idXR0b246OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19idXR0b24tLXByZXYge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4O1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fYnV0dG9uLS1wcmV2OjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDYwJztcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2J1dHRvbi0tbmV4dCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xufVxuXG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fYnV0dG9uLS1uZXh0OjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDYxJztcbn1cblxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2J1dHRvbjpob3ZlciwgLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2J1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMDA2Yjg2O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19wcm9ncmVzcy1iYXIge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gIH1cbiAgLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwO1xuICB9XG59XG5cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYzM3Nzg7XG4gIC0taGVhZGluZ3MtY29sb3I6ICNmZmY7XG59XG5cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmMtYmxvY2stY2FsbC10by1hY3Rpb25fX2NvbnRlbnQge1xuICBwYWRkaW5nOiAzLjVyZW0gMXJlbTtcbn1cblxuLmMtYmxvY2stY2FsbC10by1hY3Rpb25fX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogY2FsYyhtaW4oY2FsYygoKDEwMHZ3IC0gMTQ3NnB4ICsgMS4ycmVtKSAvIDIpICogLTEpLCAtMTVweCkpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYy1ibG9jay1jYWxsLXRvLWFjdGlvbl9faW1nLWVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAzcmVtO1xufVxuXG4uYy1ibG9jay1jYWxsLXRvLWFjdGlvbl9fYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uLS1uby1pbWFnZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtYmxvY2stY2FsbC10by1hY3Rpb24tLW5vLWltYWdlIC5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19jb250ZW50IHtcbiAgcGFkZGluZzogMy41cmVtIDFyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmMtYmxvY2stY2FsbC10by1hY3Rpb25fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAuYy1ibG9jay1jYWxsLXRvLWFjdGlvbl9faW1hZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgfVxufVxuXG4uYy1ibG9jay1wZW9wbGVfX2l0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAyLjVyZW07XG4gIHBhZGRpbmc6IDQuNXJlbSA4LjMzJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbn1cblxuLmMtcGVyc29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMCAzcmVtIDAgM3JlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtcGVyc29uOm50aC1vZi10eXBlKG9kZCkgLmMtcGVyc29uX19pbWFnZSB7XG4gIG9yZGVyOiAtMTtcbiAgbWFyZ2luOiAwIGF1dG8gMCAwO1xufVxuXG4uYy1wZXJzb25fX2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IDYwJTtcbiAgcGFkZGluZzogMi41cmVtIDIuMjVyZW07XG59XG5cbi5jLXBlcnNvbl9fcG9zaXRpb24ge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYy1wZXJzb25fX2ltYWdlIHtcbiAgbWFyZ2luOiAwIDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDQwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtcGVyc29uX19pbWctZWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmMtcGVyc29uX19zaG93LWJpbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmMtcGVyc29uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5jLXBlcnNvbl9faW1hZ2Uge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAuYy1wZXJzb25fX2NvbnRlbnQsXG4gIC5jLXBlcnNvbl9faW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuYy1wZXJzb25fX2ltYWdlIHtcbiAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgfVxuICAuYy1ibG9jay1wZW9wbGVfX2l0ZW1zIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMXJlbTtcbiAgICBnYXA6IDJyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1wZXJzb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtO1xuICB9XG4gIC5jLXBlcnNvbl9fYmlvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmMtcGVyc29uX19zaG93LWJpbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgICBjb2xvcjogI2RjNTkzNjtcbiAgfVxufVxuXG4uYy1zaW5nbGUtbmV3cy1pbnRybyB7XG4gIG1hcmdpbi10b3A6IDZyZW07XG59XG5cbi5jLXNpbmdsZS1uZXdzLWludHJvX19kYXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJjbGFyZW5kb24tdGV4dC1wcm9cIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICNkYzU5MzY7XG59XG5cbi5jLXNpbmdsZS1uZXdzLWludHJvX19kYXRlOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMXJlbTtcbiAgdG9wOiA0MyU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgaGVpZ2h0OiAxLjI1ZW07XG4gIHdpZHRoOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmMtc2luZ2xlLW5ld3MtaW50cm9fX3N1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5jLXNpbmdsZS1uZXdzLWJhY2stYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWFyZ2luOiAzcmVtIGF1dG8gMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYy1zaW5nbGUtbmV3cy1pbnRybyB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgfVxuICAuYy1zaW5nbGUtbmV3cy1pbnRyb19fZGF0ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIH1cbiAgLmMtc2luZ2xlLW5ld3MtaW50cm9fX3N1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tXG4gQCBDdXN0b20gVmFyaWFibGVzXG4tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCJjaGlsZC10aGVtZS9hc3NldHMvc2Nzcy92YXJpYWJsZXNcIjtcblxuLyogLS0tLS0tLS0tLVxuIEAgQ3VzdG9tIFV0aWxpdGllc1xuLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiY2hpbGQtdGhlbWUvYXNzZXRzL3Njc3MvbWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9taXhpbnNcIjtcbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy9yZXNldFwiO1xuQGltcG9ydCBcImJhc2UtdGhlbWUvYXNzZXRzL3Njc3MvdXRpbGl0aWVzL2Jhc2VcIjtcbkBpbXBvcnQgXCJiYXNlLXRoZW1lL2Fzc2V0cy9zY3NzL3V0aWxpdGllcy93cC1iYXNlXCI7IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBQcm9qZWN0IFNwZWNpZmljIFZhcmlhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLVxuIEAgT3B0aW9uc1xuLS0tLS0tLS0tLSAqL1xuXG4kZW5hYmxlLXJlc3BvbnNpdmUtdGV4dDpcdHRydWU7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIENvbG9yc1xuLS0tLS0tLS0tLSAqL1xuJGJyYW5kLWRhcmstdGVhbDogICAgICAgIzAwNmI4NjtcbiRicmFuZC10ZWFsOiAgICAgICAgICAgICMwNmFiYTE7XG4kYnJhbmQtbGlnaHQtYmx1ZTogICAgICAjZTdmMmY5O1xuJGJyYW5kLWJsdWU6ICAgICAgICAgICAgIzAwYWJkNjtcbiRicmFuZC1kYXJrLWJsdWU6ICAgICAgICMzYzM3Nzg7XG4kYnJhbmQtb3JhbmdlOiAgICAgICAgICAjZGM1OTM2O1xuJGJyYW5kLWxpZ2h0LWdyZXk6ICAgICAgI2Q0ZDRkNDtcbiRicmFuZC1saWdodGVzdC1ncmV5OiAgICNlZmVmZWY7XG4kYnJhbmQtcGluazogICAgICAgICAgICAjZWRhYzlhO1xuJGJyYW5kLXNpbHZlcjogICAgICAgICAgIzc1NzU3NTtcbiRicmFuZC1jaGFyY29hbDogICAgICAgICMzMDMwMzA7XG5cbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZSgkdGhlbWUtY29sb3JzLCAoXG4gICAgZGFyay10ZWFsOiAkYnJhbmQtZGFyay10ZWFsLFxuICAgIHRlYWw6ICRicmFuZC10ZWFsLFxuICAgIGRhcmstYmx1ZTogJGJyYW5kLWRhcmstYmx1ZSxcbiAgICBibHVlOiAkYnJhbmQtYmx1ZSxcbiAgICBsaWdodC1ibHVlOiAkYnJhbmQtbGlnaHQtYmx1ZSxcbiAgICBvcmFuZ2U6ICRicmFuZC1vcmFuZ2UsXG4gICAgbGlnaHQtZ3JleTogJGJyYW5kLWxpZ2h0LWdyZXksXG4gICAgbGlnaHRlc3QtZ3JleTogJGJyYW5kLWxpZ2h0ZXN0LWdyZXksXG4gICAgc2lsdmVyOiAkYnJhbmQtc2lsdmVyLFxuICAgIHBpbms6ICRicmFuZC1waW5rLFxuICAgIGNoYXJjb2FsOiAkYnJhbmQtY2hhcmNvYWwsXG4gICAgc3VjY2VzczogJGJyYW5kLXRlYWwsXG4gICAgaW5mbzogJGJyYW5kLWJsdWUsXG4gICAgd2FybmluZzogJGJyYW5kLW9yYW5nZSxcbiAgICBkYW5nZXI6ICRicmFuZC1vcmFuZ2VcbikpO1xuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmO1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgIzJjMmMyYztcblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLWRhcmstdGVhbDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKTtcblxuJGxpbmUtY29sb3I6IFx0XHRcdCNkZGQ7XG5cbi8qIC0tLS0tLS0tLS1cbiBAIFR5cG9ncmFwaHlcbi0tLS0tLS0tLS0gKi9cblxuJGZvbnQtc2l6ZXM6IChcbiAgICByb290OiAxOHB4LFxuICAgIGgxOiAzNnB4LFxuICAgIGgyOiAzM3B4LFxuICAgIGgzOiAyOHB4LFxuICAgIGg0OiAyNHB4LFxuICAgIGg1OiAyMHB4LFxuICAgIGg2OiAxOHB4LFxuICAgIGxlYWQ6IDI0cHgsXG4gICAgYmxvY2txdW90ZTogNTBweFxuKTtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtO1xuJGJhc2VGb250U2l6ZTogMThweDsgLy8gdGhpcyBpcyB0byBmaXggYm9vdHN0cmFwLCBub3Qgc3VyZSB3aHkgdGhpcyBpcyBhbiBpc3N1ZVxuXG4kbGVhZC1mb250LXNpemU6IHJlbXMobWFwLWdldCgkZm9udC1zaXplcywgbGVhZCkpO1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiByZW1zKG1hcC1nZXQoJGZvbnQtc2l6ZXMsIGJsb2NrcXVvdGUpKTtcblxuJGZvbnQtZmFtaWx5LWJhc2U6ICdoYWx5YXJkLXRleHQnLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICRmb250LWZhbWlseS1iYXNlO1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAnY2xhcmVuZG9uLXRleHQtcHJvJywgc2VyaWY7XG4kZmEtZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBQcm8nO1xuXG4kZm9udC13ZWlnaHRzOiAoXG4gICAgYmxhY2s6IDgwMCxcbiAgICBib2xkOiA3MDAsXG4gICAgc2VtaWJvbGQ6IDYwMCxcbiAgICBtZWRpdW06IDUwMCxcbiAgICByZWd1bGFyOiA0MDAsXG4gICAgbGlnaHQ6IDMwMCxcbiAgICB0aGluOiAzMDBcbik7XG5cbiRmb250LXdlaWdodC1iYXNlOiBtYXAtZ2V0KCRmb250LXdlaWdodHMsIHJlZ3VsYXIpO1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodHMsIGJvbGQpO1xuJGxlYWQtZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgc2VtaS1ib2xkKTtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjU7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6IDEuNDtcblxuJGxpbmstZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuLyogLS0tLS0tLS0tLVxuIEAgTGF5b3V0XG4tLS0tLS0tLS0tICovXG5cbiRncmlkLWd1dHRlci13aWR0aDogXHQgMnJlbTtcbiRncmlkLXBhZGRpbmc6XHRcdFx0ICRncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiR2ZXJ0aWNhbC1tYXJnaW4tYmFzZTpcdCAxLjVyZW07XG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgeHM6IDAsIC8vIE5vdCBzdXJlIHdoeSBidXQgdGhpcyBtdXN0IGJlIHplcm9cbiAgICBzbTogNTc2cHgsXG4gICAgbWQ6IDc2OXB4LFxuICAgIGxnOiA5OTJweCxcbiAgICB4bDogMTQ0MHB4XG4pO1xuXG4kY29udGFpbmVyLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCB4bCk7XG4kY29udGFpbmVyLXdpZHRoLXdpdGgtZ3V0dGVyczogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgeGwpICsgKHN0cmlwLXVuaXQoJGdyaWQtZ3V0dGVyLXdpZHRoKSAqIHN0cmlwLXVuaXQoJGJhc2VGb250U2l6ZSkpO1xuXG4vKiAtLS0tLS0tLS0tXG4gQCBNaXNjXG4tLS0tLS0tLS0tICovXG5cbiRoci1ib3JkZXItY29sb3I6ICRsaW5lLWNvbG9yO1xuJGhyLWJvcmRlci13aWR0aDogMXB4O1xuXG4kYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuJGJvcmRlci1yYWRpdXMtbGc6ICRib3JkZXItcmFkaXVzICogMS41O1xuJGJvcmRlci1yYWRpdXMtc206ICRib3JkZXItcmFkaXVzIC8gMS41OyIsIi8qIC0tLS0tLS0tLS1cbiBAIFJvdW5kZWQgQ29ybmVyc1xuLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gcm91bmRlZC1jb3JuZXJzKCRyYWRpdXM6IDFyZW0pIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICRyYWRpdXMgMCAkcmFkaXVzO1xufSAgIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIE1haW50YWluIEFzcGVjdCBSYXRpb1xuXHQtICoqKiByZXF1aXJlcyB0aGF0IHRoZSBlbGVtZW50IGhhcyBhbiBpbm5lciBjb250YWluZXIgZWxlbWVudCBpZiB0aGVyZSBpcyBpbm5lciBjb250ZW50XG5cdC0gJHggPT4geCBwb3J0aW9uIG9mIHJhdGlvXG5cdC0gJHkgPT4geSBwb3J0aW9uIG9mIHJhdGlvXG4gICAgLSAkYyA9PiBzZXQgdG8gJ2ZhbHNlJyB0byBza2lwIDpmaXJzdC1jaGlsZCBzdHlsaW5nXG4tLS0tLS0tLS0tICovXG5cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHg6IDEsICR5OiAxLCAkYzogdHJ1ZSkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoJHkgLyAkeCk7XG5cdH1cblx0QGlmICgkYyA9PSB0cnVlKSB7XG5cdFx0JiA+IDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIEJhY2tncm91bmQgSW1hZ2Vcblx0LSBTaG9ydGN1dCBmb3IgbGlua2luZyBpbWFnZXMgaW4gdGhlIGNvbmZpZ3VyZWQgaW1hZ2VzIGZvbGRlclxuXHQtICRpID0+IGltYWdlIGZpbGUgbmFtZSAocmVsYXRpdmUgdG8gaW1hZ2VzIGZvbGRlcilcblx0LSAkcmVzdCA9PiBhbnkgYWRkaXRpb25hbCAnYmFja2dyb3VuZCcgcHJvcGVydHkgc2hvcnRjdXQgZGVjbGFyYXRpb25zIChpZTogbm8tcmVwZWF0KVxuLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gYmctaW1hZ2UoJGksICRyZXN0Li4uKSB7XG5cdGJhY2tncm91bmQ6IHVybChcIiN7JGltYWdlcy1mb2xkZXJ9LyN7JGl9XCIpICRyZXN0O1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBTaXplXG4gXHQtIFNob3J0Y3V0IGZvciBzZXR0aW5nIGhlaWdodCBhbmQgd2lkdGhcbiBcdC0gJHdpZHRoID0+IHdpZHRoIG9mIGVsZW1lbnRcbiBcdC0gJGhlaWdodCA9PiBoZWlnaHQgb2YgZWxlbWVudFxuIFx0LSBTaW5nbGUgdmFsdWUgd2lsbCBzZXQgYm90aCB2YWx1ZXMgKGUuZy4gc2l6ZSgxMDAlKTtcbi0tLS0tLS0tLS0gKi9cbkBtaXhpbiBzaXplKCR3aWR0aCwgJGhlaWdodDogJHdpZHRoKSB7XG5cdHdpZHRoOiAkd2lkdGg7XG5cdGhlaWdodDogJGhlaWdodDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBAQCBGdW5jdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS1cbiBAIENvbG9yIEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJHRoZW1lLWNvbG9ycyBtYXBcbi0tLS0tLS0tLS0gKi9cblxuQGZ1bmN0aW9uIGNvbG9yLWdldCgka2V5cykge1xuXHQkY29sb3I6IG1hcC1kZWVwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5cyk7XG5cdEByZXR1cm4gJGNvbG9yO1xufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBCcmVha3BvaW50IEdldFxuIFx0LSBnZXQgdmFsdWUgZnJvbSB0aGUgJGdyaWQtYnJlYWtwb2ludHMgbWFwXG4gXHQtICR0eXBlID0+ICdtYXgnIHwgJ21pbicsIGRlcGVuZGluZyBvbiBtZWRpYSBxdWVyeSB0eXBlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldCgkdHlwZSwgJGtleXMpIHtcblx0JGJyZWFrcG9pbnQ6IG1hcC1kZWVwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGtleXMpO1xuXHRAaWYgKCR0eXBlID09ICdtYXgnKXtcblx0XHRAcmV0dXJuICRicmVha3BvaW50IC0gMTtcblx0fSBAZWxzZSB7XG5cdFx0QHJldHVybiAkYnJlYWtwb2ludDtcblx0fVxufVxuXG4vKiAtLS0tLS0tLS0tXG4gQCBSZW1zXG5cdC0gY29udmVydCBwaXhlbHMgdG8gcmVtc1xuXHQtICRwID0+IHBpeGVsIHZhbHVlXG5cdC0gJGIgPT4gYmFzZSBzaXplICh0byB1c2UgaW4gZm9ybXVsYSkgLSBkZWZhdWx0cyB0byAkZm9udC1zaXplcyByb290IHZhcmlhYmxlXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiByZW1zKCRwLCAkYjogJGJhc2VGb250U2l6ZSkge1xuICAgIEByZXR1cm4gKHN0cmlwLXVuaXQoJHApIC8gc3RyaXAtdW5pdCgkYikpICsgMHJlbTtcbn1cblxuLyogLS0tLS0tLS0tLVxuIEAgTWFwIERlZXAgR2V0XG4gXHQtIGdldCB2YWx1ZSBmcm9tIG5lc3RlZCBtYXBzXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiBtYXAtZGVlcC1nZXQoJG1hcCwgJGtleXMuLi4pIHtcblx0QGVhY2ggJGtleSBpbiAka2V5cyB7XG5cdFx0JG1hcDogbWFwLWdldCgkbWFwLCAka2V5KTtcblx0fVxuXHRAcmV0dXJuICRtYXA7XG59XG5cbi8qIC0tLS0tLS0tLS1cbiBAIFdlaWdodCBHZXRcbiBcdC0gZ2V0IHZhbHVlIGZyb20gdGhlICRmb250LXdlaWdodHMgbWFwXG4tLS0tLS0tLS0tICovXG5cbkBmdW5jdGlvbiB3ZWlnaHQtZ2V0KCRrZXlzKSB7XG5cdCR3ZWlnaHQ6IG1hcC1kZWVwLWdldCgkZm9udC13ZWlnaHRzLCAka2V5cyk7XG5cdEByZXR1cm4gJHdlaWdodDtcbn0iLCIuYy1iYW5uZXItc2luZ2xlLW5ld3Mge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDM1cmVtO1xuICAgIEBpbmNsdWRlIHJvdW5kZWQtY29ybmVycyg0cmVtKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDA7XG59XG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2JnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB6LWluZGV4OiAtMTtcbn1cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmctLWxvdy1yZXMge1xuICAgIGZpbHRlcjogYmx1cigycHgpO1xufVxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19pbnRlcmFjdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3ItZ2V0KGRhcmstYmx1ZSksIDAuOSk7XG59XG4uYy1iYW5uZXItc2luZ2xlLW5ld3NfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fYmFjayB7XG4gICAgZm9udC13ZWlnaHQ6IHdlaWdodC1nZXQoc2VtaWJvbGQpO1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjA2MCc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBQcm8nO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuNTUsIDEuNyk7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC41ZW0pO1xuICAgICAgICB9XG4gICAgfVxufVxuLmMtYmFubmVyLXNpbmdsZS1uZXdzX19tb2JpbGUtYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5jLWJhbm5lci1zaW5nbGUtbmV3c19fc2hhcmUge1xuICAgIG1hcmdpbjogMDtcblxuICAgIC5hMmFfa2l0IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgLmEyYV9zdmcge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjE1ZW07XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IGNvbG9yLWdldChkYXJrLWJsdWUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzdmcsXG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IGNvbG9yLWdldChkYXJrLWJsdWUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hMmFfc3ZnIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMTVlbTtcbiAgICAgICAgICAgIGZpbGw6IGNvbG9yLWdldChvcmFuZ2UpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgc3ZnLFxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6IGNvbG9yLWdldChvcmFuZ2UpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuICAgIC5jLWJhbm5lci1zaW5nbGUtbmV3cyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDJyZW0pO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19jb250YWluZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19iYWNrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmMtYmFubmVyLXNpbmdsZS1uZXdzX19tb2JpbGUtYmFjayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGdyaWQtcGFkZGluZztcbiAgICAgICAgZm9udC13ZWlnaHQ6IHdlaWdodC1nZXQoc2VtaWJvbGQpO1xuICAgICAgICBjb2xvcjogY29sb3ItZ2V0KGRhcmstdGVhbCk7XG4gICAgXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMDYwJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IFBybyc7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuNTUsIDEuNyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogY29sb3ItZ2V0KGRhcmstdGVhbCk7XG4gICAgXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC41ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5jLXBhc3N3b3JkLXByb3RlY3RlZCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICBcbiAgICBmb3JtIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNWVtIDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB3ZWlnaHQtZ2V0KG1lZGl1bSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGNvbG9yOiBjb2xvci1nZXQoZGFyay1ibHVlKTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjb2xvci1nZXQoZGFyay10ZWFsKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiByZW1zKDIycHgpO1xuICAgICAgICBmb250LXdlaWdodDogd2VpZ2h0LWdldChzZW1pYm9sZCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDFyZW0pO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItZ2V0KGRhcmstYmx1ZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItcmFkaXVzIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgIFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbSAwIDFyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiAtLS0tLS0tLS0tXG4gQCBDb250ZW50IEJsb2NrcyBmb3IgQmxvY2sgQnVpbGRlclxuLS0tLS0tLS0tLSAqL1xuXG4uYy1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cbi5jLWJsb2NrLXRleHQ6aGFzKDpsYXN0LW9mLXR5cGUoOmlzKGgyLCBoMywgaDQpKSkge1xuICAgIG1hcmdpbi1ib3R0b206IC0xMHJlbTtcbn1cbi5jLWJsb2NrLXRleHQgKyAuYy1ibG9jay10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAkdmVydGljYWwtbWFyZ2luLWJhc2U7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuICAgIC5jLWJsb2NrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG59XG5cbkBpbXBvcnQgXCJ0ZXh0XCI7XG5AaW1wb3J0IFwiYmxvY2txdW90ZVwiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJlbWJlZFwiO1xuQGltcG9ydCBcImZpZ3VyZVwiO1xuQGltcG9ydCBcImZvcm1cIjtcbkBpbXBvcnQgXCJpbWFnZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImltYWdlLXRleHRcIjtcbkBpbXBvcnQgXCJ2aWRlb1wiO1xuQGltcG9ydCBcImltYWdlLWNhcm91c2VsXCI7XG5AaW1wb3J0IFwiY2FsbC10by1hY3Rpb25cIjtcbkBpbXBvcnQgXCJwZW9wbGVcIjsiLCIuYy1ibG9jay10ZXh0X19jb250ZW50IHtcbiAgICBjb2x1bW4tZ2FwOiA1cmVtO1xufVxuLmMtYmxvY2stdGV4dF9fY29udGVudC0tdHdvLWNvbCB7XG4gICAgY29sdW1uczogMjtcbn1cbi5jLWJsb2NrLXRleHRfX2NvbnRlbnQtLXRocmVlLWNvbCB7XG4gICAgY29sdW1uczogMztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldCgnbWF4JywgbWQpKSB7XG4gICAgLmMtYmxvY2stdGV4dF9fY29udGVudCB7XG4gICAgICAgIGNvbHVtbnM6IDE7XG4gICAgfVxufSIsIi5jLWJsb2NrLWJsb2NrcXVvdGVfX3F1b3RlIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogcmVtcyhtYXAtZ2V0KCRmb250LXNpemVzLCBibG9ja3F1b3RlKSk7XG4gICAgbGluZS1oZWlnaHQ6ICg3NSAvIDUwKTtcbiAgICBjb2xvcjogY29sb3ItZ2V0KGRhcmstYmx1ZSk7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBjb2xvci1nZXQob3JhbmdlKTtcbn1cbi5jLWJsb2NrLWJsb2NrcXVvdGVfX2NpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgZm9udC1zaXplOiByZW1zKDE4cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiB3ZWlnaHQtZ2V0KHNlbWlib2xkKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgY29sb3I6IGNvbG9yLWdldChvcmFuZ2UpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59IiwiLmMtYmxvY2stYnV0dG9ucyB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5jLWJsb2NrLWJ1dHRvbnNfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogLSRncmlkLXBhZGRpbmcgLyAyO1xufVxuLmMtYmxvY2stYnV0dG9ucy0tbGVmdCAuYy1ibG9jay1idXR0b25zX193cmFwcGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uYy1ibG9jay1idXR0b25zLS1jZW50cmUgLmMtYmxvY2stYnV0dG9uc19fd3JhcHBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uYy1ibG9jay1idXR0b25zX19idXR0b24ge1xuICAgIG1hcmdpbjogJGdyaWQtcGFkZGluZyAvIDI7XG59IiwiLmMtYmxvY2stZW1iZWQge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLmMtYmxvY2stZW1iZWRfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi0tbGVmdCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgJi0tY2VudGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICYtLXJpZ2h0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG59XG4uYy1ibG9jay1lbWJlZCBpZnJhbWUsXG4uYy1ibG9jay1lbWJlZCBvYmplY3QsXG4uYy1ibG9jay1lbWJlZCBlbWJlZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1ibG9jay1lbWJlZF9fd3JhcHBlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbn0iLCIuYy1ibG9jay1maWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmMtYmxvY2stZmlndXJlX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDJyZW0pO1xufVxuLmMtYmxvY2stZmlndXJlX19jYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC41ZW0gMi41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45KTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycmVtO1xufSIsIi5jLWJsb2NrLWZvcm1fX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IGNsYW1wKDJyZW0sIDEwdncsIDZyZW0pIGNsYW1wKCRncmlkLXBhZGRpbmcsIDV2dywgMTByZW0pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLWdldChsaWdodGVzdC1ncmV5KTtcbiAgICBAaW5jbHVkZSByb3VuZGVkLWNvcm5lcnMoM3JlbSk7XG59XG4uYy1ibG9jay1mb3JtX190aXRsZSB7XG4gICAgcGFkZGluZzogMCAkZ3JpZC1wYWRkaW5nO1xufSIsIi5jLWJsb2NrLWltYWdlLS1mdWxsLXdpZHRoIC5jLWJsb2NrLWltYWdlX19pbWFnZSB7XG4gICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDRyZW0pO1xufVxuLmMtYmxvY2staW1hZ2UtLWZ1bGwtd2lkdGggLmMtYmxvY2staW1hZ2VfX2NhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNWVtIDQuNXJlbTtcbn0iLCIuYy1ibG9jay1pbWFnZXNfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogLSRncmlkLWd1dHRlci13aWR0aCAvIDI7XG59XG4uYy1ibG9jay1pbWFnZXNfX2ZpZ3VyZSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAjeyRncmlkLWd1dHRlci13aWR0aH0gKiAyKSAvIDIpO1xuICAgIG1hcmdpbjogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbn1cbi5jLWJsb2NrLWltYWdlc19faW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIG1kKSkge1xuICAgIC5jLWJsb2NrLWltYWdlc19fd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgLmMtYmxvY2staW1hZ2VzX19maWd1cmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAkZ3JpZC1ndXR0ZXItd2lkdGggMCAwIDA7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5jLWJsb2NrLWltYWdlLXRleHRfX2ZpZ3VyZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLXBhZGRpbmc7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDJyZW0gMCAycmVtO1xufVxuLmMtYmxvY2staW1hZ2UtdGV4dF9fZmlndXJlLS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aDtcbn1cbi5jLWJsb2NrLWltYWdlLXRleHRfX2ZpZ3VyZS0tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xufVxuLmMtYmxvY2staW1hZ2UtdGV4dF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5jLWJsb2NrLWltYWdlLXRleHRfX3RleHQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBicmVha3BvaW50LWdldCgnbWF4JywgbWQpKSB7XG4gICAgLmMtYmxvY2staW1hZ2UtdGV4dF9fZmlndXJlLS1sZWZ0LCBcbiAgICAuYy1ibG9jay1pbWFnZS10ZXh0X19maWd1cmUtLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5jLWJsb2NrLWltYWdlLXRleHRfX3RleHQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cbn0iLCJcbi5jLWJsb2NrLXZpZGVvIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYtLWVtYmVkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5LzE2ICogMTAwJTtcbiAgICB9XG59XG4uYy1ibG9jay12aWRlb19fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDJyZW0pO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKDkgLyAxNiAqIDEwMCUpO1xuICAgIH1cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICAuYy1pbnRyby1ibG9ja19fdmlkZW9fX3BsYXktYnRuIHtcbiAgICAgICAgICAgIC0taW50cm8tdmlkZW8tcGxheS1idG4tc2NhbGU6IDEuMTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5jLWJsb2NrLXZpZGVvX193cmFwcGVyX192aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG59XG4uYy1ibG9jay12aWRlby0tZW1iZWQgaWZyYW1lLFxuLmMtYmxvY2stdmlkZW8tLWVtYmVkIG9iamVjdCxcbi5jLWJsb2NrLXZpZGVvLS1lbWJlZCBlbWJlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4uYy1pbnRyby1ibG9ja19fdmlkZW9fX3BsYXktYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSwgc2NhbGUodmFyKC0taW50cm8tdmlkZW8tcGxheS1idG4tc2NhbGUsIDEpKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1vdXQ7XG59XG4uaGFzLXZpZGVvLXBsYXlpbmcgLmMtaW50cm8tYmxvY2tfX3ZpZGVvX19wbGF5LWJ0biB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEwMG1zIGVhc2Utb3V0O1xufSIsIi5jLWJsb2NrLWltYWdlLWNhcm91c2VsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xuICAgIC0tcGFnZS1ndXR0ZXI6IE1heChjYWxjKCgxMDB2dyAtICN7JGNvbnRhaW5lci13aWR0aH0pIC8gMiksICN7JGdyaWQtcGFkZGluZ30pO1xuICAgIFxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiA3LjVyZW0gMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1nZXQoZGFyay10ZWFsKTtcbiAgICB9XG59XG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gI3t2YXIoLS1wYWdlLWd1dHRlcil9KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tcGFnZS1ndXR0ZXIpKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDAgMzMuMzQlIDAgMDtcbn1cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19jYXJvdXNlbCB7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19wcm9ncmVzcy1iYXIge1xuICAgIC0tcHJvZ3Jlc3M6IDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDM3NXB4O1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2ZmZiwgMC4yKTtcbiAgICBcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnOztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLXByb2dyZXNzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgdHJhbnNpdGlvbjogMTUwbXMgd2lkdGggZWFzZTtcbiAgICB9XG59XG4uYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fc2xpZGUge1xuICAgIG1hcmdpbjogMCAkZ3JpZC1ndXR0ZXItd2lkdGggMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7IC8vIDE2LzkgYXNwZWN0IHJhdGlvICAgXG4gICAgfVxufVxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2ZpZ3VyZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2NvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aDtcbn1cbi5jLWJsb2NrLWltYWdlLWNhcm91c2VsX19idXR0b25zIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgc2l6ZSg0NXB4KTtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIDAuMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IDE1MG1zIGNvbG9yIGVhc2UsIDE1MG1zIGJhY2tncm91bmQtY29sb3IgZWFzZTtcbiAgICBcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJGZhLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICAgICYtLXByZXYge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4O1xuICAgIH1cbiAgICAmLS1wcmV2OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMDYwJztcbiAgICB9XG4gICAgJi0tbmV4dCB7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgIH1cbiAgICAmLS1uZXh0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMDYxJztcbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiBjb2xvci1nZXQoZGFyay10ZWFsKTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1tYXgoJ21kJykpIHtcbiAgICAuYy1ibG9jay1pbWFnZS1jYXJvdXNlbF9fcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICB9XG4gICAgLmMtYmxvY2staW1hZ2UtY2Fyb3VzZWxfX2NvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDA7XG4gICAgfVxufSIsIi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1nZXQoZGFyay1ibHVlKTtcblxuICAgIC0taGVhZGluZ3MtY29sb3I6ICNmZmY7XG59XG4uYy1ibG9jay1jYWxsLXRvLWFjdGlvbl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAzLjVyZW0gJGdyaWQtcGFkZGluZztcbn1cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyhtaW4oY2FsYygoKDEwMHZ3IC0gI3skY29udGFpbmVyLXdpZHRoLXdpdGgtZ3V0dGVyc30gKyAxLjJyZW0pIC8gMikgKiAtMSksIC0xNXB4KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19pbWctZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgM3JlbTtcbn1cbi5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19idXR0b25zIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uYy1ibG9jay1jYWxsLXRvLWFjdGlvbi0tbm8taW1hZ2Uge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5jLWJsb2NrLWNhbGwtdG8tYWN0aW9uX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMy41cmVtICRncmlkLXBhZGRpbmc7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1ibG9jay1jYWxsLXRvLWFjdGlvbl9faW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIG9yZGVyOiAtMTtcbiAgICB9XG4gICAgLmMtYmxvY2stY2FsbC10by1hY3Rpb25fX2ltYWdlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1wYWRkaW5nO1xuICAgIH1cbn0iLCIuYy1ibG9jay1wZW9wbGVfX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAyLjVyZW07XG4gICAgcGFkZGluZzogNC41cmVtIDguMzMlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLWdldChsaWdodGVzdC1ncmV5KTtcbn1cbi5jLXBlcnNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgM3JlbSAwIDNyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcbiAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICAuYy1wZXJzb25fX2ltYWdlIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDAgMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5jLXBlcnNvbl9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgcGFkZGluZzogMi41cmVtIDIuMjVyZW07XG59XG4uYy1wZXJzb25fX3Bvc2l0aW9uIHtcbiAgICBmb250LXdlaWdodDogd2VpZ2h0LWdldChib2xkKTtcbn1cbi5jLXBlcnNvbl9faW1hZ2Uge1xuICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmMtcGVyc29uX19pbWctZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5jLXBlcnNvbl9fc2hvdy1iaW8ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogYnJlYWtwb2ludC1nZXQoJ21heCcsIGxnKSkge1xuICAgIC5jLXBlcnNvbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIC5jLXBlcnNvbl9faW1hZ2Uge1xuICAgICAgICBvcmRlcjogLTE7XG4gICAgfVxuICAgIC5jLXBlcnNvbl9fY29udGVudCxcbiAgICAuYy1wZXJzb25fX2ltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuYy1wZXJzb25fX2ltYWdlIHtcbiAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgfVxuICAgIC5jLWJsb2NrLXBlb3BsZV9faXRlbXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDIuNXJlbSAkZ3JpZC1wYWRkaW5nO1xuICAgICAgICBnYXA6IDJyZW07XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1wZXJzb25fX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcbiAgICB9XG4gICAgLmMtcGVyc29uX19iaW8ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMDsgLy8gaW5pdGlhbFxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuYy1wZXJzb25fX3Nob3ctYmlvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiBjb2xvci1nZXQob3JhbmdlKTtcbiAgICB9XG59IiwiQGltcG9ydCBcImJhc2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jhbm5lci1zaW5nbGUtbmV3c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFzc3dvcmQtcHJvdGVjdGVkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jb250ZW50LWJsb2Nrcy9jb250ZW50LWJsb2Nrc1wiO1xuXG4uYy1zaW5nbGUtbmV3cy1pbnRybyB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcbn1cbi5jLXNpbmdsZS1uZXdzLWludHJvX19kYXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IGNvbG9yLWdldChvcmFuZ2UpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgIHRvcDogNDMlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGhlaWdodDogMS4yNWVtO1xuICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgfVxufVxuLmMtc2luZ2xlLW5ld3MtaW50cm9fX3N1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuLmMtc2luZ2xlLW5ld3MtYmFjay1idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBtYXJnaW46IDNyZW0gYXV0byAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtZ2V0KCdtYXgnLCBtZCkpIHtcbiAgICAuYy1zaW5nbGUtbmV3cy1pbnRybyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgfVxuICAgIC5jLXNpbmdsZS1uZXdzLWludHJvX19kYXRlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRncmlkLXBhZGRpbmc7XG4gICAgfVxuICAgIC5jLXNpbmdsZS1uZXdzLWludHJvX19zdWJ0aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cbn0iXX0= */
