@charset "UTF-8";
/** Import everything from autoload */
/**
 * Import npm dependencies
 *
 * Prefix your imports with `~` to grab from node_modules/
 * @see https://github.com/webpack-contrib/sass-loader#imports
 */
/* Box sizing rules */
/* line 2, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */
/* line 9, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
ul[class],
ol[class] {
  padding: 0;
}

/* Remove default margin */
/* line 15, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core body defaults */
/* line 33, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
/* line 41, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
ul[class],
ol[class] {
  list-style: none;
}

/* A elements that don't have a class get default styles */
/* line 47, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
/* line 52, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
img {
  max-width: 100%;
  display: block;
}

/* Natural flow and rhythm in articles by default */
/* line 58, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
/* line 63, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  /* line 72, web/app/themes/sage/resources/assets/styles/base/_reset.scss */
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/base/_animations.scss */
.shake-next {
  animation: shake-next 2s ease infinite;
}

@keyframes shake-next {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}

/* line 19, web/app/themes/sage/resources/assets/styles/base/_animations.scss */
.shake-prev {
  animation: shake-prev 1s ease infinite;
}

@keyframes shake-prev {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes shake-interferer {
  10%, 90% {
    transform: translate3d(-0.5px, 0, 0) rotate(25deg);
  }
  20%, 80% {
    transform: translate3d(1px, 0, 0) rotate(25deg);
  }
  30%, 50%, 70% {
    transform: translate3d(-2px, 0, 0) rotate(25deg);
  }
  40%, 60% {
    transform: translate3d(2px, 0, 0) rotate(25deg);
  }
}

@keyframes shake-current {
  10%, 90% {
    transform: translate3d(-0.5px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(1px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-2px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(2px, 0, 0);
  }
}

/* line 2, web/app/themes/sage/resources/assets/styles/base/_custom-properties.scss */
:root {
  --gap: 2rem;
  --container-gap: 2rem;
  --nav-height: 10rem;
  --ui-height: 2.3rem;
  --pages-top-gap: 10rem;
}

/* line 9, web/app/themes/sage/resources/assets/styles/base/_custom-properties.scss */
:root header.scrolled {
  --nav-height: 5.2rem;
}

/* line 3, web/app/themes/sage/resources/assets/styles/base/_basics.scss */
h1, h2, h4, h5, h6 {
  font-family: "Teko", sans-serif;
}

/* stylelint-disable */
/* line 1, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.has-drop-cap:not(:focus)::first-letter {
  font-size: 6em;
  font-family: "Teko", sans-serif;
  margin: 0.09em 0.3em 0 0;
  font-weight: 600;
}

/* line 56, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.page-header h1 {
  font-size: 4em;
  line-height: 1.1em;
}

/* line 61, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.paragraph a {
  position: relative;
  color: black;
  font-weight: bold;
  display: inline-block;
}

/* line 67, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.paragraph a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background: black;
  opacity: 0;
  transform: translateX(-50%) scaleX(0);
  transition: all 0.24s ease-in-out;
}

/* line 80, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.paragraph a:hover:after, .paragraph a:active:after, .paragraph a:focus:after {
  width: 100%;
  opacity: 1;
  transform: translateX(-50%) scaleX(1);
}

/* line 2, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form input.wpforms-field-medium,
div.wpforms-container-full .wpforms-form select.wpforms-field-medium,
div.wpforms-container-full .wpforms-form .wpforms-field-row.wpforms-field-medium {
  max-width: 100%;
}

/* line 8, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .wpforms-field-sublabel {
  font-family: "Teko", sans-serif;
  font-size: 1.06em;
  color: rgba(0, 0, 0, 0.6);
  margin: 0.2em 0 0;
}

/* line 15, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .wpforms-field-label {
  font-family: "Teko", sans-serif;
  font-size: 1.4em;
  padding-bottom: 0.4em;
  color: black;
  margin: 0;
}

/* line 23, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form input[type=date],
div.wpforms-container-full .wpforms-form input[type=datetime],
div.wpforms-container-full .wpforms-form input[type=datetime-local],
div.wpforms-container-full .wpforms-form input[type=email],
div.wpforms-container-full .wpforms-form input[type=month],
div.wpforms-container-full .wpforms-form input[type=number],
div.wpforms-container-full .wpforms-form input[type=password],
div.wpforms-container-full .wpforms-form input[type=range],
div.wpforms-container-full .wpforms-form input[type=search],
div.wpforms-container-full .wpforms-form input[type=tel],
div.wpforms-container-full .wpforms-form input[type=text],
div.wpforms-container-full .wpforms-form input[type=time],
div.wpforms-container-full .wpforms-form input[type=url],
div.wpforms-container-full .wpforms-form input[type=week],
div.wpforms-container-full .wpforms-form select,
div.wpforms-container-full .wpforms-form textarea,
div.wpforms-container form.wpforms-form .choices__inner {
  border-color: rgba(0, 0, 0, 0.15);
  border-radius: 5px;
  height: 3.5em;
  font-weight: bold;
  padding: 1em;
}

/* line 47, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full form.wpforms-form .wpforms-field-stripe-credit-card-cardnumber,
div.wpforms-container-full form.wpforms-form input.wpforms-stripe-credit-card-hidden-input {
  border-color: rgba(0, 0, 0, 0.15);
  height: 3.5em;
  font-weight: bold;
  padding: 1em;
}

/* line 56, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form input[type=submit],
div.wpforms-container-full .wpforms-form button[type=submit],
div.wpforms-container-full .wpforms-form .wpforms-page-button {
  background-color: #F80000;
  border-color: #F80000;
  color: white;
  border-radius: 5px;
  padding: 0.8em 2em;
  transition: all 0.24s ease-in-out;
}

/* line 66, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form input[type=submit]:focus, div.wpforms-container-full .wpforms-form input[type=submit]:hover, div.wpforms-container-full .wpforms-form input[type=submit]:active,
div.wpforms-container-full .wpforms-form button[type=submit]:focus,
div.wpforms-container-full .wpforms-form button[type=submit]:hover,
div.wpforms-container-full .wpforms-form button[type=submit]:active,
div.wpforms-container-full .wpforms-form .wpforms-page-button:focus,
div.wpforms-container-full .wpforms-form .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-form .wpforms-page-button:active {
  transform: scale(1.05);
  background-color: #F80000;
  color: white;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
}

/* line 76, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .wpforms-field {
  padding: 1.1em 0;
}

/* line 81, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container form.wpforms-form .choices {
  margin-bottom: 0.3em;
}

/* line 85, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .choices .choices__inner {
  display: flex;
  align-items: center;
  padding: 0 0.6em;
}

/* line 92, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container form.wpforms-form .choices[data-type*="select-one"]:after {
  right: 1em;
}

/* line 96, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.progress .wpforms-page-indicator-page-progress,
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.progress .wpforms-page-indicator-page-progress-wrap {
  height: 12px;
}

/* line 101, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
.wpforms-field-description {
  line-height: 1.3em;
}

/* line 105, web/app/themes/sage/resources/assets/styles/components/_forms.scss */
div.wpforms-container-full .wpforms-form .wpforms-error-container {
  position: fixed;
  background: #990000;
  padding: 1em 2em;
  color: white;
  z-index: 1;
  text-align: center;
  top: 50%;
  width: 80%;
  left: 10%;
  transform: translateY(-50%);
}

/* line 1, web/app/themes/sage/resources/assets/styles/components/_links.scss */
a {
  cursor: pointer;
  text-decoration: none;
  outline: 0;
  color: inherit;
  font-weight: bold;
}

/* line 10, web/app/themes/sage/resources/assets/styles/components/_links.scss */
main a {
  transition: 0.3s ease-out;
}

/* line 18, web/app/themes/sage/resources/assets/styles/components/_links.scss */
.read-link {
  font-size: 24px;
  position: relative;
  color: white;
  font-family: "Teko", sans-serif;
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
  border-color: white;
}

/* line 64, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .read-link {
  color: black;
}

/* line 68, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.read-link:after {
  content: '';
  height: 2px;
  background-color: white;
  width: 2.2em;
  margin-left: 0.9em;
  transition: all 0.24s ease-in-out;
  transform-origin: right;
}

/* line 77, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .read-link:after {
  background: black;
}

/* line 82, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.read-link:before {
  content: '';
  height: 8px;
  width: 8px;
  border-color: inherit;
  border-top: solid 2px;
  border-right: solid 2px;
  position: absolute;
  right: 0;
  transform: rotate(45deg);
  transition: all 0.24s ease-in-out;
}

/* line 94, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .read-link:before {
  border-color: black;
}

/* line 103, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.read-link:hover:after, .read-link:focus:after, .read-link:active:after,
article:hover .read-link:after {
  transform: translateX(0.5em) scaleX(0.85);
}

/* line 107, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.read-link:hover:before, .read-link:focus:before, .read-link:active:before,
article:hover .read-link:before {
  transform: translateX(0.5em) rotate(45deg);
}

/* line 1, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
ul.tags {
  display: flex;
  flex-wrap: wrap;
  margin: 1.2em 0 0.6em;
}

@media (min-width: 1280px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
  ul.tags {
    margin: 1.7em 0 0.9em;
  }
}

/* line 10, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
ul.tags li {
  margin: 0 0.6em 0.6em 0;
  display: inline-flex;
}

@media (min-width: 1280px) {
  /* line 10, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
  ul.tags li {
    margin: 0 0.8em 0.8em 0;
  }
}

/* line 19, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
ul.tags a {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  padding: 0.4em 1.3em;
  border: solid rgba(255, 255, 255, 0.3) 1px;
  text-decoration: none;
  border-radius: 0.6em;
  transition: all 0.5s;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
ul.tags a .inverted {
  color: black;
}

@media (min-width: 1024px) {
  /* line 28, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
  ul.tags a:hover, ul.tags a:active, ul.tags a:focus {
    border: solid 1px white;
    background-color: rgba(0, 0, 0, 0.3);
  }
}

@media (min-width: 1280px) {
  /* line 19, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
  ul.tags a {
    padding: 0.6em 1.6em;
  }
}

/* line 40, web/app/themes/sage/resources/assets/styles/components/_tags.scss */
.inverted ul.tags a {
  color: black;
  border-color: rgba(0, 0, 0, 0.3);
}

/* line 1, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-wrapper {
  position: relative;
  grid-area: dossier;
  display: flex;
  flex-wrap: wrap;
  padding: 3em 0;
  width: 100%;
}

@media (min-width: 1024px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-wrapper {
    overflow: hidden;
  }
}

/* line 13, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-wrapper:before {
  content: '';
  position: absolute;
  top: 0;
  right: calc(var(--container-gap) * -1);
  height: 100%;
  width: 3em;
  z-index: 2;
  background: linear-gradient(-90deg, white 0%, rgba(255, 255, 255, 0) 100%);
}

/* line 23, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.page-template-template-dossier .dossier-wrapper:before {
  content: none;
}

@media (min-width: 1024px) {
  /* line 13, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-wrapper:before {
    width: 4em;
    display: block;
    right: 0;
  }
}

/* line 34, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-wrapper:after {
  content: '';
  position: absolute;
  top: 0;
  left: calc(var(--container-gap) * -1);
  height: 100%;
  width: 3em;
  z-index: 2;
  background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 100%);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.page-template-template-dossier .dossier-wrapper:after {
  content: none;
}

@media (min-width: 1024px) {
  /* line 34, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-wrapper:after {
    width: 4em;
    display: block;
    left: 0;
  }
}

/* line 56, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-caroussel {
  width: 100%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: var(--container-gap) 0 calc(var(--container-gap) * 2.5);
}

@media (min-width: 1024px) {
  /* line 56, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-caroussel {
    padding: var(--container-gap) 0 calc(var(--container-gap) * 1.5);
  }
}

/* line 69, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-wrapper .article-head .article-headline {
  font-size: 1.6em;
  line-height: 1em;
  padding: 1.3rem;
}

@media (min-width: 1024px) {
  /* line 69, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-wrapper .article-head .article-headline {
    font-size: 2em;
  }
}

@media (min-width: 1440px) {
  /* line 69, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-wrapper .article-head .article-headline {
    font-size: 2.3em;
  }
}

/* line 83, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-top {
  position: relative;
  z-index: 3;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* line 91, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-top .dossier-headline-wrapper {
  max-width: 60ch;
}

/* line 95, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-top .dossier-headline {
  font-size: 2.3em;
  line-height: 0.9em;
  color: black;
  font-family: "Teko", sans-serif;
  font-weight: 500;
}

/* line 102, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.dossier-top .dossier-headline span {
  color: #F80000;
}

@media (min-width: 1024px) {
  /* line 95, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-top .dossier-headline {
    font-size: 2.6em;
  }
}

@media (min-width: 1280px) {
  /* line 95, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .dossier-top .dossier-headline {
    font-size: 3em;
  }
}

/* line 116, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.micro-slider-vertical {
  position: relative;
  width: calc(70% + calc(var(--container-gap) * 2));
  width: calc(70% + 4rem);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: 24em;
}

@media (min-width: 768px) {
  /* line 116, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .micro-slider-vertical {
    width: calc(50% - var(--gap));
  }
}

@media (min-width: 1024px) {
  /* line 116, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .micro-slider-vertical {
    height: 20em;
  }
}

@media (min-width: 1280px) {
  /* line 116, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  .micro-slider-vertical {
    height: 22em;
  }
}

/* line 139, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-wrapper-vertical {
  overflow: visible !important;
  position: relative;
  transform-style: preserve-3d;
}

/* line 146, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item-vertical.active .article-details,
.slider-item-vertical.active .article-text,
.slider-item-vertical.active .read-link {
  opacity: 1;
}

/* line 154, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item-vertical .article-details,
.slider-item-vertical .article-text,
.slider-item-vertical .read-link {
  opacity: 0;
}

/* line 161, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item-vertical {
  display: none;
  width: 100%;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
}

/* line 169, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item-vertical img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* line 177, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item.active .section-hero-content {
  opacity: 1;
}

/* line 180, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item.active .section-hero-content:after {
  opacity: 0.8;
}

/* line 186, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
ul.slider-controls-vertical {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  padding-top: var(--gap);
  margin-top: -11em;
}

@media (min-width: 480px) {
  /* line 186, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  ul.slider-controls-vertical {
    margin-top: -7em;
  }
}

@media (min-width: 768px) {
  /* line 186, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  ul.slider-controls-vertical {
    margin-top: -5em;
  }
}

@media (min-width: 1024px) {
  /* line 186, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  ul.slider-controls-vertical {
    margin-top: -3em;
  }
}

@media (min-width: 1280px) {
  /* line 186, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
  ul.slider-controls-vertical {
    margin-top: 0;
  }
}

/* line 211, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.page-template-template-dossier ul.slider-controls-vertical {
  padding-top: 6rem;
}

/* line 215, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
ul.slider-controls-vertical li {
  display: flex;
  width: 100%;
}

/* line 220, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
ul.slider-controls-vertical li.indicator {
  background: rgba(0, 0, 0, 0.3);
}

/* line 224, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
ul.slider-controls-vertical li a {
  text-indent: -100000px;
  width: 100%;
  height: 1px;
  transition: all 0.4s ease-in-out;
}

/* line 231, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
ul.slider-controls-vertical li.active a {
  height: 5px;
  background: black;
}

/* line 237, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#previous-vert,
#next-vert {
  height: var(--ui-height);
  width: var(--ui-height);
  text-indent: -1000em;
  border: solid rgba(0, 0, 0, 0.3) 1px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
}

/* line 249, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#previous-vert span,
#next-vert span {
  height: calc(var(--ui-height) / 4);
  width: calc(var(--ui-height) / 4);
  border-top: solid 2px black;
  border-right: solid 2px black;
  position: absolute;
}

/* line 257, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#previous-vert:hover, #previous-vert:active, #previous-vert:focus,
#next-vert:hover,
#next-vert:active,
#next-vert:focus {
  border: solid 1px black;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 265, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#previous-vert {
  margin-right: 2em;
}

/* line 268, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#previous-vert span {
  transform: rotate(-135deg);
  margin-left: 0.2em;
}

/* line 274, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#next-vert {
  margin-left: 2em;
}

/* line 277, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
#next-vert span {
  transform: rotate(45deg);
  margin-left: -0.2em;
}

/* line 283, web/app/themes/sage/resources/assets/styles/components/_dossiers.scss */
.slider-item:not(.active) {
  cursor: pointer;
}

/* line 1, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger-container {
  display: flex;
  align-items: center;
  margin-left: auto;
}

@media (min-width: 480px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
  .burger-container {
    margin-left: 0;
  }
}

/* line 11, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 1.35em;
  width: 2.1em;
  margin-left: 1.75em;
}

@media (min-width: 1280px) {
  /* line 11, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
  .burger {
    margin-top: 0;
    display: none;
  }
}

/* line 25, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger div {
  height: 2px;
  width: 100%;
  background: white;
  opacity: 1;
  transform: rotate(0deg);
  transition: all 0.25s ease-in-out;
}

/* line 34, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.inverted .burger div {
  background-color: black;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.navigation-open .inverted .burger div {
  background-color: white;
}

/* line 43, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger div:nth-child(1) {
  align-self: center;
}

/* line 46, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.navigation-open .burger div:nth-child(1) {
  width: 0%;
  left: 50%;
  opacity: 0;
}

/* line 53, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger div:nth-child(2) {
  position: absolute;
  top: calc(50% - 1px);
}

/* line 57, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.navigation-open .burger div:nth-child(2) {
  transform: rotate(45deg);
}

/* line 62, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger div:nth-child(3) {
  position: absolute;
  top: calc(50% - 1px);
}

/* line 66, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.navigation-open .burger div:nth-child(3) {
  transform: rotate(-45deg);
}

/* line 71, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.burger div:nth-child(4) {
  align-self: center;
}

/* line 74, web/app/themes/sage/resources/assets/styles/components/_burger.scss */
.navigation-open .burger div:nth-child(4) {
  width: 0%;
  left: 50%;
  opacity: 0;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
html {
  scroll-behavior: smooth;
  font-size: 14.5px;
  font-family: "Ubuntu", sans-serif;
}

@media (min-width: 768px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  html {
    font-size: 15px;
  }
}

@media (min-width: 1440px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  html {
    font-size: 15px;
  }
}

@media (min-width: 1680px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  html {
    font-size: 17px;
  }
}

@media (min-width: 1920px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  html {
    font-size: 18px;
  }
}

@media (min-width: 1930px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  html {
    font-size: 20px;
  }
}

/* line 28, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.navigation-open body {
  overflow: hidden;
}

/* line 33, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
body:not(.home) .wrap {
  position: relative;
  min-height: 50vh;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

/* line 41, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.wrap {
  position: relative;
  min-height: 50vh;
}

/* line 46, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.home .wrap {
  overflow: hidden;
}

/* line 50, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.container {
  max-width: 110em;
  padding: 0 var(--container-gap);
}

@media (min-width: 1280px) {
  /* line 50, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .container {
    margin: 0 auto;
  }
}

/* line 59, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.container-full {
  padding: 2rem;
  width: 100%;
}

/* line 64, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.archive .container-content {
  padding: var(--pages-top-gap) var(--container-gap);
}

/* line 67, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.archive .container-content .article-teaser-section {
  padding: 0;
}

/* line 73, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page:not(.home) .background-pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 5%;
  z-index: -1;
  pointer-events: none;
}

/* line 84, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page:not(.home) .page-header {
  position: relative;
}

/* line 87, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page:not(.home) .page-header:before {
  content: '';
  z-index: -1;
  position: absolute;
  top: 50%;
  width: 90vw;
  height: 90vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0 rgba(0, 0, 0, 0.15);
  opacity: 0.2;
  transform: translate(-50%, -55%);
}

/* line 101, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page:not(.home) .page-header:after {
  content: '';
  z-index: -1;
  position: absolute;
  top: 50%;
  width: 50vw;
  height: 50vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0 rgba(0, 0, 0, 0.15);
  opacity: 0.3;
  transform: translate(-50%, -55%);
}

/* line 117, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.archive .background-pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 5%;
  z-index: -1;
  opacity: 0.8;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page .container-content {
  position: relative;
  width: 100%;
  padding: var(--pages-top-gap) var(--container-gap);
}

@media (min-width: 768px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .page .container-content {
    max-width: 70vw;
  }
}

@media (min-width: 1024px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .page .container-content {
    max-width: 60vw;
  }
}

/* line 143, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page-header {
  width: auto;
  margin-right: var(--gap);
}

/* line 148, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page-header-btn-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 3em;
}

@media (min-width: 1024px) {
  /* line 148, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .page-header-btn-container {
    flex-direction: row;
    align-items: center;
  }
}

/* line 160, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.page-header-btn-container button {
  position: relative;
  font-weight: 600;
  color: #ffffff;
  font-size: 0.9em;
  text-transform: uppercase;
  text-decoration: none;
  background: #F80000;
  border-radius: 2em;
  padding: 0.7em 2em 0.6em;
  display: inline-flex;
  align-items: center;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  font-family: "Teko", sans-serif;
  overflow: hidden;
  transition: all 0.24s ease-in-out;
  background: #FFED00;
  border: none;
  color: black;
}

/* line 19, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.page-header-btn-container button:hover, .page-header-btn-container button:active, .page-header-btn-container button:focus {
  transform: scale(1.08);
  box-shadow: 4px 4px 42px 0px rgba(0, 0, 0, 0.29);
}

/* line 168, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.wp-block-quote {
  background: whitesmoke;
  margin: 0;
  padding: 0.6em 2em 2em;
  color: black;
}

/* line 174, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.wp-block-quote a {
  background: #FFED00;
  color: black;
  padding: 0.2em;
}

/* line 181, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
body .wp-block-quote::before {
  content: '';
}

@media (min-width: 1280px) {
  /* line 186, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  :root {
    --container-gap: 5rem;
    --gap: 2.5rem;
    --pages-top-gap: 12em;
  }
}

/* line 193, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.hero-headline {
  font-size: 3.4em;
  line-height: 0.9em;
  color: white;
  font-family: "Teko", sans-serif;
  font-weight: 500;
}

@media (min-width: 1024px) {
  /* line 193, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .hero-headline {
    font-size: 3.6em;
  }
}

@media (min-width: 1280px) {
  /* line 193, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .hero-headline {
    font-size: 4.4em;
  }
}

/* line 51, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.inverted .hero-headline {
  color: black;
}

/* line 197, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.section-headline {
  scroll-margin-top: 4em;
}

/* line 201, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.error404 .wrap {
  max-width: 110em;
  padding: var(--pages-top-gap) var(--container-gap);
  flex-direction: column;
}

@media (min-width: 1280px) {
  /* line 201, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .error404 .wrap {
    margin: 0 auto;
  }
}

/* line 210, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.error404 .wrap .search-form {
  display: block;
  width: 100%;
  margin: 0;
}

/* line 217, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
#flipbookContainerWrapper {
  height: 0;
  overflow: hidden;
}

/* line 221, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
#flipbookContainerWrapper.show {
  height: auto;
  overflow: visible;
}

/* line 226, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
#flipbookContainerWrapper .df-ui-wrapper.df-ui-controls .df-ui-thumbnail {
  display: none;
}

/* line 234, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.log-in .container-content,
.mein-bereich .container-content,
.vielen-dank-fuer-ihre-bestellung .container-content {
  max-width: 90vw;
}

@media (min-width: 1024px) {
  /* line 234, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .log-in .container-content,
  .mein-bereich .container-content,
  .vielen-dank-fuer-ihre-bestellung .container-content {
    padding-bottom: 0;
  }
}

/* line 242, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.log-in .has-2-columns,
.mein-bereich .has-2-columns,
.vielen-dank-fuer-ihre-bestellung .has-2-columns {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

@media (min-width: 1024px) {
  /* line 242, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .log-in .has-2-columns,
  .mein-bereich .has-2-columns,
  .vielen-dank-fuer-ihre-bestellung .has-2-columns {
    flex-wrap: nowrap;
  }
}

/* line 252, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.log-in .has-2-columns .wp-block-column:first-child,
.mein-bereich .has-2-columns .wp-block-column:first-child,
.vielen-dank-fuer-ihre-bestellung .has-2-columns .wp-block-column:first-child {
  display: flex;
  align-items: flex-start;
  flex-basis: auto;
}

@media (min-width: 1024px) {
  /* line 252, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .log-in .has-2-columns .wp-block-column:first-child,
  .mein-bereich .has-2-columns .wp-block-column:first-child,
  .vielen-dank-fuer-ihre-bestellung .has-2-columns .wp-block-column:first-child {
    max-width: 35%;
  }
}

/* line 262, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.log-in .has-2-columns .wp-block-column:nth-child(2),
.mein-bereich .has-2-columns .wp-block-column:nth-child(2),
.vielen-dank-fuer-ihre-bestellung .has-2-columns .wp-block-column:nth-child(2) {
  display: flex;
  align-items: flex-start;
  flex-basis: auto;
  margin-left: 0;
}

@media (min-width: 1024px) {
  /* line 262, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .log-in .has-2-columns .wp-block-column:nth-child(2),
  .mein-bereich .has-2-columns .wp-block-column:nth-child(2),
  .vielen-dank-fuer-ihre-bestellung .has-2-columns .wp-block-column:nth-child(2) {
    margin-left: calc(var(--gap) * 2);
    max-width: 65%;
  }
}

@media (min-width: 1024px) {
  /* line 274, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .log-in figure,
  .mein-bereich figure,
  .vielen-dank-fuer-ihre-bestellung figure {
    transform: translateY(-6em);
  }
}

/* line 281, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
figure .copyright {
  position: relative;
  display: block;
  text-align: center;
}

/* line 286, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.main-hero figure .copyright, .slider-item figure .copyright, .article-head figure .copyright {
  display: none;
}

/* line 291, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.navigation.posts-navigation {
  padding-top: 2rem;
}

/* line 294, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.navigation.posts-navigation .nav-links {
  justify-content: space-between;
}

/* line 299, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.notice {
  padding: 0.5em 1em;
  line-height: 1.5em;
  grid-column: 1 / -1;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  background: #FFED00;
}

/* line 307, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
.main-hero-content .notice {
  padding: 0.5em 1em;
  margin-bottom: 1em;
}

@media (min-width: 1024px) {
  /* line 307, web/app/themes/sage/resources/assets/styles/layout/_layout.scss */
  .main-hero-content .notice {
    width: 80%;
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero {
  position: relative;
  overflow: hidden;
  min-height: 70vh;
  width: 100%;
  display: flex;
  align-items: center;
}

@media (min-width: 1024px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .main-hero {
    min-height: 100vh;
  }
}

/* line 13, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero:after {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: black;
  opacity: 0;
  z-index: -1;
}

/* line 24, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.inverted .main-hero:after {
  display: none;
}

/* line 29, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero:before {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 50%, black 100%);
  opacity: 0.8;
}

/* line 44, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.inverted .main-hero:before {
  display: none;
}

@media (min-width: 768px) {
  /* line 29, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .main-hero:before {
    width: 50vw;
  }
}

/* line 53, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero .hero-image {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* line 64, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.home .main-hero + .article-section {
  margin-top: -2.5em;
}

/* line 68, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.hero-content-flex {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: calc(var(--nav-height) * 1.1);
  margin-bottom: calc(var(--nav-height) * 1.1);
}

@media (min-width: 1024px) {
  /* line 68, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .hero-content-flex {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: calc(var(--nav-height) * 1.3);
    margin-bottom: calc(var(--nav-height) * 0.6);
    width: 100%;
  }
}

/* line 85, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero-content {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  /* line 85, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .main-hero-content {
    max-width: 32em;
  }
}

@media (min-width: 1280px) {
  /* line 85, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .main-hero-content {
    max-width: 35em;
  }
}

/* line 98, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.article-details {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  margin-bottom: 1.4em;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.article-details .inverted {
  color: black;
}

/* line 102, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.inverted .article-details {
  color: black;
}

/* line 107, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.article-text {
  font-family: "Ubuntu", sans-serif;
  font-size: 1em;
  color: white;
  opacity: 0.8;
}

/* line 25, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.inverted .article-text {
  color: black;
}

/* line 110, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.inverted .article-text {
  color: black;
}

/* line 115, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.article-details-dot {
  display: inline-flex;
  padding: 0 1em;
}

/* line 121, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.main-hero .read-link {
  font-size: 24px;
  margin-top: 0.7em;
  display: inline-flex;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.interferer {
  position: relative;
  margin-left: auto;
  margin-bottom: 0.5em;
  font-size: 14px;
  line-height: 14px;
  height: 7.6em;
  width: 7.6em;
  padding: 0.85em;
  border-radius: 50%;
  color: black;
  background-color: #FFED00;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-family: "Teko", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  transform: rotate(25deg);
  transition: all 0.24s ease-in-out;
}

@media (min-width: 768px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .interferer {
    font-size: 16px;
    line-height: 16px;
  }
}

@media (min-width: 1024px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .interferer {
    position: absolute;
    right: -6em;
    top: -2.6em;
    margin-bottom: 0;
  }
  /* line 164, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .category .interferer {
    right: -10em;
  }
}

@media (min-width: 1280px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
  .interferer {
    font-size: 18px;
    line-height: 18px;
  }
}

/* line 174, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.interferer:hover, .interferer:focus, .interferer:active {
  animation: shake-interferer 0.8s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
  box-shadow: 2px 2px 35px 0 rgba(0, 0, 0, 0.4);
}

/* line 181, web/app/themes/sage/resources/assets/styles/layout/_main-hero.scss */
.interferer i {
  font-size: 2em;
  padding-bottom: 0.7rem;
}

/* line 2, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .main-hero {
  flex-wrap: wrap;
  flex-direction: column;
}

@media (min-width: 1024px) {
  /* line 2, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
  .theme-light .main-hero {
    flex-direction: row;
  }
}

/* line 10, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .main-hero .background-pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 5%;
}

/* line 20, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .main-hero-content {
  max-width: 100%;
  margin: 0;
}

@media (min-width: 1024px) {
  /* line 20, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
  .theme-light .main-hero-content {
    margin-top: calc(var(--nav-height) * 1.3);
    margin-bottom: calc(var(--nav-height) * 0.6);
    max-width: 34em;
  }
}

/* line 32, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .hero-image-wrapper {
  margin-top: calc(var(--nav-height) * 1.3);
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 30%;
}

@media (min-width: 1024px) {
  /* line 32, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
  .theme-light .hero-image-wrapper {
    position: absolute;
    width: 50%;
    height: 100%;
    right: 0;
    margin-top: 0;
  }
}

/* line 49, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .hero-image-wrapper:after {
  content: "";
  z-index: -1;
  position: absolute;
  width: 50vw;
  height: 50vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.4;
}

/* line 61, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .hero-image-wrapper:before {
  content: "";
  z-index: -2;
  position: absolute;
  width: 90vw;
  height: 90vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.2;
}

/* line 73, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
.theme-light .hero-image-wrapper .hero-image {
  z-index: 1;
  position: relative;
}

@media (min-width: 1024px) {
  /* line 73, web/app/themes/sage/resources/assets/styles/layout/_main-hero-light.scss */
  .theme-light .hero-image-wrapper .hero-image {
    position: absolute;
    object-fit: none;
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-top: var(--gap);
  overflow: hidden;
}

/* line 10, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero .hero-image {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* line 22, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-tag {
  position: absolute;
  height: calc(var(--ui-height) * 1.3);
  z-index: 2;
  top: 1em;
  left: var(--container-gap);
  background: #F80000;
  display: flex;
  align-items: center;
  font-family: "Teko", sans-serif;
  padding: 0 1em;
}

/* line 34, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-tag i {
  color: white;
  font-size: 2em;
}

/* line 39, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-tag span {
  font-size: 1.4em;
  line-height: 1.4em;
  color: white;
  padding-left: 0.4em;
  padding-top: 0.3em;
}

/* line 48, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-content {
  z-index: 1;
  opacity: 0;
  transition: all 0.4s ease-in-out;
  transition-delay: 0.2s;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

@media (min-width: 768px) {
  /* line 48, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .section-hero-content {
    max-width: 32em;
  }
}

@media (min-width: 1280px) {
  /* line 48, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .section-hero-content {
    max-width: 35em;
  }
}

/* line 65, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-content .hero-headline {
  font-size: 3.5em;
  line-height: 0.9em;
  color: white;
  font-family: "Teko", sans-serif;
}

@media (min-width: 1280px) {
  /* line 65, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .section-hero-content .hero-headline {
    font-size: 4.4em;
  }
}

/* line 76, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero-content:after {
  content: '';
  height: 100%;
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(-90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 50%, black 100%);
  opacity: 0;
  z-index: -1;
  transition: all 0.4s ease-in-out;
  transition-delay: 0.2s;
}

@media (min-width: 1024px) {
  /* line 76, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .section-hero-content:after {
    width: 70vw;
  }
}

/* line 101, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.article-details {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  margin-bottom: 1.4em;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.article-details .inverted {
  color: black;
}

@media (min-width: 768px) {
  /* line 101, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .article-details {
    width: calc(100% - 35px);
  }
}

/* line 109, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.inverted .article-details {
  color: rgba(0, 0, 0, 0.6);
}

/* line 114, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.article-text {
  font-family: "Ubuntu", sans-serif;
  font-size: 1em;
  color: white;
  opacity: 0.8;
}

/* line 25, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.inverted .article-text {
  color: black;
}

/* line 117, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.inverted .article-text {
  color: black;
}

/* line 122, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.article-details-dot {
  display: inline-flex;
  padding: 0 1em;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero .read-link {
  font-size: 24px;
  margin-top: 0.7em;
  display: inline-flex;
}

/* line 135, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.section-hero .micro-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* line 141, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-wrapper {
  overflow: hidden;
  position: relative;
  transform-style: preserve-3d;
  transform-origin: 0 50%;
  min-height: 35em !important;
}

/* line 150, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12);
  height: 100% !important;
  width: 100% !important;
  max-width: none;
  left: 0;
  position: absolute;
  top: 0;
  transform: none;
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
}

@media (min-width: 1024px) {
  /* line 150, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .slider-item {
    align-items: center;
  }
}

/* line 167, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item:after, .slider-item:before {
  content: '';
  height: 70%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 50%, black 100%);
  opacity: 0.6;
  z-index: 0;
}

@media (min-width: 1024px) {
  /* line 167, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  .slider-item:after, .slider-item:before {
    height: 30%;
  }
}

/* line 190, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item:before {
  top: auto;
  bottom: 0;
  background: linear-gradient(-180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 50%, black 100%);
}

/* line 204, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item.active .section-hero-content {
  opacity: 1;
}

/* line 207, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item.active .section-hero-content:after {
  opacity: 0.8;
}

/* line 213, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
ul.slider-controls {
  position: absolute;
  right: var(--container-gap);
  bottom: var(--container-gap);
  left: var(--container-gap);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  padding-top: 2em;
  list-style: none;
}

@media (min-width: 1024px) {
  /* line 213, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  ul.slider-controls {
    padding-top: 0;
    left: auto;
    width: auto;
    bottom: calc(var(--container-gap) / 2);
  }
}

/* line 232, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
ul.slider-controls li {
  display: flex;
  width: 100%;
}

/* line 237, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
ul.slider-controls li.indicator {
  background: rgba(255, 255, 255, 0.3);
}

/* line 241, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
ul.slider-controls li a {
  text-indent: -10000px;
  width: 100%;
  height: 1px;
  transition: all 0.4s ease-in-out;
}

@media (min-width: 1024px) {
  /* line 241, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
  ul.slider-controls li a {
    width: 3.5em;
  }
}

/* line 252, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
ul.slider-controls li.active a {
  height: 5px;
  background: white;
}

/* line 258, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#previous,
#next {
  height: var(--ui-height);
  width: var(--ui-height);
  text-indent: -1000em;
  border: solid rgba(255, 255, 255, 0.3) 1px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
}

/* line 270, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#previous span,
#next span {
  height: calc(var(--ui-height) / 4);
  width: calc(var(--ui-height) / 4);
  border-top: solid 2px white;
  border-right: solid 2px white;
  position: absolute;
}

/* line 278, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#previous:hover, #previous:active, #previous:focus,
#next:hover,
#next:active,
#next:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 286, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#previous {
  margin-right: 2em;
}

/* line 289, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#previous span {
  transform: rotate(-135deg);
  margin-left: 0.2em;
}

/* line 295, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#next {
  margin-left: 2em;
}

/* line 298, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
#next span {
  transform: rotate(45deg);
  margin-left: -0.2em;
}

/* line 304, web/app/themes/sage/resources/assets/styles/layout/_section-hero.scss */
.slider-item:not(.active) {
  cursor: pointer;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section {
  display: grid;
  width: 100%;
  grid-template: "article-teaser" "ads" "ads";
}

@media (min-width: 768px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section {
    gap: var(--gap) var(--gap);
    grid-template: "article-teaser article-teaser" "ads       ads";
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section {
    grid-template: "article-teaser article-teaser ads" "article-teaser article-teaser ads";
    grid-template-columns: 1.1fr 1.1fr 0.8fr;
    grid-template-rows: auto 1fr;
  }
}

/* line 26, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section .article-head:after {
  display: none;
}

/* line 31, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section .article-headline {
  font-size: 2em;
  line-height: 1;
  color: black;
  font-weight: normal;
}

/* line 38, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section .article-details {
  margin-bottom: 1.1em;
}

/* line 42, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section .read-link {
  margin-top: 0.7em;
}

/* line 46, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
.article-teaser-section .article-teaser-grid {
  margin-top: var(--gap);
  margin-bottom: var(--gap);
  display: grid;
  grid-template-columns: repeat(1, minmax(15em, 1fr));
  gap: var(--gap);
  grid-area: article-teaser;
}

@media (min-width: 768px) {
  /* line 46, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section .article-teaser-grid {
    grid-template-columns: repeat(2, minmax(15em, 1fr));
  }
}

@media (min-width: 1024px) {
  /* line 46, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section .article-teaser-grid {
    grid-template-columns: repeat(2, minmax(12em, 1fr));
  }
}

@media (min-width: 1280px) {
  /* line 46, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section .article-teaser-grid {
    grid-template-columns: repeat(2, minmax(15em, 1fr));
  }
}

@media (min-width: 1440px) {
  /* line 46, web/app/themes/sage/resources/assets/styles/layout/_article-teaser.scss */
  .article-teaser-section .article-teaser-grid {
    grid-template-columns: repeat(3, minmax(18em, 1fr));
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-container {
  display: flex;
  flex-wrap: wrap;
}

/* line 6, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-top {
  margin-top: -7.5rem;
}

/* line 14, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
article:hover .article-head-w-text:after, article:focus .article-head-w-text:after, article:active .article-head-w-text:after {
  height: 100%;
}

/* line 20, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar {
  height: 5rem;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

/* line 27, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar .current-edition-wrapper:hover .current-edition-link,
.article-topbar .current-edition-wrapper:focus .current-edition-link,
.article-topbar .current-edition-wrapper:active .current-edition-link {
  animation: shake-current 0.8s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

/* line 34, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar .current-edition {
  position: absolute;
  padding: 3em 0;
  right: 0;
  overflow: hidden;
  transform: translateY(-70%);
}

@media (min-width: 1280px) {
  /* line 34, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .article-topbar .current-edition {
    transform: translateY(-50%);
  }
}

/* line 46, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar .current-edition-link {
  display: inline-flex;
}

/* line 50, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar .current-edition-img {
  width: 7.7em;
  box-shadow: 2px 2px 35px 0px rgba(0, 0, 0, 0.8);
  transform: translateX(55%) rotate(-30deg);
}

@media (min-width: 1280px) {
  /* line 50, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .article-topbar .current-edition-img {
    width: 8.5em;
  }
}

/* line 60, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-topbar .read-link {
  font-size: 24px;
  margin-right: 2em;
}

@media (min-width: 1920px) {
  /* line 60, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .article-topbar .read-link {
    margin-right: 0;
  }
}

/* line 70, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content {
  width: 100%;
  display: grid;
  grid-template: "article-1" "article-2" "dossier" "ads" "ads";
}

@media (min-width: 768px) {
  /* line 70, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .home .article-content {
    grid-gap: var(--gap) var(--gap);
    grid-template: "article-1 article-2" "ads       ads" "dossier dossier";
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  /* line 70, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .home .article-content {
    grid-template: "article-1 article-2 ads" "dossier dossier ads";
    grid-template-columns: 1.1fr 1.1fr 0.8fr;
    grid-template-rows: auto;
  }
}

/* line 98, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article {
  width: 100%;
  margin-bottom: calc(var(--container-gap) * 1.5);
}

/* line 102, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article .article-text,
.home .article-content article .article-details {
  color: black;
}

@media (min-width: 768px) {
  /* line 98, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .home .article-content article {
    margin-bottom: 0;
  }
}

/* line 112, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article:nth-of-type(1) {
  grid-area: article-1;
}

/* line 116, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article:nth-of-type(2) {
  grid-area: article-2;
}

/* line 120, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article:nth-of-type(3) {
  grid-area: article-3;
}

/* line 124, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content article:nth-of-type(4) {
  grid-area: article-4;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content .article-teaser-section-container {
  grid-area: article-teaser;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15em, 1fr));
  gap: 2em;
}

@media (min-width: 1024px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .home .article-content .article-teaser-section-container {
    grid-template-columns: repeat(auto-fit, minmax(15em, 1fr));
  }
}

@media (min-width: 1440px) {
  /* line 128, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .home .article-content .article-teaser-section-container {
    grid-template-columns: repeat(auto-fit, minmax(18em, 1fr));
  }
}

/* line 144, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content .article-details {
  margin-top: 1.4em;
}

/* line 148, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content .read-link {
  font-size: 21px;
  margin-top: 0.7em;
  margin-right: 1em;
  display: inline-flex;
  color: black;
  border-color: black;
}

/* line 156, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.home .article-content .read-link:after {
  background-color: black;
}

/* line 162, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head:empty {
  background-image: url("../images/background.png");
  background-size: 15%;
}

/* line 167, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head {
  position: relative;
  display: flex;
  box-shadow: 4px 4px 42px 0px rgba(0, 0, 0, 0.29);
  padding-bottom: 65%;
}

/* line 173, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%;
  transition: all 0.24s ease-in-out;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.86) 0%, rgba(0, 0, 0, 0) 100%);
}

/* line 188, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head i {
  position: absolute;
  right: 0;
  top: 0;
  height: var(--ui-height);
  width: var(--ui-height);
  background-color: #FFED00;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: black;
  margin: calc(var(--gap) / 2);
}

/* line 204, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head i:before {
  font-size: 1.2em;
}

/* line 209, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head .article-headline {
  position: absolute;
  z-index: 1;
  bottom: 0;
  font-family: "Teko", sans-serif;
  color: white;
  font-size: 2.2em;
  line-height: 1em;
  padding: calc(var(--gap) / 2.7) calc(var(--gap) / 2);
}

@media (min-width: 1024px) {
  /* line 209, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .article-head .article-headline {
    font-size: 2em;
  }
}

@media (min-width: 1440px) {
  /* line 209, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
  .article-head .article-headline {
    font-size: 2.6em;
  }
}

/* line 228, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head figure {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* line 235, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* line 244, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout {
  overflow: hidden;
  background-size: 15%;
  background-image: url(../images/background.png);
}

/* line 249, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout:after {
  display: none;
}

/* line 253, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout figure {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 87%;
}

/* line 259, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout figure:after {
  content: "";
  position: absolute;
  width: 18em;
  height: 18em;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.4;
}

/* line 270, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout figure:before {
  content: "";
  position: absolute;
  width: 30em;
  height: 30em;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.2;
}

/* line 282, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout figure img {
  position: absolute;
  width: auto;
  height: 70%;
  mix-blend-mode: multiply;
  z-index: 1;
}

/* line 290, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.article-head.light-layout .article-headline {
  color: black;
}

/* line 295, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.empty-article-head-container {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 15%;
  background-image: url(../images/background.png);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* line 308, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.empty-article-head-container .logo-svg {
  position: absolute;
  opacity: 0.05;
  height: 120%;
}

/* line 313, web/app/themes/sage/resources/assets/styles/layout/_article.scss */
.empty-article-head-container .logo-svg .side-letters {
  display: none;
}

/* line 2, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
body.category .article-content {
  width: 100%;
  display: grid;
  grid-template: "article-1" "article-2" "ads" "ads" "article-3" "article-4";
}

@media (min-width: 768px) {
  /* line 2, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
  body.category .article-content {
    grid-gap: var(--gap) var(--gap);
    grid-template: "article-1 article-2" "ads       ads" "article-3 article-4";
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  /* line 2, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
  body.category .article-content {
    grid-template: "article-1 article-2 ads" "article-3 article-4 ads";
    grid-template-columns: 1.1fr 1.1fr 0.8fr;
    grid-template-rows: auto;
  }
}

/* line 32, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
body.category .main-hero {
  min-height: 0;
  margin: var(--nav-height) var(--container-gap) var(--container-gap);
}

/* line 37, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
body.category .main-hero-content {
  max-width: 45em;
}

/* line 41, web/app/themes/sage/resources/assets/styles/layout/_category.scss */
body.category .hero-content-flex {
  margin-top: var(--container-gap);
  margin-bottom: var(--container-gap);
  width: 100%;
}

/* line 2, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9em, 1fr));
  gap: var(--gap);
  width: 100%;
  padding: var(--pages-top-gap) calc(var(--container-gap));
}

@media (min-width: 1024px) {
  /* line 2, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-grid-container {
    padding: var(--pages-top-gap) calc(var(--container-gap) * 2);
    grid-template-columns: repeat(auto-fit, minmax(12em, 1fr));
  }
}

/* line 14, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container span {
  font-family: "Teko", sans-serif;
  color: black;
  font-size: 1.7em;
  display: inline-flex;
}

/* line 21, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container a {
  width: 100%;
}

/* line 25, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container figure {
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
}

/* line 28, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container figure img {
  width: 100%;
}

@media (min-width: 768px) {
  /* line 25, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-grid-container figure {
    transition: all 0.24s ease-in-out;
  }
  /* line 35, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-grid-container figure:hover {
    transform: scale(1.02);
  }
}

/* line 41, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container .empty-cover-container {
  background: #eaeaea;
  width: 100%;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  position: relative;
  overflow: hidden;
  padding-bottom: 136%;
}

@media (min-width: 768px) {
  /* line 41, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-grid-container .empty-cover-container {
    transition: all 0.24s ease-in-out;
  }
  /* line 52, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-grid-container .empty-cover-container:hover {
    transform: scale(1.02);
  }
}

/* line 67, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container .empty-cover-container img {
  transform: scale(1.1);
  height: 110%;
  width: 110%;
  object-fit: cover;
  position: absolute;
}

/* line 76, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-grid-container .empty-cover-container span {
  writing-mode: vertical-lr;
  transform: rotate(180deg) translateY(50%);
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 5em;
  opacity: 0.5;
  color: white;
  z-index: 2;
  mix-blend-mode: overlay;
}

/* line 92, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive .container-content .section-headline {
  font-size: 3em;
}

/* line 97, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
.archive-claim {
  padding: 2em;
}

@media (min-width: 1024px) {
  /* line 97, web/app/themes/sage/resources/assets/styles/layout/_archive.scss */
  .archive-claim {
    padding: 3em;
  }
}

/* line 2, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.article-banners {
  display: grid;
  grid-area: ads;
  background-color: #f5f5f5;
  width: calc(100% + var(--container-gap) * 2);
  margin-left: calc(var(--container-gap) * -1);
  margin-bottom: calc(var(--container-gap) * 1.5);
  padding-left: calc(var(--container-gap) / 2);
  padding-right: calc(var(--container-gap) / 2);
}

/* line 14, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.home .article-section:first-of-type .article-banners {
  padding-top: 0;
  background: transparent;
}

@media (min-width: 1024px) {
  /* line 2, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .article-banners {
    width: auto;
    grid-auto-flow: column;
    margin-left: 0;
    margin-bottom: auto;
    padding: 0;
    padding: var(--gap) 0 var(--gap);
  }
}

/* line 29, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-image-container {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

@media (min-width: 1024px) {
  /* line 29, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .banner-image-container {
    flex-direction: column;
    background: #f5f5f5;
  }
}

/* line 40, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-info {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 0.6em;
  padding-bottom: 0.6em;
}

@media (min-width: 1024px) {
  /* line 40, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .banner-info {
    width: var(--gap);
    padding-top: 1em;
    padding-bottom: 1em;
    background: #f5f5f5;
  }
  /* line 54, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .home .article-section:first-of-type .banner-info {
    margin-top: 2.5rem;
  }
}

/* line 59, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-info span {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  color: black;
  opacity: 0.6;
  display: inline-flex;
  white-space: nowrap;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.banner-info span .inverted {
  color: black;
}

@media (min-width: 1024px) {
  /* line 59, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .banner-info span {
    writing-mode: vertical-rl;
    position: sticky;
    top: var(--nav-height);
    transform: rotate(180deg);
  }
}

/* line 75, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-image {
  width: 33.33333%;
  padding: 0 calc(var(--gap) / 2);
}

/* line 79, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-image img {
  width: 100%;
}

@media (min-width: 1024px) {
  /* line 75, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .banner-image {
    width: 100%;
    padding: 0;
    margin-bottom: calc(var(--gap));
  }
}

/* line 90, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
.banner-image:last-child {
  margin-bottom: 0;
}

@media (min-width: 1024px) {
  /* line 90, web/app/themes/sage/resources/assets/styles/layout/_ads.scss */
  .banner-image:last-child {
    margin-bottom: calc(var(--gap));
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section {
  background-size: 3%;
  box-shadow: inset 0 14px 63px -5px rgba(0, 0, 0, 0.2);
  width: 100%;
}

/* line 7, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* line 12, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-container .abo-section-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1em;
  width: 100%;
  font-family: "Teko", sans-serif;
  padding-top: calc(var(--gap) * 1.5);
  padding-right: calc(var(--container-gap) + 1.5em);
}

@media (min-width: 1024px) {
  /* line 12, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
  .abo-section-container .abo-section-head {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

/* line 29, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-container .all-abos-link {
  padding-bottom: calc(var(--gap) * 2);
}

/* line 34, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-head-link-container {
  position: relative;
  display: flex;
  align-items: center;
  margin-top: 1em;
}

/* line 39, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-head-link-container a.cta-links {
  z-index: 1;
  margin-top: 0;
}

/* line 43, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-head-link-container span {
  position: absolute;
  width: 3em;
  height: 3em;
  background: #FFED00;
  border-radius: 50%;
  right: 0;
  transform: translateX(45%);
}

/* line 54, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section-container h2 {
  font-size: 2em;
  line-height: 0.9em;
}

@media (min-width: 1024px) {
  /* line 54, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
  .abo-section-container h2 {
    font-size: 3em;
  }
}

/* line 63, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section .cta-links {
  font-size: 24px;
  position: relative;
  color: white;
  font-family: "Teko", sans-serif;
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
  border-color: white;
  font-size: 1.3em;
  color: black;
  margin-top: 1em;
}

/* line 64, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .abo-section .cta-links {
  color: black;
}

/* line 68, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.abo-section .cta-links:after {
  content: '';
  height: 2px;
  background-color: white;
  width: 2.2em;
  margin-left: 0.9em;
  transition: all 0.24s ease-in-out;
  transform-origin: right;
}

/* line 77, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .abo-section .cta-links:after {
  background: black;
}

/* line 82, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.abo-section .cta-links:before {
  content: '';
  height: 8px;
  width: 8px;
  border-color: inherit;
  border-top: solid 2px;
  border-right: solid 2px;
  position: absolute;
  right: 0;
  transform: rotate(45deg);
  transition: all 0.24s ease-in-out;
}

/* line 94, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.inverted .abo-section .cta-links:before {
  border-color: black;
}

/* line 103, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.abo-section .cta-links:hover:after, .abo-section .cta-links:focus:after, .abo-section .cta-links:active:after,
article:hover .abo-section .cta-links:after {
  transform: translateX(0.5em) scaleX(0.85);
}

/* line 107, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.abo-section .cta-links:hover:before, .abo-section .cta-links:focus:before, .abo-section .cta-links:active:before,
article:hover .abo-section .cta-links:before {
  transform: translateX(0.5em) rotate(45deg);
}

/* line 69, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-section .cta-links:after {
  background-color: black;
}

/* line 74, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-card-layout-container {
  width: 100%;
  overflow-y: scroll;
  position: relative;
  -webkit-mask-image: linear-gradient(to right, black 90%, transparent 100%);
  mask-image: linear-gradient(to right, black 90%, transparent 100%);
}

@media (min-width: 1024px) {
  /* line 74, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
  .abo-card-layout-container {
    -webkit-mask-image: none;
    mask-image: none;
  }
}

@media (min-width: 1280px) {
  /* line 74, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
  .abo-card-layout-container {
    overflow: visible;
  }
}

/* line 91, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex {
  display: grid;
  grid-template-columns: repeat(3, minmax(22em, 1fr));
  width: calc(100% + 22em);
  gap: var(--gap);
  padding-top: calc(var(--gap) * 3);
  padding-bottom: calc(var(--gap) * 3);
}

@media (min-width: 1024px) {
  /* line 91, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
  .abo-cards-flex {
    grid-template-columns: repeat(3, minmax(20em, 22em));
    width: 100%;
    gap: var(--gap);
    place-content: center;
    padding-top: calc(var(--gap) * 4);
    padding-bottom: calc(var(--gap) * 3);
  }
}

/* line 108, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container {
  background: white;
  padding: 0 var(--gap);
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  width: 100%;
  position: relative;
}

/* line 118, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container .price-flex {
  padding-bottom: 2em;
}

/* line 121, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container .price-flex span {
  font-family: "Teko", sans-serif;
}

/* line 125, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container .price-flex .currency {
  font-size: 2em;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container .price-flex .price {
  font-size: 4.5em;
  margin: 0 0.2em;
  font-weight: 800;
}

/* line 134, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-cards-flex .abo-card-container .price-flex .time {
  font-size: 1.7em;
  color: rgba(0, 0, 0, 0.6);
}

/* line 143, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-card-container a {
  position: relative;
  font-weight: 600;
  color: #ffffff;
  font-size: 0.9em;
  text-transform: uppercase;
  text-decoration: none;
  background: #F80000;
  border-radius: 2em;
  padding: 0.7em 2em 0.6em;
  display: inline-flex;
  align-items: center;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  font-family: "Teko", sans-serif;
  overflow: hidden;
  transition: all 0.24s ease-in-out;
  font-size: 1.1em;
  position: absolute;
  bottom: -5%;
}

/* line 19, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.abo-card-container a:hover, .abo-card-container a:active, .abo-card-container a:focus {
  transform: scale(1.08);
  box-shadow: 4px 4px 42px 0px rgba(0, 0, 0, 0.29);
}

/* line 150, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-card-container.basic a {
  background-color: #FFED00;
  color: black;
}

/* line 155, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-card-container.soli a {
  color: white;
  background-color: black;
}

/* line 161, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-stars {
  position: absolute;
  font-size: 2.2em;
  top: -2.5em;
}

/* line 166, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.basic .abo-stars {
  color: #FFED00;
}

/* line 170, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.plus .abo-stars {
  color: #F80000;
}

/* line 174, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-stars .abo-dot {
  font-size: 1.6em;
  font-style: normal;
  line-height: 1em;
}

/* line 181, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-model-head-flex {
  margin-top: -2.7em;
  display: flex;
  justify-content: center;
}

/* line 186, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
.abo-model-head-flex .abo-model-name {
  font-family: "Teko", sans-serif;
  font-size: 3.8em;
  font-weight: 600;
  text-transform: uppercase;
}

/* line 194, web/app/themes/sage/resources/assets/styles/layout/_abo.scss */
ul.abo-details-list {
  font-family: "Ubuntu", sans-serif;
  font-size: 1em;
  color: white;
  opacity: 0.8;
  color: black;
  padding: 0.6em 0 1em;
  display: flex;
  flex-direction: column;
  gap: 1em;
}

/* line 25, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.inverted ul.abo-details-list {
  color: black;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.detail .wrap {
  display: flex;
  align-items: center;
}

/* line 7, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .hero-image-wrapper {
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/* line 15, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .hero-image-wrapper figure {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* line 22, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .hero-image-wrapper img {
  object-fit: cover;
  max-height: 45vw;
}

@media (min-width: 768px) {
  /* line 28, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
  .single-post .hero-image-wrapper img {
    max-height: 34vw;
  }
}

/* line 35, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .detail-view-wrapper {
  position: relative;
  padding-top: var(--pages-top-gap);
  width: 100%;
}

/* line 40, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .detail-view-wrapper .hero-headline {
  width: 100%;
  text-align: center;
}

/* line 45, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .detail-view-wrapper .detail-container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding: var(--container-gap);
}

@media (min-width: 1024px) {
  /* line 45, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
  .single-post .detail-view-wrapper .detail-container {
    padding: 0;
  }
}

/* line 57, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .detail-view-wrapper .detail-content-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* line 66, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -3;
  background-size: 5%;
  background-image: url(../images/background.png);
}

/* line 78, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout .detail-head-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: column-reverse;
}

/* line 85, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout .hero-image-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* line 93, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout .hero-image-wrapper img {
  max-height: 20em;
  mix-blend-mode: multiply;
  object-fit: contain;
  z-index: 1;
}

/* line 100, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout .hero-image-wrapper:after {
  content: '';
  z-index: -1;
  position: absolute;
  width: 40vw;
  height: 40vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.3;
}

/* line 112, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.single-post .light-layout .hero-image-wrapper:before {
  content: '';
  z-index: -2;
  position: absolute;
  width: 80vw;
  height: 80vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.15;
}

/* line 127, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.has-no-hero-image .detail-container:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -3;
  background-size: 5%;
  background-image: url(../images/background.png);
}

/* line 139, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.has-no-hero-image .detail-container .detail-head-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

/* line 145, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.has-no-hero-image .detail-container .detail-head-container:after {
  content: '';
  z-index: -1;
  position: absolute;
  width: 40vw;
  height: 40vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.3;
}

/* line 157, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
.has-no-hero-image .detail-container .detail-head-container:before {
  content: '';
  z-index: -2;
  position: absolute;
  width: 80vw;
  height: 80vw;
  border-radius: 50%;
  background: white;
  box-shadow: 4px 4px 70px 0px rgba(0, 0, 0, 0.15);
  opacity: 0.15;
}

@media (min-width: 1280px) {
  /* line 171, web/app/themes/sage/resources/assets/styles/layout/_detail-head.scss */
  .detail-head-container {
    max-width: 60vw;
    width: 100%;
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-view-content {
  position: relative;
  margin: 0 auto;
  padding-bottom: var(--pages-top-gap);
  padding-top: calc(var(--gap) * 0.5);
}

@media (min-width: 768px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-view-content {
    padding-top: calc(var(--gap) * 1.5);
  }
}

/* line 12, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-view-text {
  font-family: "Ubuntu", sans-serif;
  font-size: 1.25em;
  color: rgba(0, 0, 0, 0.6);
  text-align: left;
  max-width: 30em;
  margin: 0 auto;
  position: relative;
}

/* line 19, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-view-text:first-letter {
  font-size: 4em;
  float: left;
  padding: 0 0.4em 0 0;
  line-height: 1;
  color: black;
  font-weight: bold;
}

/* line 28, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-view-text p {
  padding: 0.5em 0;
}

/* line 32, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-view-text strong {
  color: black;
  font-weight: 600;
}

/* line 38, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.locked-article .detail-view-content {
  padding-bottom: 0;
}

/* line 41, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.locked-article .detail-view-content:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, white 30%, rgba(255, 255, 255, 0) 100%);
}

/* line 53, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.locked-article .abo-card-layout-container {
  font-size: 0.9em;
}

/* line 56, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.locked-article .abo-cards-flex {
  padding-top: calc(var(--gap) * 2);
}

/* line 61, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-desktop {
  display: none;
}

@media (min-width: 768px) {
  /* line 61, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-social-links-desktop {
    display: block;
  }
}

/* line 68, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-desktop li, .detail-social-links-desktop a {
  margin-top: 1rem;
}

/* line 73, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
ul.detail-social-links-mobile {
  padding: 2em 0 0;
  display: flex;
}

/* line 77, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
ul.detail-social-links-mobile li {
  margin-right: 1rem;
}

@media (min-width: 768px) {
  /* line 73, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  ul.detail-social-links-mobile {
    display: none;
  }
}

/* line 86, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-desktop a {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.detail-social-links-desktop a:hover, .detail-social-links-desktop a:active, .detail-social-links-desktop a:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-social-links-desktop a {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-social-links-desktop a:hover {
  border: solid 1px black;
}

/* line 89, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-desktop a svg {
  width: 1em;
}

/* line 93, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-desktop a svg path {
  fill: white;
}

/* line 96, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.inverted .detail-social-links-desktop a svg path {
  fill: black;
}

/* line 102, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-mobile a {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.detail-social-links-mobile a:hover, .detail-social-links-mobile a:active, .detail-social-links-mobile a:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-social-links-mobile a {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-social-links-mobile a:hover {
  border: solid 1px black;
}

/* line 105, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-mobile a svg {
  width: 1em;
}

/* line 109, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-mobile a svg path {
  fill: white;
}

/* line 112, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.inverted .detail-social-links-mobile a svg path {
  fill: black;
}

/* line 118, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-social-links-mobile .addtoany_shortcode {
  padding-top: var(--gap);
}

@media (min-width: 1024px) {
  /* line 118, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-social-links-mobile .addtoany_shortcode {
    display: none;
  }
}

/* line 127, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-prev-container,
.detail-next-container {
  display: none;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  height: calc(100vh - var(--nav-height));
  top: var(--nav-height);
  padding-bottom: 1rem;
}

@media (min-width: 1024px) {
  /* line 127, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-prev-container,
  .detail-next-container {
    display: flex;
    padding: calc(var(--nav-height) / 2) 2rem 2rem;
  }
}

@media (min-width: 1440px) {
  /* line 127, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-prev-container,
  .detail-next-container {
    padding: calc(var(--nav-height) / 1.3) 2rem 2rem;
  }
}

/* line 150, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-next-container .detail-interferer {
  font-family: "Teko", sans-serif;
  color: rgba(0, 0, 0, 0.6);
  font-size: 1.25em;
  line-height: 2em;
  writing-mode: vertical-lr;
  transform: rotate(180deg);
}

/* line 160, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.prev,
.next {
  position: relative;
  font-family: "Teko", sans-serif;
  writing-mode: vertical-lr;
  transform: rotate(180deg);
  display: flex;
  align-items: center;
  font-size: 1.25em;
  color: rgba(0, 0, 0, 0.6);
  cursor: pointer;
}

/* line 172, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.prev a,
.next a {
  color: inherit;
}

/* line 177, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-prev-container .prev span,
.detail-next-container .next span,
.mobile-article-navigation .next span,
.mobile-article-navigation .prev span {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
  display: inline-flex;
  margin-bottom: 1.5rem;
  align-items: flex-end;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.detail-prev-container .prev span:hover, .detail-prev-container .prev span:active, .detail-prev-container .prev span:focus,
.detail-next-container .next span:hover,
.detail-next-container .next span:active,
.detail-next-container .next span:focus,
.mobile-article-navigation .next span:hover,
.mobile-article-navigation .next span:active,
.mobile-article-navigation .next span:focus,
.mobile-article-navigation .prev span:hover,
.mobile-article-navigation .prev span:active,
.mobile-article-navigation .prev span:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-prev-container .prev span, html:not(.navigation-open) .inverted:not(.scrolled)
.detail-next-container .next span, html:not(.navigation-open) .inverted:not(.scrolled)
.mobile-article-navigation .next span, html:not(.navigation-open) .inverted:not(.scrolled)
.mobile-article-navigation .prev span {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) .detail-prev-container .prev span:hover, html:not(.navigation-open) .inverted:not(.scrolled)
.detail-next-container .next span:hover, html:not(.navigation-open) .inverted:not(.scrolled)
.mobile-article-navigation .next span:hover, html:not(.navigation-open) .inverted:not(.scrolled)
.mobile-article-navigation .prev span:hover {
  border: solid 1px black;
}

/* line 186, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-prev-container .prev span:before,
.detail-next-container .next span:before,
.mobile-article-navigation .next span:before,
.mobile-article-navigation .prev span:before {
  content: "";
  height: 0.5rem;
  width: 0.5rem;
  border-color: inherit;
  border-top: solid 2px;
  border-right: solid 2px;
  position: absolute;
  right: 1rem;
  transform: rotate(45deg);
}

@media (min-width: 1280px) {
  /* line 199, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .detail-prev-container .prev span:after,
  .detail-next-container .next span:after,
  .mobile-article-navigation .next span:after,
  .mobile-article-navigation .prev span:after {
    content: "";
    position: absolute;
    right: 1rem;
    height: 2px;
    background-color: rgba(0, 0, 0, 0.6);
    width: 4rem;
  }
}

/* line 210, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation {
  display: flex;
  justify-content: space-between;
}

/* line 214, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation .prev,
.mobile-article-navigation .next {
  position: relative;
  font-family: "Teko", sans-serif;
  writing-mode: horizontal-tb;
  transform: rotate(0);
  display: flex;
  align-items: center;
  font-size: 1.25em;
  color: rgba(0, 0, 0, 0.6);
  cursor: pointer;
  gap: 1.4rem;
}

/* line 227, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation .prev span,
.mobile-article-navigation .next span {
  margin-bottom: 0;
  position: relative;
  display: flex;
  align-items: center;
}

/* line 234, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation .prev a,
.mobile-article-navigation .next a {
  color: inherit;
}

/* line 239, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation .next {
  flex-direction: row-reverse;
}

/* line 243, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.mobile-article-navigation .prev span {
  transform: rotate(180deg);
}

@media (min-width: 1024px) {
  /* line 210, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
  .mobile-article-navigation {
    display: none;
  }
}

/* line 252, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-next-container .next span:after {
  transform: rotate(180deg);
  transform-origin: right;
  right: 1.3rem;
  top: 1.05rem;
  background: rgba(0, 0, 0, 0.6);
}

/* line 260, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.detail-next-container .next span:before {
  transform: rotate(-135deg);
  right: 0.8rem;
}

/* line 266, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .wp-block-gallery {
  margin: 1em -4.4em;
}

/* line 270, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .wp-block-image figure.alignleft {
  margin-left: -4.4em;
}

/* line 274, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .wp-block-image figure.alignright {
  margin-right: -4.4em;
}

/* line 278, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .detail-head-container .article-details {
  display: flex;
  justify-content: center;
  margin: var(--gap) 0;
}

/* line 285, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post figcaption {
  font-size: 0.7em;
  opacity: 0.7;
  margin-top: 0.5em;
}

/* line 291, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .wp-block-image {
  position: relative;
  z-index: 1;
  padding: var(--gap) 0;
}

/* line 297, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.single-post .detail-view-text .paragraph:first-child {
  font-weight: bold;
}

/* line 308, web/app/themes/sage/resources/assets/styles/layout/_detail-content.scss */
.related-articles {
  width: 100%;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header.header {
  position: fixed;
  top: 0;
  z-index: 20;
  width: 100%;
  height: var(--nav-height);
  transition: all 0.24s ease-in-out;
}

/* line 9, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open header.header {
  height: 100%;
}

/* line 14, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open header.header.scrolled {
  height: 100%;
}

/* line 20, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.cta-navigation,
.util-navigation,
.main-navigation {
  pointer-events: none;
}

@media (min-width: 1024px) {
  /* line 20, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  .cta-navigation,
  .util-navigation,
  .main-navigation {
    pointer-events: auto;
  }
}

/* line 29, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open .cta-navigation, .navigation-open
.util-navigation, .navigation-open
.main-navigation {
  pointer-events: auto;
}

/* line 34, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-background {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(16px) opacity(1);
  opacity: 0;
  transition: all 0.24s ease-in-out;
  pointer-events: none;
}

/* line 47, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open .navigation-background {
  opacity: 1;
}

/* line 52, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.main-header {
  position: absolute;
  top: 0;
  left: 0;
  max-height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-family: "Teko", sans-serif;
  transition: all 0.24s ease-in-out;
  padding-bottom: 5rem;
}

@media (min-width: 1280px) {
  /* line 52, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  .main-header {
    padding-bottom: 2rem;
  }
}

/* line 72, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.main-header:after {
  content: "";
  pointer-events: none;
  position: absolute;
  opacity: 0.72;
  z-index: -1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.55) 42%, rgba(0, 0, 0, 0.96) 100%);
  transition: all 0.24s ease-in-out;
}

/* line 85, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .main-header:after {
  display: none;
}

@media (min-width: 1024px) {
  /* line 72, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  .main-header:after {
    opacity: 0.85;
    height: 135%;
  }
}

/* line 94, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open .main-header:after {
  display: none;
}

/* line 99, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.main-header:before {
  content: "";
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
  z-index: -1;
  transition: all 0.24s ease-in-out;
}

/* line 116, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled ul.util-links a,
.inverted .scrolled ul.social-links a {
  border-color: white;
}

/* line 120, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled ul.util-links a i,
.inverted .scrolled ul.social-links a i {
  color: white;
}

/* line 125, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled .main-navigation-ul .menu-item a {
  color: white;
}

/* line 128, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled .main-navigation-ul .menu-item a:after {
  content: "";
  width: 0%;
  position: absolute;
  bottom: 0;
  height: 1px;
  background-color: white;
}

/* line 138, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled .main-navigation-ul .menu-item a:hover:after {
  width: 100%;
}

/* line 144, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted .scrolled .burger div {
  background: white;
}

/* line 150, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.scrolled .main-header {
  padding-top: 0;
  padding-bottom: 0;
}

/* line 154, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.scrolled .main-header:after {
  opacity: 0;
  transition-delay: 0.1s;
}

/* line 158, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open .scrolled .main-header:after {
  opacity: 0;
}

/* line 163, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.scrolled .main-header:before {
  opacity: 1;
  backdrop-filter: blur(20px) opacity(1);
  box-shadow: 10px 10px 42px 0px rgba(0, 0, 0, 0.5);
}

/* line 168, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open .scrolled .main-header:before {
  opacity: 0;
}

/* line 178, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation {
  margin: 0 auto;
  width: 100%;
  order: 7;
  display: flex;
  align-items: center;
}

@media (min-width: 1024px) {
  /* line 178, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  header .main-navigation {
    order: 0;
    width: auto;
  }
}

/* line 192, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul {
  flex-wrap: wrap;
  flex-direction: column;
  width: 100%;
  display: none;
}

@media (min-width: 1024px) {
  /* line 192, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  header .main-navigation-ul {
    opacity: 1;
    flex-direction: row;
    position: relative;
    width: auto;
    display: flex;
  }
}

/* line 206, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.navigation-open header .main-navigation-ul {
  display: flex;
}

/* line 210, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .menu-item {
  padding: 0.5em 1em;
}

@media (min-width: 1024px) {
  /* line 210, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  header .main-navigation-ul .menu-item {
    padding: 0 1em;
  }
}

@media (min-width: 1920px) {
  /* line 210, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  header .main-navigation-ul .menu-item {
    padding: 0 1.6em;
  }
}

/* line 224, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .menu-item a {
  position: relative;
  font-size: 1.6em;
  font-weight: 400;
  text-decoration: none;
  color: white;
  opacity: 0.9;
  transition: all 0.24s ease-in-out;
}

@media (min-width: 1024px) {
  /* line 224, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
  header .main-navigation-ul .menu-item a {
    font-size: 1.25em;
  }
}

/* line 237, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .menu-item a:after {
  content: "";
  width: 0;
  position: absolute;
  left: 50%;
  bottom: -0.06em;
  height: 1px;
  background-color: white;
  transition: all 0.24s ease-in-out;
  transform: translateX(-50%);
}

/* line 248, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted header .main-navigation-ul .menu-item a:after {
  background-color: black;
}

/* line 253, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .menu-item a:hover, header .main-navigation-ul .menu-item a:active, header .main-navigation-ul .menu-item a:focus {
  opacity: 1;
}

/* line 259, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .menu-item a:hover:after, header .main-navigation-ul .menu-item a:active:after, header .main-navigation-ul .menu-item a:focus:after {
  width: 100%;
}

/* line 265, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted header .main-navigation-ul .menu-item a {
  color: black;
}

/* line 275, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .current-menu-item a {
  color: #FFED00;
}

/* line 278, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
header .main-navigation-ul .current-menu-item a:after {
  background: #FFED00;
}

/* line 286, web/app/themes/sage/resources/assets/styles/layout/_header.scss */
.inverted header .main-navigation-ul .current-menu-item a:after {
  background: black;
  width: 100%;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo-navigation {
  padding: var(--container-gap) 0;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  order: 6;
  display: none;
}

/* line 10, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.navigation-open .logo-navigation {
  display: flex;
}

@media (min-width: 1280px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
  .logo-navigation {
    padding: var(--gap) 0 0 0;
  }
}

@media (min-width: 1280px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
  .logo-navigation {
    width: auto;
    order: 0;
    opacity: 1;
    display: flex;
    padding: 0;
  }
}

/* line 27, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo {
  height: calc(var(--nav-height) / 3.4);
  display: flex;
  align-items: center;
  transition: all 0.24s ease-in-out;
}

/* line 33, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo .logo-svg {
  height: 100%;
  transition: all 0.24s ease-in-out;
  padding: 0;
}

/* line 38, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.scrolled .logo .logo-svg {
  padding: 1.2em 0;
}

/* line 43, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo .main-letters {
  fill: #F80000;
}

/* line 47, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo .side-letters {
  fill: white;
}

/* line 52, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.inverted .logo .side-letters {
  fill: black;
}

/* line 57, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.scrolled .logo {
  height: var(--nav-height);
}

/* line 60, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.scrolled .logo .side-letters {
  fill: white;
}

/* line 66, web/app/themes/sage/resources/assets/styles/layout/_header-logo.scss */
.logo-white {
  display: none;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
ul.social-links {
  list-style: none;
  display: flex;
  align-items: center;
}

@media (min-width: 1280px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
  ul.social-links {
    padding: 0 0 0 2.5em;
    opacity: 1;
  }
}

@media (min-width: 1920px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
  ul.social-links {
    padding: 0 0 0 2.5em;
  }
}

/* line 15, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
ul.social-links li {
  padding-right: 1.2em;
}

/* line 20, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
ul.social-links a {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
ul.social-links a:hover, ul.social-links a:active, ul.social-links a:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.social-links a {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.social-links a:hover {
  border: solid 1px black;
}

/* line 23, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
ul.social-links a i {
  color: white;
  font-size: 0.95em;
}

/* line 27, web/app/themes/sage/resources/assets/styles/layout/_header-social.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.social-links a i {
  color: black;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.util-navigation {
  display: none;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  order: 8;
  padding: var(--container-gap) 0;
}

/* line 9, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.navigation-open .util-navigation {
  display: flex;
}

@media (min-width: 1280px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  .util-navigation {
    padding: var(--gap) 0 0 0;
  }
}

@media (min-width: 1024px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  .util-navigation {
    width: auto;
    display: flex;
    order: 0;
    padding: 0;
  }
}

/* line 25, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.util-links {
  padding: 0 0 0 2em;
  opacity: 0;
}

/* line 29, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.navigation-open .util-links {
  opacity: 1;
}

@media (min-width: 1024px) {
  /* line 25, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  .util-links {
    top: auto;
    left: auto;
    opacity: 1;
    position: relative;
  }
}

@media (min-width: 1920px) {
  /* line 25, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  .util-links {
    padding: 0 0 0 2.5em;
  }
}

/* line 45, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
ul.util-links {
  list-style: none;
  padding: 0 2em 0 0;
  display: flex;
  align-items: center;
}

@media (min-width: 1920px) {
  /* line 45, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  ul.util-links {
    padding: 0 2.5em 0 0;
  }
}

/* line 55, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
ul.util-links li {
  padding: 0 1.2em 0 0;
}

@media (min-width: 1440px) {
  /* line 55, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  ul.util-links li {
    padding: 0 0 0 1.2em;
  }
}

/* line 64, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
ul.util-links a {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
ul.util-links a:hover, ul.util-links a:active, ul.util-links a:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.util-links a {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.util-links a:hover {
  border: solid 1px black;
}

/* line 67, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
ul.util-links a i {
  color: white;
  font-size: 0.95em;
}

/* line 71, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.util-links a i {
  color: black;
}

/* line 77, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.util-links .search-form,
.search-no-results .search-form {
  z-index: 3;
  font-size: 1.25em;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  flex-direction: row;
  position: absolute;
  left: 0;
  transform: translateY(1.85em) translateX(200%);
  transition: all 0.24s ease-in-out;
  opacity: 0;
}

/* line 91, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.util-links .search-form .search-field,
.search-no-results .search-form .search-field {
  margin: 0;
  border: 0;
  border-radius: 5px;
  box-shadow: 5px 5px 50px 7px rgba(0, 0, 0, 0.2);
}

/* line 98, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.util-links .search-form .search-submit,
.search-no-results .search-form .search-submit {
  position: relative;
  font-weight: 600;
  color: #ffffff;
  font-size: 0.9em;
  text-transform: uppercase;
  text-decoration: none;
  background: #F80000;
  border-radius: 2em;
  padding: 0.7em 2em 0.6em;
  display: inline-flex;
  align-items: center;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  font-family: "Teko", sans-serif;
  overflow: hidden;
  transition: all 0.24s ease-in-out;
  margin: 0;
  border: none;
  background: white;
  color: black;
  justify-content: center;
  font-size: 0.85em;
}

/* line 19, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.util-links .search-form .search-submit:hover, .util-links .search-form .search-submit:active, .util-links .search-form .search-submit:focus,
.search-no-results .search-form .search-submit:hover,
.search-no-results .search-form .search-submit:active,
.search-no-results .search-form .search-submit:focus {
  transform: scale(1.08);
  box-shadow: 4px 4px 42px 0px rgba(0, 0, 0, 0.29);
}

/* line 109, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.search-open .util-links .search-form {
  transform: translateY(1.8em) translateX(2rem);
  opacity: 1;
}

/* line 114, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.search-no-results .wrap,
.search-results .wrap {
  padding-top: var(--pages-top-gap);
  padding-bottom: var(--pages-top-gap);
  padding-left: 2rem;
  padding-right: 2rem;
  max-width: 50em;
  width: 100%;
  margin: 0 auto;
  flex-direction: column;
}

/* line 125, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.search-no-results .wrap header,
.search-results .wrap header {
  position: relative;
  height: auto;
}

/* line 130, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.search-no-results .wrap article,
.search-results .wrap article {
  margin-top: 3em;
}

/* line 134, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
.search-no-results .wrap .entry-title,
.search-results .wrap .entry-title {
  font-size: 2.4em;
  line-height: 1.1em;
}

@media (min-width: 768px) {
  /* line 114, web/app/themes/sage/resources/assets/styles/layout/_header-util.scss */
  .search-no-results .wrap,
  .search-results .wrap {
    max-width: 60em;
  }
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-cta.scss */
.cta-navigation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-left: auto;
  margin-top: var(--gap);
  opacity: 0;
  order: 3;
}

@media (min-width: 480px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-cta.scss */
  .cta-navigation {
    opacity: 1;
    order: 0;
    margin-top: 0;
  }
}

/* line 16, web/app/themes/sage/resources/assets/styles/layout/_header-cta.scss */
.navigation-open .cta-navigation {
  opacity: 1;
}

@media (min-width: 1024px) {
  /* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-cta.scss */
  .cta-navigation {
    margin-left: 0;
  }
}

/* line 24, web/app/themes/sage/resources/assets/styles/layout/_header-cta.scss */
.cta-navigation .cta-button a {
  position: relative;
  font-weight: 600;
  color: #ffffff;
  font-size: 0.9em;
  text-transform: uppercase;
  text-decoration: none;
  background: #F80000;
  border-radius: 2em;
  padding: 0.7em 2em 0.6em;
  display: inline-flex;
  align-items: center;
  box-shadow: 2px 2px 65px 0px rgba(0, 0, 0, 0.2);
  font-family: "Teko", sans-serif;
  overflow: hidden;
  transition: all 0.24s ease-in-out;
  margin-left: auto;
}

/* line 19, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
.cta-navigation .cta-button a:hover, .cta-navigation .cta-button a:active, .cta-navigation .cta-button a:focus {
  transform: scale(1.08);
  box-shadow: 4px 4px 42px 0px rgba(0, 0, 0, 0.29);
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation {
  width: 100%;
  overflow-y: auto;
  scrollbar-color: light;
  -ms-overflow-style: none;
  scrollbar-width: none;
  /* Firefox */
  display: flex;
  flex-wrap: wrap;
  margin-top: 2rem;
  transition: all 0.24s ease-in-out;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  -webkit-mask-image: linear-gradient(to right, black 95%, transparent 100%);
  mask-image: linear-gradient(to right, black 95%, transparent 100%);
}

/* line 17, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .topic-navigation {
  border-color: rgba(0, 0, 0, 0.3);
}

/* line 21, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.navigation-open .topic-navigation,
.navigation-open .scrolled .topic-navigation {
  opacity: 1;
}

/* line 26, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.scrolled .topic-navigation {
  opacity: 0;
  z-index: -10;
}

/* line 32, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation::-webkit-scrollbar {
  display: none;
}

/* line 36, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.menu-topic-navigation-container {
  scrollbar-color: light;
  width: 100%;
  opacity: 1;
  transition: all 0.24s ease-in-out;
}

/* line 43, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul {
  display: flex;
}

/* line 46, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li {
  color: white;
}

/* line 51, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  position: relative;
  display: inline-flex;
  padding: 0.9em 1.5em;
  white-space: nowrap;
  text-decoration: none;
  transition: all 0.24s ease-in-out;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.topic-navigation-ul li a .inverted {
  color: black;
}

/* line 60, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a:hover, .topic-navigation-ul li a:active, .topic-navigation-ul li a:focus {
  opacity: 1;
}

/* line 66, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a:hover:after, .topic-navigation-ul li a:focus:after, .topic-navigation-ul li a:active:after, .topic-navigation-ul li a:hover:before, .topic-navigation-ul li a:focus:before, .topic-navigation-ul li a:active:before {
  opacity: 1;
}

/* line 75, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a:after, .topic-navigation-ul li a:before {
  content: "";
  position: absolute;
  left: 50%;
  width: 100%;
  height: 1px;
  opacity: 0;
  transition: all 0.24s ease-in-out;
  transform: translateX(-50%);
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 0%, white 50%, rgba(255, 255, 255, 0.1) 100%);
}

/* line 94, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a:before {
  top: 0;
}

/* line 98, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.topic-navigation-ul li a:after {
  bottom: 0;
}

/* line 102, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .topic-navigation-ul li a {
  color: black;
}

/* line 108, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  font-size: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1em;
  color: white;
}

/* line 120, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .nav-scroll-container {
  color: black;
}

/* line 124, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container span {
  text-decoration: underline;
  font-size: 1.5em;
}

/* line 129, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .next-arrow {
  position: relative;
  color: white;
  font-family: "Teko", sans-serif;
  display: flex;
  align-items: center;
  text-decoration: underline;
  border-color: white;
}

/* line 138, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .next-arrow:after {
  content: "";
  height: 2px;
  background-color: white;
  width: 2.5em;
  margin-left: 1em;
}

/* line 145, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .nav-scroll-container .next-arrow:after {
  background: black;
}

/* line 150, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .next-arrow:before {
  content: "";
  height: 8px;
  width: 8px;
  border-color: inherit;
  border-top: solid 2px;
  border-right: solid 2px;
  position: absolute;
  right: 0;
  transform: rotate(45deg);
}

/* line 161, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .nav-scroll-container .next-arrow:before {
  border-color: black;
}

/* line 167, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .prev-arrow {
  position: relative;
  color: white;
  font-family: "Teko", sans-serif;
  display: flex;
  align-items: center;
  text-decoration: underline;
  border-color: white;
}

/* line 176, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .prev-arrow::before {
  content: "";
  height: 2px;
  background-color: white;
  width: 2.5em;
  margin-right: 1em;
}

/* line 183, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .nav-scroll-container .prev-arrow::before {
  background: black;
}

/* line 188, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.nav-scroll-container .prev-arrow:after {
  content: "";
  height: 8px;
  width: 8px;
  border-color: inherit;
  border-bottom: solid 2px;
  border-left: solid 2px;
  position: absolute;
  left: 0;
  transform: rotate(45deg);
}

/* line 199, web/app/themes/sage/resources/assets/styles/layout/_header-topic.scss */
.inverted .nav-scroll-container .prev-arrow:after {
  border-color: black;
}

/* line 1, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer {
  background: rgba(0, 0, 0, 0.9);
  overflow: hidden;
}

/* line 5, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .logo {
  height: calc(var(--nav-height) / 3);
  margin-bottom: 1em;
}

/* line 9, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .logo .side-letters,
.inverted footer .logo .side-letters {
  fill: white;
}

/* line 15, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .footer-bg {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  opacity: 0.03;
}

/* line 25, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .back-top {
  position: relative;
  font-family: "Teko", sans-serif;
  color: rgba(250, 250, 250, 0.8);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  order: 2;
  margin: 2rem auto 0;
}

@media (min-width: 768px) {
  /* line 25, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  footer .back-top {
    order: 0;
  }
}

/* line 40, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .back-top:before {
  content: "";
  width: 2px;
  height: 3em;
  background-color: white;
  margin-bottom: 1em;
}

/* line 48, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .back-top:after {
  content: "";
  height: 6px;
  width: 6px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
}

/* line 62, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .logo .main-letters {
  fill: rgba(255, 255, 255, 0.6);
}

/* line 66, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
footer .logo .side-letters {
  fill: rgba(255, 255, 255, 0.3);
}

/* line 71, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.main-footer {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 5em;
  padding-bottom: 5em;
}

/* line 81, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-contact {
  display: flex;
  flex-direction: column;
  margin-right: 2em;
}

/* line 87, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-contact-navigation {
  width: 100%;
}

@media (min-width: 768px) {
  /* line 87, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-contact-navigation {
    width: auto;
  }
}

/* line 94, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-contact-navigation li {
  padding: 0.3em 0;
}

/* line 98, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-contact-navigation li a {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  text-decoration: none;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.footer-contact-navigation li a .inverted {
  color: black;
}

@media (min-width: 1280px) {
  /* line 98, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-contact-navigation li a {
    font-family: "Ubuntu", sans-serif;
    font-size: 1em;
    color: white;
    opacity: 0.8;
  }
  /* line 25, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
  .inverted .footer-contact-navigation li a {
    color: black;
  }
}

/* line 108, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-side-navigations {
  display: flex;
  flex-wrap: wrap;
  margin-top: 3em;
}

@media (min-width: 768px) {
  /* line 108, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-side-navigations {
    margin-top: 0;
  }
}

/* line 117, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-side-navigations ul {
  margin-right: 5em;
}

@media (min-width: 768px) {
  /* line 117, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-side-navigations ul {
    margin-right: 0;
    margin-left: 5em;
  }
}

/* line 126, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-side-navigations li {
  padding: 0.3em 0;
}

/* line 130, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-side-navigations ul li a {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.87em;
  color: white;
  opacity: 0.8;
  text-decoration: none;
  color: white;
}

/* line 14, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
.footer-side-navigations ul li a .inverted {
  color: black;
}

/* line 135, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.inverted .footer-side-navigations ul li a {
  color: white;
}

@media (min-width: 1280px) {
  /* line 130, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-side-navigations ul li a {
    font-family: "Ubuntu", sans-serif;
    font-size: 1em;
    color: white;
    opacity: 0.8;
  }
  /* line 25, web/app/themes/sage/resources/assets/styles/base/_typography.scss */
  .inverted .footer-side-navigations ul li a {
    color: black;
  }
  /* line 142, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .inverted .footer-side-navigations ul li a {
    color: white;
  }
}

/* line 149, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-copy {
  color: rgba(255, 255, 255, 0.8);
  font-family: "Teko", sans-serif;
  font-size: 1.3em;
}

/* line 155, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-bar {
  background-color: black;
  padding-top: 1em;
  padding-bottom: 1em;
}

/* line 161, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-bar-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* line 167, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer .util-navigation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  order: 8;
}

@media (min-width: 1024px) {
  /* line 167, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer .util-navigation {
    width: auto;
  }
}

@media (min-width: 1440px) {
  /* line 167, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer .util-navigation {
    order: 0;
  }
}

/* line 183, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.footer-social-navigation {
  padding: 0 0 0 2em;
  opacity: 0;
}

/* line 187, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
.navigation-open .footer-social-navigation {
  opacity: 1;
}

@media (min-width: 1440px) {
  /* line 183, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-social-navigation {
    top: auto;
    left: auto;
    opacity: 1;
    position: relative;
  }
}

@media (min-width: 1920px) {
  /* line 183, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
  .footer-social-navigation {
    padding: 0 0 0 2.5em;
  }
}

/* line 203, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
ul.footer-social-links {
  list-style: none;
  display: flex;
  align-items: center;
}

/* line 208, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
ul.footer-social-links li {
  padding-left: 1.2em;
}

/* line 213, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
ul.footer-social-links a {
  width: var(--ui-height);
  height: var(--ui-height);
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transition: all 0.5s;
}

/* line 37, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
ul.footer-social-links a:hover, ul.footer-social-links a:active, ul.footer-social-links a:focus {
  border: solid 1px white;
  background-color: rgba(0, 0, 0, 0.3);
}

/* line 44, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.footer-social-links a {
  border: solid 1px rgba(0, 0, 0, 0.3);
  transition: all 0.5s;
}

/* line 48, web/app/themes/sage/resources/assets/styles/components/_buttons.scss */
html:not(.navigation-open) .inverted:not(.scrolled) ul.footer-social-links a:hover {
  border: solid 1px black;
}

/* line 216, web/app/themes/sage/resources/assets/styles/layout/_footer.scss */
ul.footer-social-links a i {
  color: white;
}

/* Variables */
/* line 4, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
:root {
  /* Font Family */
  --global--font-primary: var(--font-headings, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  --global--font-secondary: var(--font-base, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif);
  /* Font Size */
  --global--font-size-base: 1.25rem;
  --global--font-size-xs: 1rem;
  --global--font-size-sm: 1.125rem;
  --global--font-size-md: 1.25rem;
  --global--font-size-lg: 1.5rem;
  --global--font-size-xl: 2.25rem;
  --global--font-size-xxl: 4rem;
  --global--font-size-xxxl: 5rem;
  --global--font-size-page-title: var(--global--font-size-xxl);
  --global--letter-spacing: normal;
  /* Line Height */
  --global--line-height-body: 1.7;
  --global--line-height-heading: 1.3;
  --global--line-height-page-title: 1.1;
  /* Headings */
  --heading--font-family: var(--global--font-primary);
  --heading--font-size-h6: var(--global--font-size-xs);
  --heading--font-size-h5: var(--global--font-size-sm);
  --heading--font-size-h4: var(--global--font-size-lg);
  --heading--font-size-h3: calc(1.25 * var(--global--font-size-lg));
  --heading--font-size-h2: var(--global--font-size-xl);
  --heading--font-size-h1: var(--global--font-size-page-title);
  --heading--letter-spacing-h6: 0.05em;
  --heading--letter-spacing-h5: 0.05em;
  --heading--letter-spacing-h4: var(--global--letter-spacing);
  --heading--letter-spacing-h3: var(--global--letter-spacing);
  --heading--letter-spacing-h2: var(--global--letter-spacing);
  --heading--letter-spacing-h1: var(--global--letter-spacing);
  --heading--line-height-h6: var(--global--line-height-heading);
  --heading--line-height-h5: var(--global--line-height-heading);
  --heading--line-height-h4: var(--global--line-height-heading);
  --heading--line-height-h3: var(--global--line-height-heading);
  --heading--line-height-h2: var(--global--line-height-heading);
  --heading--line-height-h1: var(--global--line-height-page-title);
  --heading--font-weight: normal;
  --heading--font-weight-page-title: 300;
  --heading--font-weight-strong: 600;
  /* Block: Latest posts */
  --latest-posts--title-font-family: var(--heading--font-family);
  --latest-posts--title-font-size: var(--heading--font-size-h3);
  --latest-posts--description-font-family: var(--global--font-secondary);
  --latest-posts--description-font-size: var(--global--font-size-sm);
  --list--font-family: var(--global--font-secondary);
  --definition-term--font-family: var(--global--font-primary);
  /* Colors */
  --global--color-black: #000000;
  --global--color-dark-gray: #28303d;
  --global--color-gray: #39414d;
  --global--color-light-gray: #f0f0f0;
  --global--color-green: #d1e4dd;
  --global--color-blue: #d1dfe4;
  --global--color-purple: #d1d1e4;
  --global--color-red: #e4d1d1;
  --global--color-orange: #e4dad1;
  --global--color-yellow: #eeeadd;
  --global--color-white: #ffffff;
  --global--color-white-50: rgba(255, 255, 255, 0.5);
  --global--color-white-90: rgba(255, 255, 255, 0.9);
  --global--color-primary: var(--global--color-dark-gray);
  /* Body text color, site title, footer text color. */
  --global--color-secondary: var(--global--color-gray);
  /* Headings */
  --global--color-primary-hover: var(--global--color-primary);
  --global--color-background: var(--global--color-green);
  /* Mint, default body background */
  --global--color-border: var(--global--color-primary);
  /* Used for borders (separators) */
  /* Spacing */
  --global--spacing-unit: 20px;
  --global--spacing-measure: unset;
  --global--spacing-horizontal: 25px;
  --global--spacing-vertical: 30px;
  /* Elevation */
  --global--elevation: 1px 1px 3px 0 rgba(0, 0, 0, 0.2);
  /* Forms */
  --form--font-family: var(--global--font-secondary);
  --form--font-size: var(--global--font-size-sm);
  --form--line-height: var(--global--line-height-body);
  --form--color-text: var(--global--color-dark-gray);
  --form--color-ranged: var(--global--color-secondary);
  --form--label-weight: 500;
  --form--border-color: var(--global--color-secondary);
  --form--border-width: 3px;
  --form--border-radius: 0;
  --form--spacing-unit: calc(0.5 * var(--global--spacing-unit));
  /* Cover block */
  --cover--height: calc(15 * var(--global--spacing-vertical));
  --cover--color-foreground: var(--global--color-white);
  --cover--color-background: var(--global--color-black);
  /* Buttons */
  --button--color-text: var(--global--color-background);
  --button--color-text-hover: var(--global--color-secondary);
  --button--color-text-active: var(--global--color-secondary);
  --button--color-background: var(--global--color-secondary);
  --button--color-background-active: var(--global--color-background);
  --button--font-family: var(--global--font-primary);
  --button--font-size: var(--global--font-size-base);
  --button--font-weight: 500;
  --button--line-height: 1.5;
  --button--border-width: 3px;
  --button--border-radius: 0;
  --button--padding-vertical: 15px;
  --button--padding-horizontal: calc(2 * var(--button--padding-vertical));
  /* entry */
  --entry-header--color: var(--global--color-primary);
  --entry-header--color-link: currentColor;
  --entry-header--color-hover: var(--global--color-primary-hover);
  --entry-header--color-focus: var(--global--color-secondary);
  --entry-header--font-size: var(--heading--font-size-h2);
  --entry-content--font-family: var(--global--font-secondary);
  --entry-author-bio--font-family: var(--heading--font-family);
  --entry-author-bio--font-size: var(--heading--font-size-h4);
  /* Header */
  --branding--color-text: var(--global--color-primary);
  --branding--color-link: var(--global--color-primary);
  --branding--color-link-hover: var(--global--color-secondary);
  --branding--title--font-family: var(--global--font-primary);
  --branding--title--font-size: var(--global--font-size-lg);
  --branding--title--font-size-mobile: var(--heading--font-size-h4);
  --branding--title--font-weight: normal;
  --branding--title--text-transform: uppercase;
  --branding--description--font-family: var(--global--font-secondary);
  --branding--description--font-size: var(--global--font-size-sm);
  --branding--description--font-family: var(--global--font-secondary);
  --branding--logo--max-width: 300px;
  --branding--logo--max-height: 100px;
  --branding--logo--max-width-mobile: 96px;
  --branding--logo--max-height-mobile: 96px;
  /* Main navigation */
  --primary-nav--font-family: var(--global--font-secondary);
  --primary-nav--font-family-mobile: var(--global--font-primary);
  --primary-nav--font-size: var(--global--font-size-md);
  --primary-nav--font-size-sub-menu: var(--global--font-size-xs);
  --primary-nav--font-size-mobile: var(--global--font-size-sm);
  --primary-nav--font-size-sub-menu-mobile: var(--global--font-size-sm);
  --primary-nav--font-size-button: var(--global--font-size-xs);
  --primary-nav--font-style: normal;
  --primary-nav--font-style-sub-menu-mobile: normal;
  --primary-nav--font-weight: normal;
  --primary-nav--font-weight-button: 500;
  --primary-nav--color-link: var(--global--color-primary);
  --primary-nav--color-link-hover: var(--global--color-primary-hover);
  --primary-nav--color-text: var(--global--color-primary);
  --primary-nav--padding: calc(0.66 * var(--global--spacing-unit));
  --primary-nav--border-color: var(--global--color-primary);
  /* Pagination */
  --pagination--color-text: var(--global--color-primary);
  --pagination--color-link-hover: var(--global--color-primary-hover);
  --pagination--font-family: var(--global--font-secondary);
  --pagination--font-size: var(--global--font-size-lg);
  --pagination--font-weight: normal;
  --pagination--font-weight-strong: 600;
  /* Footer */
  --footer--color-text: var(--global--color-primary);
  --footer--color-link: var(--global--color-primary);
  --footer--color-link-hover: var(--global--color-primary-hover);
  --footer--font-family: var(--global--font-primary);
  --footer--font-size: var(--global--font-size-sm);
  /* Block: Pull quote */
  --pullquote--font-family: var(--global--font-primary);
  --pullquote--font-size: var(--heading--font-size-h3);
  --pullquote--font-style: normal;
  --pullquote--letter-spacing: var(--heading--letter-spacing-h4);
  --pullquote--line-height: var(--global--line-height-heading);
  --pullquote--border-width: 3px;
  --pullquote--border-color: var(--global--color-primary);
  --pullquote--color-foreground: var(--global--color-primary);
  --pullquote--color-background: var(--global--color-background);
  --quote--font-family: var(--global--font-secondary);
  --quote--font-size: var(--global--font-size-md);
  --quote--font-size-large: var(--global--font-size-xl);
  --quote--font-style: normal;
  --quote--font-weight: 700;
  --quote--font-weight-strong: bolder;
  --quote--font-style-large: normal;
  --quote--font-style-cite: normal;
  --quote--line-height: var(--global--line-height-body);
  --quote--line-height-large: 1.35;
  --separator--border-color: var(--global--color-border);
  --separator--height: 1px;
  /* Block: Table */
  --table--stripes-border-color: var(--global--color-light-gray);
  --table--stripes-background-color: var(--global--color-light-gray);
  --table--has-background-text-color: var(--global--color-dark-gray);
  /* Widgets */
  --widget--line-height-list: 1.9;
  --widget--line-height-title: 1.4;
  --widget--font-weight-title: 700;
  --widget--spacing-menu: calc(0.66 * var(--global--spacing-unit));
  /* Admin-bar height */
  --global--admin-bar--height: 0;
}

/* line 225, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.admin-bar {
  --global--admin-bar--height: 32px;
}

@media only screen and (max-width: 782px) {
  /* line 230, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .admin-bar {
    --global--admin-bar--height: 46px;
  }
}

@media only screen and (min-width: 652px) {
  /* line 236, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  :root {
    --global--font-size-xl: 2.5rem;
    --global--font-size-xxl: 6rem;
    --global--font-size-xxxl: 9rem;
    --heading--font-size-h3: 2rem;
    --heading--font-size-h2: 3rem;
  }
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
/* line 254, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
html {
  /* 1 */
  text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
/* line 269, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
/* line 276, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/* line 284, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h1 {
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
/* line 296, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
/* line 312, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
pre {
  /* 1 */
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
/* line 336, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
abbr[title] {
  /* 1 */
  /* 2 */
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
/* line 360, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
code,
kbd,
samp {
  /* 1 */
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
/* line 382, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
sub,
sup {
  position: relative;
  vertical-align: baseline;
}

/* line 390, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
sub {
  bottom: -0.25em;
}

/* line 394, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
/* line 415, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button,
input,
optgroup,
select,
textarea {
  /* 1 */
  /* 1 */
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
/* line 438, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
/* line 448, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button,
select {
  /* 1 */
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
/* line 457, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button,
[type=button],
[type=reset],
[type=submit] {
  appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
/* line 467, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
/* line 478, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
/* line 488, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
/* line 498, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
legend {
  box-sizing: border-box;
  /* 1 */
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
/* line 522, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
/* line 529, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
/* line 537, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
/* line 550, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
/* line 559, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[type=search] {
  appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
/* line 571, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[type=search]::-webkit-search-decoration {
  appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
/* line 579, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
::-webkit-file-upload-button {
  appearance: button;
  /* 1 */
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
/* line 594, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
/* line 601, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
/* line 611, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
/* line 618, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[hidden] {
  display: none;
}

/**
 * Responsive Styles
 */
/**
 * Required Variables
 */
/**
 * Root Media Query Variables
 */
/* line 633, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
:root {
  --responsive--spacing-horizontal: calc(2 * var(--global--spacing-horizontal) * 0.6);
  --responsive--aligndefault-width: calc(100vw - var(--responsive--spacing-horizontal));
  --responsive--alignwide-width: calc(100vw - var(--responsive--spacing-horizontal));
  --responsive--alignfull-width: 100%;
  --responsive--alignright-margin: var(--global--spacing-horizontal);
  --responsive--alignleft-margin: var(--global--spacing-horizontal);
}

@media only screen and (min-width: 482px) {
  /* line 643, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  :root {
    --responsive--aligndefault-width: min(calc(100vw - 4 * var(--global--spacing-horizontal)), 610px);
    --responsive--alignwide-width: calc(100vw - 4 * var(--global--spacing-horizontal));
    --responsive--alignright-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));
    --responsive--alignleft-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));
  }
}

@media only screen and (min-width: 822px) {
  /* line 652, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  :root {
    --responsive--aligndefault-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 610px);
    --responsive--alignwide-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 1240px);
  }
}

/**
 * Extends
 */
/* line 671, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area,
.pagination,
.comments-pagination,
.post-navigation,
.site-footer,
.site-header,
.alignwide,
.wide-max-width {
  max-width: var(--responsive--alignwide-width);
  margin-left: auto;
  margin-right: auto;
}

/* line 684, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignfull,
.wp-block-group .wp-block-group__inner-container > *.alignfull,
.full-max-width {
  max-width: var(--responsive--alignfull-width);
  width: var(--responsive--alignfull-width);
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (min-width: 482px) {
  /* line 694, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .alignfull,
  .full-max-width {
    max-width: var(--responsive--alignfull-width);
    width: auto;
    margin-left: auto;
    margin-right: auto;
  }
}

/* line 703, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-header .post-thumbnail,
.singular .post-thumbnail,
.alignfull [class*=inner-container] > .alignwide,
.alignwide [class*=inner-container] > .alignwide {
  margin-left: auto;
  margin-right: auto;
  width: var(--responsive--alignwide-width);
  max-width: var(--responsive--alignfull-width);
}

@media only screen and (min-width: 482px) {
  /* line 714, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .alignleft {
    /* rtl:ignore */
    margin-left: var(--responsive--alignleft-margin);
    /* rtl:ignore */
    margin-right: var(--global--spacing-horizontal);
  }
}

@media only screen and (min-width: 482px) {
  /* line 724, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .alignright {
    /* rtl:ignore */
    margin-left: var(--global--spacing-horizontal);
    /* rtl:ignore */
    margin-right: var(--responsive--alignright-margin);
  }
}

/**
 * Site Structure
 *
 * - Set vertical margins and responsive widths on
 *   top-level wrappers and content wrappers
 * - `--global--width-content` is a responsive variable
 * - See: globals/_global-width-responsive.scss
 */
/**
 * Top Level Wrappers (header, main, footer)
 * - Set vertical padding and horizontal margins
 */
/* line 746, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-header,
.site-main,
.widget-area,
.site-footer {
  padding-top: var(--global--spacing-vertical);
  padding-bottom: var(--global--spacing-vertical);
  margin-left: auto;
  margin-right: auto;
}

/* line 756, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-header {
  padding-top: calc(0.75 * var(--global--spacing-vertical));
  padding-bottom: calc(2 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 762, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header {
    padding-bottom: calc(3 * var(--global--spacing-vertical));
  }
}

/**
 * Site-main children wrappers
 * - Add double vertical margins here for clearer hierarchy
 */
/* line 771, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > * {
  margin-top: calc(3 * var(--global--spacing-vertical));
  margin-bottom: calc(3 * var(--global--spacing-vertical));
}

/* line 776, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > *:first-child {
  margin-top: 0;
}

/* line 780, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > *:last-child {
  margin-bottom: 0;
}

/**
 * Set the default maximum responsive content-width
 */
/**
 * Set the wide maximum responsive content-width
 */
/**
 * Set the full maximum responsive content-width
 */
/*
 * Block & non-gutenberg content wrappers
 * - Set margins
 */
/* line 800, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-header,
.post-thumbnail,
.entry-content,
.entry-footer,
.author-bio {
  margin-top: var(--global--spacing-vertical);
  margin-right: auto;
  margin-bottom: var(--global--spacing-vertical);
  margin-left: auto;
}

/*
 * Block & non-gutenberg content wrapper children
 * - Sets spacing-vertical margin logic
 */
/* line 815, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > article > *,
.site-main > .not-found > *,
.entry-content > *,
[class*=inner-container] > *,
.wp-block-template-part > * {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
  margin-bottom: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 825, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-main > article > *,
  .site-main > .not-found > *,
  .entry-content > *,
  [class*=inner-container] > *,
  .wp-block-template-part > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/* line 835, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > article > *:first-child,
.site-main > .not-found > *:first-child,
.entry-content > *:first-child,
[class*=inner-container] > *:first-child,
.wp-block-template-part > *:first-child {
  margin-top: 0;
}

/* line 843, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > article > *:last-child,
.site-main > .not-found > *:last-child,
.entry-content > *:last-child,
[class*=inner-container] > *:last-child,
.wp-block-template-part > *:last-child {
  margin-bottom: 0;
}

/* line 851, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-footer > *,
.widget-area > * {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
  margin-bottom: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 858, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-footer > *,
  .widget-area > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/*
 * Block & non-gutenberg content wrapper children
 * - Sets spacing-unit margins
 */
/* line 869, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-header > *,
.post-thumbnail > *,
.page-content > *,
.comment-content > *,
.widget > * {
  margin-top: var(--global--spacing-unit);
  margin-bottom: var(--global--spacing-unit);
}

/* line 878, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-header > *:first-child,
.post-thumbnail > *:first-child,
.page-content > *:first-child,
.comment-content > *:first-child,
.widget > *:first-child {
  margin-top: 0;
}

/* line 886, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-header > *:last-child,
.post-thumbnail > *:last-child,
.page-content > *:last-child,
.comment-content > *:last-child,
.widget > *:last-child {
  margin-bottom: 0;
}

/*
 * .entry-content children specific controls
 * - Adds special margin overrides for alignment utility classes
 */
/* line 898, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > * {
  /* Reset alignleft and alignright margins after alignfull */
}

/* line 902, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > *.alignleft,
.entry-content > *.alignright,
.entry-content > *.alignleft:first-child + *,
.entry-content > *.alignright:first-child + *,
.entry-content > *.alignfull.has-background {
  margin-top: 0;
}

/* line 910, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > *:last-child,
.entry-content > *.alignfull.has-background {
  margin-bottom: 0;
}

/* line 915, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > *.alignfull + .alignleft,
.entry-content > *.alignfull + .alignright {
  margin-top: var(--global--spacing-vertical);
}

/**
 * Reset specific elements to make them easier to style in other contexts.
 */
/* line 923, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
form,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

/**
 * Apply generic border-box to all elements.
 * See:
 * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
/* line 958, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
html {
  /* Apply border-box across the entire page. */
  box-sizing: border-box;
}

/**
 * Relax the definition a bit, to allow components to override it manually.
 */
/* line 968, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
*,
*:before,
*:after {
  box-sizing: inherit;
}

/* line 982, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
button {
  cursor: pointer;
}

/* line 986, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: '';
  display: table;
  table-layout: fixed;
}

/* line 1003, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/* Category 04 can contain any default HTML element. Do not add classes here, just give the elements some basic styles. */
/* line 1013, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote {
  padding: 0;
  position: relative;
  margin: var(--global--spacing-vertical) 0 var(--global--spacing-vertical) var(--global--spacing-horizontal);
}

/* line 1019, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote > * {
  margin-top: var(--global--spacing-unit);
  margin-bottom: var(--global--spacing-unit);
}

/* line 1024, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote > *:first-child {
  margin-top: 0;
}

/* line 1028, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote > *:last-child {
  margin-bottom: 0;
}

/* line 1032, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote p {
  letter-spacing: var(--heading--letter-spacing-h4);
}

/* line 1041, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote cite,
blockquote footer {
  letter-spacing: var(--global--letter-spacing);
}

/* line 1049, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote.alignleft,
blockquote.alignright {
  padding-left: inherit;
}

/* line 1054, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote.alignleft p,
blockquote.alignright p {
  max-width: inherit;
  width: inherit;
}

/* line 1061, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote.alignleft cite,
blockquote.alignleft footer,
blockquote.alignright cite,
blockquote.alignright footer {
  letter-spacing: var(--global--letter-spacing);
}

/* line 1073, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
blockquote:before {
  content: '“';
  position: absolute;
  left: calc(-0.5 * var(--global--spacing-horizontal));
}

@media only screen and (max-width: 481px) {
  /* line 1090, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  blockquote {
    padding-left: calc(0.5 * var(--global--spacing-horizontal));
  }
  /* line 1094, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  blockquote:before {
    left: 0;
  }
}

/* line 1099, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
.site textarea {
  padding: var(--form--spacing-unit);
  margin: 0 2px;
  max-width: 100%;
}

/* line 1123, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
.site textarea:focus {
  outline-offset: 2px;
  outline: 2px dotted var(--form--border-color);
}

/* line 1143, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=text]:disabled,
input[type=email]:disabled,
input[type=url]:disabled,
input[type=password]:disabled,
input[type=search]:disabled,
input[type=number]:disabled,
input[type=tel]:disabled,
input[type=date]:disabled,
input[type=month]:disabled,
input[type=week]:disabled,
input[type=time]:disabled,
input[type=datetime]:disabled,
input[type=datetime-local]:disabled,
input[type=color]:disabled,
.site textarea:disabled {
  opacity: 0.7;
}

/* line 1161, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-dark-theme input[type=text],
.is-dark-theme input[type=email],
.is-dark-theme input[type=url],
.is-dark-theme input[type=password],
.is-dark-theme input[type=search],
.is-dark-theme input[type=number],
.is-dark-theme input[type=tel],
.is-dark-theme input[type=date],
.is-dark-theme input[type=month],
.is-dark-theme input[type=week],
.is-dark-theme input[type=time],
.is-dark-theme input[type=datetime],
.is-dark-theme input[type=datetime-local],
.is-dark-theme input[type=color],
.is-dark-theme .site textarea {
  background: var(--global--color-white-90);
}

/* line 1179, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=search]:focus {
  outline-offset: -7px;
}

/* line 1183, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-dark-theme input[type=search]:focus {
  outline-color: var(--global--color-background);
}

/* line 1187, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=color] {
  padding: calc(var(--form--spacing-unit) / 2);
  height: calc(4 * var(--form--spacing-unit));
}

/* line 1192, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=email],
input[type=url] {
  /* rtl:ignore */
  direction: ltr;
}

/* line 1198, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
select {
  appearance: none;
  appearance: none;
  appearance: none;
  padding: var(--form--spacing-unit) calc(3 * var(--form--spacing-unit)) var(--form--spacing-unit) var(--form--spacing-unit);
  background: var(--global--color-white) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%2328303d'><polygon points='0,0 10,0 5,5'/></svg>") no-repeat;
  background-position: right var(--form--spacing-unit) top 60%;
}

/* line 1210, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
select:focus {
  outline-offset: 2px;
  outline: 2px dotted var(--form--border-color);
}

/* line 1215, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-dark-theme select {
  background: var(--global--color-white-90) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%2328303d'><polygon points='0,0 10,0 5,5'/></svg>") no-repeat;
  background-position: right var(--form--spacing-unit) top 60%;
}

/* line 1220, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
textarea {
  width: 100%;
}

/* line 1224, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
label {
  margin-bottom: calc(var(--global--spacing-vertical) / 3);
}

/**
https://css-tricks.com/custom-styling-form-inputs-with-modern-css-features/
https://codepen.io/aaroniker/pen/ZEYoxEY by Aaron Iker.
License: MIT.
*/
@supports (-webkit-appearance: none) or (-moz-appearance: none) {
  /* line 1236, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=checkbox],
  input[type=radio] {
    position: relative;
    width: 25px;
    height: 25px;
    background: var(--global--color-white);
  }
  /* line 1245, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=checkbox]:disabled,
  input[type=radio]:disabled {
    opacity: 0.7;
  }
  /* line 1250, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .is-dark-theme input[type=checkbox],
  .is-dark-theme input[type=radio] {
    background: var(--global--color-white-90);
  }
  /* line 1255, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=checkbox]:focus {
    outline-offset: 2px;
    outline: 2px dotted var(--form--border-color);
  }
  /* line 1260, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=checkbox]:after {
    content: '';
    opacity: 0;
    display: block;
    left: 5px;
    top: 2px;
    position: absolute;
    width: 7px;
    height: 13px;
    transform: rotate(30deg);
  }
  /* line 1279, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=checkbox]:checked:after {
    opacity: 1;
  }
  /* line 1287, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=radio]:focus {
    outline-offset: 2px;
    outline: 2px dotted var(--form--border-color);
  }
  /* line 1292, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=radio]:after {
    content: '';
    opacity: 0;
    display: block;
    left: 3px;
    top: 3px;
    position: absolute;
    width: 11px;
    height: 11px;
    background: var(--form--color-text);
  }
  /* line 1309, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=radio]:checked:after {
    opacity: 1;
  }
  /* line 1313, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=radio]:checked:focus {
    outline-offset: 4px;
    outline: 2px dotted var(--form--border-color);
  }
}

/* line 1319, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=checkbox] + label,
input[type=radio] + label {
  display: inline-block;
  padding-left: 10px;
  vertical-align: top;
}

/**
 * https://css-tricks.com/styling-cross-browser-compatible-range-inputs-css/
*/
@supports (-webkit-appearance: none) or (-moz-appearance: none) {
  /* line 1331, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=range] {
    appearance: none;
    /* Hides the slider so that custom slider can be made */
    width: 100%;
    /* Specific width is required for Firefox. */
    height: 6px;
    background: var(--form--color-ranged);
    outline-offset: 10px;
  }
  /* line 1344, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=range]:disabled {
    opacity: 0.7;
  }
  /* line 1348, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=range]::-webkit-slider-thumb {
    appearance: none;
    height: 44px;
    width: 44px;
    background: var(--global--color-background);
    cursor: pointer;
  }
  /* line 1358, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  input[type=range]::-moz-range-thumb {
    height: 44px;
    width: 44px;
    background: var(--global--color-background);
    cursor: pointer;
    box-sizing: border-box;
  }
}

/* line 1369, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=range]::-ms-track {
  width: 100%;
  height: 6px;
  background: transparent;
  cursor: pointer;
}

/* line 1380, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=range]::-ms-fill-upper {
  background: var(--form--color-ranged);
}

/* line 1385, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=range]::-ms-fill-lower {
  background: var(--form--color-ranged);
}

/* line 1390, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
input[type=range]::-ms-thumb {
  height: 44px;
  width: 44px;
  background: var(--global--color-background);
  cursor: pointer;
}

/* line 1399, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset {
  display: grid;
  padding: var(--global--spacing-horizontal);
}

/* line 1409, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset input[type=submit] {
  max-width: max-content;
}

/* line 1413, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset input:not([type=submit]) {
  margin-bottom: var(--global--spacing-unit);
}

/* line 1417, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset input[type=radio],
fieldset input[type=checkbox] {
  margin-bottom: 0;
}

/* line 1422, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
fieldset input[type=radio] + label,
fieldset input[type=checkbox] + label {
  padding-left: 0;
  margin-bottom: var(--global--spacing-unit);
}

/* line 1429, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
::placeholder {
  opacity: 1;
}

/* line 1437, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-password-form {
  display: flex;
  flex-wrap: wrap;
}

/* line 1442, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-password-form__label {
  width: 100%;
  margin-bottom: 0;
}

/* line 1447, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-password-form input[type=password] {
  flex-grow: 1;
  margin-top: calc(var(--global--spacing-vertical) / 3);
  margin-right: calc(0.66 * var(--global--spacing-horizontal));
}

/* line 1453, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-password-form__submit {
  margin-top: calc(var(--global--spacing-vertical) / 3);
}

@media only screen and (min-width: 592px) {
  /* line 1458, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .post-password-form__submit {
    margin-left: calc(0.4 * var(--global--spacing-horizontal));
  }
}

/* line 1463, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
img {
  display: block;
  height: auto;
  max-width: 100%;
}

/* Classic editor images */
/* line 1470, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content img {
  max-width: 100%;
}

/* Make sure embeds and iframes fit their containers. */
/* line 1475, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
embed,
iframe,
object,
video {
  max-width: 100%;
}

/* Media captions */
/* line 1483, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
figcaption,
.wp-caption,
.wp-caption-text,
.wp-block-embed figcaption {
  margin-top: calc(0.5 * var(--global--spacing-unit));
  margin-bottom: var(--global--spacing-unit);
}

/* line 1495, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignleft figcaption,
.alignright figcaption,
.alignleft .wp-caption,
.alignright .wp-caption,
.alignleft .wp-caption-text,
.alignright .wp-caption-text,
.alignleft .wp-block-embed figcaption,
.alignright .wp-block-embed figcaption {
  margin-bottom: 0;
}

/* WP Smiley */
/* line 1507, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Over here, place any elements that do not need to have their own file. */
/* line 1529, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
pre {
  white-space: pre;
  overflow-x: auto;
}

/*
 * text-underline-offset doesn't work in Chrome at all 👎
 * But looks nice in Safari/Firefox, so let's keep it and
 * maybe Chrome will support it soon.
 */
/* line 1539, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
a {
  cursor: pointer;
}

/* line 1551, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
  /* Only visible in Windows High Contrast mode */
  outline: 2px solid transparent;
  background: rgba(255, 255, 255, 0.9);
}

/* line 1564, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
  background: rgba(0, 0, 0, 0.9);
}

/* line 1573, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site a:focus:not(.wp-block-button__link):not(.wp-block-file__button).skip-link {
  /* Only visible in Windows High Contrast mode */
  outline: 2px solid transparent;
  outline-offset: -2px;
}

/* line 1584, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) img {
  outline: 2px dotted var(--wp--style--color--link, var(--global--color-primary));
}

/* Category 05 is all about adjusting the default block styles to the given layout. I only added three blocks as examples. */
/* line 1594, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-audio audio:focus {
  outline-offset: 5px;
  outline: 2px solid var(--global--color-primary);
}

/**
 * Button
 */
/* line 1602, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site .button,
input[type=submit],
input[type=reset],
.wp-block-search__button,
.wp-block-button .wp-block-button__link {
  cursor: pointer;
  padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

/* line 1620, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site .button:focus,
input[type=submit]:focus,
input[type=reset]:focus,
.wp-block-search__button:focus,
.wp-block-button .wp-block-button__link:focus {
  background: transparent;
  outline-offset: -6px;
  outline: 2px dotted currentColor;
}

/* line 1665, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site .button:hover,
input[type=submit]:hover,
input[type=reset]:hover,
.wp-block-search .wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover {
  background: transparent;
}

/**
 * Block Options
 */
/* line 1677, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button:not(.is-style-outline) .wp-block-button__link:active {
  background: transparent !important;
}

/* line 1683, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
  background: transparent !important;
}

/* line 1689, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button:not(.is-style-outline) .wp-block-button__link:focus {
  background: var(--button--color-background) !important;
}

/* line 1694, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button.is-style-outline .wp-block-button__link {
  padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

/* line 1698, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
  background: transparent;
}

/* line 1702, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):not(.has-text-color) {
  background: transparent;
}

/* line 1733, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button.is-style-outline .wp-block-button__link:active,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--button--color-background) !important;
}

/* line 1745, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-button.is-style-outline .wp-block-button__link:focus {
  background: transparent !important;
}

/* line 1754, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-style-outline .wp-block-button__link[style*=radius]:focus,
.wp-block-button a.wp-block-button__link[style*=radius]:focus {
  outline-offset: 2px;
  outline: 2px dotted var(--button--color-background);
}

/* line 1760, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-code {
  padding: var(--global--spacing-unit);
}

/* line 1768, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-code code {
  white-space: pre;
  overflow-x: auto;
  display: block;
}

/* line 1776, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns:not(.alignwide):not(.alignfull) {
  clear: both;
}

/* line 1780, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns .wp-block-column > * {
  margin-top: calc(0.66 * var(--global--spacing-vertical));
  margin-bottom: calc(0.66 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 1786, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns .wp-block-column > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/* line 1792, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns .wp-block-column > *:first-child {
  margin-top: 0;
}

/* line 1796, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns .wp-block-column > *:last-child {
  margin-bottom: 0;
}

/* line 1800, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns .wp-block-column:last-child {
  margin-bottom: 0;
}

/* line 1804, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns .wp-block-column:not(:last-child) {
  margin-bottom: calc(0.66 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 1809, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns .wp-block-column:not(:last-child) {
    margin-bottom: var(--global--spacing-vertical);
  }
}

@media only screen and (min-width: 822px) {
  /* line 1815, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns .wp-block-column:not(:last-child) {
    margin-bottom: 0;
  }
}

/* line 1820, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns.is-style-twentytwentyone-columns-overlap {
  justify-content: space-around;
}

@media only screen and (min-width: 652px) {
  /* line 1825, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) {
    margin-left: calc(-2 * var(--global--spacing-horizontal));
    margin-top: calc(2.5 * var(--global--spacing-horizontal));
    z-index: 2;
  }
  /* line 1831, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > p:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h1:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h2:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h3:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h4:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h5:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > h6:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > ul:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > ol:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > pre:not(.has-background) {
    padding: var(--global--spacing-unit);
  }
  /* line 1845, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > ul:not(.has-background),
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n) > ol:not(.has-background) {
    padding-left: calc(2 * var(--global--spacing-horizontal));
  }
  /* line 1850, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-columns.is-style-twentytwentyone-columns-overlap .wp-block-column:nth-child(2n).is-vertically-aligned-center {
    margin-top: 0;
  }
}

/* line 1855, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-columns.alignfull .wp-block-column p:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h1:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h2:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h3:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h4:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h5:not(.has-background),
.wp-block-columns.alignfull .wp-block-column h6:not(.has-background) {
  padding-left: var(--global--spacing-unit);
  padding-right: var(--global--spacing-unit);
}

/* line 1866, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover,
.wp-block-cover-image {
  min-height: var(--cover--height);
  margin-top: inherit;
  margin-bottom: inherit;
  /* default & custom background-color */
  /* Treating H2 separately to account for legacy /core styles */
  /* Block Styles */
}

/* line 1880, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover:not(.alignwide):not(.alignfull),
.wp-block-cover-image:not(.alignwide):not(.alignfull) {
  clear: both;
}

/* line 1885, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover.alignfull,
.wp-block-cover-image.alignfull {
  margin-top: 0;
  margin-bottom: 0;
}

/* line 1891, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover-image-text,
.wp-block-cover .wp-block-cover-text,
.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover-image .wp-block-cover-image-text,
.wp-block-cover-image .wp-block-cover-text {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 1929, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover h2,
.wp-block-cover-image h2 {
  letter-spacing: var(--heading--letter-spacing-h2);
  max-width: inherit;
  padding: 0;
}

/* line 1954, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover .wp-block-cover__inner-container,
.wp-block-cover-image .wp-block-cover__inner-container {
  width: calc(100% - calc(2 * var(--global--spacing-vertical)));
}

/* line 1959, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover .wp-block-cover__inner-container > *,
.wp-block-cover-image .wp-block-cover__inner-container > * {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
  margin-bottom: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 1966, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-cover .wp-block-cover__inner-container > *,
  .wp-block-cover-image .wp-block-cover__inner-container > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/* line 1973, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover .wp-block-cover__inner-container > *:first-child,
.wp-block-cover-image .wp-block-cover__inner-container > *:first-child {
  margin-top: 0;
}

/* line 1978, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover .wp-block-cover__inner-container > *:last-child,
.wp-block-cover-image .wp-block-cover__inner-container > *:last-child {
  margin-bottom: 0;
}

/* line 1983, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover.alignleft,
.wp-block-cover.alignright,
.wp-block-cover-image.alignleft,
.wp-block-cover-image.alignright {
  margin-top: 0;
}

/* line 1990, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover.alignleft > *,
.wp-block-cover.alignright > *,
.wp-block-cover-image.alignleft > *,
.wp-block-cover-image.alignright > * {
  margin-top: calc(2 * var(--global--spacing-vertical));
  margin-bottom: calc(2 * var(--global--spacing-vertical));
  padding-left: var(--global--spacing-horizontal);
  padding-right: var(--global--spacing-horizontal);
  width: 100%;
}

/* line 2001, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-cover.has-left-content,
.wp-block-cover.has-right-content,
.wp-block-cover-image.has-left-content,
.wp-block-cover-image.has-right-content {
  justify-content: center;
}

/* line 2013, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-file a.wp-block-file__button:active,
.wp-block-file a.wp-block-file__button:focus,
.wp-block-file a.wp-block-file__button:hover {
  opacity: inherit;
}

/* line 2028, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-file .wp-block-file__button {
  cursor: pointer;
  padding: var(--button--padding-vertical) var(--button--padding-horizontal);
  display: inline-block;
}

/* line 2043, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-file .wp-block-file__button:focus {
  background: transparent;
  outline-offset: -6px;
  outline: 2px dotted currentColor;
}

/* line 2063, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-gallery {
  margin: 0 auto;
}

/* line 2067, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
  width: calc((100% - var(--global--spacing-unit)) / 2);
}

/* line 2072, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
  margin: 0;
}

/* line 2084, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-gallery .blocks-gallery-image figcaption a:focus,
.wp-block-gallery .blocks-gallery-item figcaption a:focus {
  outline: 2px solid var(--wp--style--color--link, var(--global--color-primary));
}

/* line 2091, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-gallery .blocks-gallery-image a:focus img,
.wp-block-gallery .blocks-gallery-item a:focus img {
  outline-offset: 2px;
}

/* line 2096, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group {
  display: block;
  clear: both;
  display: flow-root;
}

/* line 2102, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group:before,
.wp-block-group:after {
  content: '';
  display: block;
  clear: both;
}

/* line 2109, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group .wp-block-group__inner-container {
  margin-left: auto;
  margin-right: auto;
}

/* line 2114, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group .wp-block-group__inner-container > * {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
  margin-bottom: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 2120, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-group .wp-block-group__inner-container > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/* line 2126, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group .wp-block-group__inner-container > *:first-child {
  margin-top: 0;
}

/* line 2130, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group .wp-block-group__inner-container > *:last-child {
  margin-bottom: 0;
}

/* line 2134, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group.has-background {
  padding: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 2139, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-group.has-background {
    padding: var(--global--spacing-vertical);
  }
}

/* line 2144, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group.is-style-twentytwentyone-border {
  padding: var(--global--spacing-vertical);
}

/* line 2149, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-group.has-background .wp-block-group__inner-container > .alignfull,
.wp-block-group.has-background .wp-block-group__inner-container > hr.wp-block-separator:not(.is-style-dots):not(.alignwide).alignfull,
.wp-block-group.is-style-twentytwentyone-border .wp-block-group__inner-container > .alignfull,
.wp-block-group.is-style-twentytwentyone-border .wp-block-group__inner-container > hr.wp-block-separator:not(.is-style-dots):not(.alignwide).alignfull {
  max-width: calc(var(--responsive--alignfull-width) + (2 * var(--global--spacing-vertical)));
  width: calc(var(--responsive--alignfull-width) + (2 * var(--global--spacing-vertical)));
  margin-left: calc(-1 * var(--global--spacing-vertical));
}

/* line 2158, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  clear: both;
}

/* line 2190, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h1,
.h1 {
  letter-spacing: var(--heading--letter-spacing-h1);
}

/* line 2197, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h2,
.h2 {
  letter-spacing: var(--heading--letter-spacing-h2);
}

/* line 2204, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h3,
.h3 {
  letter-spacing: var(--heading--letter-spacing-h3);
}

/* line 2211, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h4,
.h4 {
  letter-spacing: var(--heading--letter-spacing-h4);
}

/* line 2219, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h5,
.h5 {
  letter-spacing: var(--heading--letter-spacing-h5);
}

/* line 2227, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
h6,
.h6 {
  letter-spacing: var(--heading--letter-spacing-h6);
}

/* line 2239, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-image figcaption {
  margin-top: calc(0.5 * var(--global--spacing-unit));
  margin-bottom: var(--global--spacing-unit);
}

/* line 2248, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-image .alignright {
  margin-left: var(--global--spacing-horizontal);
}

/* line 2252, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-image .alignleft {
  margin-right: var(--global--spacing-horizontal);
}

/* line 2256, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-image a:focus img {
  outline-offset: 2px;
}

/* line 2260, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > *[class=wp-block-image],
.entry-content [class*=inner-container] > *[class=wp-block-image] {
  margin-top: 0;
  margin-bottom: 0;
}

/* line 2266, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > *[class=wp-block-image] + *,
.entry-content [class*=inner-container] > *[class=wp-block-image] + * {
  margin-top: 0;
}

/* line 2271, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

/* line 2282, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-image.is-style-twentytwentyone-image-frame img {
  padding: var(--global--spacing-unit);
}

@media only screen and (min-width: 482px) {
  /* line 2287, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .wp-block-image > .alignleft,
  .entry-content > .wp-block-image > .alignright {
    max-width: 50%;
  }
}

@media only screen and (max-width: 481px) {
  /* line 2294, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .wp-block-image > .alignleft,
  .entry-content > .wp-block-image > .alignright {
    margin-left: 0;
    margin-right: 0;
  }
}

/* line 2301, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-comments {
  padding-left: 0;
}

/* line 2305, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-comments .wp-block-latest-comments__comment {
  /* Vertical margins logic */
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 2314, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-comments .wp-block-latest-comments__comment:first-child {
  margin-top: 0;
}

/* line 2318, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-comments .wp-block-latest-comments__comment:last-child {
  margin-bottom: 0;
}

/* line 2331, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p {
  margin: 0;
}

/* line 2337, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts {
  padding-left: 0;
}

/* line 2341, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts:not(.is-grid) > li {
  margin-top: calc(1.666 * var(--global--spacing-vertical));
  margin-bottom: calc(1.666 * var(--global--spacing-vertical));
}

/* line 2346, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts:not(.is-grid) > li:first-child {
  margin-top: 0;
}

/* line 2350, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts:not(.is-grid) > li:last-child {
  margin-bottom: 0;
}

/* line 2354, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-grid {
  word-wrap: break-word;
  word-break: break-word;
}

/* line 2359, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-grid > li {
  margin-bottom: var(--global--spacing-vertical);
}

/* line 2363, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-grid > li:last-child {
  margin-bottom: 0;
}

/* line 2367, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-grid.columns-2 > li:nth-last-child(-n+2):nth-child(2n+1),
.wp-block-latest-posts.is-grid.columns-2 > li:nth-last-child(-n+2):nth-child(2n+1) ~ li,
.wp-block-latest-posts.is-grid.columns-3 > li:nth-last-child(-n+3):nth-child(3n+1),
.wp-block-latest-posts.is-grid.columns-3 > li:nth-last-child(-n+3):nth-child(3n+1) ~ li,
.wp-block-latest-posts.is-grid.columns-4 > li:nth-last-child(-n+4):nth-child(4n+1),
.wp-block-latest-posts.is-grid.columns-4 > li:nth-last-child(-n+4):nth-child(4n+1) ~ li,
.wp-block-latest-posts.is-grid.columns-5 > li:nth-last-child(-n+5):nth-child(5n+1),
.wp-block-latest-posts.is-grid.columns-5 > li:nth-last-child(-n+5):nth-child(5n+1) ~ li,
.wp-block-latest-posts.is-grid.columns-6 > li:nth-last-child(-n+6):nth-child(6n+1),
.wp-block-latest-posts.is-grid.columns-6 > li:nth-last-child(-n+6):nth-child(6n+1) ~ li {
  margin-bottom: 0;
}

/* line 2380, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts > li > * {
  margin-top: calc(0.333 * var(--global--spacing-vertical));
  margin-bottom: calc(0.333 * var(--global--spacing-vertical));
}

/* line 2385, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts > li > *:first-child {
  margin-top: 0;
}

/* line 2389, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts > li > *:last-child {
  margin-bottom: 0;
}

/* line 2393, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts > li > a {
  display: inline-block;
  margin-bottom: calc(0.333 * var(--global--spacing-vertical));
}

/* line 2419, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts .wp-block-latest-posts__post-excerpt,
.wp-block-latest-posts .wp-block-latest-posts__post-full-content {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
}

/* line 2427, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.alignfull {
  padding-left: var(--global--spacing-unit);
  padding-right: var(--global--spacing-unit);
}

/* line 2432, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content [class*=inner-container] .wp-block-latest-posts.alignfull,
.entry-content .has-background .wp-block-latest-posts.alignfull {
  padding-left: 0;
  padding-right: 0;
}

/* line 2443, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers:not(.is-grid) > li,
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers > li {
  padding-bottom: var(--global--spacing-vertical);
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 2451, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers:not(.is-grid) > li:last-child,
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers > li:last-child {
  padding-bottom: 0;
}

/* line 2457, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid {
  box-shadow: inset 0 -1px 0 0 var(--global--color-border);
}

/* line 2462, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid li {
  margin: 0;
  padding-top: var(--global--spacing-vertical);
  padding-right: var(--global--spacing-horizontal);
}

/* line 2468, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid li:last-child {
  padding-bottom: var(--global--spacing-vertical);
}

@media screen and (min-width: 600px) {
  /* line 2473, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid.columns-2 li {
    width: calc((100% / 2));
  }
  /* line 2477, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid.columns-3 li {
    width: calc((100% / 3));
  }
  /* line 2481, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid.columns-4 li {
    width: calc((100% / 4));
  }
  /* line 2485, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid.columns-5 li {
    width: calc((100% / 5));
  }
  /* line 2489, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-latest-posts.is-style-twentytwentyone-latest-posts-dividers.is-grid.columns-6 li {
    width: calc((100% / 6));
  }
}

/* line 2494, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-borders li {
  padding: var(--global--spacing-vertical) var(--global--spacing-horizontal);
}

/* line 2499, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-borders li:last-child {
  padding-bottom: var(--global--spacing-vertical);
}

/* line 2503, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-latest-posts.is-style-twentytwentyone-latest-posts-borders:not(.is-grid) li {
  margin-top: var(--global--spacing-horizontal);
  margin-bottom: var(--global--spacing-horizontal);
}

/* line 2508, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-item {
  display: inline-block;
  vertical-align: top;
  width: 100%;
}

/* line 2515, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-item a {
  display: block;
}

/* line 2519, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-item a:focus img {
  outline-offset: -2px;
}

/* line 2523, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

/* line 2527, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

/* line 2531, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

/* line 2535, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

/* line 2539, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

/* line 2543, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

/* line 2547, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

/* line 2551, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

/* line 2555, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.gallery-caption {
  display: block;
}

/* line 2559, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
figure.wp-caption a:focus img {
  outline-offset: 2px;
}

/* line 2563, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
ul,
ol {
  margin: 0;
  padding-left: calc(2 * var(--global--spacing-horizontal));
}

/* line 2570, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
ul.aligncenter,
ol.aligncenter {
  list-style-position: inside;
  padding: 0;
}

/* line 2576, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
ul.alignright,
ol.alignright {
  list-style-position: inside;
  padding: 0;
}

/* line 2583, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
ul {
  list-style-type: disc;
}

/* line 2587, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
ol {
  list-style-type: decimal;
}

/* line 2596, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
dd {
  margin: 0;
  padding-left: calc(2 * var(--global--spacing-horizontal));
}

/* line 2601, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text {
  /**
   * Block Options
   */
}

/* line 2607, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text.alignfull {
  margin-top: 0;
  margin-bottom: 0;
}

/* line 2612, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text a:focus img {
  outline-offset: -1px;
}

/* line 2616, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text .wp-block-media-text__content {
  padding: var(--global--spacing-horizontal);
}

@media only screen and (min-width: 592px) {
  /* line 2621, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-media-text .wp-block-media-text__content {
    padding: var(--global--spacing-vertical);
  }
}

/* line 2626, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text .wp-block-media-text__content > * {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
  margin-bottom: calc(0.666 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 482px) {
  /* line 2632, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-media-text .wp-block-media-text__content > * {
    margin-top: var(--global--spacing-vertical);
    margin-bottom: var(--global--spacing-vertical);
  }
}

/* line 2638, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text .wp-block-media-text__content > *:first-child {
  margin-top: 0;
}

/* line 2642, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-media-text .wp-block-media-text__content > *:last-child {
  margin-bottom: 0;
}

@media only screen and (min-width: 482px) {
  /* line 2647, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
    padding-top: var(--global--spacing-vertical);
    padding-bottom: var(--global--spacing-vertical);
  }
}

/* line 2657, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation .wp-block-navigation-link {
  padding: 0;
}

/* line 2661, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation .wp-block-navigation-link .wp-block-navigation-link__content {
  padding: var(--primary-nav--padding);
}

/* line 2671, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation .wp-block-navigation-link__submenu-icon {
  padding: 0;
}

/* line 2675, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container .has-child .wp-block-navigation-link {
  display: inherit;
}

/* line 2679, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container .has-child .wp-block-navigation__container {
  left: 0;
  margin-left: var(--primary-nav--padding);
  min-width: max-content;
  opacity: 0;
  padding: 0;
  position: inherit;
  top: inherit;
}

/* line 2690, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container .has-child .wp-block-navigation__container .wp-block-navigation-link .wp-block-navigation-link__content {
  display: inline-block;
  padding: calc(0.5 * var(--primary-nav--padding)) var(--primary-nav--padding);
}

/* line 2695, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container .has-child .wp-block-navigation__container .wp-block-navigation-link__submenu-icon {
  display: none;
}

/* line 2699, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container .has-child:hover .wp-block-navigation__container,
.wp-block-navigation > .wp-block-navigation__container .has-child:focus-within .wp-block-navigation__container {
  display: block;
  opacity: 1;
  visibility: visible;
}

/* line 2706, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container > .has-child > .wp-block-navigation__container {
  background: var(--global--color-background);
  margin: 0;
  padding: 0;
  position: absolute;
  top: 100%;
}

/* line 2715, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container > .has-child > .wp-block-navigation__container:before,
.wp-block-navigation > .wp-block-navigation__container > .has-child > .wp-block-navigation__container:after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  top: -10px;
  left: var(--global--spacing-horizontal);
}

/* line 2728, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation > .wp-block-navigation__container > .has-child > .wp-block-navigation__container:after {
  top: -9px;
}

/* line 2733, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation:not(.has-background) .wp-block-navigation__container {
  background: var(--global--color-background);
}

/* line 2737, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-navigation:not(.has-background) .wp-block-navigation__container .wp-block-navigation__container {
  background: var(--global--color-background);
}

/* line 2759, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
p.has-background {
  padding: var(--global--spacing-unit);
}

/* line 2767, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
pre.wp-block-preformatted {
  overflow-x: auto;
  white-space: pre;
}

/* line 2772, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote {
  padding: calc(2 * var(--global--spacing-unit)) 0;
  position: relative;
  /**
   * Block Options
   */
}

/* line 2787, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote blockquote:before {
  content: '“';
  display: block;
  position: relative;
  left: 0;
}

/* line 2798, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote p {
  letter-spacing: var(--pullquote--letter-spacing);
  margin: 0;
}

/* line 2812, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote .wp-block-pullquote__citation,
.wp-block-pullquote cite,
.wp-block-pullquote footer {
  display: block;
}

/* line 2822, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote:not(.is-style-solid-color) {
  background: none;
}

/* line 2831, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.alignwide > p,
.wp-block-pullquote.alignwide blockquote {
  max-width: var(--responsive--alignwide-width);
}

/* line 2836, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.alignfull:not(.is-style-solid-color) > p,
.wp-block-pullquote.alignfull:not(.is-style-solid-color) blockquote {
  padding: 0 calc(2 * var(--global--spacing-unit));
}

/* line 2841, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.is-style-solid-color {
  padding: calc(2.5 * var(--global--spacing-unit));
}

@media (min-width: 600px) {
  /* line 2850, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-pullquote.is-style-solid-color {
    padding: calc(5 * var(--global--spacing-unit));
  }
}

/* line 2859, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.is-style-solid-color blockquote {
  margin: 0;
  max-width: inherit;
}

/* line 2874, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.is-style-solid-color.alignleft,
.wp-block-pullquote.is-style-solid-color.alignright {
  padding: var(--global--spacing-unit);
}

/* line 2879, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-pullquote.is-style-solid-color.alignleft blockquote,
.wp-block-pullquote.is-style-solid-color.alignright blockquote {
  max-width: initial;
}

/* line 2884, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote {
  /**
   * Block Options
   */
}

/* line 2892, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote:before {
  content: '“';
  left: 8px;
}

/* line 2914, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.has-text-align-right {
  margin: var(--global--spacing-vertical) var(--global--spacing-horizontal) var(--global--spacing-vertical) auto;
  padding-right: 0;
}

/* line 2920, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.has-text-align-right:before {
  display: none;
}

/* line 2924, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.has-text-align-right p:before {
  content: '”';
  margin-right: 5px;
}

/* line 2932, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.has-text-align-center {
  margin: var(--global--spacing-vertical) auto;
}

/* line 2936, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.has-text-align-center:before {
  display: none;
}

/* line 2940, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
  padding-left: 0;
  padding-right: 0;
  /* Resetting margins to match _block-container.scss */
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 2957, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.is-large:before,
.wp-block-quote.is-style-large:before {
  left: calc(-1 * var(--global--spacing-horizontal));
}

/* line 2964, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.is-large.has-text-align-right:before,
.wp-block-quote.is-style-large.has-text-align-right:before {
  display: none;
}

/* line 2969, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-quote.is-large.has-text-align-right p:before,
.wp-block-quote.is-style-large.has-text-align-right p:before {
  content: '”';
  margin-right: 10px;
}

@media only screen and (max-width: 481px) {
  /* line 2989, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.is-large,
  .wp-block-quote.is-style-large {
    padding-left: var(--global--spacing-horizontal);
  }
  /* line 2994, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.is-large:before,
  .wp-block-quote.is-style-large:before {
    left: 0;
  }
  /* line 2999, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.is-large.has-text-align-right,
  .wp-block-quote.is-style-large.has-text-align-right {
    padding-left: 0;
    padding-right: var(--global--spacing-horizontal);
  }
  /* line 3005, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.is-large.has-text-align-right:before,
  .wp-block-quote.is-style-large.has-text-align-right:before {
    right: 0;
  }
  /* line 3010, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.is-large.has-text-align-center,
  .wp-block-quote.is-style-large.has-text-align-center {
    padding-left: 0;
    padding-right: 0;
  }
}

@media only screen and (max-width: 481px) {
  /* line 3018, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.has-text-align-right {
    padding-left: 0;
    padding-right: calc(0.5 * var(--global--spacing-horizontal));
  }
  /* line 3023, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.has-text-align-right:before {
    right: 0;
  }
  /* line 3027, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-quote.has-text-align-center {
    padding-left: 0;
    padding-right: 0;
  }
}

/* line 3033, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss {
  padding-left: 0;
}

/* line 3037, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss > li {
  list-style: none;
}

/* line 3041, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss:not(.is-grid) > li {
  margin-top: calc(1.666 * var(--global--spacing-vertical));
  margin-bottom: calc(1.666 * var(--global--spacing-vertical));
}

/* line 3046, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss:not(.is-grid) > li:first-child {
  margin-top: 0;
}

/* line 3050, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss:not(.is-grid) > li:last-child {
  margin-bottom: 0;
}

/* line 3054, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss.is-grid > li {
  margin-bottom: var(--global--spacing-vertical);
}

/* line 3058, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss.is-grid > li:last-child {
  margin-bottom: 0;
}

/* line 3062, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss.is-grid.columns-2 > li:nth-last-child(-n+2):nth-child(2n+1),
.wp-block-rss.is-grid.columns-2 > li:nth-last-child(-n+2):nth-child(2n+1) ~ li,
.wp-block-rss.is-grid.columns-3 > li:nth-last-child(-n+3):nth-child(3n+1),
.wp-block-rss.is-grid.columns-3 > li:nth-last-child(-n+3):nth-child(3n+1) ~ li,
.wp-block-rss.is-grid.columns-4 > li:nth-last-child(-n+4):nth-child(4n+1),
.wp-block-rss.is-grid.columns-4 > li:nth-last-child(-n+4):nth-child(4n+1) ~ li,
.wp-block-rss.is-grid.columns-5 > li:nth-last-child(-n+5):nth-child(5n+1),
.wp-block-rss.is-grid.columns-5 > li:nth-last-child(-n+5):nth-child(5n+1) ~ li,
.wp-block-rss.is-grid.columns-6 > li:nth-last-child(-n+6):nth-child(6n+1),
.wp-block-rss.is-grid.columns-6 > li:nth-last-child(-n+6):nth-child(6n+1) ~ li {
  margin-bottom: 0;
}

/* line 3075, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss > li > * {
  margin-top: calc(0.333 * var(--global--spacing-vertical));
  margin-bottom: calc(0.333 * var(--global--spacing-vertical));
}

/* line 3080, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss > li > *:first-child {
  margin-top: 0;
}

/* line 3084, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss > li > *:last-child {
  margin-bottom: 0;
}

/* line 3088, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss .wp-block-rss__item-title > a {
  display: inline-block;
  margin-bottom: calc(0.333 * var(--global--spacing-vertical));
}

/* line 3114, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss .wp-block-rss__item-excerpt,
.wp-block-rss .wp-block-rss__item-full-content {
  margin-top: calc(0.666 * var(--global--spacing-vertical));
}

/* line 3122, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-rss.alignfull {
  padding-left: var(--global--spacing-unit);
  padding-right: var(--global--spacing-unit);
}

/* line 3127, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content [class*=inner-container] .wp-block-rss.alignfull,
.entry-content .has-background .wp-block-rss.alignfull {
  padding-left: 0;
  padding-right: 0;
}

/* line 3133, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search {
  max-width: var(--responsive--aligndefault-width);
}

/* line 3137, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search__button-only.aligncenter .wp-block-search__inside-wrapper {
  justify-content: center;
}

/* line 3141, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search .wp-block-search__label {
  margin-bottom: calc(var(--global--spacing-vertical) / 3);
}

/* line 3147, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search .wp-block-search__input {
  max-width: inherit;
  margin-right: calc(-1 * var(--button--border-width));
  padding: var(--form--spacing-unit);
}

/* line 3175, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search button.wp-block-search__button {
  margin-left: 0;
}

/* line 3187, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search button.wp-block-search__button.has-icon {
  padding: 6px calc(0.5 * var(--button--padding-horizontal));
}

/* line 3191, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search button.wp-block-search__button.has-icon svg {
  width: 40px;
  height: 40px;
  fill: currentColor;
}

/* line 3259, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input {
  margin-right: 0;
}

/* line 3263, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus {
  outline: 2px dotted var(--form--border-color);
  outline-offset: -5px;
}

/* line 3268, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-dark-theme .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus {
  outline-color: currentColor;
}

/* line 3272, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search.wp-block-search__button-inside.wp-block-search__text-button button.wp-block-search__button {
  padding: var(--button--padding-vertical) var(--button--padding-horizontal);
}

/* line 3313, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-search__button {
  box-shadow: none;
}

/* line 3317, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr {
  clear: both;
  margin-left: auto;
  margin-right: auto;
}

/* line 3325, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr.wp-block-separator {
  opacity: 1;
  /**
   * Block Options
   */
}

/* line 3334, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr.wp-block-separator:not(.is-style-dots):not(.alignwide) {
  max-width: var(--responsive--aligndefault-width);
}

/* line 3338, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr.wp-block-separator:not(.is-style-dots).alignwide {
  max-width: var(--responsive--alignwide-width);
}

/* line 3342, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr.wp-block-separator:not(.is-style-dots).alignfull {
  max-width: var(--responsive--alignfull-width);
}

/* line 3360, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
hr.wp-block-separator.is-style-dots:before {
  letter-spacing: var(--global--font-size-sm);
  padding-left: var(--global--font-size-sm);
}

/* line 3382, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-social-links.is-style-twentytwentyone-social-icons-color .wp-social-link {
  background: none;
}

/* line 3386, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-spacer {
  display: block;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

@media only screen and (max-width: 481px) {
  /* line 3393, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .wp-block-spacer[style] {
    height: var(--global--spacing-unit) !important;
  }
}

/* line 3398, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
table,
.wp-block-table {
  width: 100%;
  min-width: 240px;
}

/* line 3417, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
table td,
table th,
.wp-block-table td,
.wp-block-table th {
  padding: calc(0.5 * var(--global--spacing-unit));
}

/* line 3466, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
table.wp-calendar-table td,
table.wp-calendar-table th {
  background: transparent;
  vertical-align: middle;
  word-break: normal;
}

/* line 3486, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
table.wp-calendar-table caption {
  margin-bottom: var(--global--spacing-unit);
}

/* line 3493, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-calendar-nav {
  margin-top: calc(var(--global--spacing-unit) / 2);
}

/* line 3498, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-calendar-nav svg {
  height: 1em;
  vertical-align: middle;
}

/* line 3503, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-calendar-nav svg path {
  fill: currentColor;
}

/* line 3507, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-calendar-nav .wp-calendar-nav-next {
  float: right;
}

/* line 3511, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-tag-cloud.alignfull {
  padding-left: var(--global--spacing-unit);
  padding-right: var(--global--spacing-unit);
}

/* line 3520, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-block-video figcaption {
  margin-top: calc(0.5 * var(--global--spacing-unit));
  margin-bottom: var(--global--spacing-unit);
}

/* line 3528, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
* > figure > video {
  max-width: unset;
  width: 100%;
  vertical-align: middle;
}

/* Block Alignments */
/**
 * These selectors set the default max width for content appearing inside a post or page.
 */
/**
 * .alignleft
 */
/* line 3589, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignleft {
  /* rtl:ignore */
  margin-top: 0;
}

/* line 3595, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > .alignleft {
  max-width: var(--responsive--aligndefault-width);
}

@media only screen and (min-width: 482px) {
  /* line 3600, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .alignleft {
    /* rtl:ignore */
    float: left;
    /* rtl:ignore */
    margin-right: var(--global--spacing-horizontal);
    margin-bottom: var(--global--spacing-vertical);
  }
  /* line 3609, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .alignleft {
    max-width: calc(50% - var(--responsive--alignleft-margin));
  }
}

/**
 * .aligncenter
 */
/* line 3617, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.aligncenter {
  clear: both;
  display: block;
  float: none;
  margin-right: auto;
  margin-left: auto;
}

/**
 * .alignright
 */
/* line 3629, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignright {
  margin-top: 0;
  margin-bottom: var(--global--spacing-vertical);
}

/* line 3634, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > .alignright {
  max-width: var(--responsive--aligndefault-width);
}

@media only screen and (min-width: 482px) {
  /* line 3639, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .alignright {
    /* rtl:ignore */
    float: right;
    /* rtl:ignore */
    margin-left: var(--global--spacing-horizontal);
  }
  /* line 3647, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .entry-content > .alignright {
    max-width: calc(50% - var(--responsive--alignright-margin));
  }
}

/* line 3652, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
[class*=inner-container] > .alignleft + *,
[class*=inner-container] > .alignright + * {
  margin-top: 0;
}

/**
 * .alignwide
 */
/* line 3660, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignwide {
  clear: both;
}

/**
 * .alignfull
 */
/* line 3667, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.alignfull {
  clear: both;
}

/* line 3671, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-left-content {
  justify-content: flex-start;
}

/* line 3675, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-right-content {
  justify-content: flex-end;
}

/* line 3679, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-parallax {
  background-attachment: fixed;
}

/* line 3683, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-drop-cap:not(:focus):first-letter {
  float: left;
  margin: 0.1em 0.1em 0 0;
}

/* line 3694, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-drop-cap:not(:focus):after {
  content: '';
  display: table;
  clear: both;
  padding-top: 14px;
}

/* line 3701, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.desktop-only {
  display: none;
}

@media only screen and (min-width: 482px) {
  /* line 3706, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .desktop-only {
    display: block;
  }
}

/* Category 06 contains all "bigger" components which contain elements of the previous two categories like header, footer, page template, single template, comments section, archives, ... */
/* line 3712, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-header {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  row-gap: var(--global--spacing-vertical);
}

/* line 3719, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.wp-custom-logo .site-header {
  align-items: center;
}

@media only screen and (min-width: 482px) {
  /* line 3724, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header {
    padding-top: calc(var(--global--spacing-vertical) / 0.75);
  }
}

@media only screen and (min-width: 822px) {
  /* line 3730, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header {
    padding-top: calc(2.4 * var(--global--spacing-vertical));
  }
}

/* line 3735, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-branding {
  margin-right: 140px;
}

/* line 3740, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-branding:last-child {
  margin-right: 0;
  width: 100%;
}

@media only screen and (min-width: 482px) {
  /* line 3747, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-branding {
    margin-right: initial;
    margin-top: 4px;
  }
}

/* line 3753, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-title {
  letter-spacing: normal;
  margin-bottom: calc(var(--global--spacing-vertical) / 6);
}

/* line 3796, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-background-white a.custom-logo-link:focus,
.is-dark-theme a.custom-logo-link:focus {
  background: none;
}

/* line 3805, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-logo {
  margin: calc(var(--global--spacing-vertical) / 2) 0;
}

/* line 3809, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-header > .site-logo {
  width: 100%;
  padding-bottom: calc(var(--global--spacing-vertical) * 1.5);
}

/* line 3816, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-logo .custom-logo {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--branding--logo--max-width-mobile);
  max-height: var(--branding--logo--max-height-mobile);
  height: auto;
  display: inline-block;
  width: auto;
}

@media only screen and (min-width: 482px) {
  /* line 3827, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-logo .custom-logo {
    max-width: var(--branding--logo--max-width);
    max-height: var(--branding--logo--max-height);
    height: auto;
    width: auto;
  }
}

@media only screen and (max-width: 481px) {
  /* line 3836, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo {
    position: absolute;
    padding-top: calc(0.5 * var(--global--spacing-vertical));
    margin-top: 0;
    top: var(--global--admin-bar--height);
  }
  /* line 3843, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation-open .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo {
    display: none;
  }
  /* line 3847, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo img {
    max-height: calc(var(--button--padding-vertical) - (0.25 * var(--global--spacing-unit)) + 1.7em);
  }
  /* line 3851, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo.has-title-and-tagline {
    align-items: flex-start;
  }
  /* line 3855, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo.has-title-and-tagline.has-menu {
    justify-content: space-between;
  }
  /* line 3859, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo.has-title-and-tagline.has-menu .site-branding {
    max-width: calc(100% - 160px);
  }
  /* line 3863, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header.has-logo.has-title-and-tagline .site-branding {
    margin-right: 0;
  }
  /* line 3867, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  body:not(.primary-navigation-open) .site-header.has-logo.has-title-and-tagline:after {
    display: none;
  }
  /* line 3871, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  body:not(.primary-navigation-open) .site-header.has-logo.has-title-and-tagline .primary-navigation {
    position: relative;
    top: 0;
  }
  /* line 3876, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  body:not(.primary-navigation-open) .site-header.has-logo.has-title-and-tagline .menu-button-container {
    position: relative;
    padding-top: 0;
    margin-top: calc(0px - var(--button--padding-vertical) + (0.25 * var(--global--spacing-unit)));
  }
  /* line 3882, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  body:not(.primary-navigation-open) .site-header.has-logo.has-title-and-tagline .menu-button-container #primary-mobile-menu {
    padding-left: calc(var(--global--spacing-horizontal) * 0.6 - 4.5px);
    padding-right: calc(var(--global--spacing-horizontal) * 0.6 - 4.5px);
    margin-right: calc(0px - var(--global--spacing-horizontal) * 0.6);
  }
  /* line 3888, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header:not(.has-logo).has-title-and-tagline .site-branding {
    margin-right: 0;
    max-width: calc(100% - 160px);
  }
  /* line 3893, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-header:not(.has-menu) {
    justify-content: center;
  }
}

/* line 3898, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-footer {
  padding-top: 0;
  padding-bottom: calc(1.7 * var(--global--spacing-vertical));
}

/* line 3903, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.no-widgets .site-footer {
  margin-top: calc(6 * var(--global--spacing-vertical));
}

@media only screen and (max-width: 481px) {
  /* line 3908, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .no-widgets .site-footer {
    margin-top: calc(3 * var(--global--spacing-vertical));
  }
}

/* line 3913, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-footer > .site-info {
  padding-top: var(--global--spacing-vertical);
}

/* line 3927, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-footer > .site-info .powered-by {
  margin-top: calc(0.5 * var(--global--spacing-vertical));
}

@media only screen and (min-width: 822px) {
  /* line 3932, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-footer > .site-info {
    display: flex;
    align-items: center;
  }
  /* line 3937, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .site-footer > .site-info .powered-by {
    margin-top: initial;
    margin-left: auto;
  }
}

/* line 3969, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.singular .entry-header {
  padding-bottom: calc(2 * var(--global--spacing-vertical));
  margin-bottom: calc(3 * var(--global--spacing-vertical));
}

/* line 3975, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.home .entry-header {
  padding-bottom: 0;
  margin-bottom: 0;
}

/* line 3981, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.singular .has-post-thumbnail .entry-header {
  padding-bottom: calc(1.3 * var(--global--spacing-vertical));
  margin-bottom: 0;
}

/* line 3987, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.no-results.not-found > *:first-child {
  margin-bottom: calc(3 * var(--global--spacing-vertical));
}

/* line 3991, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.page-links {
  clear: both;
}

/* line 3995, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.page-links .post-page-numbers {
  display: inline-block;
  margin-left: calc(0.66 * var(--global--spacing-unit));
  margin-right: calc(0.66 * var(--global--spacing-unit));
  min-width: 44px;
  min-height: 44px;
}

/* line 4003, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.page-links .post-page-numbers:first-child {
  margin-left: 0;
}

/* line 4007, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-title {
  letter-spacing: var(--heading--letter-spacing-h2);
  overflow-wrap: break-word;
}

/**
 * Entry Content
 */
/* line 4049, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content p {
  word-wrap: break-word;
}

/* line 4053, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-content > iframe[style] {
  margin: var(--global--spacing-vertical) 0 !important;
  max-width: 100% !important;
}

/* line 4058, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-footer {
  clear: both;
  float: none;
  display: block;
}

/* line 4066, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.entry-footer > span {
  display: inline-block;
}

/* line 4083, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > article > .entry-footer {
  margin-top: var(--global--spacing-vertical);
  padding-top: var(--global--spacing-unit);
  padding-bottom: calc(3 * var(--global--spacing-vertical));
}

/* line 4094, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.single .site-main > article > .entry-footer {
  margin-top: calc(3.4 * var(--global--spacing-vertical));
  margin-bottom: calc(3.4 * var(--global--spacing-vertical));
  padding-bottom: 0;
  padding-top: calc(0.8 * var(--global--spacing-vertical));
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: calc(2 * var(--global--spacing-horizontal));
}

/* line 4106, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.single .site-main > article > .entry-footer .post-taxonomies,
.single .site-main > article > .entry-footer .full-size-link {
  justify-content: flex-end;
}

/* line 4112, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.single .site-main > article > .entry-footer .full-size-link:first-child:last-child {
  grid-column: span 2;
}

/* line 4116, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.single .site-main > article > .entry-footer .posted-on,
.single .site-main > article > .entry-footer .byline,
.single .site-main > article > .entry-footer .cat-links,
.single .site-main > article > .entry-footer .tags-links {
  display: block;
}

@media only screen and (max-width: 481px) {
  /* line 4124, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .single .site-main > article > .entry-footer {
    display: block;
  }
  /* line 4128, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .single .site-main > article > .entry-footer .full-size-link {
    display: block;
  }
}

/**
 * Post Thumbnails
 */
/* line 4145, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-thumbnail .wp-post-image {
  display: block;
  width: auto;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: calc(2 * var(--global--spacing-vertical));
}

/**
 * Author
 */
/* line 4157, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.author-bio {
  position: relative;
  max-width: var(--responsive--aligndefault-width);
}

/* line 4163, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.site-main > article > .author-bio {
  margin-top: calc(2 * var(--global--spacing-vertical));
}

/* line 4167, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.author-bio.show-avatars .avatar {
  display: inline-block;
  vertical-align: top;
}

/* line 4173, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.author-bio.show-avatars .author-bio-content {
  display: inline-block;
  padding-left: var(--global--spacing-horizontal);
  max-width: calc(var(--responsive--aligndefault-width) - 90px);
}

/* line 4179, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.author-bio .author-bio-content .author-title {
  display: inline;
}

/* line 4185, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.author-bio .author-bio-content .author-description {
  margin-top: calc(0.5 * var(--global--spacing-vertical));
  margin-bottom: calc(0.5 * var(--global--spacing-vertical));
}

/* line 4217, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.archive .format-image .entry-content,
.archive .format-gallery .entry-content,
.archive .format-video .entry-content,
.search .format-image .entry-content,
.search .format-gallery .entry-content,
.search .format-video .entry-content,
.blog .format-image .entry-content,
.blog .format-gallery .entry-content,
.blog .format-video .entry-content {
  margin-top: calc(2 * var(--global--spacing-vertical));
}

/* line 4229, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.archive .entry-footer .cat-links,
.archive .entry-footer .tags-links,
.search .entry-footer .cat-links,
.search .entry-footer .tags-links,
.blog .entry-footer .cat-links,
.blog .entry-footer .tags-links {
  display: block;
}

/* line 4238, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.archive.logged-in .entry-footer .posted-on,
.search.logged-in .entry-footer .posted-on,
.blog.logged-in .entry-footer .posted-on {
  margin-right: calc(0.5 * var(--global--spacing-unit));
}

/* line 4244, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.archive-description {
  margin-top: var(--global--spacing-vertical);
}

/* line 4250, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.error404 main p {
  margin-bottom: calc(var(--global--spacing-vertical) * 1.6666666667);
}

/* line 4255, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.search-no-results .page-content {
  margin-top: calc(3 * var(--global--spacing-vertical));
}

/**
 * Comments Wrapper
 */
/* line 4262, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area > * {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 4267, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area > *:first-child {
  margin-top: 0;
}

/* line 4271, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area > *:last-child {
  margin-bottom: 0;
}

/* line 4275, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area.show-avatars .avatar {
  position: absolute;
  top: 10px;
}

/* line 4281, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area.show-avatars .fn {
  display: inline-block;
  padding-left: 85px;
}

/* line 4286, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-area.show-avatars .comment-metadata {
  padding: 8px 0 9px 85px;
}

/**
 * Comment Title
 */
/* line 4293, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-title,
.comment-reply-title {
  letter-spacing: var(--heading--letter-spacing-h2);
}

/* line 4299, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-reply-title {
  display: flex;
  justify-content: space-between;
}

/* line 4304, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-reply-title small a {
  letter-spacing: normal;
}

/* Nested comment reply title */
/**
 * Comment Lists
 */
/* line 4320, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-list {
  padding-left: 0;
  list-style: none;
}

/* line 4325, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-list > li {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 4330, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-list .children {
  list-style: none;
  padding-left: 0;
}

/* line 4335, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-list .children > li {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

@media only screen and (min-width: 482px) {
  /* line 4341, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-list .depth-2,
  .comment-list .depth-3 {
    padding-left: calc(4 * var(--global--spacing-horizontal));
  }
}

/**
 * Comment Meta
 */
/* line 4350, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-meta .comment-author {
  margin-bottom: calc(0.25 * var(--global--spacing-unit));
}

@media only screen and (min-width: 482px) {
  /* line 4356, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-meta .comment-author {
    margin-bottom: 0;
    padding-right: 0;
  }
}

/* line 4362, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-meta .comment-author .fn {
  hyphens: auto;
  word-wrap: break-word;
  word-break: break-word;
}

/* line 4371, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-meta .comment-metadata {
  padding: 8px 0 9px;
}

/* line 4377, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-meta .comment-metadata .edit-link {
  margin-left: var(--global--spacing-horizontal);
}

@media only screen and (min-width: 482px) {
  /* line 4382, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-meta {
    margin-right: inherit;
  }
  /* line 4386, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-meta .comment-author {
    max-width: inherit;
  }
}

/* line 4396, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.bypostauthor {
  display: block;
}

/* line 4400, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.says {
  display: none;
}

/* line 4409, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-body {
  position: relative;
  margin-bottom: calc(1.7 * var(--global--spacing-vertical));
}

/* line 4414, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-body > * {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 4419, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-body .reply {
  margin: 0;
}

/* line 4423, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-content a {
  word-wrap: break-word;
}

/* line 4427, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pingback .comment-body,
.trackback .comment-body {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 4433, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-respond {
  margin-top: var(--global--spacing-vertical);
}

/* line 4437, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-respond > * {
  margin-top: var(--global--spacing-unit);
  margin-bottom: var(--global--spacing-unit);
}

/* line 4442, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-respond > *:first-child {
  margin-top: 0;
}

/* line 4446, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-respond > *:last-child {
  margin-bottom: 0;
}

/* line 4450, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-respond > *:last-child.comment-form {
  margin-bottom: var(--global--spacing-vertical);
}

/* line 4454, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-author {
  padding-top: 3px;
}

/* line 4462, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form {
  display: flex;
  flex-wrap: wrap;
}

/* line 4467, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > * {
  flex-basis: 100%;
}

/* line 4475, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form .comment-form-url,
.comment-form .comment-form-comment {
  width: 100%;
}

/* line 4480, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form .comment-form-author,
.comment-form .comment-form-email {
  flex-basis: 0;
  flex-grow: 1;
}

@media only screen and (max-width: 481px) {
  /* line 4487, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-form .comment-form-author,
  .comment-form .comment-form-email {
    flex-basis: 100%;
  }
}

/* line 4499, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > p {
  margin-bottom: var(--global--spacing-unit);
}

/* line 4503, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > p:first-of-type {
  margin-top: 0;
}

/* line 4507, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > p:last-of-type {
  margin-bottom: 0;
}

/* line 4511, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > p label,
.comment-form > p input[type=email],
.comment-form > p input[type=text],
.comment-form > p input[type=url],
.comment-form > p textarea {
  display: block;
  margin-bottom: calc(0.5 * var(--global--spacing-unit));
  width: 100%;
}

/* line 4523, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comment-form > p.comment-form-cookies-consent {
  display: flex;
}

@media only screen and (min-width: 482px) {
  /* line 4528, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-form > p.comment-form-author {
    margin-right: calc(1.5 * var(--global--spacing-horizontal));
  }
  /* line 4532, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comment-form > p.comment-notes,
  .comment-form > p.logged-in-as {
    display: block;
  }
}

/* line 4538, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container {
  display: none;
  justify-content: space-between;
  position: absolute;
  right: 0;
  padding-top: calc(0.5 * var(--global--spacing-vertical));
  padding-bottom: calc(0.25 * var(--global--spacing-vertical));
}

/* line 4547, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container #primary-mobile-menu {
  margin-left: auto;
  padding: calc(var(--button--padding-vertical) - (0.25 * var(--global--spacing-unit))) calc(0.5 * var(--button--padding-horizontal));
}

@media only screen and (max-width: 481px) {
  /* line 4553, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .menu-button-container {
    display: flex;
  }
}

/* line 4558, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button {
  display: flex;
}

/* line 4567, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button .dropdown-icon {
  display: flex;
  align-items: center;
}

/* line 4572, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button .dropdown-icon .svg-icon {
  margin-left: calc(0.25 * var(--global--spacing-unit));
}

/* line 4576, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button .dropdown-icon.open .svg-icon {
  position: relative;
  top: -1px;
}

/* line 4581, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button .dropdown-icon.close {
  display: none;
}

/* line 4585, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button[aria-expanded*=true] .dropdown-icon.open {
  display: none;
}

/* line 4589, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.menu-button-container .button.button[aria-expanded*=true] .dropdown-icon.close {
  display: flex;
}

/* line 4593, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-logo.has-title-and-tagline .menu-button-container .button.button[aria-expanded*=true] .dropdown-icon.close {
  animation-name: twentytwentyone-close-button-transition;
  animation-duration: 0.3s;
}

/* line 4598, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation-open .menu-button-container {
  width: 100%;
  z-index: 500;
}

/* line 4604, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation-open .menu-button-container #primary-mobile-menu {
  position: static;
}

/* line 4608, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation {
  position: absolute;
  top: var(--global--admin-bar--height);
  right: 0;
  margin-top: 0;
  margin-bottom: 0;
}

/* line 4619, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > .primary-menu-container {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding-top: calc(var(--button--line-height) * var(--primary-nav--font-size-button) + 42px + 5px);
  padding-left: var(--global--spacing-unit);
  padding-right: var(--global--spacing-unit);
  padding-bottom: var(--global--spacing-horizontal);
  transition: all 0.15s ease-in-out;
  transform: translateY(var(--global--spacing-vertical));
}

@media only screen and (max-width: 481px) {
  /* line 4637, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > .primary-menu-container {
    height: 100vh;
    z-index: 499;
    overflow-x: hidden;
    overflow-y: auto;
  }
  /* line 4645, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .has-logo.has-title-and-tagline .primary-navigation > .primary-menu-container {
    position: fixed;
    transform: translateY(0) translateX(100%);
  }
  /* line 4650, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .admin-bar .has-logo.has-title-and-tagline .primary-navigation > .primary-menu-container {
    top: var(--global--admin-bar--height);
  }
  /* line 4654, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .admin-bar .primary-navigation > .primary-menu-container {
    height: calc(100vh - var(--global--admin-bar--height));
  }
}

@media only screen and (max-width: 481px) {
  /* line 4664, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation-open .primary-navigation {
    width: 100%;
    position: fixed;
    z-index: 2;
  }
}

/* line 4671, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation-open .primary-navigation > .primary-menu-container {
  position: absolute;
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

@media only screen and (max-width: 481px) {
  /* line 4679, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation-open .has-logo.has-title-and-tagline .primary-navigation > .primary-menu-container {
    transform: translateX(0) translateY(0);
  }
}

@media only screen and (min-width: 482px) {
  /* line 4685, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation {
    position: relative;
    margin-left: auto;
  }
  /* line 4690, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > .primary-menu-container {
    visibility: visible;
    opacity: 1;
    position: relative;
    padding: 0;
    overflow: initial;
    transform: none;
  }
  /* line 4700, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation #toggle-menu {
    display: none;
  }
  /* line 4704, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
    display: none;
  }
  /* line 4708, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .admin-bar .primary-navigation {
    top: initial;
  }
  /* line 4712, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .admin-bar .primary-navigation > .primary-menu-container {
    top: initial;
  }
}

/* line 4717, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  max-width: none;
  padding-left: 0;
  position: relative;
}

@media only screen and (max-width: 481px) {
  /* line 4729, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper {
    padding-bottom: 100px;
  }
  /* line 4733, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper ul {
    padding-left: 0;
  }
}

/* line 4738, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper li {
  display: block;
  position: relative;
  width: 100%;
}

@media only screen and (min-width: 482px) {
  /* line 4745, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper li {
    margin: 0;
    width: inherit;
  }
  /* line 4750, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper li:last-child() {
    margin-right: 0;
  }
}

/* line 4755, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle {
  display: flex;
  height: calc(2 * var(--primary-nav--padding) + 1.15em + 1px);
  width: 44px;
  padding: 0;
  justify-content: center;
  align-items: center;
  background: transparent;
}

/* line 4767, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle:focus {
  outline: 2px solid var(--wp--style--color--link, var(--global--color-primary));
}

@media only screen and (max-width: 481px) {
  /* line 4772, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper .sub-menu-toggle {
    display: none;
  }
}

/* line 4777, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle .icon-plus,
.primary-navigation > div > .menu-wrapper .sub-menu-toggle .icon-minus {
  height: 100%;
  display: flex;
  align-items: center;
}

/* line 4784, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle .icon-plus svg,
.primary-navigation > div > .menu-wrapper .sub-menu-toggle .icon-minus svg {
  margin-top: -1px;
}

/* line 4789, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle .icon-minus {
  display: none;
}

/* line 4793, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle[aria-expanded=true] .icon-minus {
  display: flex;
}

/* line 4797, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle[aria-expanded=true] .icon-plus {
  display: none;
}

/* line 4801, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
  position: relative;
}

@media only screen and (min-width: 482px) {
  /* line 4806, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu {
    left: 0;
    margin: 0;
    min-width: max-content;
    position: absolute;
    top: 100%;
    padding-top: 3px;
    transition: all 0.5s ease;
    z-index: 88888;
  }
  /* line 4817, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu:before,
  .primary-navigation > div > .menu-wrapper > li > .sub-menu:after {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    top: -10px;
    left: var(--global--spacing-horizontal);
  }
  /* line 4830, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu:after {
    top: -9px;
  }
  /* line 4835, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu li {
    background: var(--global--color-background);
  }
  /* line 4839, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-left {
    /* rtl:ignore */
    left: 0;
    /* rtl:ignore */
    right: auto;
  }
  /* line 4847, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-left:before,
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-left:after {
    /* rtl:ignore */
    left: var(--global--spacing-horizontal);
    /* rtl:ignore */
    right: auto;
  }
  /* line 4856, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right {
    /* rtl:ignore */
    right: 0;
    /* rtl:ignore */
    left: auto;
  }
  /* line 4864, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right:before,
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right:after {
    /* rtl:ignore */
    left: auto;
    /* rtl:ignore */
    right: var(--global--spacing-horizontal);
  }
}

@media only screen and (min-width: 482px) {
  /* line 4879, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .primary-menu-container {
    margin-right: calc(0px - var(--primary-nav--padding));
    margin-left: calc(0px - var(--primary-nav--padding));
  }
  /* line 4884, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .primary-menu-container > ul > .menu-item {
    display: flex;
  }
  /* line 4888, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .primary-menu-container > ul > .menu-item > a {
    padding-left: var(--primary-nav--padding);
    padding-right: var(--primary-nav--padding);
  }
  /* line 4893, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .primary-menu-container > ul > .menu-item > a + .sub-menu-toggle {
    margin-left: calc(5px - var(--primary-nav--padding));
  }
}

/* line 4898, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation a {
  display: block;
  padding: var(--primary-nav--padding) 0;
}

@media only screen and (min-width: 482px) {
  /* line 4908, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation a {
    display: block;
  }
}

/* line 4916, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation a + svg {
  fill: var(--primary-nav--color-text);
}

/* line 4931, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation a:focus {
  position: relative;
  z-index: 99999;
  outline-offset: 0;
}

/* line 4950, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation .sub-menu {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-left: var(--primary-nav--padding);
}

@media only screen and (min-width: 482px) {
  /* line 4963, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .sub-menu > .menu-item > .sub-menu {
    padding: 0;
  }
}

@media only screen and (max-width: 481px) {
  /* line 4969, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .sub-menu .menu-item:last-child() {
    margin-bottom: 0;
  }
}

/* line 4974, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation .sub-menu .menu-item > a {
  padding: calc(1.25 * var(--primary-nav--padding)) var(--primary-nav--padding);
  display: block;
}

/* line 4988, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation .menu-item-has-children > .svg-icon {
  display: none;
}

@media only screen and (min-width: 482px) {
  /* line 4993, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .menu-item-has-children > .svg-icon {
    display: inline-block;
    height: 100%;
  }
  /* line 4998, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .primary-navigation .menu-item-has-children .sub-menu .svg-icon {
    display: none;
  }
}

/* line 5003, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation .menu-item-description {
  display: block;
  clear: both;
}

/* line 5011, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.primary-navigation .menu-item-description > span {
  display: inline-block;
}

@media only screen and (max-width: 481px) {
  /* line 5016, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .lock-scrolling .site {
    position: fixed;
    max-width: 100%;
    width: 100%;
  }
}

@keyframes twentytwentyone-close-button-transition {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* line 5033, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation {
  margin-top: calc(2 * var(--global--spacing-vertical));
  margin-bottom: var(--global--spacing-vertical);
}

/* line 5041, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
}

/* line 5049, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper li {
  display: inline;
}

/* line 5054, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper li a {
  padding: calc(1.25 * var(--primary-nav--padding)) var(--primary-nav--padding);
  transition: transform 0.1s ease;
}

/* line 5073, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-dark-theme .footer-navigation-wrapper li a:focus .svg-icon {
  fill: var(--wp--style--color--link, var(--global--color-background));
}

/* line 5077, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-background-white .footer-navigation-wrapper li a:focus .svg-icon {
  fill: var(--wp--style--color--link, var(--global--color-white));
}

/* line 5081, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper li .svg-icon {
  vertical-align: middle;
  fill: var(--footer--color-link);
}

/* line 5086, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper li .svg-icon:hover {
  transform: scale(1.1);
}

/* line 5090, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.footer-navigation-wrapper .sub-menu-toggle,
.footer-navigation-wrapper .menu-item-description {
  display: none;
}

/* Next/Previous navigation */
/* line 5119, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.navigation .nav-links > * {
  min-width: 44px;
  min-height: 44px;
}

/* line 5124, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.navigation .nav-links .nav-next a,
.navigation .nav-links .nav-previous a {
  display: flex;
  flex-direction: column;
}

@media only screen and (min-width: 592px) {
  /* line 5135, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .navigation .nav-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  /* line 5141, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .navigation .nav-links .nav-next,
  .navigation .nav-links .nav-previous {
    flex: 0 1 auto;
    margin-bottom: inherit;
    margin-top: inherit;
    max-width: calc(50% - (0.5 * var(--global--spacing-unit)));
  }
}

/* line 5154, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.navigation .svg-icon {
  display: inline-block;
  fill: currentColor;
  vertical-align: middle;
  position: relative;
}

/* line 5161, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.navigation .nav-previous .svg-icon,
.navigation .prev .svg-icon {
  top: -2px;
  margin-right: calc(0.25 * var(--global--spacing-unit));
}

/* line 5167, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.navigation .nav-next .svg-icon,
.navigation .next .svg-icon {
  top: -1px;
  margin-left: calc(0.25 * var(--global--spacing-unit));
}

/* line 5173, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-navigation {
  margin: var(--global--spacing-vertical) auto;
}

@media only screen and (min-width: 822px) {
  /* line 5178, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .post-navigation {
    margin: var(--global--spacing-vertical) auto;
  }
}

/* line 5188, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-navigation .post-title {
  display: inline-block;
}

@media only screen and (min-width: 822px) {
  /* line 5197, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .post-navigation .post-title {
    margin: 5px calc(24px + (0.25 * var(--global--spacing-unit))) 0;
  }
}

@media only screen and (min-width: 482px) {
  /* line 5203, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .post-navigation .nav-links {
    justify-content: space-between;
  }
}

/* line 5208, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-navigation .nav-next,
.post-navigation .nav-previous {
  margin-top: var(--global--spacing-vertical);
  margin-bottom: var(--global--spacing-vertical);
}

/* line 5214, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-navigation .nav-next:first-child,
.post-navigation .nav-previous:first-child {
  margin-top: 0;
}

/* line 5219, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.post-navigation .nav-next:last-child,
.post-navigation .nav-previous:last-child {
  margin-bottom: 0;
}

/* line 5224, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination,
.comments-pagination {
  padding-top: var(--global--spacing-vertical);
  margin: var(--global--spacing-vertical) auto;
}

@media only screen and (min-width: 822px) {
  /* line 5232, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .pagination,
  .comments-pagination {
    margin: var(--global--spacing-vertical) auto;
  }
}

/* line 5238, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links,
.comments-pagination .nav-links {
  margin-top: calc(-1 * var(--global--spacing-vertical));
}

/* line 5266, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links > *,
.comments-pagination .nav-links > * {
  margin-top: var(--global--spacing-vertical);
  margin-left: calc(0.66 * var(--global--spacing-unit));
  margin-right: calc(0.66 * var(--global--spacing-unit));
}

/* line 5287, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links > *:first-child,
.comments-pagination .nav-links > *:first-child {
  margin-left: 0;
}

/* line 5292, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links > *:last-child,
.comments-pagination .nav-links > *:last-child {
  margin-right: 0;
}

/* line 5297, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links > *.next,
.comments-pagination .nav-links > *.next {
  margin-left: auto;
}

/* line 5302, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.pagination .nav-links > *.prev,
.comments-pagination .nav-links > *.prev {
  margin-right: auto;
}

@media only screen and (max-width: 821px) {
  /* line 5308, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .pagination .nav-links,
  .comments-pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
  }
  /* line 5314, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .pagination .page-numbers,
  .comments-pagination .page-numbers {
    display: none;
  }
  /* line 5319, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .pagination .page-numbers.prev,
  .pagination .page-numbers.next,
  .comments-pagination .page-numbers.prev,
  .comments-pagination .page-numbers.next {
    display: inline-block;
    flex: 0 1 auto;
  }
}

@media only screen and (max-width: 481px) {
  /* line 5329, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .pagination .nav-short,
  .comments-pagination .nav-short {
    display: none;
  }
}

/* line 5335, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.comments-pagination {
  padding-top: calc(0.66 * var(--global--spacing-vertical));
  margin: calc(3 * var(--global--spacing-vertical)) auto;
}

@media only screen and (min-width: 822px) {
  /* line 5341, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .comments-pagination {
    margin: calc(3 * var(--global--spacing-vertical)) auto calc(4 * var(--global--spacing-vertical)) auto;
  }
}

/* line 5350, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area {
  margin-top: calc(6 * var(--global--spacing-vertical));
  padding-bottom: calc(var(--global--spacing-vertical) / 3);
}

@media only screen and (min-width: 652px) {
  /* line 5359, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .widget-area {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: calc(2 * var(--global--spacing-horizontal));
  }
}

@media only screen and (min-width: 1024px) {
  /* line 5367, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .widget-area {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media only screen and (max-width: 481px) {
  /* line 5373, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  .widget-area {
    margin-top: calc(3 * var(--global--spacing-vertical));
  }
}

/* line 5378, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area ul {
  list-style-type: none;
  padding: 0;
}

/* line 5387, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area ul.sub-menu,
.widget-area ul.children {
  margin-left: var(--widget--spacing-menu);
}

/* line 5392, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area ul .sub-menu-toggle {
  display: none;
}

/* line 5414, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area .wp-block-social-links.alignright {
  margin-top: var(--global--spacing-vertical);
  justify-content: flex-end;
}

/* line 5419, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area .wp-block-social-links.alignleft {
  margin-top: var(--global--spacing-vertical);
}

/* line 5423, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget-area:after {
  content: '';
  display: table;
  clear: both;
}

/* line 5435, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.search-form {
  display: flex;
  flex-wrap: wrap;
  margin: auto;
  max-width: var(--responsive--aligndefault-width);
}

/* line 5442, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.search-form > label {
  width: 100%;
  margin-bottom: 0;
}

/* line 5448, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.search-form .search-field {
  flex-grow: 1;
  max-width: inherit;
  margin-top: calc(var(--global--spacing-vertical) / 3);
  margin-right: calc(0.66 * var(--global--spacing-horizontal));
}

/* line 5455, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.search-form .search-submit {
  margin-top: calc(var(--global--spacing-vertical) / 3);
  margin-left: 10px;
}

/* line 5460, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget_search > .search-form .search-field {
  margin-right: calc(-1 * var(--button--border-width));
  appearance: none;
  margin-bottom: calc(0.5 * var(--global--spacing-vertical));
}

/* line 5466, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget_search > .search-form .search-submit {
  margin-left: 0;
  margin-bottom: calc(0.5 * var(--global--spacing-vertical));
}

/* line 5478, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.widget_rss a.rsswidget .rss-widget-icon {
  display: none;
}

/* Category 07 is for any utility classes that are not assigned to a specific component. */
/* line 5483, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  word-break: normal;
}

/* line 5498, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.skip-link:focus {
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  clip-path: none;
  display: block;
  height: auto;
  left: 5px;
  padding: 15px 23px 14px;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
/* line 5520, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
#content[tabindex='-1']:focus {
  outline: 0;
}

@media (prefers-reduced-motion) {
  /* line 5525, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
  * {
    transition-delay: 0s !important;
    transition-duration: 0s !important;
  }
}

/* line 5638, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-purple-to-yellow-gradient-background {
  background: linear-gradient(160deg, var(--global--color-purple), var(--global--color-yellow));
}

/* line 5642, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-yellow-to-purple-gradient-background {
  background: linear-gradient(160deg, var(--global--color-yellow), var(--global--color-purple));
}

/* line 5646, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-green-to-yellow-gradient-background {
  background: linear-gradient(160deg, var(--global--color-green), var(--global--color-yellow));
}

/* line 5650, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-yellow-to-green-gradient-background {
  background: linear-gradient(160deg, var(--global--color-yellow), var(--global--color-green));
}

/* line 5654, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-red-to-yellow-gradient-background {
  background: linear-gradient(160deg, var(--global--color-red), var(--global--color-yellow));
}

/* line 5658, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-yellow-to-red-gradient-background {
  background: linear-gradient(160deg, var(--global--color-yellow), var(--global--color-red));
}

/* line 5662, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-purple-to-red-gradient-background {
  background: linear-gradient(160deg, var(--global--color-purple), var(--global--color-red));
}

/* line 5666, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.has-red-to-purple-gradient-background {
  background: linear-gradient(160deg, var(--global--color-red), var(--global--color-purple));
}

/* line 5670, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
header *,
main *,
footer * {
  max-width: var(--global--spacing-measure);
}

/* line 5676, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
html,
body,
div,
header,
nav,
article,
figure,
hr,
main,
section,
footer {
  max-width: none;
}

/* line 5708, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-IE.is-dark-theme .sub-menu-toggle svg,
.is-IE.is-dark-theme .sub-menu-toggle path,
.is-IE.is-dark-theme .post-navigation .meta-nav svg,
.is-IE.is-dark-theme .post-navigation .meta-nav path {
  fill: #ffffff;
}

/* line 5715, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-IE.is-dark-theme .primary-navigation > div > .menu-wrapper > li > .sub-menu li {
  background: #000000;
}

/* line 5730, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-IE .navigation .nav-links {
  display: block;
}

/* line 5734, web/app/themes/sage/resources/assets/styles/base/_wp-styles.scss */
.is-IE .post-thumbnail .wp-post-image {
  min-width: auto;
}

/*# sourceMappingURL=main.css.map */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL19hbmltYXRpb25zLnNjc3MiLCJiYXNlL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX2N1c3RvbS1wcm9wZXJ0aWVzLnNjc3MiLCJiYXNlL19iYXNpY3Muc2NzcyIsImJhc2UvX2dsb2JhbC5zY3NzIiwiYmFzZS9fbWVkaWEtcXVlcmllcy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19mdW5jdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19saW5rcy5zY3NzIiwiY29tcG9uZW50cy9fdGFncy5zY3NzIiwiY29tcG9uZW50cy9fZG9zc2llcnMuc2NzcyIsImNvbXBvbmVudHMvX2J1cmdlci5zY3NzIiwibGF5b3V0L19sYXlvdXQuc2NzcyIsImxheW91dC9fbWFpbi1oZXJvLnNjc3MiLCJsYXlvdXQvX21haW4taGVyby1saWdodC5zY3NzIiwibGF5b3V0L19zZWN0aW9uLWhlcm8uc2NzcyIsImxheW91dC9fYXJ0aWNsZS10ZWFzZXIuc2NzcyIsImxheW91dC9fYXJ0aWNsZS5zY3NzIiwibGF5b3V0L19jYXRlZ29yeS5zY3NzIiwibGF5b3V0L19hcmNoaXZlLnNjc3MiLCJsYXlvdXQvX2Fkcy5zY3NzIiwibGF5b3V0L19hYm8uc2NzcyIsImxheW91dC9fZGV0YWlsLWhlYWQuc2NzcyIsImxheW91dC9fZGV0YWlsLWNvbnRlbnQuc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJsYXlvdXQvX2hlYWRlci1sb2dvLnNjc3MiLCJsYXlvdXQvX2hlYWRlci1zb2NpYWwuc2NzcyIsImxheW91dC9faGVhZGVyLXV0aWwuc2NzcyIsImxheW91dC9faGVhZGVyLWN0YS5zY3NzIiwibGF5b3V0L19oZWFkZXItdG9waWMuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJiYXNlL193cC1zdHlsZXMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogSW1wb3J0IGV2ZXJ5dGhpbmcgZnJvbSBhdXRvbG9hZCAqL1xuLy8gQGltcG9ydCBcIi4vYXV0b2xvYWQvKiovKlwiO1xuXG4vKipcbiAqIEltcG9ydCBucG0gZGVwZW5kZW5jaWVzXG4gKlxuICogUHJlZml4IHlvdXIgaW1wb3J0cyB3aXRoIGB+YCB0byBncmFiIGZyb20gbm9kZV9tb2R1bGVzL1xuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3Nhc3MtbG9hZGVyI2ltcG9ydHNcbiAqL1xuXG5AaW1wb3J0IFwiYmFzZS9yZXNldFwiO1xuQGltcG9ydCBcImJhc2UvYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcImJhc2UvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYmFzZS9jdXN0b20tcHJvcGVydGllc1wiO1xuQGltcG9ydCBcImJhc2UvYmFzaWNzXCI7XG5AaW1wb3J0IFwiYmFzZS9nbG9iYWxcIjtcbkBpbXBvcnQgXCJiYXNlL21lZGlhLXF1ZXJpZXNcIjtcbkBpbXBvcnQgXCJiYXNlL21peGluc1wiO1xuQGltcG9ydCBcImJhc2UvdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImJhc2UvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGlua3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RhZ3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Rvc3NpZXJzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9idXJnZXJcIjtcbkBpbXBvcnQgXCJsYXlvdXQvbGF5b3V0XCI7XG5AaW1wb3J0IFwibGF5b3V0L21haW4taGVyb1wiO1xuQGltcG9ydCBcImxheW91dC9tYWluLWhlcm8tbGlnaHRcIjtcbkBpbXBvcnQgXCJsYXlvdXQvc2VjdGlvbi1oZXJvXCI7XG5AaW1wb3J0IFwibGF5b3V0L2FydGljbGUtdGVhc2VyXCI7XG5AaW1wb3J0IFwibGF5b3V0L2FydGljbGVcIjtcbkBpbXBvcnQgXCJsYXlvdXQvY2F0ZWdvcnlcIjtcbkBpbXBvcnQgXCJsYXlvdXQvYXJjaGl2ZVwiO1xuQGltcG9ydCBcImxheW91dC9hZHNcIjtcbkBpbXBvcnQgXCJsYXlvdXQvYWJvXCI7XG5AaW1wb3J0IFwibGF5b3V0L2RldGFpbC1oZWFkXCI7XG5AaW1wb3J0IFwibGF5b3V0L2RldGFpbC1jb250ZW50XCI7XG5AaW1wb3J0IFwibGF5b3V0L2hlYWRlclwiO1xuQGltcG9ydCBcImxheW91dC9oZWFkZXItbG9nb1wiO1xuQGltcG9ydCBcImxheW91dC9oZWFkZXItc29jaWFsXCI7XG5AaW1wb3J0IFwibGF5b3V0L2hlYWRlci11dGlsXCI7XG5AaW1wb3J0IFwibGF5b3V0L2hlYWRlci1jdGFcIjtcbkBpbXBvcnQgXCJsYXlvdXQvaGVhZGVyLXRvcGljXCI7XG5AaW1wb3J0IFwibGF5b3V0L2Zvb3RlclwiO1xuQGltcG9ydCBcImJhc2Uvd3Atc3R5bGVzXCI7XG4iLCIvKiBCb3ggc2l6aW5nIHJ1bGVzICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBwYWRkaW5nICovXG51bFtjbGFzc10sXG5vbFtjbGFzc10ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gKi9cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbnAsXG51bFtjbGFzc10sXG5vbFtjbGFzc10sXG5saSxcbmZpZ3VyZSxcbmZpZ2NhcHRpb24sXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qIFJlbW92ZSBsaXN0IHN0eWxlcyBvbiB1bCwgb2wgZWxlbWVudHMgd2l0aCBhIGNsYXNzIGF0dHJpYnV0ZSAqL1xudWxbY2xhc3NdLFxub2xbY2xhc3NdIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cbmE6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xufVxuXG4vKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBOYXR1cmFsIGZsb3cgYW5kIHJoeXRobSBpbiBhcnRpY2xlcyBieSBkZWZhdWx0ICovXG5hcnRpY2xlID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbi8qIEluaGVyaXQgZm9udHMgZm9yIGlucHV0cyBhbmQgYnV0dG9ucyAqL1xuaW5wdXQsXG5idXR0b24sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qIFJlbW92ZSBhbGwgYW5pbWF0aW9ucyBhbmQgdHJhbnNpdGlvbnMgZm9yIHBlb3BsZSB0aGF0IHByZWZlciBub3QgdG8gc2VlIHRoZW0gKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICoge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICB9XG59IiwiLnNoYWtlLW5leHQge1xuICBhbmltYXRpb246IHNoYWtlLW5leHQgMnMgZWFzZSBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBzaGFrZS1uZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5zaGFrZS1wcmV2IHtcbiAgYW5pbWF0aW9uOiBzaGFrZS1wcmV2IDFzIGVhc2UgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgc2hha2UtcHJldiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzaGFrZS1pbnRlcmZlcmVyIHtcbiAgMTAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNXB4LCAwLCAwKSByb3RhdGUoMjVkZWcpO1xuICB9XG4gIDIwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDFweCwgMCwgMCkgcm90YXRlKDI1ZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCkgcm90YXRlKDI1ZGVnKTtcbiAgfVxuXG4gIDQwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDJweCwgMCwgMCkgcm90YXRlKDI1ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNoYWtlLWN1cnJlbnQge1xuICAxMCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMC41cHgsIDAsIDApO1xuICB9XG4gIDIwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDFweCwgMCwgMCk7XG4gIH1cblxuICAzMCUsIDUwJSwgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0ycHgsIDAsIDApO1xuICB9XG5cbiAgNDAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTtcbiAgfVxufVxuXG5cbiIsIi8vIERFRkFVTFQgVkFSSUFCTEVTXG5cbiRmb250LXByaW1hcnk6ICdVYnVudHUnLCBzYW5zLXNlcmlmO1xuXG4vLyBHUklEICYgU0laRVNcbiRzcGFjZXI6ICAgICAgICAgICAgICAgIDJyZW07XG4kbWluLXdpZHRoOiAgICAgICAgICAgICAzMjBweDtcbiR4czogICAgICAgICAgICAgICAgICAgIDQ4MHB4O1xuJHNtOiAgICAgICAgICAgICAgICAgICAgNzY4cHg7XG4kbWQ6ICAgICAgICAgICAgICAgICAgICAxMDI0cHg7XG4kbGc6ICAgICAgICAgICAgICAgICAgICAxMjgwcHg7XG4keGw6ICAgICAgICAgICAgICAgICAgICAxNDQwcHg7XG4kbWF4LXdpZHRoOiAgICAgICAgICAgICAxNjgwcHg7XG5cbiRjb250YWluZXI6ICAgICAgICAgICAgIDEwMCU7XG4kZ3JpZC1ndXR0ZXI6ICAgICAgICAgICAxcmVtO1xuJG91dGVyLXNwYWNlOiAgICAgICAgICAgMnJlbTtcblxuJGFydGljbGUtb2Zmc2V0OiA1cmVtO1xuJGZyYW1lOiAycmVtO1xuXG5cbiRjb2xvci1wcmltYXJ5OiAjRjgwMDAwO1xuJGNvbG9yLXNlY29uZGFyeTogI0ZGRUQwMDtcbiRmYWRlLXdoaXRlOiByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XG4kZmFkZS1ibGFjazogcmdiYSgwLDAsMCwwLjMpO1xuJGZhZGUtZ3JleTogI2Y1ZjVmNTtcblxuJHRleHQtY29sb3ItbGlnaHQ6IHJnYmEoMCwwLDAsMC42KTtcbiRsaW5rLWNvbG9yLWJsYWNrOiByZ2JhKDAsMCwwLDAuMyk7XG5cbiRkZWZhdWx0LXRyYW5zaXRpb246IGFsbCAuMjRzIGVhc2UtaW4tb3V0O1xuJGRlZmF1bHQtdHJhbnNpdGlvbi1zbG93OiBhbGwgLjRzIGVhc2UtaW4tb3V0O1xuXG4kZGVmYXVsdC1zaGFkb3c6IDJweCAycHggNjVweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xuJGRlZmF1bHQtc2hhZG93LWRhcms6IDJweCAycHggMzVweCAwcHggcmdiYSgwLDAsMCwwLjgpO1xuXG4kZGVmYXVsdC1zaGFkb3ctbGFyZ2U6IDRweCA0cHggNDJweCAwcHggcmdiYSgwLDAsMCwwLjI5KTtcbiRkZWZhdWx0LXNoYWRvdy14bDogNHB4IDRweCA3MHB4IDBweCByZ2JhKDAsMCwwLDAuMTUpO1xuXG5cbi8vLy8gRk9OVFNcblxuJHRleHQtZm9udDogJ1VidW50dScsIHNhbnMtc2VyaWY7XG4kaGVhZGxpbmUtZm9udDogJ1Rla28nLCBzYW5zLXNlcmlmO1xuXG4kaGVhZGxpbmUtZm9udC1tZWRpdW06IDUwMDtcbiRoZWFkbGluZS1mb250LXNlbWlib2xkOiA2MDA7XG5cbiIsIi8vIENVU1RPTSBQUk9QRVJUSUVTXG46cm9vdCB7XG4gIC0tZ2FwOiAycmVtO1xuICAtLWNvbnRhaW5lci1nYXA6IDJyZW07XG4gIC0tbmF2LWhlaWdodDogMTByZW07XG4gIC0tdWktaGVpZ2h0OiAyLjNyZW07XG4gIC0tcGFnZXMtdG9wLWdhcDogMTByZW07XG5cbiAgaGVhZGVyLnNjcm9sbGVkIHtcbiAgICAtLW5hdi1oZWlnaHQ6IDUuMnJlbTtcbiAgfVxufVxuIiwiXG5cbmgxLGgyLGg0LGg1LGg2e1xuICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG59IiwiLy8gR1JJRCAmIFNJWkVTXG4kbWluLXdpZHRoOiAzMjBweDtcbiR4czogNDgwcHg7XG4kc206IDc2OHB4O1xuJG1kOiAxMDI0cHg7XG4kbGc6IDEyODBweDtcbiR4bDogMTQ0MHB4O1xuJHh4bDogMTY4MHB4O1xuJG1heC13aWR0aDogMTkyMHB4O1xuIiwiLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuOVxuLy9cbi8vICAgICAgICAgICAgICAgIGh0dHA6Ly9pbmNsdWRlLW1lZGlhLmNvbVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG5cbiRicmVha3BvaW50czogKFxuICAnbWluLXdpZHRoJzogJG1pbi13aWR0aCxcbiAgJ3hzJzogJHhzLFxuICAnc20nOiAkc20sXG4gICdtZCc6ICRtZCxcbiAgJ2xnJzogJGxnLFxuICAneGwnOiAkeGwsXG4gICd4eGwnOiAkeHhsLFxuICAnbWF4LXdpZHRoJzokbWF4LXdpZHRoLFxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxuICAncHJpbnQnOiAncHJpbnQnLFxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KScsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxuLy8vXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgJ3B4JzogMSxcbiAgJ2VtJzogMC4wMSxcbiAgJ3JlbSc6IDAuMSxcbiAgJyc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuLy8vXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcbi8vLyBlbHNlIHdpdGggYEB3YXJuYCwgdXNpbmcgYGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpYFxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcbi8vL1xuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xuICBAaWYgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJykge1xuICAgIEBlcnJvciAkbWVzc2FnZTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJG5vb3A6IG5vb3AoKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1lc3NhZ2U7XG59XG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge1xuICB9XG59XG5cbi8vL1xuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxuLy8vXG5AZnVuY3Rpb24gbm9vcCgpIHtcbn1cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICgkcHJlZml4ID09ICdtaW4nIGFuZCAkdmFsdWUgPiAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSlcbiAgICAgIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xuICAkZGltZW5zaW9uOiAnd2lkdGgnO1xuXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XG59XG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVmFsaWQgbWVkaWEgcXVlcnlcbi8vL1xuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcbiAgLy8gSWYgaXQgaXMgcGFydCBvZiAkbWVkaWEtZXhwcmVzc2lvbnMsIGl0IGhhcyBubyBvcGVyYXRvclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKTtcbiAgfVxuXG4gICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pO1xuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xufVxuXG4vLy9cbi8vLyBTbGljZSBgJGxpc3RgIGJldHdlZW4gYCRzdGFydGAgYW5kIGAkZW5kYCBpbmRleGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZW5kIFtsZW5ndGgoJGxpc3QpXSAtIEVuZCBpbmRleFxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3Rcbi8vL1xuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xuICAgIEByZXR1cm4gKCk7XG4gIH1cblxuICAkcmVzdWx0OiAoKTtcblxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkbGlzdCwgJGkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vL1xuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cbi8vL1xuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn1cbi8vL1xuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcbiAgICAkXzogaW0tbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xuICB9XG5cbiAgJGZpcnN0LWNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSk7XG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKTtcbiAgJG51bWJlcnM6IChcbiAgICAnMCc6IDAsXG4gICAgJzEnOiAxLFxuICAgICcyJzogMixcbiAgICAnMyc6IDMsXG4gICAgJzQnOiA0LFxuICAgICc1JzogNSxcbiAgICAnNic6IDYsXG4gICAgJzcnOiA3LFxuICAgICc4JzogOCxcbiAgICAnOSc6IDksXG4gICk7XG5cbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90KGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpO1xuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKFxuICAgICdweCc6IDFweCxcbiAgICAnY20nOiAxY20sXG4gICAgJ21tJzogMW1tLFxuICAgICclJzogMSUsXG4gICAgJ2NoJzogMWNoLFxuICAgICdwYyc6IDFwYyxcbiAgICAnaW4nOiAxaW4sXG4gICAgJ2VtJzogMWVtLFxuICAgICdyZW0nOiAxcmVtLFxuICAgICdwdCc6IDFwdCxcbiAgICAnZXgnOiAxZXgsXG4gICAgJ3Z3JzogMXZ3LFxuICAgICd2aCc6IDF2aCxcbiAgICAndm1pbic6IDF2bWluLFxuICAgICd2bWF4JzogMXZtYXgsXG4gICk7XG5cbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy9cbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2Zcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXG4vLy8gZm9yIGluc3RhbmNlLlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG4gICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpXG4gIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKSAuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIiLCIuaGFzLWRyb3AtY2FwOm5vdCg6Zm9jdXMpOjpmaXJzdC1sZXR0ZXIge1xuICBmb250LXNpemU6IDZlbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICBtYXJnaW46IDAuMDllbSAwLjNlbSAwIDA7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGxpbmUtZm9udC1zZW1pYm9sZDtcbn1cblxuQG1peGluIHNtYWxsLXRleHQge1xuICBmb250LWZhbWlseTogJHRleHQtZm9udDtcbiAgZm9udC1zaXplOiAwLjg3ZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC44O1xuXG4gIC5pbnZlcnRlZCB7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG59XG5cbkBtaXhpbiBtZWRpdW0tdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkdGV4dC1mb250O1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBvcGFjaXR5OiAwLjg7XG5cbiAgLmludmVydGVkICYge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG5AbWl4aW4gdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkdGV4dC1mb250O1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuQG1peGluIGhlcm8taGVhZGxpbmUge1xuICBmb250LXNpemU6IDMuNGVtO1xuICBsaW5lLWhlaWdodDogMC45ZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICBmb250LXdlaWdodDogJGhlYWRsaW5lLWZvbnQtbWVkaXVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIGZvbnQtc2l6ZTogMy42ZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICBmb250LXNpemU6IDQuNGVtO1xuICB9XG5cbiAgLmludmVydGVkICYge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG4ucGFnZS1oZWFkZXIgaDEge1xuICBmb250LXNpemU6IDRlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xufVxuXG4ucGFyYWdyYXBoIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICB9XG5cbiAgJjpob3ZlcjphZnRlcixcbiAgJjphY3RpdmU6YWZ0ZXIsXG4gICY6Zm9jdXM6YWZ0ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlWCgxKTtcbiAgfVxufVxuIiwiIiwiXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0LndwZm9ybXMtZmllbGQtbWVkaXVtLFxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSBzZWxlY3Qud3Bmb3Jtcy1maWVsZC1tZWRpdW0sXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIC53cGZvcm1zLWZpZWxkLXJvdy53cGZvcm1zLWZpZWxkLW1lZGl1bSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSAud3Bmb3Jtcy1maWVsZC1zdWJsYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgZm9udC1zaXplOiAxLjA2ZW07XG4gIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgbWFyZ2luOiAwLjJlbSAwIDA7XG59XG5cbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gLndwZm9ybXMtZmllbGQtbGFiZWwge1xuICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjRlbTtcbiAgY29sb3I6IGJsYWNrO1xuICBtYXJnaW46IDA7XG59XG5cbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT1kYXRlXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWVdLCBcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF0sIFxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0W3R5cGU9bW9udGhdLCBcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT1udW1iZXJdLCBcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF0sIFxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSBpbnB1dFt0eXBlPXJhbmdlXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0W3R5cGU9c2VhcmNoXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0W3R5cGU9dGVsXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGlucHV0W3R5cGU9dGV4dF0sIFxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSBpbnB1dFt0eXBlPXRpbWVdLCBcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT11cmxdLCBcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gaW5wdXRbdHlwZT13ZWVrXSwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIHNlbGVjdCwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIHRleHRhcmVhLFxuZGl2LndwZm9ybXMtY29udGFpbmVyIGZvcm0ud3Bmb3Jtcy1mb3JtIC5jaG9pY2VzX19pbm5lciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBoZWlnaHQ6IDMuNWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMWVtO1xufVxuXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCBmb3JtLndwZm9ybXMtZm9ybSAud3Bmb3Jtcy1maWVsZC1zdHJpcGUtY3JlZGl0LWNhcmQtY2FyZG51bWJlciwgXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCBmb3JtLndwZm9ybXMtZm9ybSBpbnB1dC53cGZvcm1zLXN0cmlwZS1jcmVkaXQtY2FyZC1oaWRkZW4taW5wdXQge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGhlaWdodDogMy41ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAxZW07XG59XG5cblxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIGJ1dHRvblt0eXBlPXN1Ym1pdF0sXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIC53cGZvcm1zLXBhZ2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAwLjhlbSAyZW07XG4gIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0LXNoYWRvdztcbiAgfVxufVxuXG5kaXYud3Bmb3Jtcy1jb250YWluZXItZnVsbCAud3Bmb3Jtcy1mb3JtIC53cGZvcm1zLWZpZWxkIHtcbiAgcGFkZGluZzogMS4xZW0gMDtcbn1cblxuXG5kaXYud3Bmb3Jtcy1jb250YWluZXIgZm9ybS53cGZvcm1zLWZvcm0gLmNob2ljZXMge1xuICBtYXJnaW4tYm90dG9tOiAwLjNlbTtcbn1cblxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSAuY2hvaWNlcyAuY2hvaWNlc19faW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAuNmVtO1xufVxuXG5cbmRpdi53cGZvcm1zLWNvbnRhaW5lciBmb3JtLndwZm9ybXMtZm9ybSAuY2hvaWNlc1tkYXRhLXR5cGUqPVwic2VsZWN0LW9uZVwiXTphZnRlciB7XG4gIHJpZ2h0OiAxZW07XG59XG5cbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gLndwZm9ybXMtcGFnZS1pbmRpY2F0b3IucHJvZ3Jlc3MgLndwZm9ybXMtcGFnZS1pbmRpY2F0b3ItcGFnZS1wcm9ncmVzcyxcbmRpdi53cGZvcm1zLWNvbnRhaW5lci1mdWxsIC53cGZvcm1zLWZvcm0gLndwZm9ybXMtcGFnZS1pbmRpY2F0b3IucHJvZ3Jlc3MgLndwZm9ybXMtcGFnZS1pbmRpY2F0b3ItcGFnZS1wcm9ncmVzcy13cmFwIHtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuXG4ud3Bmb3Jtcy1maWVsZC1kZXNjcmlwdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cblxuZGl2LndwZm9ybXMtY29udGFpbmVyLWZ1bGwgLndwZm9ybXMtZm9ybSAud3Bmb3Jtcy1lcnJvci1jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICM5OTAwMDA7XG4gIHBhZGRpbmc6IDFlbSAyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDgwJTtcbiAgbGVmdDogMTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4iLCJcbkBtaXhpbiBjdGEtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpbWFyeTtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICBwYWRkaW5nOiAwLjdlbSAyZW0gMC42ZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3c7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3ctbGFyZ2U7XG4gIH1cbn1cblxuQG1peGluIGNpcmNsZS1saW5rcyB7XG4gIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IHNvbGlkIDFweCAkZmFkZS13aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cztcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB9XG5cbiAgaHRtbDpub3QoLm5hdmlnYXRpb24tb3BlbikgLmludmVydGVkOm5vdCguc2Nyb2xsZWQpICYge1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRmYWRlLWJsYWNrO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCBibGFjaztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHJlYWQtbGluayB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBib3JkZXItY29sb3I6IHdoaXRlO1xuXG4gIC5pbnZlcnRlZCAmIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB3aWR0aDogMi4yZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOWVtO1xuICAgIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG5cbiAgICAuaW52ZXJ0ZWQgJiB7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgd2lkdGg6IDhweDtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4O1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAgIC5pbnZlcnRlZCAmIHtcbiAgICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUsXG4gIGFydGljbGU6aG92ZXIgJiB7XG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC41ZW0pIHNjYWxlWCgwLjg1KTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC41ZW0pIHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjdGEtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBib3JkZXItY29sb3I6IHdoaXRlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiAyLjVlbTtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogOHB4O1xuICAgIHdpZHRoOiA4cHg7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDJweDtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG59XG4iLCJhIHtcbiAgLy8gY29sb3I6ICRjb2xvci1saW5rO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5tYWluIGEge1xuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2Utb3V0O1xuXG4gICY6aG92ZXIge1xuICAgIC8vIGNvbG9yOiAkY29sb3ItbGluay1ob3ZlcjtcbiAgfVxufVxuXG4ucmVhZC1saW5rIHtcbiAgQGluY2x1ZGUgcmVhZC1saW5rO1xufVxuIiwidWwudGFncyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAxLjJlbSAwIDAuNmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgIG1hcmdpbjogMS43ZW0gMCAwLjllbTtcbiAgfVxuXG4gIGxpIHtcbiAgICBtYXJnaW46IDAgMC42ZW0gMC42ZW0gMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgICAgbWFyZ2luOiAwIDAuOGVtIDAuOGVtIDA7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgc21hbGwtdGV4dDtcbiAgICBwYWRkaW5nOiAwLjRlbSAxLjNlbTtcbiAgICBib3JkZXI6IHNvbGlkICRmYWRlLXdoaXRlIDFweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMC42ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgICAgcGFkZGluZzogMC42ZW0gMS42ZW07XG4gICAgfVxuXG4gICAgLmludmVydGVkICYge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZmFkZS1ibGFjaztcbiAgICB9XG4gIH1cbn1cbiIsIi5kb3NzaWVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGdyaWQtYXJlYTogZG9zc2llcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAzZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApICogLTEpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogM2VtO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC05MGRlZywgd2hpdGUgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cbiAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1kb3NzaWVyICYge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIHdpZHRoOiA0ZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1jb250YWluZXItZ2FwKSAqIC0xKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDNlbTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgd2hpdGUgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cbiAgICAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1kb3NzaWVyICYge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIHdpZHRoOiA0ZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5kb3NzaWVyLWNhcm91c3NlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLWNvbnRhaW5lci1nYXApIDAgY2FsYyh2YXIoLS1jb250YWluZXItZ2FwKSAqIDIuNSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgcGFkZGluZzogdmFyKC0tY29udGFpbmVyLWdhcCkgMCBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApICogMS41KTtcbiAgfVxufVxuXG4uZG9zc2llci13cmFwcGVyIC5hcnRpY2xlLWhlYWQgLmFydGljbGUtaGVhZGxpbmUge1xuICBmb250LXNpemU6IDEuNmVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBwYWRkaW5nOiAxLjNyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj14bCcpIHtcbiAgICBmb250LXNpemU6IDIuM2VtO1xuICB9XG59XG5cbi5kb3NzaWVyLXRvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIC5kb3NzaWVyLWhlYWRsaW5lLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogNjBjaDtcbiAgfVxuXG4gIC5kb3NzaWVyLWhlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDIuM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjllbTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGxpbmUtZm9udC1tZWRpdW07XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMi42ZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgICBmb250LXNpemU6IDNlbTtcbiAgICB9XG4gIH1cbn1cblxuLm1pY3JvLXNsaWRlci12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoNzAlICsgY2FsYyh2YXIoLS1jb250YWluZXItZ2FwKSAqIDIpKTtcbiAgLy9mYWxsYmFjayBmb3Igc3R1cGlkIHNhZmFyaVxuICB3aWR0aDogY2FsYyg3MCUgKyA0cmVtKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMjRlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1nYXApKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIGhlaWdodDogMjBlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgIGhlaWdodDogMjJlbTtcbiAgfVxufVxuXG4uc2xpZGVyLXdyYXBwZXItdmVydGljYWwge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5zbGlkZXItaXRlbS12ZXJ0aWNhbC5hY3RpdmUge1xuICAuYXJ0aWNsZS1kZXRhaWxzLFxuICAuYXJ0aWNsZS10ZXh0LFxuICAucmVhZC1saW5rIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5zbGlkZXItaXRlbS12ZXJ0aWNhbCB7XG4gIC5hcnRpY2xlLWRldGFpbHMsXG4gIC5hcnRpY2xlLXRleHQsXG4gIC5yZWFkLWxpbmsge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnNsaWRlci1pdGVtLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cblxuLnNsaWRlci1pdGVtLmFjdGl2ZSB7XG4gIC5zZWN0aW9uLWhlcm8tY29udGVudCB7XG4gICAgb3BhY2l0eTogMTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgIH1cbiAgfVxufVxuXG51bC5zbGlkZXItY29udHJvbHMtdmVydGljYWwge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwKTtcbiAgbWFyZ2luLXRvcDogLTExZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49eHMnKSB7XG4gICAgbWFyZ2luLXRvcDogLTdlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXNtJykge1xuICAgIG1hcmdpbi10b3A6IC01ZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICBtYXJnaW4tdG9wOiAtM2VtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLWRvc3NpZXIgJiB7XG4gICAgcGFkZGluZy10b3A6IDZyZW07XG4gIH1cblxuICBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGxpLmluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZDogJGZhZGUtYmxhY2s7XG4gIH1cblxuICBsaSBhIHtcbiAgICB0ZXh0LWluZGVudDogLTEwMDAwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb24tc2xvdztcbiAgfVxuXG4gIGxpLmFjdGl2ZSBhIHtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgfVxufVxuXG4jcHJldmlvdXMtdmVydCxcbiNuZXh0LXZlcnQge1xuICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodCk7XG4gIHdpZHRoOiB2YXIoLS11aS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogLTEwMDBlbTtcbiAgYm9yZGVyOiBzb2xpZCAkZmFkZS1ibGFjayAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgc3BhbiB7XG4gICAgaGVpZ2h0OiBjYWxjKHZhcigtLXVpLWhlaWdodCkgLyA0KTtcbiAgICB3aWR0aDogY2FsYyh2YXIoLS11aS1oZWlnaHQpIC8gNCk7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4IGJsYWNrO1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4IGJsYWNrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCBibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIH1cbn1cblxuI3ByZXZpb3VzLXZlcnQge1xuICBtYXJnaW4tcmlnaHQ6IDJlbTtcblxuICBzcGFuIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICBtYXJnaW4tbGVmdDogMC4yZW07XG4gIH1cbn1cblxuI25leHQtdmVydCB7XG4gIG1hcmdpbi1sZWZ0OiAyZW07XG5cbiAgc3BhbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yZW07XG4gIH1cbn1cblxuLnNsaWRlci1pdGVtOm5vdCguYWN0aXZlKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi5idXJnZXItY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXhzXCIpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnVyZ2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMS4zNWVtO1xuICB3aWR0aDogMi4xZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjc1ZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBkaXYge1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAuaW52ZXJ0ZWQgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblxuICAgICAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGl2Om50aC1jaGlsZCgxKSB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG5cbiAgZGl2Om50aC1jaGlsZCgyKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuXG4gICAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cblxuICBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG5cbiAgICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9XG4gIH1cblxuICBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cbiIsImh0bWwge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgZm9udC1zaXplOiAxNC41cHg7XG4gIGZvbnQtZmFtaWx5OiAkdGV4dC1mb250O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXNtJykge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXhsJykge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXh4bCcpIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1tYXgtd2lkdGgnKSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49MTkzMHB4Jykge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG5ib2R5IHtcbiAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbmJvZHk6bm90KC5ob21lKSAud3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNTB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLndyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDUwdmg7XG59XG5cbi5ob21lIC53cmFwIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTEwZW07XG4gIHBhZGRpbmc6IDAgdmFyKC0tY29udGFpbmVyLWdhcCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmNvbnRhaW5lci1mdWxsIHtcbiAgcGFkZGluZzogJGZyYW1lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFyY2hpdmUgLmNvbnRhaW5lci1jb250ZW50IHtcbiAgcGFkZGluZzogdmFyKC0tcGFnZXMtdG9wLWdhcCkgdmFyKC0tY29udGFpbmVyLWdhcCk7XG5cbiAgLmFydGljbGUtdGVhc2VyLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBhZ2U6bm90KC5ob21lKSB7XG4gIC5iYWNrZ3JvdW5kLXBhdHRlcm4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1JTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDkwdnc7XG4gICAgICBoZWlnaHQ6IDkwdnc7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IDRweCA0cHggNzBweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTUlKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiA1MHZ3O1xuICAgICAgaGVpZ2h0OiA1MHZ3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiA0cHggNHB4IDcwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTU1JSk7XG4gICAgfVxuICB9XG59XG5cbi5hcmNoaXZlIC5iYWNrZ3JvdW5kLXBhdHRlcm4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiA1JTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnBhZ2UgLmNvbnRhaW5lci1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICBwYWRkaW5nOiB2YXIoLS1wYWdlcy10b3AtZ2FwKSB2YXIoLS1jb250YWluZXItZ2FwKTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICBtYXgtd2lkdGg6IDcwdnc7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICBtYXgtd2lkdGg6IDYwdnc7XG4gIH1cbn1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tZ2FwKTtcbn1cblxuLnBhZ2UtaGVhZGVyLWJ0bi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogM2VtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG5cbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjdGEtYnV0dG9uO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG4ud3AtYmxvY2stcXVvdGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCRmYWRlLWdyZXksIDEpO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNmVtIDJlbSAyZW07XG4gIGNvbG9yOiBibGFjaztcblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBwYWRkaW5nOiAwLjJlbTtcbiAgfVxufVxuXG5ib2R5IC53cC1ibG9jay1xdW90ZTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG59XG5cbkBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICA6cm9vdCB7XG4gICAgLS1jb250YWluZXItZ2FwOiA1cmVtO1xuICAgIC0tZ2FwOiAyLjVyZW07XG4gICAgLS1wYWdlcy10b3AtZ2FwOiAxMmVtO1xuICB9XG59XG5cbi5oZXJvLWhlYWRsaW5lIHtcbiAgQGluY2x1ZGUgaGVyby1oZWFkbGluZTtcbn1cblxuLnNlY3Rpb24taGVhZGxpbmUge1xuICBzY3JvbGwtbWFyZ2luLXRvcDogNGVtO1xufVxuXG4uZXJyb3I0MDQgLndyYXAge1xuICBtYXgtd2lkdGg6IDExMGVtO1xuICBwYWRkaW5nOiB2YXIoLS1wYWdlcy10b3AtZ2FwKSB2YXIoLS1jb250YWluZXItZ2FwKTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC5zZWFyY2gtZm9ybSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbiNmbGlwYm9va0NvbnRhaW5lcldyYXBwZXIge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJi5zaG93IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAuZGYtdWktd3JhcHBlci5kZi11aS1jb250cm9scyAuZGYtdWktdGh1bWJuYWlsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5sb2ctaW4sXG4ubWVpbi1iZXJlaWNoLFxuLnZpZWxlbi1kYW5rLWZ1ZXItaWhyZS1iZXN0ZWxsdW5nIHtcbiAgLmNvbnRhaW5lci1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDkwdnc7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5oYXMtMi1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgLmhhcy0yLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1JTtcbiAgICB9XG4gIH1cblxuICAuaGFzLTItY29sdW1ucyAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1nYXApICogMik7XG4gICAgICBtYXgtd2lkdGg6IDY1JTtcbiAgICB9XG4gIH1cblxuICBmaWd1cmUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02ZW0pO1xuICAgIH1cbiAgfVxufVxuXG5maWd1cmUgLmNvcHlyaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAubWFpbi1oZXJvICYsIC5zbGlkZXItaXRlbSAmLCAuYXJ0aWNsZS1oZWFkICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ucG9zdHMtbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gIC5uYXYtbGlua3Mge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG4ubm90aWNlIHtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gIGJveC1zaGFkb3c6IDJweCAycHggNjVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmRhcnk7XG5cbiAgLm1haW4taGVyby1jb250ZW50ICYge1xuICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgfVxufVxuIiwiLm1haW4taGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogNzB2aDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgLmludmVydGVkICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIC05MGRlZyxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMCkgMCUsXG4gICAgICByZ2JhKDAsIDAsIDAsIDAuNjUpIDUwJSxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICAgICk7XG4gICAgb3BhY2l0eTogMC44O1xuXG4gICAgLmludmVydGVkICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgd2lkdGg6IDUwdnc7XG4gICAgfVxuICB9XG5cbiAgLmhlcm8taW1hZ2Uge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cblxuLmhvbWUgLm1haW4taGVybyArIC5hcnRpY2xlLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAtMi41ZW07XG59XG5cbi5oZXJvLWNvbnRlbnQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW5hdi1oZWlnaHQpICogMS4xKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAqIDEuMSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAqIDEuMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAqIDAuNik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm1haW4taGVyby1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiKSB7XG4gICAgbWF4LXdpZHRoOiAzMmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICBtYXgtd2lkdGg6IDM1ZW07XG4gIH1cbn1cblxuLmFydGljbGUtZGV0YWlscyB7XG4gIEBpbmNsdWRlIHNtYWxsLXRleHQ7XG4gIG1hcmdpbi1ib3R0b206IDEuNGVtO1xuXG4gIC5pbnZlcnRlZCAmIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuLmFydGljbGUtdGV4dCB7XG4gIEBpbmNsdWRlIG1lZGl1bS10ZXh0O1xuXG4gIC5pbnZlcnRlZCAmIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuLmFydGljbGUtZGV0YWlscy1kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogMCAxZW07XG59XG5cbi5tYWluLWhlcm8ge1xuICAucmVhZC1saW5rIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLXRvcDogMC43ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cblxuLmludGVyZmVyZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgaGVpZ2h0OiA3LjZlbTtcbiAgd2lkdGg6IDcuNmVtO1xuICBwYWRkaW5nOiAwLjg1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6IGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogJGRlZmF1bHQtc2hhZG93O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNWRlZyk7XG4gIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIpIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTZlbTtcbiAgICB0b3A6IC0yLjZlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLmNhdGVnb3J5ICYge1xuICAgICAgcmlnaHQ6IC0xMGVtO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGFuaW1hdGlvbjogc2hha2UtaW50ZXJmZXJlciAwLjhzIGN1YmljLWJlemllcigwLjM2LCAwLjA3LCAwLjE5LCAwLjk3KSBib3RoO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggMzVweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgfVxuXG4gIGkge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjdyZW07XG4gIH1cbn1cbiIsIi50aGVtZS1saWdodCB7XG4gIC5tYWluLWhlcm8ge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5iYWNrZ3JvdW5kLXBhdHRlcm4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1JTtcbiAgICB9XG4gIH1cblxuICAubWFpbi1oZXJvLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKiAxLjMpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAqIDAuNik7XG4gICAgICBtYXgtd2lkdGg6IDM0ZW07XG4gICAgfVxuICB9XG59XG5cbi50aGVtZS1saWdodCAuaGVyby1pbWFnZS13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAqIDEuMyk7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMCU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNTB2dztcbiAgICBoZWlnaHQ6IDUwdnc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0LXNoYWRvdy14bDtcbiAgICBvcGFjaXR5OiAwLjQ7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB6LWluZGV4OiAtMjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDkwdnc7XG4gICAgaGVpZ2h0OiA5MHZ3O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG5cbiAgLmhlcm8taW1hZ2Uge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvYmplY3QtZml0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4iLCIuc2VjdGlvbi1oZXJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuaGVyby1pbWFnZSB7XG4gICAgei1pbmRleDogLTE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZXJvLXRhZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLXVpLWhlaWdodCkgKiAxLjMpO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDFlbTtcbiAgbGVmdDogdmFyKC0tY29udGFpbmVyLWdhcCk7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gIHBhZGRpbmc6IDAgMWVtO1xuXG4gIGkge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNGVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjNlbTtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZXJvLWNvbnRlbnQge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uLXNsb3c7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49c20nKSB7XG4gICAgbWF4LXdpZHRoOiAzMmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgbWF4LXdpZHRoOiAzNWVtO1xuICB9XG5cbiAgLmhlcm8taGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMy41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDAuOWVtO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgIGZvbnQtc2l6ZTogNC40ZW07XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgLTkwZGVnLFxuICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDAlLFxuICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNjUpIDUwJSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAxKSAxMDAlXG4gICAgICApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbi1zbG93O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIHdpZHRoOiA3MHZ3O1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1kZXRhaWxzIHtcbiAgQGluY2x1ZGUgc21hbGwtdGV4dDtcbiAgbWFyZ2luLWJvdHRvbTogMS40ZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49c20nKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM1cHgpO1xuICB9XG5cbiAgLmludmVydGVkICYge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgfVxufVxuXG4uYXJ0aWNsZS10ZXh0IHtcbiAgQGluY2x1ZGUgbWVkaXVtLXRleHQ7XG5cbiAgLmludmVydGVkICYge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG4uYXJ0aWNsZS1kZXRhaWxzLWRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwYWRkaW5nOiAwIDFlbTtcbn1cblxuLnNlY3Rpb24taGVybyB7XG4gIC5yZWFkLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tdG9wOiAwLjdlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZXJvIC5taWNyby1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2xpZGVyLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gIG1pbi1oZWlnaHQ6IDM1ZW0gIWltcG9ydGFudDtcbn1cblxuLnNsaWRlci1pdGVtIHtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4wNiksIDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDcwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgMGRlZyxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwKSAwJSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjY1KSA1MCUsXG4gICAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICAgICAgKTtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgei1pbmRleDogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgaGVpZ2h0OiAzMCU7XG4gICAgfVxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgLTE4MGRlZyxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwKSAwJSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjY1KSA1MCUsXG4gICAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICAgICAgKTtcbiAgfVxufVxuXG4uc2xpZGVyLWl0ZW0uYWN0aXZlIHtcbiAgLnNlY3Rpb24taGVyby1jb250ZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICB9XG59XG5cbnVsLnNsaWRlci1jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IHZhcigtLWNvbnRhaW5lci1nYXApO1xuICBib3R0b206IHZhcigtLWNvbnRhaW5lci1nYXApO1xuICBsZWZ0OiB2YXIoLS1jb250YWluZXItZ2FwKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBwYWRkaW5nLXRvcDogMmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm90dG9tOiBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApIC8gMik7XG4gIH1cblxuICBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGxpLmluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZDogJGZhZGUtd2hpdGU7XG4gIH1cblxuICBsaSBhIHtcbiAgICB0ZXh0LWluZGVudDogLTEwMDAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbi1zbG93O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICB3aWR0aDogMy41ZW07XG4gICAgfVxuICB9XG5cbiAgbGkuYWN0aXZlIGEge1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICB9XG59XG5cbiNwcmV2aW91cyxcbiNuZXh0IHtcbiAgaGVpZ2h0OiB2YXIoLS11aS1oZWlnaHQpO1xuICB3aWR0aDogdmFyKC0tdWktaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwZW07XG4gIGJvcmRlcjogc29saWQgJGZhZGUtd2hpdGUgMXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gIHNwYW4ge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS11aS1oZWlnaHQpIC8gNCk7XG4gICAgd2lkdGg6IGNhbGModmFyKC0tdWktaGVpZ2h0KSAvIDQpO1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDJweCB3aGl0ZTtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweCB3aGl0ZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB9XG59XG5cbiNwcmV2aW91cyB7XG4gIG1hcmdpbi1yaWdodDogMmVtO1xuXG4gIHNwYW4ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjJlbTtcbiAgfVxufVxuXG4jbmV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAyZW07XG5cbiAgc3BhbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4yZW07XG4gIH1cbn1cblxuLnNsaWRlci1pdGVtOm5vdCguYWN0aXZlKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi5hcnRpY2xlLXRlYXNlci1zZWN0aW9uIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGdyaWQtdGVtcGxhdGU6XG4gICAgXCJhcnRpY2xlLXRlYXNlclwiXG4gICAgXCJhZHNcIlxuICAgIFwiYWRzXCI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIpIHtcbiAgICBnYXA6IHZhcigtLWdhcCkgdmFyKC0tZ2FwKTtcbiAgICBncmlkLXRlbXBsYXRlOlxuICAgICAgXCJhcnRpY2xlLXRlYXNlciBhcnRpY2xlLXRlYXNlclwiXG4gICAgICBcImFkcyAgICAgICBhZHNcIjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICBcImFydGljbGUtdGVhc2VyIGFydGljbGUtdGVhc2VyIGFkc1wiXG4gICAgICBcImFydGljbGUtdGVhc2VyIGFydGljbGUtdGVhc2VyIGFkc1wiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4xZnIgMS4xZnIgMC44ZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgfVxuXG4gIC5hcnRpY2xlLWhlYWQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuYXJ0aWNsZS1kZXRhaWxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjFlbTtcbiAgfVxuXG4gIC5yZWFkLWxpbmsge1xuICAgIG1hcmdpbi10b3A6IDAuN2VtO1xuICB9XG5cbiAgLmFydGljbGUtdGVhc2VyLWdyaWQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWdhcCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIG1pbm1heCgxNWVtLCAxZnIpKTtcbiAgICBnYXA6IHZhcigtLWdhcCk7XG4gICAgZ3JpZC1hcmVhOiBhcnRpY2xlLXRlYXNlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXNtJykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDE1ZW0sIDFmcikpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDEyZW0sIDFmcikpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDE1ZW0sIDFmcikpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhsJykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDE4ZW0sIDFmcikpO1xuICAgIH1cbiAgfVxufVxuXG4iLCIuYXJ0aWNsZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5hcnRpY2xlLXRvcCB7XG4gIG1hcmdpbi10b3A6IC0kYXJ0aWNsZS1vZmZzZXQgKiAxLjU7XG59XG5cbmFydGljbGUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgLmFydGljbGUtaGVhZC13LXRleHQ6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS10b3BiYXIge1xuICBoZWlnaHQ6ICRhcnRpY2xlLW9mZnNldDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgLmN1cnJlbnQtZWRpdGlvbi13cmFwcGVyIHtcbiAgICAmOmhvdmVyIC5jdXJyZW50LWVkaXRpb24tbGluayxcbiAgICAmOmZvY3VzIC5jdXJyZW50LWVkaXRpb24tbGluayxcbiAgICAmOmFjdGl2ZSAuY3VycmVudC1lZGl0aW9uLWxpbmsge1xuICAgICAgYW5pbWF0aW9uOiBzaGFrZS1jdXJyZW50IDAuOHMgY3ViaWMtYmV6aWVyKDAuMzYsIDAuMDcsIDAuMTksIDAuOTcpIGJvdGg7XG4gICAgfVxuICB9XG5cbiAgLmN1cnJlbnQtZWRpdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDNlbSAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MCUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAuY3VycmVudC1lZGl0aW9uLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG5cbiAgLmN1cnJlbnQtZWRpdGlvbi1pbWcge1xuICAgIHdpZHRoOiA3LjdlbTtcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3ctZGFyaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTUlKSByb3RhdGUoLTMwZGVnKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgICB3aWR0aDogOC41ZW07XG4gICAgfVxuICB9XG5cbiAgLnJlYWQtbGluayB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1yaWdodDogMmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1heC13aWR0aFwiKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5ob21lIC5hcnRpY2xlLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZTpcbiAgICBcImFydGljbGUtMVwiXG4gICAgXCJhcnRpY2xlLTJcIlxuICAgIFwiZG9zc2llclwiXG4gICAgXCJhZHNcIlxuICAgIFwiYWRzXCI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIpIHtcbiAgICBncmlkLWdhcDogdmFyKC0tZ2FwKSB2YXIoLS1nYXApO1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICBcImFydGljbGUtMSBhcnRpY2xlLTJcIlxuICAgICAgXCJhZHMgICAgICAgYWRzXCJcbiAgICAgIFwiZG9zc2llciBkb3NzaWVyXCI7XG5cbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICBcImFydGljbGUtMSBhcnRpY2xlLTIgYWRzXCJcbiAgICAgIFwiZG9zc2llciBkb3NzaWVyIGFkc1wiO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4xZnIgMS4xZnIgMC44ZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG5cbiAgYXJ0aWNsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1jb250YWluZXItZ2FwKSAqIDEuNSk7XG5cbiAgICAuYXJ0aWNsZS10ZXh0LFxuICAgIC5hcnRpY2xlLWRldGFpbHMge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGFydGljbGU6bnRoLW9mLXR5cGUoMSkge1xuICAgIGdyaWQtYXJlYTogYXJ0aWNsZS0xO1xuICB9XG5cbiAgYXJ0aWNsZTpudGgtb2YtdHlwZSgyKSB7XG4gICAgZ3JpZC1hcmVhOiBhcnRpY2xlLTI7XG4gIH1cblxuICBhcnRpY2xlOm50aC1vZi10eXBlKDMpIHtcbiAgICBncmlkLWFyZWE6IGFydGljbGUtMztcbiAgfVxuXG4gIGFydGljbGU6bnRoLW9mLXR5cGUoNCkge1xuICAgIGdyaWQtYXJlYTogYXJ0aWNsZS00O1xuICB9XG5cbiAgLmFydGljbGUtdGVhc2VyLXNlY3Rpb24tY29udGFpbmVyIHtcbiAgICBncmlkLWFyZWE6IGFydGljbGUtdGVhc2VyO1xuXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1ZW0sIDFmcikpO1xuICAgIGdhcDogMmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE1ZW0sIDFmcikpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhsJykge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxOGVtLCAxZnIpKTtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAxLjRlbTtcbiAgfVxuXG4gIC5yZWFkLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBtYXJnaW4tdG9wOiAwLjdlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYm9yZGVyLWNvbG9yOiBibGFjaztcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5hcnRpY2xlLWhlYWQ6ZW1wdHkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kLnBuZycpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1JTtcbn1cblxuLmFydGljbGUtaGVhZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYm94LXNoYWRvdzogJGRlZmF1bHQtc2hhZG93LWxhcmdlO1xuICBwYWRkaW5nLWJvdHRvbTogNjUlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjAlO1xuICAgIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgMGRlZyxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMC44NikgMCUsXG4gICAgICByZ2JhKDAsIDAsIDAsIDApIDEwMCVcbiAgICApO1xuICB9XG5cbiAgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IHZhcigtLXVpLWhlaWdodCk7XG4gICAgd2lkdGg6IHZhcigtLXVpLWhlaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3c7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBtYXJnaW46IGNhbGModmFyKC0tZ2FwKSAvIDIpO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1oZWFkbGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm90dG9tOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAyLjJlbTtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tZ2FwKSAvIDIuNykgY2FsYyh2YXIoLS1nYXApIC8gMik7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXhsXCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMi42ZW07XG4gICAgfVxuICB9XG5cbiAgZmlndXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59XG5cbi5hcnRpY2xlLWhlYWQubGlnaHQtbGF5b3V0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNSU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFja2dyb3VuZC5wbmcpO1xuXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDg3JTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxOGVtO1xuICAgICAgaGVpZ2h0OiAxOGVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAzMGVtO1xuICAgICAgaGVpZ2h0OiAzMGVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxuICB9XG5cbiAgZmlndXJlIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNzAlO1xuICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLmFydGljbGUtaGVhZGxpbmUge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG4uZW1wdHktYXJ0aWNsZS1oZWFkLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1JTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYWNrZ3JvdW5kLnBuZyk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIC5sb2dvLXN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDAuMDU7XG4gICAgaGVpZ2h0OiAxMjAlO1xuXG4gICAgLnNpZGUtbGV0dGVycyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiYm9keS5jYXRlZ29yeSB7XG4gIC5hcnRpY2xlLWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAgIFwiYXJ0aWNsZS0xXCJcbiAgICAgIFwiYXJ0aWNsZS0yXCJcbiAgICAgIFwiYWRzXCJcbiAgICAgIFwiYWRzXCJcbiAgICAgIFwiYXJ0aWNsZS0zXCJcbiAgICAgIFwiYXJ0aWNsZS00XCI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgZ3JpZC1nYXA6IHZhcigtLWdhcCkgdmFyKC0tZ2FwKTtcbiAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgIFwiYXJ0aWNsZS0xIGFydGljbGUtMlwiXG4gICAgICAgIFwiYWRzICAgICAgIGFkc1wiXG4gICAgICAgIFwiYXJ0aWNsZS0zIGFydGljbGUtNFwiO1xuXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgIFwiYXJ0aWNsZS0xIGFydGljbGUtMiBhZHNcIlxuICAgICAgICBcImFydGljbGUtMyBhcnRpY2xlLTQgYWRzXCI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuMWZyIDEuMWZyIDAuOGZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5tYWluLWhlcm8ge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiB2YXIoLS1uYXYtaGVpZ2h0KSB2YXIoLS1jb250YWluZXItZ2FwKSB2YXIoLS1jb250YWluZXItZ2FwKTtcbiAgfVxuXG4gIC5tYWluLWhlcm8tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA0NWVtO1xuICB9XG5cbiAgLmhlcm8tY29udGVudC1mbGV4IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1jb250YWluZXItZ2FwKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jb250YWluZXItZ2FwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4iLCJcbi5hcmNoaXZlLWdyaWQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCg5ZW0sIDFmcikpO1xuICBnYXA6IHZhcigtLWdhcCk7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1wYWdlcy10b3AtZ2FwKSBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApKTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZ2VzLXRvcC1nYXApIGNhbGModmFyKC0tY29udGFpbmVyLWdhcCkgKiAyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyZW0sIDFmcikpO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXNpemU6IDEuN2VtO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG5cbiAgYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBmaWd1cmUge1xuICAgIGJveC1zaGFkb3c6ICRkZWZhdWx0LXNoYWRvdztcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmVtcHR5LWNvdmVyLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogI2VhZWFlYTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3c7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDEzNiU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gJjo6YWZ0ZXJ7XG4gICAgLy8gICBjb250ZW50OiAnJztcbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgIGhlaWdodDogMTAwJTtcbiAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgdG9wOiAwO1xuICAgIC8vICAgbGVmdDogMDtcbiAgICAvLyAgIHotaW5kZXg6IDE7XG4gICAgLy8gfVxuXG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIGhlaWdodDogMTEwJTtcbiAgICAgIHdpZHRoOiAxMTAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG5cbiAgICBzcGFuIHtcbiAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoNTAlKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGZvbnQtc2l6ZTogNWVtO1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY29sb3I6d2hpdGU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XG4gICAgfVxuICB9XG59XG5cbi5hcmNoaXZlIHtcbiAgLmNvbnRhaW5lci1jb250ZW50IC5zZWN0aW9uLWhlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDNlbTtcbiAgfVxufVxuXG4uYXJjaGl2ZS1jbGFpbSB7XG4gIHBhZGRpbmc6IDJlbTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHBhZGRpbmc6IDNlbTtcbiAgfVxufVxuIiwiXG4uYXJ0aWNsZS1iYW5uZXJzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hcmVhOiBhZHM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmYWRlLWdyZXk7XG5cbiAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLWNvbnRhaW5lci1nYXApICogMik7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApICogLTEpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApICogMS41KTtcblxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tY29udGFpbmVyLWdhcCkgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1jb250YWluZXItZ2FwKSAvIDIpO1xuXG4gIC5ob21lIC5hcnRpY2xlLXNlY3Rpb246Zmlyc3Qtb2YtdHlwZSAmIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZzogdmFyKC0tZ2FwKSAwIHZhcigtLWdhcCk7XG4gIH1cbn1cblxuLmJhbm5lci1pbWFnZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQ6ICRmYWRlLWdyZXk7XG4gIH1cbn1cblxuLmJhbm5lci1pbmZvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDAuNmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42ZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICB3aWR0aDogdmFyKC0tZ2FwKTtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgYmFja2dyb3VuZDogJGZhZGUtZ3JleTtcblxuICAgIC5ob21lIC5hcnRpY2xlLXNlY3Rpb246Zmlyc3Qtb2YtdHlwZSAmIHtcbiAgICAgIG1hcmdpbi10b3A6ICRhcnRpY2xlLW9mZnNldC8yO1xuICAgIH1cbiAgfVxuXG4gIHNwYW4ge1xuICAgIEBpbmNsdWRlIHNtYWxsLXRleHQ7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiB2YXIoLS1uYXYtaGVpZ2h0KTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuICB9XG59XG5cbi5iYW5uZXItaW1hZ2Uge1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBwYWRkaW5nOiAwIGNhbGModmFyKC0tZ2FwKSAvIDIpO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1nYXApKTtcbiAgfVxufVxuXG4uYmFubmVyLWltYWdlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1nYXApKTtcbiAgfVxufVxuIiwiLmFiby1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1zaXplOiAzJTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxNHB4IDYzcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWJvLXNlY3Rpb24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuYWJvLXNlY3Rpb24taGVhZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMWVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1nYXApICogMS41KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWNvbnRhaW5lci1nYXApICsgMS41ZW0pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG4gIC5hbGwtYWJvcy1saW5rIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1nYXApICogMik7XG4gIH1cbn1cblxuLmFiby1zZWN0aW9uLWhlYWQtbGluay1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgYS5jdGEtbGlua3N7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogM2VtO1xuICAgIGhlaWdodDogM2VtO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NSUpO1xuICB9XG59XG5cbi5hYm8tc2VjdGlvbi1jb250YWluZXIgaDIge1xuICBmb250LXNpemU6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDAuOWVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgZm9udC1zaXplOiAzZW07XG4gIH1cbn1cblxuLmFiby1zZWN0aW9uIC5jdGEtbGlua3Mge1xuICBAaW5jbHVkZSByZWFkLWxpbms7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGNvbG9yOiBibGFjaztcbiAgbWFyZ2luLXRvcDogMWVtO1xuXG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICB9XG59XG5cbi5hYm8tY2FyZC1sYXlvdXQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgYmxhY2sgOTAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBibGFjayA5MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiBub25lO1xuICAgIG1hc2staW1hZ2U6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG5cbi5hYm8tY2FyZHMtZmxleCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgyMmVtLCAxZnIpKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDIyZW0pO1xuICBnYXA6IHZhcigtLWdhcCk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdhcCkgKiAzKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tZ2FwKSAqIDMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDIwZW0sIDIyZW0pKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBnYXA6IHZhcigtLWdhcCk7XG4gICAgcGxhY2UtY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdhcCkgKiA0KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1nYXApICogMyk7XG4gIH1cblxuICAuYWJvLWNhcmQtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLWdhcCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogJGRlZmF1bHQtc2hhZG93LXhsO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5wcmljZS1mbGV4IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gICAgICB9XG5cbiAgICAgIC5jdXJyZW5jeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgfVxuICAgICAgLnByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiA0LjVlbTtcbiAgICAgICAgbWFyZ2luOiAwIDAuMmVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgfVxuXG4gICAgICAudGltZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFiby1jYXJkLWNvbnRhaW5lciB7XG4gIGEge1xuICAgIEBpbmNsdWRlIGN0YS1idXR0b247XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNSU7XG4gIH1cblxuICAmLmJhc2ljIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG5cbiAgJi5zb2xpIGEge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgfVxufVxuXG4uYWJvLXN0YXJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDIuMmVtO1xuICB0b3A6IC0yLjVlbTtcblxuICAuYmFzaWMgJiB7XG4gICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gIH1cblxuICAucGx1cyAmIHtcbiAgICBjb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gIH1cblxuICAuYWJvLWRvdCB7XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgfVxufVxuXG4uYWJvLW1vZGVsLWhlYWQtZmxleCB7XG4gIG1hcmdpbi10b3A6IC0yLjdlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLmFiby1tb2RlbC1uYW1lIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gICAgZm9udC1zaXplOiAzLjhlbTtcbiAgICBmb250LXdlaWdodDogJGhlYWRsaW5lLWZvbnQtc2VtaWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG51bC5hYm8tZGV0YWlscy1saXN0IHtcbiAgQGluY2x1ZGUgbWVkaXVtLXRleHQ7XG4gIGNvbG9yOiBibGFjaztcbiAgcGFkZGluZzogMC42ZW0gMCAxZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMWVtO1xufVxuIiwiLmRldGFpbCAud3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zaW5nbGUtcG9zdCB7XG4gIC5oZXJvLWltYWdlLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG5cbiAgICBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBtYXgtaGVpZ2h0OiA0NXZ3O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXNtJykge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LWhlaWdodDogMzR2dztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNpbmdsZS1wb3N0IC5kZXRhaWwtdmlldy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFnZXMtdG9wLWdhcCk7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5oZXJvLWhlYWRsaW5lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZGV0YWlsLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tY29udGFpbmVyLWdhcCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLmRldGFpbC1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnNpbmdsZS1wb3N0IC5saWdodC1sYXlvdXQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAtMztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFja2dyb3VuZC5wbmcpO1xuICB9XG5cbiAgLmRldGFpbC1oZWFkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG5cbiAgLmhlcm8taW1hZ2Utd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgZmlndXJlIHtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LWhlaWdodDogMjBlbTtcbiAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA0MHZ3O1xuICAgICAgaGVpZ2h0OiA0MHZ3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA4MHZ3O1xuICAgICAgaGVpZ2h0OiA4MHZ3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjE1O1xuICAgIH1cbiAgfVxufVxuXG4uaGFzLW5vLWhlcm8taW1hZ2UgLmRldGFpbC1jb250YWluZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAtMztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFja2dyb3VuZC5wbmcpO1xuICB9XG5cbiAgLmRldGFpbC1oZWFkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA0MHZ3O1xuICAgICAgaGVpZ2h0OiA0MHZ3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB6LWluZGV4OiAtMjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA4MHZ3O1xuICAgICAgaGVpZ2h0OiA4MHZ3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAkZGVmYXVsdC1zaGFkb3cteGw7XG4gICAgICBvcGFjaXR5OiAwLjE1O1xuICAgIH1cbiAgfVxufVxuXG4uZGV0YWlsLWhlYWQtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgbWF4LXdpZHRoOiA2MHZ3O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbiIsIi5kZXRhaWwtdmlldy1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZ2VzLXRvcC1nYXApO1xuICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1nYXApICogMC41KTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdhcCkgKiAxLjUpO1xuICB9XG59XG5cbi5kZXRhaWwtdmlldy10ZXh0IHtcbiAgQGluY2x1ZGUgdGV4dDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWF4LXdpZHRoOiAzMGVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6Zmlyc3QtbGV0dGVyIHtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwIDAuNGVtIDAgMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICBwIHtcbiAgICBwYWRkaW5nOiAwLjVlbSAwO1xuICB9XG5cbiAgc3Ryb25nIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4ubG9ja2VkLWFydGljbGUgLmRldGFpbC12aWV3LWNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDMwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgfVxufVxuXG4ubG9ja2VkLWFydGljbGUge1xuICAuYWJvLWNhcmQtbGF5b3V0LWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgfVxuICAuYWJvLWNhcmRzLWZsZXgge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdhcCkgKiAyKTtcbiAgfVxufVxuXG4uZGV0YWlsLXNvY2lhbC1saW5rcy1kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgbGksIGEge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxudWwuZGV0YWlsLXNvY2lhbC1saW5rcy1tb2JpbGUge1xuICBwYWRkaW5nOiAyZW0gMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmRldGFpbC1zb2NpYWwtbGlua3MtZGVza3RvcCBhIHtcbiAgQGluY2x1ZGUgY2lyY2xlLWxpbmtzO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDFlbTtcbiAgfVxuXG4gIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB3aGl0ZTtcblxuICAgIC5pbnZlcnRlZCAmIHtcbiAgICAgIGZpbGw6IGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4uZGV0YWlsLXNvY2lhbC1saW5rcy1tb2JpbGUgYSB7XG4gIEBpbmNsdWRlIGNpcmNsZS1saW5rcztcblxuICBzdmcge1xuICAgIHdpZHRoOiAxZW07XG4gIH1cblxuICBzdmcgcGF0aCB7XG4gICAgZmlsbDogd2hpdGU7XG5cbiAgICAuaW52ZXJ0ZWQgJiB7XG4gICAgICBmaWxsOiBibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLmRldGFpbC1zb2NpYWwtbGlua3MtbW9iaWxlIC5hZGR0b2FueV9zaG9ydGNvZGUge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwKTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4uZGV0YWlsLXByZXYtY29udGFpbmVyLFxuLmRldGFpbC1uZXh0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1uYXYtaGVpZ2h0KSk7XG4gIHRvcDogdmFyKC0tbmF2LWhlaWdodCk7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLW5hdi1oZWlnaHQpIC8gMikgMnJlbSAycmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXhsXCIpIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLW5hdi1oZWlnaHQpIC8gMS4zKSAycmVtIDJyZW07XG4gIH1cbn1cblxuLmRldGFpbC1uZXh0LWNvbnRhaW5lciB7XG4gIC5kZXRhaWwtaW50ZXJmZXJlciB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuLnByZXYsXG4ubmV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi5kZXRhaWwtcHJldi1jb250YWluZXIgLnByZXYgc3Bhbixcbi5kZXRhaWwtbmV4dC1jb250YWluZXIgLm5leHQgc3Bhbixcbi5tb2JpbGUtYXJ0aWNsZS1uYXZpZ2F0aW9uIC5uZXh0IHNwYW4sXG4ubW9iaWxlLWFydGljbGUtbmF2aWdhdGlvbiAucHJldiBzcGFuIHtcbiAgQGluY2x1ZGUgY2lyY2xlLWxpbmtzO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgd2lkdGg6IDAuNXJlbTtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4O1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICB3aWR0aDogNHJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS1hcnRpY2xlLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgLnByZXYsXG4gIC5uZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZ2FwOiAxLjRyZW07XG5cbiAgICBzcGFuIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5uZXh0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAucHJldiBzcGFuIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5kZXRhaWwtbmV4dC1jb250YWluZXIgLm5leHQgc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICByaWdodDogMS4zcmVtO1xuICB0b3A6IDEuMDVyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLmRldGFpbC1uZXh0LWNvbnRhaW5lciAubmV4dCBzcGFuOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICByaWdodDogMC44cmVtO1xufVxuXG4uc2luZ2xlLXBvc3Qge1xuICAud3AtYmxvY2stZ2FsbGVyeSB7XG4gICAgbWFyZ2luOiAxZW0gLTQuNGVtO1xuICB9XG5cbiAgLndwLWJsb2NrLWltYWdlIGZpZ3VyZS5hbGlnbmxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtNC40ZW07XG4gIH1cblxuICAud3AtYmxvY2staW1hZ2UgZmlndXJlLmFsaWducmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogLTQuNGVtO1xuICB9XG5cbiAgLmRldGFpbC1oZWFkLWNvbnRhaW5lciAuYXJ0aWNsZS1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogdmFyKC0tZ2FwKSAwO1xuICB9XG59XG5cbi5zaW5nbGUtcG9zdCBmaWdjYXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjdlbTtcbiAgb3BhY2l0eTogMC43O1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuLnNpbmdsZS1wb3N0IC53cC1ibG9jay1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZzogdmFyKC0tZ2FwKSAwO1xufVxuXG4uc2luZ2xlLXBvc3QgLmRldGFpbC12aWV3LXRleHQgLnBhcmFncmFwaDpmaXJzdC1jaGlsZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIC8vIHA6Zmlyc3QtY2hpbGQ6Zmlyc3QtbGV0dGVyIHtcbiAgLy8gICBmb250LXNpemU6IDRlbTtcbiAgLy8gICBmbG9hdDogbGVmdDtcbiAgLy8gICBwYWRkaW5nOiAwIDAuNGVtIDAgMDtcbiAgLy8gICBsaW5lLWhlaWdodDogMTtcbiAgLy8gfVxufVxuXG4ucmVsYXRlZC1hcnRpY2xlcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiaGVhZGVyLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAyMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tbmF2LWhlaWdodCk7XG4gIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG5cbiAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAmLnNjcm9sbGVkIHtcbiAgICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uY3RhLW5hdmlnYXRpb24sXG4udXRpbC1uYXZpZ2F0aW9uLFxuLm1haW4tbmF2aWdhdGlvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG5cbiAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxNnB4KSBvcGFjaXR5KDEpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLm1haW4taGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLW9wZW4gJiB7XG4gICAgLy8gb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDAuNzI7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuNTUpIDQyJSwgcmdiYSgwLCAwLCAwLCAwLjk2KSAxMDAlKTtcbiAgICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuXG4gICAgLmludmVydGVkICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgICBoZWlnaHQ6IDEzNSU7XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNyk7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG4gIH1cbn1cblxuLmludmVydGVkIC5zY3JvbGxlZCB7XG4gIHVsLnV0aWwtbGlua3MgYSxcbiAgdWwuc29jaWFsLWxpbmtzIGEge1xuICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XG5cbiAgICBpIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAubWFpbi1uYXZpZ2F0aW9uLXVsIC5tZW51LWl0ZW0gYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnVyZ2VyIGRpdiB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbn1cblxuXG4uc2Nyb2xsZWQgLm1haW4taGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICY6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcblxuICAgIC5uYXZpZ2F0aW9uLW9wZW4gJiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigyMHB4KSBvcGFjaXR5KDEpO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMTBweCA0MnB4IDBweCByZ2JhKDAsMCwwLDAuNSk7XG5cbiAgICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tb3BlbiAubWFpbi1oZWFkZXIge1xuICAvLyBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cblxuaGVhZGVyIC5tYWluLW5hdmlnYXRpb24ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG9yZGVyOiA3O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgb3JkZXI6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuaGVhZGVyIC5tYWluLW5hdmlnYXRpb24tdWwge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLW9wZW4gJiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5tZW51LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWF4LXdpZHRoJykge1xuICAgICAgcGFkZGluZzogMCAxLjZlbTtcbiAgICB9XG4gIH1cbn1cblxuaGVhZGVyIC5tYWluLW5hdmlnYXRpb24tdWwgLm1lbnUtaXRlbSB7XG4gIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IC0wLjA2ZW07XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICAgICAgLmludmVydGVkICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOmFmdGVyLFxuICAgICY6YWN0aXZlOmFmdGVyLFxuICAgICY6Zm9jdXM6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmludmVydGVkICYge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4vLyBjdXJyZW50X3BhZ2VfaXRlbVxuXG5cbmhlYWRlciAubWFpbi1uYXZpZ2F0aW9uLXVsIC5jdXJyZW50LW1lbnUtaXRlbSB7XG4gIGEge1xuICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgIH1cbiAgfVxufVxuXG4uaW52ZXJ0ZWQgaGVhZGVyIC5tYWluLW5hdmlnYXRpb24tdWwgLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgYSB7XG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiLmxvZ28tbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmc6IHZhcigtLWNvbnRhaW5lci1nYXApIDA7XG5cbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3JkZXI6IDY7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1nYXApIDAgMCAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvcmRlcjogMDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4ubG9nbyB7XG4gIGhlaWdodDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSAvIDMuNCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246ICRkZWZhdWx0LXRyYW5zaXRpb247XG5cbiAgLmxvZ28tc3ZnIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLnNjcm9sbGVkICYge1xuICAgICAgcGFkZGluZzogMS4yZW0gMDtcbiAgICB9XG4gIH1cblxuICAubWFpbi1sZXR0ZXJzIHtcbiAgICBmaWxsOiAkY29sb3ItcHJpbWFyeTtcbiAgfVxuXG4gIC5zaWRlLWxldHRlcnMge1xuICAgIGZpbGw6IHdoaXRlO1xuICB9XG5cbiAgLmludmVydGVkICYge1xuICAgIC5zaWRlLWxldHRlcnMge1xuICAgICAgZmlsbDogYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLnNjcm9sbGVkICYge1xuICAgIGhlaWdodDogdmFyKC0tbmF2LWhlaWdodCk7XG5cbiAgICAuc2lkZS1sZXR0ZXJzIHtcbiAgICAgIGZpbGw6IHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4ubG9nby13aGl0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJ1bC5zb2NpYWwtbGlua3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgcGFkZGluZzogMCAwIDAgMi41ZW07XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tYXgtd2lkdGhcIikge1xuICAgIHBhZGRpbmc6IDAgMCAwIDIuNWVtO1xuICB9XG5cbiAgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMmVtO1xuICB9XG59XG5cbnVsLnNvY2lhbC1saW5rcyBhIHtcbiAgQGluY2x1ZGUgY2lyY2xlLWxpbmtzO1xuXG4gIGkge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDAuOTVlbTtcblxuICAgIGh0bWw6bm90KC5uYXZpZ2F0aW9uLW9wZW4pIC5pbnZlcnRlZDpub3QoLnNjcm9sbGVkKSAmIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG4gIH1cbn1cbiIsIi51dGlsLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBvcmRlcjogODtcbiAgcGFkZGluZzogdmFyKC0tY29udGFpbmVyLWdhcCkgMDtcblxuICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xuICAgIHBhZGRpbmc6IHZhcigtLWdhcCkgMCAwIDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgb3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udXRpbC1saW5rcyB7XG4gIHBhZGRpbmc6IDAgMCAwIDJlbTtcbiAgb3BhY2l0eTogMDtcblxuICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PW1heC13aWR0aFwiKSB7XG4gICAgcGFkZGluZzogMCAwIDAgMi41ZW07XG4gIH1cbn1cblxudWwudXRpbC1saW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMmVtIDAgMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWF4LXdpZHRoXCIpIHtcbiAgICBwYWRkaW5nOiAwIDIuNWVtIDAgMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiAwIDEuMmVtIDAgMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj14bFwiKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxLjJlbTtcbiAgICB9XG4gIH1cbn1cblxudWwudXRpbC1saW5rcyBhIHtcbiAgQGluY2x1ZGUgY2lyY2xlLWxpbmtzO1xuXG4gIGkge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDAuOTVlbTtcblxuICAgIGh0bWw6bm90KC5uYXZpZ2F0aW9uLW9wZW4pIC5pbnZlcnRlZDpub3QoLnNjcm9sbGVkKSAmIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLnV0aWwtbGlua3MgLnNlYXJjaC1mb3JtLFxuLnNlYXJjaC1uby1yZXN1bHRzIC5zZWFyY2gtZm9ybSB7XG4gIHotaW5kZXg6IDM7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMS44NWVtKSB0cmFuc2xhdGVYKDIwMCUpO1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICBvcGFjaXR5OiAwO1xuXG4gIC5zZWFyY2gtZmllbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDVweCA1cHggNTBweCA3cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB9XG5cbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIEBpbmNsdWRlIGN0YS1idXR0b247XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjg1ZW07XG4gIH1cbn1cblxuLnNlYXJjaC1vcGVuIC51dGlsLWxpbmtzIC5zZWFyY2gtZm9ybSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxLjhlbSkgdHJhbnNsYXRlWCgycmVtKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNlYXJjaC1uby1yZXN1bHRzIC53cmFwLFxuLnNlYXJjaC1yZXN1bHRzIC53cmFwIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZ2VzLXRvcC1nYXApO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFnZXMtdG9wLWdhcCk7XG4gIHBhZGRpbmctbGVmdDogJGZyYW1lO1xuICBwYWRkaW5nLXJpZ2h0OiAkZnJhbWU7XG4gIG1heC13aWR0aDogNTBlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIGhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIGFydGljbGUge1xuICAgIG1hcmdpbi10b3A6IDNlbTtcbiAgfVxuXG4gIC5lbnRyeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjRlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgIG1heC13aWR0aDogNjBlbTtcbiAgfVxufVxuIiwiLmN0YS1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwKTtcbiAgb3BhY2l0eTogMDtcbiAgb3JkZXI6IDM7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49eHMnKSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBvcmRlcjogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLm5hdmlnYXRpb24tb3BlbiAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuY3RhLWJ1dHRvbiBhIHtcbiAgICBAaW5jbHVkZSBjdGEtYnV0dG9uO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG4iLCIudG9waWMtbmF2aWdhdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBzY3JvbGxiYXItY29sb3I6IGxpZ2h0O1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRmlyZWZveCAqL1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogJGZyYW1lO1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGZhZGUtd2hpdGU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZmFkZS13aGl0ZTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIGJsYWNrIDk1JSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgYmxhY2sgOTUlLCB0cmFuc3BhcmVudCAxMDAlKTtcblxuICAuaW52ZXJ0ZWQgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZmFkZS1ibGFjaztcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLW9wZW4gJixcbiAgLm5hdmlnYXRpb24tb3BlbiAuc2Nyb2xsZWQgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5zY3JvbGxlZCAmIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgfVxufVxuXG4udG9waWMtbmF2aWdhdGlvbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWVudS10b3BpYy1uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XG4gIHNjcm9sbGJhci1jb2xvcjogbGlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xufVxuXG4udG9waWMtbmF2aWdhdGlvbi11bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgbGkge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG4udG9waWMtbmF2aWdhdGlvbi11bCBsaSBhIHtcbiAgQGluY2x1ZGUgc21hbGwtdGV4dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogMC45ZW0gMS41ZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogJGRlZmF1bHQtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6aG92ZXI6YWZ0ZXIsXG4gICY6Zm9jdXM6YWZ0ZXIsXG4gICY6YWN0aXZlOmFmdGVyLFxuICAmOmhvdmVyOmJlZm9yZSxcbiAgJjpmb2N1czpiZWZvcmUsXG4gICY6YWN0aXZlOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6YWZ0ZXIsXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAkZGVmYXVsdC10cmFuc2l0aW9uO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDAlLFxuICAgICAgICByZ2JhKHdoaXRlLCAxKSA1MCUsXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAxMDAlXG4gICAgICApO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC5pbnZlcnRlZCAmIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuXG4ubmF2LXNjcm9sbC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxZW07XG5cbiAgY29sb3I6IHdoaXRlO1xuXG4gIC5pbnZlcnRlZCAmIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICBzcGFuIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICB9XG5cbiAgLm5leHQtYXJyb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuICBcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgd2lkdGg6IDIuNWVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgXG4gICAgICAuaW52ZXJ0ZWQgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgJjpiZWZvcmUgIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAycHg7XG4gICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBcbiAgICAgIC5pbnZlcnRlZCAmIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJldi1hcnJvd3tcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgd2lkdGg6IDIuNWVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIFxuICAgICAgLmludmVydGVkICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgICY6YWZ0ZXIgIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHg7XG4gICAgICBib3JkZXItbGVmdDogc29saWQgMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgXG4gICAgICAuaW52ZXJ0ZWQgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5sb2dvIHtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgLyAzKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG5cbiAgICAuc2lkZS1sZXR0ZXJzLFxuICAgIC5pbnZlcnRlZCAmIC5zaWRlLWxldHRlcnMge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgLmZvb3Rlci1iZyB7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwLjAzO1xuICB9XG5cbiAgLmJhY2stdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICAgIGNvbG9yOiByZ2JhKDI1MCwgMjUwLCAyNTAsIDAuOCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbjogMnJlbSBhdXRvIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICAgIG9yZGVyOiAwO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHdpZHRoOiA2cHg7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbmZvb3RlciB7XG4gIC5sb2dvIC5tYWluLWxldHRlcnMge1xuICAgIGZpbGw6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgfVxuXG4gIC5sb2dvIC5zaWRlLWxldHRlcnMge1xuICAgIGZpbGw6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgfVxufVxuXG4ubWFpbi1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLXRvcDogNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogNWVtO1xufVxuXG4uZm9vdGVyLWNvbnRhY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tcmlnaHQ6IDJlbTtcbn1cblxuLmZvb3Rlci1jb250YWN0LW5hdmlnYXRpb24ge1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiAwLjNlbSAwO1xuICB9XG5cbiAgbGkgYSB7XG4gICAgQGluY2x1ZGUgc21hbGwtdGV4dDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGl1bS10ZXh0O1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLXNpZGUtbmF2aWdhdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDNlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgdWwge1xuICAgIG1hcmdpbi1yaWdodDogNWVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49c20nKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogNWVtO1xuICAgIH1cbiAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiAwLjNlbSAwO1xuICB9XG5cbiAgdWwgbGkgYSB7XG4gICAgQGluY2x1ZGUgc21hbGwtdGV4dDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHdoaXRlO1xuXG4gICAgLmludmVydGVkICYge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgICAgQGluY2x1ZGUgbWVkaXVtLXRleHQ7XG5cbiAgICAgIC5pbnZlcnRlZCAmIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLWNvcHkge1xuICBjb2xvcjogcmdiYSh3aGl0ZSwgMC44KTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuICBmb250LXNpemU6IDEuM2VtO1xufVxuXG4uZm9vdGVyLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuXG4uZm9vdGVyLWJhci1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5mb290ZXIgLnV0aWwtbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG9yZGVyOiA4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49eGwnKSB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1zb2NpYWwtbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmc6IDAgMCAwIDJlbTtcbiAgb3BhY2l0eTogMDtcblxuICAubmF2aWdhdGlvbi1vcGVuICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj14bCcpIHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1heC13aWR0aCcpIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAyLjVlbTtcbiAgfVxufVxuXG51bC5mb290ZXItc29jaWFsLWxpbmtzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjJlbTtcbiAgfVxufVxuXG51bC5mb290ZXItc29jaWFsLWxpbmtzIGEge1xuICBAaW5jbHVkZSBjaXJjbGUtbGlua3M7XG5cbiAgaSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8qIFZhcmlhYmxlcyAqL1xuOnJvb3Qge1xuICAvKiBGb250IEZhbWlseSAqL1xuICAtLWdsb2JhbC0tZm9udC1wcmltYXJ5OiB2YXIoLS1mb250LWhlYWRpbmdzLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLCAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmKTtcbiAgLS1nbG9iYWwtLWZvbnQtc2Vjb25kYXJ5OiB2YXIoLS1mb250LWJhc2UsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsICdIZWx2ZXRpY2EgTmV1ZScsIHNhbnMtc2VyaWYpO1xuXG4gIC8qIEZvbnQgU2l6ZSAqL1xuICAtLWdsb2JhbC0tZm9udC1zaXplLWJhc2U6IDEuMjVyZW07XG4gIC0tZ2xvYmFsLS1mb250LXNpemUteHM6IDFyZW07XG4gIC0tZ2xvYmFsLS1mb250LXNpemUtc206IDEuMTI1cmVtO1xuICAtLWdsb2JhbC0tZm9udC1zaXplLW1kOiAxLjI1cmVtO1xuICAtLWdsb2JhbC0tZm9udC1zaXplLWxnOiAxLjVyZW07XG4gIC0tZ2xvYmFsLS1mb250LXNpemUteGw6IDIuMjVyZW07XG4gIC0tZ2xvYmFsLS1mb250LXNpemUteHhsOiA0cmVtO1xuICAtLWdsb2JhbC0tZm9udC1zaXplLXh4eGw6IDVyZW07XG4gIC0tZ2xvYmFsLS1mb250LXNpemUtcGFnZS10aXRsZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHhsKTtcbiAgLS1nbG9iYWwtLWxldHRlci1zcGFjaW5nOiBub3JtYWw7XG5cbiAgLyogTGluZSBIZWlnaHQgKi9cbiAgLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHk6IDEuNztcbiAgLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWhlYWRpbmc6IDEuMztcbiAgLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LXBhZ2UtdGl0bGU6IDEuMTtcblxuICAvKiBIZWFkaW5ncyAqL1xuICAtLWhlYWRpbmctLWZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtcHJpbWFyeSk7XG4gIC0taGVhZGluZy0tZm9udC1zaXplLWg2OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIC0taGVhZGluZy0tZm9udC1zaXplLWg1OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1zbSk7XG4gIC0taGVhZGluZy0tZm9udC1zaXplLWg0OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1sZyk7XG4gIC0taGVhZGluZy0tZm9udC1zaXplLWgzOiBjYWxjKDEuMjUgKiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1sZykpO1xuICAtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMjogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteGwpO1xuICAtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtcGFnZS10aXRsZSk7XG4gIC0taGVhZGluZy0tbGV0dGVyLXNwYWNpbmctaDY6IDAuMDVlbTtcbiAgLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oNTogMC4wNWVtO1xuICAtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWg0OiB2YXIoLS1nbG9iYWwtLWxldHRlci1zcGFjaW5nKTtcbiAgLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oMzogdmFyKC0tZ2xvYmFsLS1sZXR0ZXItc3BhY2luZyk7XG4gIC0taGVhZGluZy0tbGV0dGVyLXNwYWNpbmctaDI6IHZhcigtLWdsb2JhbC0tbGV0dGVyLXNwYWNpbmcpO1xuICAtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWgxOiB2YXIoLS1nbG9iYWwtLWxldHRlci1zcGFjaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oNjogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oNTogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oNDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oMzogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oMjogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oMTogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1wYWdlLXRpdGxlKTtcbiAgLS1oZWFkaW5nLS1mb250LXdlaWdodDogbm9ybWFsO1xuICAtLWhlYWRpbmctLWZvbnQtd2VpZ2h0LXBhZ2UtdGl0bGU6IDMwMDtcbiAgLS1oZWFkaW5nLS1mb250LXdlaWdodC1zdHJvbmc6IDYwMDtcblxuICAvKiBCbG9jazogTGF0ZXN0IHBvc3RzICovXG4gIC0tbGF0ZXN0LXBvc3RzLS10aXRsZS1mb250LWZhbWlseTogdmFyKC0taGVhZGluZy0tZm9udC1mYW1pbHkpO1xuICAtLWxhdGVzdC1wb3N0cy0tdGl0bGUtZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDMpO1xuICAtLWxhdGVzdC1wb3N0cy0tZGVzY3JpcHRpb24tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAtLWxhdGVzdC1wb3N0cy0tZGVzY3JpcHRpb24tZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1zbSk7XG4gIC0tbGlzdC0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAtLWRlZmluaXRpb24tdGVybS0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1wcmltYXJ5KTtcblxuICAvKiBDb2xvcnMgKi9cbiAgLS1nbG9iYWwtLWNvbG9yLWJsYWNrOiAjMDAwMDAwO1xuICAtLWdsb2JhbC0tY29sb3ItZGFyay1ncmF5OiAjMjgzMDNkO1xuICAtLWdsb2JhbC0tY29sb3ItZ3JheTogIzM5NDE0ZDtcbiAgLS1nbG9iYWwtLWNvbG9yLWxpZ2h0LWdyYXk6ICNmMGYwZjA7XG4gIC0tZ2xvYmFsLS1jb2xvci1ncmVlbjogI2QxZTRkZDtcbiAgLS1nbG9iYWwtLWNvbG9yLWJsdWU6ICNkMWRmZTQ7XG4gIC0tZ2xvYmFsLS1jb2xvci1wdXJwbGU6ICNkMWQxZTQ7XG4gIC0tZ2xvYmFsLS1jb2xvci1yZWQ6ICNlNGQxZDE7XG4gIC0tZ2xvYmFsLS1jb2xvci1vcmFuZ2U6ICNlNGRhZDE7XG4gIC0tZ2xvYmFsLS1jb2xvci15ZWxsb3c6ICNlZWVhZGQ7XG4gIC0tZ2xvYmFsLS1jb2xvci13aGl0ZTogI2ZmZmZmZjtcbiAgLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTUwOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIC0tZ2xvYmFsLS1jb2xvci13aGl0ZS05MDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAtLWdsb2JhbC0tY29sb3ItcHJpbWFyeTogdmFyKC0tZ2xvYmFsLS1jb2xvci1kYXJrLWdyYXkpO1xuXG4gIC8qIEJvZHkgdGV4dCBjb2xvciwgc2l0ZSB0aXRsZSwgZm9vdGVyIHRleHQgY29sb3IuICovXG4gIC0tZ2xvYmFsLS1jb2xvci1zZWNvbmRhcnk6IHZhcigtLWdsb2JhbC0tY29sb3ItZ3JheSk7XG5cbiAgLyogSGVhZGluZ3MgKi9cbiAgLS1nbG9iYWwtLWNvbG9yLXByaW1hcnktaG92ZXI6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWdyZWVuKTtcblxuICAvKiBNaW50LCBkZWZhdWx0IGJvZHkgYmFja2dyb3VuZCAqL1xuICAtLWdsb2JhbC0tY29sb3ItYm9yZGVyOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuXG4gIC8qIFVzZWQgZm9yIGJvcmRlcnMgKHNlcGFyYXRvcnMpICovXG5cbiAgLyogU3BhY2luZyAqL1xuICAtLWdsb2JhbC0tc3BhY2luZy11bml0OiAyMHB4O1xuICAtLWdsb2JhbC0tc3BhY2luZy1tZWFzdXJlOiB1bnNldDtcbiAgLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbDogMjVweDtcbiAgLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWw6IDMwcHg7XG5cbiAgLyogRWxldmF0aW9uICovXG4gIC0tZ2xvYmFsLS1lbGV2YXRpb246IDFweCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gIC8qIEZvcm1zICovXG4gIC0tZm9ybS0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAtLWZvcm0tLWZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuICAtLWZvcm0tLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuICAtLWZvcm0tLWNvbG9yLXRleHQ6IHZhcigtLWdsb2JhbC0tY29sb3ItZGFyay1ncmF5KTtcbiAgLS1mb3JtLS1jb2xvci1yYW5nZWQ6IHZhcigtLWdsb2JhbC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1mb3JtLS1sYWJlbC13ZWlnaHQ6IDUwMDtcbiAgLS1mb3JtLS1ib3JkZXItY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1mb3JtLS1ib3JkZXItd2lkdGg6IDNweDtcbiAgLS1mb3JtLS1ib3JkZXItcmFkaXVzOiAwO1xuICAtLWZvcm0tLXNwYWNpbmctdW5pdDogY2FsYygwLjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xuXG4gIC8qIENvdmVyIGJsb2NrICovXG4gIC0tY292ZXItLWhlaWdodDogY2FsYygxNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICAtLWNvdmVyLS1jb2xvci1mb3JlZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb3Zlci0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tZ2xvYmFsLS1jb2xvci1ibGFjayk7XG5cbiAgLyogQnV0dG9ucyAqL1xuICAtLWJ1dHRvbi0tY29sb3ItdGV4dDogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLS1idXR0b24tLWNvbG9yLXRleHQtaG92ZXI6IHZhcigtLWdsb2JhbC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgLS1idXR0b24tLWNvbG9yLXRleHQtYWN0aXZlOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kLWFjdGl2ZTogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLS1idXR0b24tLWZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtcHJpbWFyeSk7XG4gIC0tYnV0dG9uLS1mb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWJhc2UpO1xuICAtLWJ1dHRvbi0tZm9udC13ZWlnaHQ6IDUwMDtcbiAgLS1idXR0b24tLWxpbmUtaGVpZ2h0OiAxLjU7XG4gIC0tYnV0dG9uLS1ib3JkZXItd2lkdGg6IDNweDtcbiAgLS1idXR0b24tLWJvcmRlci1yYWRpdXM6IDA7XG4gIC0tYnV0dG9uLS1wYWRkaW5nLXZlcnRpY2FsOiAxNXB4O1xuICAtLWJ1dHRvbi0tcGFkZGluZy1ob3Jpem9udGFsOiBjYWxjKDIgKiB2YXIoLS1idXR0b24tLXBhZGRpbmctdmVydGljYWwpKTtcblxuICAvKiBlbnRyeSAqL1xuICAtLWVudHJ5LWhlYWRlci0tY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tZW50cnktaGVhZGVyLS1jb2xvci1saW5rOiBjdXJyZW50Q29sb3I7XG4gIC0tZW50cnktaGVhZGVyLS1jb2xvci1ob3ZlcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5LWhvdmVyKTtcbiAgLS1lbnRyeS1oZWFkZXItLWNvbG9yLWZvY3VzOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tZW50cnktaGVhZGVyLS1mb250LXNpemU6IHZhcigtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMik7XG4gIC0tZW50cnktY29udGVudC0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAtLWVudHJ5LWF1dGhvci1iaW8tLWZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLS1mb250LWZhbWlseSk7XG4gIC0tZW50cnktYXV0aG9yLWJpby0tZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDQpO1xuXG4gIC8qIEhlYWRlciAqL1xuICAtLWJyYW5kaW5nLS1jb2xvci10ZXh0OiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAtLWJyYW5kaW5nLS1jb2xvci1saW5rOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAtLWJyYW5kaW5nLS1jb2xvci1saW5rLWhvdmVyOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXNlY29uZGFyeSk7XG4gIC0tYnJhbmRpbmctLXRpdGxlLS1mb250LWZhbWlseTogdmFyKC0tZ2xvYmFsLS1mb250LXByaW1hcnkpO1xuICAtLWJyYW5kaW5nLS10aXRsZS0tZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1sZyk7XG4gIC0tYnJhbmRpbmctLXRpdGxlLS1mb250LXNpemUtbW9iaWxlOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDQpO1xuICAtLWJyYW5kaW5nLS10aXRsZS0tZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLS1icmFuZGluZy0tdGl0bGUtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC0tYnJhbmRpbmctLWRlc2NyaXB0aW9uLS1mb250LWZhbWlseTogdmFyKC0tZ2xvYmFsLS1mb250LXNlY29uZGFyeSk7XG4gIC0tYnJhbmRpbmctLWRlc2NyaXB0aW9uLS1mb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXNtKTtcbiAgLS1icmFuZGluZy0tZGVzY3JpcHRpb24tLWZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2Vjb25kYXJ5KTtcbiAgLS1icmFuZGluZy0tbG9nby0tbWF4LXdpZHRoOiAzMDBweDtcbiAgLS1icmFuZGluZy0tbG9nby0tbWF4LWhlaWdodDogMTAwcHg7XG4gIC0tYnJhbmRpbmctLWxvZ28tLW1heC13aWR0aC1tb2JpbGU6IDk2cHg7XG4gIC0tYnJhbmRpbmctLWxvZ28tLW1heC1oZWlnaHQtbW9iaWxlOiA5NnB4O1xuXG4gIC8qIE1haW4gbmF2aWdhdGlvbiAqL1xuICAtLXByaW1hcnktbmF2LS1mb250LWZhbWlseTogdmFyKC0tZ2xvYmFsLS1mb250LXNlY29uZGFyeSk7XG4gIC0tcHJpbWFyeS1uYXYtLWZvbnQtZmFtaWx5LW1vYmlsZTogdmFyKC0tZ2xvYmFsLS1mb250LXByaW1hcnkpO1xuICAtLXByaW1hcnktbmF2LS1mb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLW1kKTtcbiAgLS1wcmltYXJ5LW5hdi0tZm9udC1zaXplLXN1Yi1tZW51OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIC0tcHJpbWFyeS1uYXYtLWZvbnQtc2l6ZS1tb2JpbGU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXNtKTtcbiAgLS1wcmltYXJ5LW5hdi0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuICAtLXByaW1hcnktbmF2LS1mb250LXNpemUtYnV0dG9uOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIC0tcHJpbWFyeS1uYXYtLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgLS1wcmltYXJ5LW5hdi0tZm9udC1zdHlsZS1zdWItbWVudS1tb2JpbGU6IG5vcm1hbDtcbiAgLS1wcmltYXJ5LW5hdi0tZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLS1wcmltYXJ5LW5hdi0tZm9udC13ZWlnaHQtYnV0dG9uOiA1MDA7XG4gIC0tcHJpbWFyeS1uYXYtLWNvbG9yLWxpbms6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tcHJpbWFyeS1uYXYtLWNvbG9yLWxpbmstaG92ZXI6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeS1ob3Zlcik7XG4gIC0tcHJpbWFyeS1uYXYtLWNvbG9yLXRleHQ6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tcHJpbWFyeS1uYXYtLXBhZGRpbmc6IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSk7XG4gIC0tcHJpbWFyeS1uYXYtLWJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcblxuICAvKiBQYWdpbmF0aW9uICovXG4gIC0tcGFnaW5hdGlvbi0tY29sb3ItdGV4dDogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgLS1wYWdpbmF0aW9uLS1jb2xvci1saW5rLWhvdmVyOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnktaG92ZXIpO1xuICAtLXBhZ2luYXRpb24tLWZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtc2Vjb25kYXJ5KTtcbiAgLS1wYWdpbmF0aW9uLS1mb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWxnKTtcbiAgLS1wYWdpbmF0aW9uLS1mb250LXdlaWdodDogbm9ybWFsO1xuICAtLXBhZ2luYXRpb24tLWZvbnQtd2VpZ2h0LXN0cm9uZzogNjAwO1xuXG4gIC8qIEZvb3RlciAqL1xuICAtLWZvb3Rlci0tY29sb3ItdGV4dDogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgLS1mb290ZXItLWNvbG9yLWxpbms6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tZm9vdGVyLS1jb2xvci1saW5rLWhvdmVyOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnktaG92ZXIpO1xuICAtLWZvb3Rlci0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1wcmltYXJ5KTtcbiAgLS1mb290ZXItLWZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuXG4gIC8qIEJsb2NrOiBQdWxsIHF1b3RlICovXG4gIC0tcHVsbHF1b3RlLS1mb250LWZhbWlseTogdmFyKC0tZ2xvYmFsLS1mb250LXByaW1hcnkpO1xuICAtLXB1bGxxdW90ZS0tZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDMpO1xuICAtLXB1bGxxdW90ZS0tZm9udC1zdHlsZTogbm9ybWFsO1xuICAtLXB1bGxxdW90ZS0tbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWg0KTtcbiAgLS1wdWxscXVvdGUtLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLXB1bGxxdW90ZS0tYm9yZGVyLXdpZHRoOiAzcHg7XG4gIC0tcHVsbHF1b3RlLS1ib3JkZXItY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC0tcHVsbHF1b3RlLS1jb2xvci1mb3JlZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAtLXB1bGxxdW90ZS0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLS1xdW90ZS0tZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAtLXF1b3RlLS1mb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLW1kKTtcbiAgLS1xdW90ZS0tZm9udC1zaXplLWxhcmdlOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14bCk7XG4gIC0tcXVvdGUtLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgLS1xdW90ZS0tZm9udC13ZWlnaHQ6IDcwMDtcbiAgLS1xdW90ZS0tZm9udC13ZWlnaHQtc3Ryb25nOiBib2xkZXI7XG4gIC0tcXVvdGUtLWZvbnQtc3R5bGUtbGFyZ2U6IG5vcm1hbDtcbiAgLS1xdW90ZS0tZm9udC1zdHlsZS1jaXRlOiBub3JtYWw7XG4gIC0tcXVvdGUtLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuICAtLXF1b3RlLS1saW5lLWhlaWdodC1sYXJnZTogMS4zNTtcbiAgLS1zZXBhcmF0b3ItLWJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1ib3JkZXIpO1xuICAtLXNlcGFyYXRvci0taGVpZ2h0OiAxcHg7XG5cbiAgLyogQmxvY2s6IFRhYmxlICovXG4gIC0tdGFibGUtLXN0cmlwZXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWxpZ2h0LWdyYXkpO1xuICAtLXRhYmxlLS1zdHJpcGVzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItbGlnaHQtZ3JheSk7XG4gIC0tdGFibGUtLWhhcy1iYWNrZ3JvdW5kLXRleHQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZGFyay1ncmF5KTtcblxuICAvKiBXaWRnZXRzICovXG4gIC0td2lkZ2V0LS1saW5lLWhlaWdodC1saXN0OiAxLjk7XG4gIC0td2lkZ2V0LS1saW5lLWhlaWdodC10aXRsZTogMS40O1xuICAtLXdpZGdldC0tZm9udC13ZWlnaHQtdGl0bGU6IDcwMDtcbiAgLS13aWRnZXQtLXNwYWNpbmctbWVudTogY2FsYygwLjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcblxuICAvKiBBZG1pbi1iYXIgaGVpZ2h0ICovXG4gIC0tZ2xvYmFsLS1hZG1pbi1iYXItLWhlaWdodDogMDtcbn1cblxuLmFkbWluLWJhciB7XG4gIC0tZ2xvYmFsLS1hZG1pbi1iYXItLWhlaWdodDogMzJweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODJweCkge1xuICAuYWRtaW4tYmFyIHtcbiAgICAtLWdsb2JhbC0tYWRtaW4tYmFyLS1oZWlnaHQ6IDQ2cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NTJweCkge1xuICA6cm9vdCB7XG4gICAgLS1nbG9iYWwtLWZvbnQtc2l6ZS14bDogMi41cmVtO1xuICAgIC0tZ2xvYmFsLS1mb250LXNpemUteHhsOiA2cmVtO1xuICAgIC0tZ2xvYmFsLS1mb250LXNpemUteHh4bDogOXJlbTtcbiAgICAtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMzogMnJlbTtcbiAgICAtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMjogM3JlbTtcbiAgfVxufVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgLy8gbGluZS1oZWlnaHQ6IDEuMTU7XG5cbiAgLyogMSAqL1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuXG4gIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICAvLyBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG5cbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgLy8gZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcblxuICAvKiAxICovXG4gIC8vIGZvbnQtc2l6ZTogMWVtO1xuXG4gIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICAvLyBib3JkZXItYm90dG9tOiBub25lO1xuXG4gIC8qIDEgKi9cbiAgLy8gdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgLyogMiAqL1xuICAvLyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGRvdHRlZDtcblxuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIC8vIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICAvLyBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuXG4gIC8qIDEgKi9cbiAgLy8gZm9udC1zaXplOiAxZW07XG5cbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIC8vIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICAvLyBmb250LXNpemU6IDc1JTtcbiAgLy8gbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIC8vIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIC8vIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXG4gIC8qIDEgKi9cbiAgLy8gZm9udC1zaXplOiAxMDAlO1xuXG4gIC8qIDEgKi9cbiAgLy8gbGluZS1oZWlnaHQ6IDEuMTU7XG5cbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG5cbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIC8vIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgLy8gYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgLyogMSAqL1xuICAvLyBjb2xvcjogaW5oZXJpdDtcblxuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuXG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcblxuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcblxuICAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG5cbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IGJ1dHRvbjtcblxuICAvKiAxICovXG4gIC8vIGZvbnQ6IGluaGVyaXQ7XG5cbiAgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFJlc3BvbnNpdmUgU3R5bGVzXG4gKi9cblxuLyoqXG4gKiBSZXF1aXJlZCBWYXJpYWJsZXNcbiAqL1xuXG4vKipcbiAqIFJvb3QgTWVkaWEgUXVlcnkgVmFyaWFibGVzXG4gKi9cbjpyb290IHtcbiAgLS1yZXNwb25zaXZlLS1zcGFjaW5nLWhvcml6b250YWw6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSAqIDAuNik7XG4gIC0tcmVzcG9uc2l2ZS0tYWxpZ25kZWZhdWx0LXdpZHRoOiBjYWxjKDEwMHZ3IC0gdmFyKC0tcmVzcG9uc2l2ZS0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG4gIC0tcmVzcG9uc2l2ZS0tYWxpZ253aWRlLXdpZHRoOiBjYWxjKDEwMHZ3IC0gdmFyKC0tcmVzcG9uc2l2ZS0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG4gIC0tcmVzcG9uc2l2ZS0tYWxpZ25mdWxsLXdpZHRoOiAxMDAlO1xuICAtLXJlc3BvbnNpdmUtLWFsaWducmlnaHQtbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG4gIC0tcmVzcG9uc2l2ZS0tYWxpZ25sZWZ0LW1hcmdpbjogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIDpyb290IHtcbiAgICAtLXJlc3BvbnNpdmUtLWFsaWduZGVmYXVsdC13aWR0aDogbWluKGNhbGMoMTAwdncgLSA0ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKSwgNjEwcHgpO1xuICAgIC0tcmVzcG9uc2l2ZS0tYWxpZ253aWRlLXdpZHRoOiBjYWxjKDEwMHZ3IC0gNCAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG4gICAgLS1yZXNwb25zaXZlLS1hbGlnbnJpZ2h0LW1hcmdpbjogY2FsYygwLjUgKiAoMTAwdncgLSB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmRlZmF1bHQtd2lkdGgpKSk7XG4gICAgLS1yZXNwb25zaXZlLS1hbGlnbmxlZnQtbWFyZ2luOiBjYWxjKDAuNSAqICgxMDB2dyAtIHZhcigtLXJlc3BvbnNpdmUtLWFsaWduZGVmYXVsdC13aWR0aCkpKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgyMnB4KSB7XG4gIDpyb290IHtcbiAgICAtLXJlc3BvbnNpdmUtLWFsaWduZGVmYXVsdC13aWR0aDogbWluKGNhbGMoMTAwdncgLSA4ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKSwgNjEwcHgpO1xuICAgIC0tcmVzcG9uc2l2ZS0tYWxpZ253aWRlLXdpZHRoOiBtaW4oY2FsYygxMDB2dyAtIDggKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkpLCAxMjQwcHgpO1xuICB9XG59XG5cbi8qKlxuICogRXh0ZW5kc1xuICovXG4ucG9zdC10aHVtYm5haWwsXG4uZW50cnktY29udGVudCAud3AtYXVkaW8tc2hvcnRjb2RlLFxuLmVudHJ5LWNvbnRlbnQgPiAqOm5vdCguYWxpZ253aWRlKTpub3QoLmFsaWduZnVsbCk6bm90KC5hbGlnbmxlZnQpOm5vdCguYWxpZ25yaWdodCk6bm90KC53cC1ibG9jay1zZXBhcmF0b3IpOm5vdCgud29vY29tbWVyY2UpLFxuKltjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+ICo6bm90KC5lbnRyeS1jb250ZW50KTpub3QoLmFsaWdud2lkZSk6bm90KC5hbGlnbmZ1bGwpOm5vdCguYWxpZ25sZWZ0KTpub3QoLmFsaWducmlnaHQpOm5vdCgud3AtYmxvY2stc2VwYXJhdG9yKTpub3QoLndvb2NvbW1lcmNlKSxcbi5kZWZhdWx0LW1heC13aWR0aCB7XG4gIC8vIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25kZWZhdWx0LXdpZHRoKTtcbiAgLy8gbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8vIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLndpZGdldC1hcmVhLFxuLnBhZ2luYXRpb24sXG4uY29tbWVudHMtcGFnaW5hdGlvbixcbi5wb3N0LW5hdmlnYXRpb24sXG4uc2l0ZS1mb290ZXIsXG4uc2l0ZS1oZWFkZXIsXG4uYWxpZ253aWRlLFxuLndpZGUtbWF4LXdpZHRoIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbndpZGUtd2lkdGgpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYWxpZ25mdWxsLFxuLndwLWJsb2NrLWdyb3VwIC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyID4gKi5hbGlnbmZ1bGwsXG4uZnVsbC1tYXgtd2lkdGgge1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtLWFsaWduZnVsbC13aWR0aCk7XG4gIHdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmZ1bGwtd2lkdGgpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5hbGlnbmZ1bGwsXG4gIC5mdWxsLW1heC13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmZ1bGwtd2lkdGgpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG4uZW50cnktaGVhZGVyIC5wb3N0LXRodW1ibmFpbCxcbi5zaW5ndWxhciAucG9zdC10aHVtYm5haWwsXG4uYWxpZ25mdWxsIFtjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+IC5hbGlnbndpZGUsXG4uYWxpZ253aWRlIFtjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+IC5hbGlnbndpZGUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ253aWRlLXdpZHRoKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmZ1bGwtd2lkdGgpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5lbnRyeS1jb250ZW50ID4gLmFsaWdubGVmdCB7XG4gICAgLyogcnRsOmlnbm9yZSAqL1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmxlZnQtbWFyZ2luKTtcblxuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5lbnRyeS1jb250ZW50ID4gLmFsaWducmlnaHQge1xuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xuXG4gICAgLyogcnRsOmlnbm9yZSAqL1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25yaWdodC1tYXJnaW4pO1xuICB9XG59XG5cbi8qKlxuICogU2l0ZSBTdHJ1Y3R1cmVcbiAqXG4gKiAtIFNldCB2ZXJ0aWNhbCBtYXJnaW5zIGFuZCByZXNwb25zaXZlIHdpZHRocyBvblxuICogICB0b3AtbGV2ZWwgd3JhcHBlcnMgYW5kIGNvbnRlbnQgd3JhcHBlcnNcbiAqIC0gYC0tZ2xvYmFsLS13aWR0aC1jb250ZW50YCBpcyBhIHJlc3BvbnNpdmUgdmFyaWFibGVcbiAqIC0gU2VlOiBnbG9iYWxzL19nbG9iYWwtd2lkdGgtcmVzcG9uc2l2ZS5zY3NzXG4gKi9cblxuLyoqXG4gKiBUb3AgTGV2ZWwgV3JhcHBlcnMgKGhlYWRlciwgbWFpbiwgZm9vdGVyKVxuICogLSBTZXQgdmVydGljYWwgcGFkZGluZyBhbmQgaG9yaXpvbnRhbCBtYXJnaW5zXG4gKi9cbi5zaXRlLWhlYWRlcixcbi5zaXRlLW1haW4sXG4ud2lkZ2V0LWFyZWEsXG4uc2l0ZS1mb290ZXIge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNzUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5zaXRlLWhlYWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICB9XG59XG5cbi8qKlxuICogU2l0ZS1tYWluIGNoaWxkcmVuIHdyYXBwZXJzXG4gKiAtIEFkZCBkb3VibGUgdmVydGljYWwgbWFyZ2lucyBoZXJlIGZvciBjbGVhcmVyIGhpZXJhcmNoeVxuICovXG4uc2l0ZS1tYWluID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLnNpdGUtbWFpbiA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uc2l0ZS1tYWluID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBTZXQgdGhlIGRlZmF1bHQgbWF4aW11bSByZXNwb25zaXZlIGNvbnRlbnQtd2lkdGhcbiAqL1xuXG4vKipcbiAqIFNldCB0aGUgd2lkZSBtYXhpbXVtIHJlc3BvbnNpdmUgY29udGVudC13aWR0aFxuICovXG5cbi8qKlxuICogU2V0IHRoZSBmdWxsIG1heGltdW0gcmVzcG9uc2l2ZSBjb250ZW50LXdpZHRoXG4gKi9cblxuLypcbiAqIEJsb2NrICYgbm9uLWd1dGVuYmVyZyBjb250ZW50IHdyYXBwZXJzXG4gKiAtIFNldCBtYXJnaW5zXG4gKi9cbi5lbnRyeS1oZWFkZXIsXG4ucG9zdC10aHVtYm5haWwsXG4uZW50cnktY29udGVudCxcbi5lbnRyeS1mb290ZXIsXG4uYXV0aG9yLWJpbyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi8qXG4gKiBCbG9jayAmIG5vbi1ndXRlbmJlcmcgY29udGVudCB3cmFwcGVyIGNoaWxkcmVuXG4gKiAtIFNldHMgc3BhY2luZy12ZXJ0aWNhbCBtYXJnaW4gbG9naWNcbiAqL1xuLnNpdGUtbWFpbiA+IGFydGljbGUgPiAqLFxuLnNpdGUtbWFpbiA+IC5ub3QtZm91bmQgPiAqLFxuLmVudHJ5LWNvbnRlbnQgPiAqLFxuW2NsYXNzKj1pbm5lci1jb250YWluZXJdID4gKixcbi53cC1ibG9jay10ZW1wbGF0ZS1wYXJ0ID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC42NjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygwLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gKixcbiAgLnNpdGUtbWFpbiA+IC5ub3QtZm91bmQgPiAqLFxuICAuZW50cnktY29udGVudCA+ICosXG4gIFtjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+ICosXG4gIC53cC1ibG9jay10ZW1wbGF0ZS1wYXJ0ID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi5zaXRlLW1haW4gPiBhcnRpY2xlID4gKjpmaXJzdC1jaGlsZCxcbi5zaXRlLW1haW4gPiAubm90LWZvdW5kID4gKjpmaXJzdC1jaGlsZCxcbi5lbnRyeS1jb250ZW50ID4gKjpmaXJzdC1jaGlsZCxcbltjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+ICo6Zmlyc3QtY2hpbGQsXG4ud3AtYmxvY2stdGVtcGxhdGUtcGFydCA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uc2l0ZS1tYWluID4gYXJ0aWNsZSA+ICo6bGFzdC1jaGlsZCxcbi5zaXRlLW1haW4gPiAubm90LWZvdW5kID4gKjpsYXN0LWNoaWxkLFxuLmVudHJ5LWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQsXG5bY2xhc3MqPWlubmVyLWNvbnRhaW5lcl0gPiAqOmxhc3QtY2hpbGQsXG4ud3AtYmxvY2stdGVtcGxhdGUtcGFydCA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zaXRlLWZvb3RlciA+ICosXG4ud2lkZ2V0LWFyZWEgPiAqIHtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuNjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLnNpdGUtZm9vdGVyID4gKixcbiAgLndpZGdldC1hcmVhID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi8qXG4gKiBCbG9jayAmIG5vbi1ndXRlbmJlcmcgY29udGVudCB3cmFwcGVyIGNoaWxkcmVuXG4gKiAtIFNldHMgc3BhY2luZy11bml0IG1hcmdpbnNcbiAqL1xuLmVudHJ5LWhlYWRlciA+ICosXG4ucG9zdC10aHVtYm5haWwgPiAqLFxuLnBhZ2UtY29udGVudCA+ICosXG4uY29tbWVudC1jb250ZW50ID4gKixcbi53aWRnZXQgPiAqIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG59XG5cbi5lbnRyeS1oZWFkZXIgPiAqOmZpcnN0LWNoaWxkLFxuLnBvc3QtdGh1bWJuYWlsID4gKjpmaXJzdC1jaGlsZCxcbi5wYWdlLWNvbnRlbnQgPiAqOmZpcnN0LWNoaWxkLFxuLmNvbW1lbnQtY29udGVudCA+ICo6Zmlyc3QtY2hpbGQsXG4ud2lkZ2V0ID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5lbnRyeS1oZWFkZXIgPiAqOmxhc3QtY2hpbGQsXG4ucG9zdC10aHVtYm5haWwgPiAqOmxhc3QtY2hpbGQsXG4ucGFnZS1jb250ZW50ID4gKjpsYXN0LWNoaWxkLFxuLmNvbW1lbnQtY29udGVudCA+ICo6bGFzdC1jaGlsZCxcbi53aWRnZXQgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKlxuICogLmVudHJ5LWNvbnRlbnQgY2hpbGRyZW4gc3BlY2lmaWMgY29udHJvbHNcbiAqIC0gQWRkcyBzcGVjaWFsIG1hcmdpbiBvdmVycmlkZXMgZm9yIGFsaWdubWVudCB1dGlsaXR5IGNsYXNzZXNcbiAqL1xuLmVudHJ5LWNvbnRlbnQgPiAqIHtcbiAgLyogUmVzZXQgYWxpZ25sZWZ0IGFuZCBhbGlnbnJpZ2h0IG1hcmdpbnMgYWZ0ZXIgYWxpZ25mdWxsICovXG59XG5cbi5lbnRyeS1jb250ZW50ID4gKi5hbGlnbmxlZnQsXG4uZW50cnktY29udGVudCA+ICouYWxpZ25yaWdodCxcbi5lbnRyeS1jb250ZW50ID4gKi5hbGlnbmxlZnQ6Zmlyc3QtY2hpbGQgKyAqLFxuLmVudHJ5LWNvbnRlbnQgPiAqLmFsaWducmlnaHQ6Zmlyc3QtY2hpbGQgKyAqLFxuLmVudHJ5LWNvbnRlbnQgPiAqLmFsaWduZnVsbC5oYXMtYmFja2dyb3VuZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gKjpsYXN0LWNoaWxkLFxuLmVudHJ5LWNvbnRlbnQgPiAqLmFsaWduZnVsbC5oYXMtYmFja2dyb3VuZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gKi5hbGlnbmZ1bGwgKyAuYWxpZ25sZWZ0LFxuLmVudHJ5LWNvbnRlbnQgPiAqLmFsaWduZnVsbCArIC5hbGlnbnJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLyoqXG4gKiBSZXNldCBzcGVjaWZpYyBlbGVtZW50cyB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIHN0eWxlIGluIG90aGVyIGNvbnRleHRzLlxuICovXG5odG1sLFxuYm9keSxcbnAsXG5vbCxcbnVsLFxubGksXG5kbCxcbmR0LFxuZGQsXG5ibG9ja3F1b3RlLFxuZmlndXJlLFxuZmllbGRzZXQsXG5mb3JtLFxubGVnZW5kLFxudGV4dGFyZWEsXG5wcmUsXG5pZnJhbWUsXG5ocixcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8qKlxuICogQXBwbHkgZ2VuZXJpYyBib3JkZXItYm94IHRvIGFsbCBlbGVtZW50cy5cbiAqIFNlZTpcbiAqIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG5odG1sIHtcbiAgLyogQXBwbHkgYm9yZGVyLWJveCBhY3Jvc3MgdGhlIGVudGlyZSBwYWdlLiAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tZ2xvYmFsLS1mb250LXNlY29uZGFyeSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHkpO1xufVxuXG4vKipcbiAqIFJlbGF4IHRoZSBkZWZpbml0aW9uIGEgYml0LCB0byBhbGxvdyBjb21wb25lbnRzIHRvIG92ZXJyaWRlIGl0IG1hbnVhbGx5LlxuICovXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtYmFzZSk7XG4gIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG5idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jbGVhcjpiZWZvcmUsXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDpiZWZvcmUsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YmVmb3JlLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjpiZWZvcmUsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmJlZm9yZSxcbi5zaXRlLWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6YmVmb3JlLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qIENhdGVnb3J5IDA0IGNhbiBjb250YWluIGFueSBkZWZhdWx0IEhUTUwgZWxlbWVudC4gRG8gbm90IGFkZCBjbGFzc2VzIGhlcmUsIGp1c3QgZ2l2ZSB0aGUgZWxlbWVudHMgc29tZSBiYXNpYyBzdHlsZXMuICovXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgMCB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbn1cblxuYmxvY2txdW90ZSA+ICoge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbn1cblxuYmxvY2txdW90ZSA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5ibG9ja3F1b3RlID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYmxvY2txdW90ZSBwIHtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWg0KTtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLXF1b3RlLS1mb250LWZhbWlseSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcXVvdGUtLWZvbnQtc2l6ZSk7XG4gIC8vIGZvbnQtc3R5bGU6IHZhcigtLXF1b3RlLS1mb250LXN0eWxlKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLXF1b3RlLS1mb250LXdlaWdodCk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1xdW90ZS0tbGluZS1oZWlnaHQpO1xufVxuXG5ibG9ja3F1b3RlIGNpdGUsXG5ibG9ja3F1b3RlIGZvb3RlciB7XG4gIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsb2JhbC0tbGV0dGVyLXNwYWNpbmcpO1xufVxuXG5ibG9ja3F1b3RlLmFsaWdubGVmdCxcbmJsb2NrcXVvdGUuYWxpZ25yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbn1cblxuYmxvY2txdW90ZS5hbGlnbmxlZnQgcCxcbmJsb2NrcXVvdGUuYWxpZ25yaWdodCBwIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDUpO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gIHdpZHRoOiBpbmhlcml0O1xufVxuXG5ibG9ja3F1b3RlLmFsaWdubGVmdCBjaXRlLFxuYmxvY2txdW90ZS5hbGlnbmxlZnQgZm9vdGVyLFxuYmxvY2txdW90ZS5hbGlnbnJpZ2h0IGNpdGUsXG5ibG9ja3F1b3RlLmFsaWducmlnaHQgZm9vdGVyIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1nbG9iYWwtLWxldHRlci1zcGFjaW5nKTtcbn1cblxuYmxvY2txdW90ZSBzdHJvbmcge1xuICAvLyBmb250LXdlaWdodDogdmFyKC0tcXVvdGUtLWZvbnQtd2VpZ2h0LXN0cm9uZyk7XG59XG5cbmJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAnCc7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcXVvdGUtLWZvbnQtc2l6ZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1xdW90ZS0tbGluZS1oZWlnaHQpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoLTAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG59XG5cbmJsb2NrcXVvdGUgLndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbixcbmJsb2NrcXVvdGUgY2l0ZSxcbmJsb2NrcXVvdGUgZm9vdGVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICAvLyBmb250LXN0eWxlOiB2YXIoLS1xdW90ZS0tZm9udC1zdHlsZS1jaXRlKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKTtcbiAgfVxuXG4gIGJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPWVtYWlsXSxcbmlucHV0W3R5cGU9dXJsXSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxuaW5wdXRbdHlwZT1zZWFyY2hdLFxuaW5wdXRbdHlwZT1udW1iZXJdLFxuaW5wdXRbdHlwZT10ZWxdLFxuaW5wdXRbdHlwZT1kYXRlXSxcbmlucHV0W3R5cGU9bW9udGhdLFxuaW5wdXRbdHlwZT13ZWVrXSxcbmlucHV0W3R5cGU9dGltZV0sXG5pbnB1dFt0eXBlPWRhdGV0aW1lXSxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaW5wdXRbdHlwZT1jb2xvcl0sXG4uc2l0ZSB0ZXh0YXJlYSB7XG4gIC8vIGJvcmRlcjogdmFyKC0tZm9ybS0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICAvLyBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLS1ib3JkZXItcmFkaXVzKTtcbiAgLy8gY29sb3I6IHZhcigtLWZvcm0tLWNvbG9yLXRleHQpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcbiAgcGFkZGluZzogdmFyKC0tZm9ybS0tc3BhY2luZy11bml0KTtcbiAgbWFyZ2luOiAwIDJweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9c2VhcmNoXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9dGVsXTpmb2N1cyxcbmlucHV0W3R5cGU9ZGF0ZV06Zm9jdXMsXG5pbnB1dFt0eXBlPW1vbnRoXTpmb2N1cyxcbmlucHV0W3R5cGU9d2Vla106Zm9jdXMsXG5pbnB1dFt0eXBlPXRpbWVdOmZvY3VzLFxuaW5wdXRbdHlwZT1kYXRldGltZV06Zm9jdXMsXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cyxcbmlucHV0W3R5cGU9Y29sb3JdOmZvY3VzLFxuLnNpdGUgdGV4dGFyZWE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZm9ybS0tY29sb3ItdGV4dCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gIG91dGxpbmU6IDJweCBkb3R0ZWQgdmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9ZW1haWxdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT11cmxdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPXNlYXJjaF06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPW51bWJlcl06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPXRlbF06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPWRhdGVdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1tb250aF06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPXdlZWtdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT10aW1lXTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9ZGF0ZXRpbWVdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPWNvbG9yXTpkaXNhYmxlZCxcbi5zaXRlIHRleHRhcmVhOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPXRleHRdLFxuLmlzLWRhcmstdGhlbWUgaW5wdXRbdHlwZT1lbWFpbF0sXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPXVybF0sXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9c2VhcmNoXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9bnVtYmVyXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9dGVsXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9ZGF0ZV0sXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPW1vbnRoXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9d2Vla10sXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPXRpbWVdLFxuLmlzLWRhcmstdGhlbWUgaW5wdXRbdHlwZT1kYXRldGltZV0sXG4uaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9Y29sb3JdLFxuLmlzLWRhcmstdGhlbWUgLnNpdGUgdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTkwKTtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC03cHg7XG59XG5cbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9c2VhcmNoXTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbmlucHV0W3R5cGU9Y29sb3JdIHtcbiAgcGFkZGluZzogY2FsYyh2YXIoLS1mb3JtLS1zcGFjaW5nLXVuaXQpIC8gMik7XG4gIGhlaWdodDogY2FsYyg0ICogdmFyKC0tZm9ybS0tc3BhY2luZy11bml0KSk7XG59XG5cbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT11cmxdIHtcbiAgLyogcnRsOmlnbm9yZSAqL1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuc2VsZWN0IHtcbiAgLy8gYm9yZGVyOiB2YXIoLS1mb3JtLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWZvcm0tLWJvcmRlci1jb2xvcik7XG4gIC8vIGNvbG9yOiB2YXIoLS1mb3JtLS1jb2xvci10ZXh0KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG4gIHBhZGRpbmc6IHZhcigtLWZvcm0tLXNwYWNpbmctdW5pdCkgY2FsYygzICogdmFyKC0tZm9ybS0tc3BhY2luZy11bml0KSkgdmFyKC0tZm9ybS0tc3BhY2luZy11bml0KSB2YXIoLS1mb3JtLS1zcGFjaW5nLXVuaXQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlKSB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwJyBoZWlnaHQ9JzEwJyBmaWxsPSclMjMyODMwM2QnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDEwLDAgNSw1Jy8+PC9zdmc+XCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdmFyKC0tZm9ybS0tc3BhY2luZy11bml0KSB0b3AgNjAlO1xufVxuXG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBvdXRsaW5lOiAycHggZG90dGVkIHZhcigtLWZvcm0tLWJvcmRlci1jb2xvcik7XG59XG5cbi5pcy1kYXJrLXRoZW1lIHNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUtOTApIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTAnIGhlaWdodD0nMTAnIGZpbGw9JyUyMzI4MzAzZCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMTAsMCA1LDUnLz48L3N2Zz5cIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1mb3JtLS1zcGFjaW5nLXVuaXQpIHRvcCA2MCU7XG59XG5cbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1mb3JtLS1mb250LXNpemUpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0tZm9ybS0tbGFiZWwtd2VpZ2h0KTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIC8gMyk7XG59XG5cbi8qKlxuaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9jdXN0b20tc3R5bGluZy1mb3JtLWlucHV0cy13aXRoLW1vZGVybi1jc3MtZmVhdHVyZXMvXG5odHRwczovL2NvZGVwZW4uaW8vYWFyb25pa2VyL3Blbi9aRVlveEVZIGJ5IEFhcm9uIElrZXIuXG5MaWNlbnNlOiBNSVQuXG4qL1xuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIG9yICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgaW5wdXRbdHlwZT1jaGVja2JveF0sXG4gIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIC8vIGJvcmRlcjogdmFyKC0tZm9ybS0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06ZGlzYWJsZWQsXG4gIGlucHV0W3R5cGU9cmFkaW9dOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cblxuICAuaXMtZGFyay10aGVtZSBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbiAgLmlzLWRhcmstdGhlbWUgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUtOTApO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgb3V0bGluZTogMnB4IGRvdHRlZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogNXB4O1xuICAgIHRvcDogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogN3B4O1xuICAgIGhlaWdodDogMTNweDtcbiAgICAvLyBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mb3JtLS1jb2xvci10ZXh0KTtcbiAgICAvLyBib3JkZXItdG9wOiAwO1xuICAgIC8vIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQge1xuICAgIC8vIGNvbG9yOiB2YXIoLS1mb3JtLS1jb2xvci10ZXh0KTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgLy8gYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1yYWRpb106Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgb3V0bGluZTogMnB4IGRvdHRlZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1yYWRpb106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogM3B4O1xuICAgIHRvcDogM3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTFweDtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgLy8gYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWZvcm0tLWNvbG9yLXRleHQpO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB7XG4gICAgLy8gYm9yZGVyOiA0cHggc29saWQgdmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQ6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkOmZvY3VzIHtcbiAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgdmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsLFxuaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyoqXG4gKiBodHRwczovL2Nzcy10cmlja3MuY29tL3N0eWxpbmctY3Jvc3MtYnJvd3Nlci1jb21wYXRpYmxlLXJhbmdlLWlucHV0cy1jc3MvXG4qL1xuQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIG9yICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgaW5wdXRbdHlwZT1yYW5nZV0ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAvKiBIaWRlcyB0aGUgc2xpZGVyIHNvIHRoYXQgY3VzdG9tIHNsaWRlciBjYW4gYmUgbWFkZSAqL1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLyogU3BlY2lmaWMgd2lkdGggaXMgcmVxdWlyZWQgZm9yIEZpcmVmb3guICovXG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZm9ybS0tY29sb3ItcmFuZ2VkKTtcbiAgICAvLyBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDEwcHg7XG4gIH1cblxuICBpbnB1dFt0eXBlPXJhbmdlXTpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIC8vIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLWZvcm0tLWNvbG9yLXJhbmdlZCk7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIC8vIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWJhY2tncm91bmQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAvLyBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mb3JtLS1jb2xvci1yYW5nZWQpO1xuICAgIGhlaWdodDogNDRweDtcbiAgICB3aWR0aDogNDRweDtcbiAgICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnB4O1xuICAvLyBib3JkZXItcmFkaXVzOiA2cHg7XG4gIC8vIGJvcmRlci13aWR0aDogMTlweCAwO1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvLyBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy1maWxsLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZm9ybS0tY29sb3ItcmFuZ2VkKTtcbiAgLy8gYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtbG93ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mb3JtLS1jb2xvci1yYW5nZWQpO1xuICAvLyBib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICAvLyBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1mb3JtLS1jb2xvci1yYW5nZWQpO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiA0NHB4O1xuICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuZmllbGRzZXQge1xuICBkaXNwbGF5OiBncmlkO1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xufVxuXG5maWVsZHNldCBsZWdlbmQge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWxnKTtcbn1cblxuZmllbGRzZXQgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuZmllbGRzZXQgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG5maWVsZHNldCBpbnB1dFt0eXBlPXJhZGlvXSxcbmZpZWxkc2V0IGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZmllbGRzZXQgaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCxcbmZpZWxkc2V0IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICAvLyBmb250LXNpemU6IHZhcigtLWZvcm0tLWZvbnQtc2l6ZSk7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBvc3QtcGFzc3dvcmQtbWVzc2FnZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtbGcpO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtX19sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgLyAzKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDAuNjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkpO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtX19zdWJtaXQge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgLyAzKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1OTJweCkge1xuICAucG9zdC1wYXNzd29yZC1mb3JtX19zdWJtaXQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAuNCAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG4gIH1cbn1cblxuaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBDbGFzc2ljIGVkaXRvciBpbWFnZXMgKi9cbi5lbnRyeS1jb250ZW50IGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogTWFrZSBzdXJlIGVtYmVkcyBhbmQgaWZyYW1lcyBmaXQgdGhlaXIgY29udGFpbmVycy4gKi9cbmVtYmVkLFxuaWZyYW1lLFxub2JqZWN0LFxudmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE1lZGlhIGNhcHRpb25zICovXG5maWdjYXB0aW9uLFxuLndwLWNhcHRpb24sXG4ud3AtY2FwdGlvbi10ZXh0LFxuLndwLWJsb2NrLWVtYmVkIGZpZ2NhcHRpb24ge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xuICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnbmxlZnQgZmlnY2FwdGlvbixcbi5hbGlnbnJpZ2h0IGZpZ2NhcHRpb24sXG4uYWxpZ25sZWZ0IC53cC1jYXB0aW9uLFxuLmFsaWducmlnaHQgLndwLWNhcHRpb24sXG4uYWxpZ25sZWZ0IC53cC1jYXB0aW9uLXRleHQsXG4uYWxpZ25yaWdodCAud3AtY2FwdGlvbi10ZXh0LFxuLmFsaWdubGVmdCAud3AtYmxvY2stZW1iZWQgZmlnY2FwdGlvbixcbi5hbGlnbnJpZ2h0IC53cC1ibG9jay1lbWJlZCBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogV1AgU21pbGV5ICovXG4ucGFnZS1jb250ZW50IC53cC1zbWlsZXksXG4uZW50cnktY29udGVudCAud3Atc21pbGV5LFxuLmNvbW1lbnQtY29udGVudCAud3Atc21pbGV5IHtcbiAgLy8gYm9yZGVyOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKiBPdmVyIGhlcmUsIHBsYWNlIGFueSBlbGVtZW50cyB0aGF0IGRvIG5vdCBuZWVkIHRvIGhhdmUgdGhlaXIgb3duIGZpbGUuICovXG5iLFxuc3Ryb25nIHtcbiAgLy8gZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZGZuLFxuY2l0ZSxcbmVtLFxuaSB7XG4gIC8vIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLypcbiAqIHRleHQtdW5kZXJsaW5lLW9mZnNldCBkb2Vzbid0IHdvcmsgaW4gQ2hyb21lIGF0IGFsbCDwn5GOXG4gKiBCdXQgbG9va3MgbmljZSBpbiBTYWZhcmkvRmlyZWZveCwgc28gbGV0J3Mga2VlcCBpdCBhbmRcbiAqIG1heWJlIENocm9tZSB3aWxsIHN1cHBvcnQgaXQgc29vbi5cbiAqL1xuYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLy8gY29sb3I6IHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSkpO1xuICAvLyB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhbGw7XG59XG5cbmE6aG92ZXIge1xuICAvLyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGRvdHRlZDtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xufVxuXG4uc2l0ZSBhOmZvY3VzOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbikge1xuICAvKiBPbmx5IHZpc2libGUgaW4gV2luZG93cyBIaWdoIENvbnRyYXN0IG1vZGUgKi9cbiAgb3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAxcHggZG90dGVkIGN1cnJlbnRDb2xvcjtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG5cbi5pcy1kYXJrLXRoZW1lIC5zaXRlIGE6Zm9jdXM6bm90KC53cC1ibG9jay1idXR0b25fX2xpbmspOm5vdCgud3AtYmxvY2stZmlsZV9fYnV0dG9uKSxcbi5pcy1kYXJrLXRoZW1lIC5zaXRlIGE6Zm9jdXM6bm90KC53cC1ibG9jay1idXR0b25fX2xpbmspOm5vdCgud3AtYmxvY2stZmlsZV9fYnV0dG9uKSAubWV0YS1uYXYge1xuICAvLyBjb2xvcjogdmFyKC0td3AtLXN0eWxlLS1jb2xvci0tbGluaywgdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKSk7XG59XG5cbi5oYXMtYmFja2dyb3VuZC13aGl0ZSAuc2l0ZSBhOmZvY3VzOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbikge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIC8vIGNvbG9yOiB2YXIoLS13cC0tc3R5bGUtLWNvbG9yLS1saW5rLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlKSk7XG59XG5cbi5oYXMtYmFja2dyb3VuZC13aGl0ZSAuc2l0ZSBhOmZvY3VzOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbikgLm1ldGEtbmF2IHtcbiAgLy8gY29sb3I6IHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpKTtcbn1cblxuLnNpdGUgYTpmb2N1czpub3QoLndwLWJsb2NrLWJ1dHRvbl9fbGluayk6bm90KC53cC1ibG9jay1maWxlX19idXR0b24pLnNraXAtbGluayB7XG4gIC8qIE9ubHkgdmlzaWJsZSBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgbW9kZSAqL1xuICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4uc2l0ZSBhOmZvY3VzOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbikuc2tpcC1saW5rOmZvY3VzIHtcbiAgLy8gY29sb3I6ICMyMTc1OWI7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG59XG5cbi5zaXRlIGE6Zm9jdXM6bm90KC53cC1ibG9jay1idXR0b25fX2xpbmspOm5vdCgud3AtYmxvY2stZmlsZV9fYnV0dG9uKSBpbWcge1xuICBvdXRsaW5lOiAycHggZG90dGVkIHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSkpO1xufVxuXG4uaGFzLWJhY2tncm91bmQgLmhhcy1saW5rLWNvbG9yIGEsXG4uaGFzLWJhY2tncm91bmQuaGFzLWxpbmstY29sb3IgYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS13cC0tc3R5bGUtLWNvbG9yLS1saW5rLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpKTtcbn1cblxuLyogQ2F0ZWdvcnkgMDUgaXMgYWxsIGFib3V0IGFkanVzdGluZyB0aGUgZGVmYXVsdCBibG9jayBzdHlsZXMgdG8gdGhlIGdpdmVuIGxheW91dC4gSSBvbmx5IGFkZGVkIHRocmVlIGJsb2NrcyBhcyBleGFtcGxlcy4gKi9cbi53cC1ibG9jay1hdWRpbyBhdWRpbzpmb2N1cyB7XG4gIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4vKipcbiAqIEJ1dHRvblxuICovXG4uc2l0ZSAuYnV0dG9uLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1yZXNldF0sXG4ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tYnV0dG9uLS1saW5lLWhlaWdodCk7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tLWZvbnQtd2VpZ2h0KTtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWJ1dHRvbi0tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWJ1dHRvbi0tZm9udC1zaXplKTtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLS1ib3JkZXItcmFkaXVzKTtcbiAgLy8gYm9yZGVyOiB2YXIoLS1idXR0b24tLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1idXR0b24tLXBhZGRpbmctdmVydGljYWwpIHZhcigtLWJ1dHRvbi0tcGFkZGluZy1ob3Jpem9udGFsKTtcbn1cblxuLnNpdGUgLmJ1dHRvbjpmb2N1cyxcbmlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbmlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmZvY3VzLFxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtNnB4O1xuICBvdXRsaW5lOiAycHggZG90dGVkIGN1cnJlbnRDb2xvcjtcbn1cblxuLmlzLWRhcmstdGhlbWUgLnNpdGUgLmJ1dHRvbjpmb2N1cyxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyxcbi5pcy1kYXJrLXRoZW1lIGlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmZvY3VzLFxuLmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi5zaXRlIC5idXR0b246Zm9jdXM6bm90KC5oYXMtYmFja2dyb3VuZCksXG5pbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6bm90KC5oYXMtYmFja2dyb3VuZCksXG5pbnB1dFt0eXBlPXJlc2V0XTpmb2N1czpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpmb2N1czpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1czpub3QoLmhhcy1iYWNrZ3JvdW5kKSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQtaG92ZXIpO1xufVxuXG4uc2l0ZSAuYnV0dG9uOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1yZXNldF06ZGlzYWJsZWQsXG4ud3AtYmxvY2stc2VhcmNoX19idXR0b246ZGlzYWJsZWQsXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6ZGlzYWJsZWQge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTUwKTtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTUwKTtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dC1hY3RpdmUpO1xufVxuXG4uc2l0ZSAuYnV0dG9uOmFjdGl2ZSxcbmlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG5pbnB1dFt0eXBlPXJlc2V0XTphY3RpdmUsXG4ud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjphY3RpdmUsXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQtYWN0aXZlKTtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kLWFjdGl2ZSk7XG59XG5cbi5zaXRlIC5idXR0b246aG92ZXIsXG5pbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG5pbnB1dFt0eXBlPXJlc2V0XTpob3Zlcixcbi53cC1ibG9jay1zZWFyY2ggLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQtaG92ZXIpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBCbG9jayBPcHRpb25zXG4gKi9cbi53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQtYWN0aXZlKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dC1ob3ZlcikgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCkgIWltcG9ydGFudDtcbn1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBwYWRkaW5nOiB2YXIoLS1idXR0b24tLXBhZGRpbmctdmVydGljYWwpIHZhcigtLWJ1dHRvbi0tcGFkZGluZy1ob3Jpem9udGFsKTtcbn1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KC5oYXMtYmFja2dyb3VuZCkge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KC5oYXMtYmFja2dyb3VuZCk6bm90KC5oYXMtdGV4dC1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWJhY2tncm91bmQ6bm90KC5oYXMtdGV4dC1jb2xvcikge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtYmFja2dyb3VuZC5oYXMtZ3JheS1iYWNrZ3JvdW5kLWNvbG9yOm5vdCguaGFzLXRleHQtY29sb3IpLFxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWJhY2tncm91bmQuaGFzLWRhcmstZ3JheS1iYWNrZ3JvdW5kLWNvbG9yOm5vdCguaGFzLXRleHQtY29sb3IpLFxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3I6bm90KC5oYXMtdGV4dC1jb2xvcikge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1iYWNrZ3JvdW5kIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZGFyay1ncmF5KTtcbn1cblxuLmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KC5oYXMtdGV4dC1jb2xvcikuaGFzLWJhY2tncm91bmQuaGFzLWdyYXktYmFja2dyb3VuZC1jb2xvcixcbi5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1iYWNrZ3JvdW5kLmhhcy1kYXJrLWdyYXktYmFja2dyb3VuZC1jb2xvcixcbi5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1iYWNrZ3JvdW5kLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xufVxuXG4ud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtdGV4dC1jb2xvcixcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1iYWNrZ3JvdW5kLmhhcy10ZXh0LWNvbG9yIHtcbiAgLy8gYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmFjdGl2ZSxcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKSAhaW1wb3J0YW50O1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmFjdGl2ZS5oYXMtdGV4dC1jb2xvcixcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmhhcy10ZXh0LWNvbG9yIHtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi53cC1ibG9jay1idXR0b24gLmlzLXN0eWxlLXNxdWFyZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIC8vIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmtbc3R5bGUqPXJhZGl1c106Zm9jdXMsXG4ud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rW3N0eWxlKj1yYWRpdXNdOmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgb3V0bGluZTogMnB4IGRvdHRlZCB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ud3AtYmxvY2stY29kZSB7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1ib3JkZXIpO1xuICAvLyBib3JkZXItcmFkaXVzOiAwO1xuICAvLyBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAvLyBib3JkZXItd2lkdGg6IDAuMXJlbTtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG4ud3AtYmxvY2stY29kZSBjb2RlIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndwLWJsb2NrLWNvbHVtbnM6bm90KC5hbGlnbndpZGUpOm5vdCguYWxpZ25mdWxsKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuNjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW46bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW46bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgyMnB4KSB7XG4gIC53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW46bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stY29sdW1ucy5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtY29sdW1ucy1vdmVybGFwIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUycHgpIHtcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0yICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDIuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIC53cC1ibG9jay1jb2x1bW5zLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1jb2x1bW5zLW92ZXJsYXAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMm4pID4gcDpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoMTpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoMjpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoMzpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoNDpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoNTpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBoNjpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiB1bDpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBvbDpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBwcmU6bm90KC5oYXMtYmFja2dyb3VuZCkge1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG4gICAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xuICB9XG5cbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiB1bDpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikgPiBvbDpub3QoLmhhcy1iYWNrZ3JvdW5kKSB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkpO1xuICB9XG5cbiAgLndwLWJsb2NrLWNvbHVtbnMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWNvbHVtbnMtb3ZlcmxhcCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgybikuaXMtdmVydGljYWxseS1hbGlnbmVkLWNlbnRlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwgLndwLWJsb2NrLWNvbHVtbiBwOm5vdCguaGFzLWJhY2tncm91bmQpLFxuLndwLWJsb2NrLWNvbHVtbnMuYWxpZ25mdWxsIC53cC1ibG9jay1jb2x1bW4gaDE6bm90KC5oYXMtYmFja2dyb3VuZCksXG4ud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwgLndwLWJsb2NrLWNvbHVtbiBoMjpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbi53cC1ibG9jay1jb2x1bW5zLmFsaWduZnVsbCAud3AtYmxvY2stY29sdW1uIGgzOm5vdCguaGFzLWJhY2tncm91bmQpLFxuLndwLWJsb2NrLWNvbHVtbnMuYWxpZ25mdWxsIC53cC1ibG9jay1jb2x1bW4gaDQ6bm90KC5oYXMtYmFja2dyb3VuZCksXG4ud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwgLndwLWJsb2NrLWNvbHVtbiBoNTpub3QoLmhhcy1iYWNrZ3JvdW5kKSxcbi53cC1ibG9jay1jb2x1bW5zLmFsaWduZnVsbCAud3AtYmxvY2stY29sdW1uIGg2Om5vdCguaGFzLWJhY2tncm91bmQpIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbn1cblxuLndwLWJsb2NrLWNvdmVyLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY292ZXItLWNvbG9yLWJhY2tncm91bmQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1jb3Zlci0taGVpZ2h0KTtcbiAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbTogaW5oZXJpdDtcblxuICAvKiBkZWZhdWx0ICYgY3VzdG9tIGJhY2tncm91bmQtY29sb3IgKi9cblxuICAvKiBUcmVhdGluZyBIMiBzZXBhcmF0ZWx5IHRvIGFjY291bnQgZm9yIGxlZ2FjeSAvY29yZSBzdHlsZXMgKi9cblxuICAvKiBCbG9jayBTdHlsZXMgKi9cbn1cblxuLndwLWJsb2NrLWNvdmVyOm5vdCguYWxpZ253aWRlKTpub3QoLmFsaWduZnVsbCksXG4ud3AtYmxvY2stY292ZXItaW1hZ2U6bm90KC5hbGlnbndpZGUpOm5vdCguYWxpZ25mdWxsKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ud3AtYmxvY2stY292ZXIuYWxpZ25mdWxsLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXItaW1hZ2UtdGV4dCxcbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXItdGV4dCxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXItaW1hZ2UtdGV4dCxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXItdGV4dCB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBhOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbiksXG4ud3AtYmxvY2stY292ZXIgLndwLWJsb2NrLWNvdmVyLWltYWdlLXRleHQgYTpub3QoLndwLWJsb2NrLWJ1dHRvbl9fbGluayk6bm90KC53cC1ibG9jay1maWxlX19idXR0b24pLFxuLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlci10ZXh0IGE6bm90KC53cC1ibG9jay1idXR0b25fX2xpbmspOm5vdCgud3AtYmxvY2stZmlsZV9fYnV0dG9uKSxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBhOm5vdCgud3AtYmxvY2stYnV0dG9uX19saW5rKTpub3QoLndwLWJsb2NrLWZpbGVfX2J1dHRvbiksXG4ud3AtYmxvY2stY292ZXItaW1hZ2UgLndwLWJsb2NrLWNvdmVyLWltYWdlLXRleHQgYTpub3QoLndwLWJsb2NrLWJ1dHRvbl9fbGluayk6bm90KC53cC1ibG9jay1maWxlX19idXR0b24pLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIC53cC1ibG9jay1jb3Zlci10ZXh0IGE6bm90KC53cC1ibG9jay1idXR0b25fX2xpbmspOm5vdCgud3AtYmxvY2stZmlsZV9fYnV0dG9uKSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciAuaGFzLWxpbmstY29sb3IgYSxcbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXItaW1hZ2UtdGV4dCAuaGFzLWxpbmstY29sb3IgYSxcbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXItdGV4dCAuaGFzLWxpbmstY29sb3IgYSxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciAuaGFzLWxpbmstY29sb3IgYSxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXItaW1hZ2UtdGV4dCAuaGFzLWxpbmstY29sb3IgYSxcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXItdGV4dCAuaGFzLWxpbmstY29sb3IgYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS13cC0tc3R5bGUtLWNvbG9yLS1saW5rLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpKTtcbn1cblxuLndwLWJsb2NrLWNvdmVyOm5vdChbY2xhc3MqPWJhY2tncm91bmQtY29sb3JdKSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbi53cC1ibG9jay1jb3Zlcjpub3QoW2NsYXNzKj1iYWNrZ3JvdW5kLWNvbG9yXSkgLndwLWJsb2NrLWNvdmVyLWltYWdlLXRleHQsXG4ud3AtYmxvY2stY292ZXI6bm90KFtjbGFzcyo9YmFja2dyb3VuZC1jb2xvcl0pIC53cC1ibG9jay1jb3Zlci10ZXh0LFxuLndwLWJsb2NrLWNvdmVyLWltYWdlOm5vdChbY2xhc3MqPWJhY2tncm91bmQtY29sb3JdKSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbi53cC1ibG9jay1jb3Zlci1pbWFnZTpub3QoW2NsYXNzKj1iYWNrZ3JvdW5kLWNvbG9yXSkgLndwLWJsb2NrLWNvdmVyLWltYWdlLXRleHQsXG4ud3AtYmxvY2stY292ZXItaW1hZ2U6bm90KFtjbGFzcyo9YmFja2dyb3VuZC1jb2xvcl0pIC53cC1ibG9jay1jb3Zlci10ZXh0IHtcbiAgLy8gY29sb3I6IHZhcigtLWNvdmVyLS1jb2xvci1mb3JlZ3JvdW5kKTtcbn1cblxuLndwLWJsb2NrLWNvdmVyIGgyLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIGgyIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy0tbGV0dGVyLXNwYWNpbmctaDIpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0taGVhZGluZy0tbGluZS1oZWlnaHQtaDIpO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gIC8vIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53cC1ibG9jay1jb3ZlciBoMi5oYXMtdGV4dC1hbGlnbi1sZWZ0LFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIGgyLmhhcy10ZXh0LWFsaWduLWxlZnQge1xuICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ud3AtYmxvY2stY292ZXIgaDIuaGFzLXRleHQtYWxpZ24tY2VudGVyLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIGgyLmhhcy10ZXh0LWFsaWduLWNlbnRlciB7XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLndwLWJsb2NrLWNvdmVyIGgyLmhhcy10ZXh0LWFsaWduLXJpZ2h0LFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIGgyLmhhcy10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgLy8gdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbi53cC1ibG9jay1jb3Zlci1pbWFnZSAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKSk7XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciA+ICosXG4ud3AtYmxvY2stY292ZXItaW1hZ2UgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgPiAqIHtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuNjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyID4gKixcbiAgLndwLWJsb2NrLWNvdmVyLWltYWdlIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1jb3ZlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciA+ICo6Zmlyc3QtY2hpbGQsXG4ud3AtYmxvY2stY292ZXItaW1hZ2UgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLndwLWJsb2NrLWNvdmVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyID4gKjpsYXN0LWNoaWxkLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndwLWJsb2NrLWNvdmVyLmFsaWdubGVmdCxcbi53cC1ibG9jay1jb3Zlci5hbGlnbnJpZ2h0LFxuLndwLWJsb2NrLWNvdmVyLWltYWdlLmFsaWdubGVmdCxcbi53cC1ibG9jay1jb3Zlci1pbWFnZS5hbGlnbnJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLndwLWJsb2NrLWNvdmVyLmFsaWdubGVmdCA+ICosXG4ud3AtYmxvY2stY292ZXIuYWxpZ25yaWdodCA+ICosXG4ud3AtYmxvY2stY292ZXItaW1hZ2UuYWxpZ25sZWZ0ID4gKixcbi53cC1ibG9jay1jb3Zlci1pbWFnZS5hbGlnbnJpZ2h0ID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53cC1ibG9jay1jb3Zlci5oYXMtbGVmdC1jb250ZW50LFxuLndwLWJsb2NrLWNvdmVyLmhhcy1yaWdodC1jb250ZW50LFxuLndwLWJsb2NrLWNvdmVyLWltYWdlLmhhcy1sZWZ0LWNvbnRlbnQsXG4ud3AtYmxvY2stY292ZXItaW1hZ2UuaGFzLXJpZ2h0LWNvbnRlbnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLndwLWJsb2NrLWNvdmVyLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1ib3JkZXIsXG4ud3AtYmxvY2stY292ZXItaW1hZ2UuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWJvcmRlciB7XG4gIC8vIGJvcmRlcjogY2FsYygzICogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpKSBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJvcmRlcik7XG59XG5cbi53cC1ibG9jay1maWxlIGEud3AtYmxvY2stZmlsZV9fYnV0dG9uOmFjdGl2ZSxcbi53cC1ibG9jay1maWxlIGEud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzLFxuLndwLWJsb2NrLWZpbGUgYS53cC1ibG9jay1maWxlX19idXR0b246aG92ZXIge1xuICAvLyBjb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0LWhvdmVyKTtcbiAgb3BhY2l0eTogaW5oZXJpdDtcbn1cblxuLndwLWJsb2NrLWZpbGUgYS53cC1ibG9jay1maWxlX19idXR0b246dmlzaXRlZCB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xufVxuXG4ud3AtYmxvY2stZmlsZSBhLndwLWJsb2NrLWZpbGVfX2J1dHRvbjp2aXNpdGVkOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dC1ob3Zlcik7XG59XG5cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tYnV0dG9uLS1saW5lLWhlaWdodCk7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b24tLWZvbnQtd2VpZ2h0KTtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWJ1dHRvbi0tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWJ1dHRvbi0tZm9udC1zaXplKTtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLS1ib3JkZXItcmFkaXVzKTtcbiAgLy8gYm9yZGVyOiB2YXIoLS1idXR0b24tLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1idXR0b24tLXBhZGRpbmctdmVydGljYWwpIHZhcigtLWJ1dHRvbi0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtNnB4O1xuICBvdXRsaW5lOiAycHggZG90dGVkIGN1cnJlbnRDb2xvcjtcbn1cblxuLmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpmb2N1cyB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzOm5vdCguaGFzLWJhY2tncm91bmQpIHtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dC1ob3Zlcik7XG59XG5cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b246ZGlzYWJsZWQge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTUwKTtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlLTUwKTtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dC1hY3RpdmUpO1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaW1hZ2UsXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKSAvIDIpO1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaW1hZ2UgZmlnY2FwdGlvbixcbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pdGVtIGZpZ2NhcHRpb24ge1xuICBtYXJnaW46IDA7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlKTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSBmaWdjYXB0aW9uIGEsXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaXRlbSBmaWdjYXB0aW9uIGEge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSBmaWdjYXB0aW9uIGE6Zm9jdXMsXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaXRlbSBmaWdjYXB0aW9uIGE6Zm9jdXMge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSkpO1xuICAvLyB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSBhOmZvY3VzIGltZyxcbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pdGVtIGE6Zm9jdXMgaW1nIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLndwLWJsb2NrLWdyb3VwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG59XG5cbi53cC1ibG9jay1ncm91cDpiZWZvcmUsXG4ud3AtYmxvY2stZ3JvdXA6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIgPiAqIHtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuNjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLndwLWJsb2NrLWdyb3VwIC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1ncm91cCAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgLndwLWJsb2NrLWdyb3VwX19pbm5lci1jb250YWluZXIgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmQge1xuICBwYWRkaW5nOiBjYWxjKDAuNjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLndwLWJsb2NrLWdyb3VwLmhhcy1iYWNrZ3JvdW5kIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1ncm91cC5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtYm9yZGVyIHtcbiAgLy8gYm9yZGVyOiBjYWxjKDMgKiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkpIHNvbGlkIHZhcigtLWdsb2JhbC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLndwLWJsb2NrLWdyb3VwLmhhcy1iYWNrZ3JvdW5kIC53cC1ibG9jay1ncm91cF9faW5uZXItY29udGFpbmVyID4gLmFsaWduZnVsbCxcbi53cC1ibG9jay1ncm91cC5oYXMtYmFja2dyb3VuZCAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciA+IGhyLndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLWRvdHMpOm5vdCguYWxpZ253aWRlKS5hbGlnbmZ1bGwsXG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWJvcmRlciAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciA+IC5hbGlnbmZ1bGwsXG4ud3AtYmxvY2stZ3JvdXAuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWJvcmRlciAud3AtYmxvY2stZ3JvdXBfX2lubmVyLWNvbnRhaW5lciA+IGhyLndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLWRvdHMpOm5vdCguYWxpZ253aWRlKS5hbGlnbmZ1bGwge1xuICBtYXgtd2lkdGg6IGNhbGModmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25mdWxsLXdpZHRoKSArICgyICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSkpO1xuICB3aWR0aDogY2FsYyh2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmZ1bGwtd2lkdGgpICsgKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyxcbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNiB7XG4gIGNsZWFyOiBib3RoO1xuICAvLyBmb250LWZhbWlseTogdmFyKC0taGVhZGluZy0tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy0tZm9udC13ZWlnaHQpO1xufVxuXG5oMSBzdHJvbmcsXG4uaDEgc3Ryb25nLFxuaDIgc3Ryb25nLFxuLmgyIHN0cm9uZyxcbmgzIHN0cm9uZyxcbi5oMyBzdHJvbmcsXG5oNCBzdHJvbmcsXG4uaDQgc3Ryb25nLFxuaDUgc3Ryb25nLFxuLmg1IHN0cm9uZyxcbmg2IHN0cm9uZyxcbi5oNiBzdHJvbmcge1xuICAvLyBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy0tZm9udC13ZWlnaHQtc3Ryb25nKTtcbn1cblxuaDEsXG4uaDEge1xuICAvLyBmb250LXNpemU6IHZhcigtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oMSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oMSk7XG59XG5cbmgyLFxuLmgyIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy0tbGV0dGVyLXNwYWNpbmctaDIpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0taGVhZGluZy0tbGluZS1oZWlnaHQtaDIpO1xufVxuXG5oMyxcbi5oMyB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0taGVhZGluZy0tZm9udC1zaXplLWgzKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWgzKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRpbmctLWxpbmUtaGVpZ2h0LWgzKTtcbn1cblxuaDQsXG4uaDQge1xuICAvLyBmb250LXNpemU6IHZhcigtLWhlYWRpbmctLWZvbnQtc2l6ZS1oNCk7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkaW5nLS1mb250LXdlaWdodC1zdHJvbmcpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy0tbGV0dGVyLXNwYWNpbmctaDQpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0taGVhZGluZy0tbGluZS1oZWlnaHQtaDQpO1xufVxuXG5oNSxcbi5oNSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0taGVhZGluZy0tZm9udC1zaXplLWg1KTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctLWZvbnQtd2VpZ2h0LXN0cm9uZyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oNSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oNSk7XG59XG5cbmg2LFxuLmg2IHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nLS1mb250LXNpemUtaDYpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy0tZm9udC13ZWlnaHQtc3Ryb25nKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctLWxldHRlci1zcGFjaW5nLWg2KTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRpbmctLWxpbmUtaGVpZ2h0LWg2KTtcbn1cblxuLndwLWJsb2NrLWltYWdlIHtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud3AtYmxvY2staW1hZ2UgZmlnY2FwdGlvbiB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xuICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG59XG5cbi53cC1ibG9jay1pbWFnZSAuYWxpZ25sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG59XG5cbi53cC1ibG9jay1pbWFnZSBhOmZvY3VzIGltZyB7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gKltjbGFzcz13cC1ibG9jay1pbWFnZV0sXG4uZW50cnktY29udGVudCBbY2xhc3MqPWlubmVyLWNvbnRhaW5lcl0gPiAqW2NsYXNzPXdwLWJsb2NrLWltYWdlXSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gKltjbGFzcz13cC1ibG9jay1pbWFnZV0gKyAqLFxuLmVudHJ5LWNvbnRlbnQgW2NsYXNzKj1pbm5lci1jb250YWluZXJdID4gKltjbGFzcz13cC1ibG9jay1pbWFnZV0gKyAqIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi53cC1ibG9jay1pbWFnZS5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtYm9yZGVyIGltZyxcbi53cC1ibG9jay1pbWFnZS5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtaW1hZ2UtZnJhbWUgaW1nIHtcbiAgLy8gYm9yZGVyOiBjYWxjKDMgKiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkpIHNvbGlkIHZhcigtLWdsb2JhbC0tY29sb3ItYm9yZGVyKTtcbn1cblxuLndwLWJsb2NrLWltYWdlLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1pbWFnZS1mcmFtZSBpbWcge1xuICBwYWRkaW5nOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLmVudHJ5LWNvbnRlbnQgPiAud3AtYmxvY2staW1hZ2UgPiAuYWxpZ25sZWZ0LFxuICAuZW50cnktY29udGVudCA+IC53cC1ibG9jay1pbWFnZSA+IC5hbGlnbnJpZ2h0IHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC5lbnRyeS1jb250ZW50ID4gLndwLWJsb2NrLWltYWdlID4gLmFsaWdubGVmdCxcbiAgLmVudHJ5LWNvbnRlbnQgPiAud3AtYmxvY2staW1hZ2UgPiAuYWxpZ25yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi53cC1ibG9jay1sYXRlc3QtY29tbWVudHMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtY29tbWVudHMgLndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudCB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcblxuICAvKiBWZXJ0aWNhbCBtYXJnaW5zIGxvZ2ljICovXG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtY29tbWVudHMgLndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtY29tbWVudHMgLndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1jb21tZW50cyAud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LW1ldGEge1xuICAvLyBmb250LWZhbWlseTogdmFyKC0taGVhZGluZy0tZm9udC1mYW1pbHkpO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzIC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtZGF0ZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXNtKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1jb21tZW50cyAud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWV4Y2VycHQgcCB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzOm5vdCguaXMtZ3JpZCkgPiBsaSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMS42NjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygxLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzOm5vdCguaXMtZ3JpZCkgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHM6bm90KC5pcy1ncmlkKSA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZCA+IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1ncmlkID4gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5jb2x1bW5zLTIgPiBsaTpudGgtbGFzdC1jaGlsZCgtbisyKTpudGgtY2hpbGQoMm4rMSksXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuY29sdW1ucy0yID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rMik6bnRoLWNoaWxkKDJuKzEpIH4gbGksXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuY29sdW1ucy0zID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rMyk6bnRoLWNoaWxkKDNuKzEpLFxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1ncmlkLmNvbHVtbnMtMyA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzMpOm50aC1jaGlsZCgzbisxKSB+IGxpLFxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1ncmlkLmNvbHVtbnMtNCA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzQpOm50aC1jaGlsZCg0bisxKSxcbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5jb2x1bW5zLTQgPiBsaTpudGgtbGFzdC1jaGlsZCgtbis0KTpudGgtY2hpbGQoNG4rMSkgfiBsaSxcbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5jb2x1bW5zLTUgPiBsaTpudGgtbGFzdC1jaGlsZCgtbis1KTpudGgtY2hpbGQoNW4rMSksXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuY29sdW1ucy01ID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rNSk6bnRoLWNoaWxkKDVuKzEpIH4gbGksXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuY29sdW1ucy02ID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rNik6bnRoLWNoaWxkKDZuKzEpLFxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1ncmlkLmNvbHVtbnMtNiA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzYpOm50aC1jaGlsZCg2bisxKSB+IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cyA+IGxpID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC4zMzMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygwLjMzMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzID4gbGkgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cyA+IGxpID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cyA+IGxpID4gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWxhdGVzdC1wb3N0cy0tdGl0bGUtZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWxhdGVzdC1wb3N0cy0tdGl0bGUtZm9udC1zaXplKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctLWZvbnQtd2VpZ2h0KTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMC4zMzMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cyAud3AtYmxvY2stbGF0ZXN0LXBvc3RzX19wb3N0LWF1dGhvciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLW1kKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMgLndwLWJsb2NrLWxhdGVzdC1wb3N0c19fcG9zdC1kYXRlIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcbn1cblxuW2NsYXNzKj1pbm5lci1jb250YWluZXJdIC53cC1ibG9jay1sYXRlc3QtcG9zdHMgLndwLWJsb2NrLWxhdGVzdC1wb3N0c19fcG9zdC1kYXRlLFxuLmhhcy1iYWNrZ3JvdW5kIC53cC1ibG9jay1sYXRlc3QtcG9zdHMgLndwLWJsb2NrLWxhdGVzdC1wb3N0c19fcG9zdC1kYXRlIHtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cyAud3AtYmxvY2stbGF0ZXN0LXBvc3RzX19wb3N0LWV4Y2VycHQsXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzIC53cC1ibG9jay1sYXRlc3QtcG9zdHNfX3Bvc3QtZnVsbC1jb250ZW50IHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWxhdGVzdC1wb3N0cy0tZGVzY3JpcHRpb24tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWxhdGVzdC1wb3N0cy0tZGVzY3JpcHRpb24tZm9udC1zaXplKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC42NjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG4uZW50cnktY29udGVudCBbY2xhc3MqPWlubmVyLWNvbnRhaW5lcl0gLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbmZ1bGwsXG4uZW50cnktY29udGVudCAuaGFzLWJhY2tncm91bmQgLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycyB7XG4gIC8vIGJvcmRlci10b3A6IGNhbGMoMyAqIHZhcigtLXNlcGFyYXRvci0taGVpZ2h0KSkgc29saWQgdmFyKC0tZ2xvYmFsLS1jb2xvci1ib3JkZXIpO1xuICAvLyBib3JkZXItYm90dG9tOiBjYWxjKDMgKiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkpIHNvbGlkIHZhcigtLWdsb2JhbC0tY29sb3ItYm9yZGVyKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtbGF0ZXN0LXBvc3RzLWRpdmlkZXJzOm5vdCguaXMtZ3JpZCkgPiBsaSxcbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycyA+IGxpIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIC8vIGJvcmRlci1ib3R0b206IHZhcigtLXNlcGFyYXRvci0taGVpZ2h0KSBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJvcmRlcik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVyczpub3QoLmlzLWdyaWQpID4gbGk6bGFzdC1jaGlsZCxcbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycyA+IGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLy8gYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtbGF0ZXN0LXBvc3RzLWRpdmlkZXJzLmlzLWdyaWQge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCAwIHZhcigtLWdsb2JhbC0tY29sb3ItYm9yZGVyKTtcbiAgLy8gYm9yZGVyLWJvdHRvbTogY2FsYygyICogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpKSBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJvcmRlcik7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycy5pcy1ncmlkIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xufVxuXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1sYXRlc3QtcG9zdHMtZGl2aWRlcnMuaXMtZ3JpZCBsaTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycy5pcy1ncmlkLmNvbHVtbnMtMiBsaSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSk7XG4gIH1cblxuICAud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1sYXRlc3QtcG9zdHMtZGl2aWRlcnMuaXMtZ3JpZC5jb2x1bW5zLTMgbGkge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMykpO1xuICB9XG5cbiAgLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtbGF0ZXN0LXBvc3RzLWRpdmlkZXJzLmlzLWdyaWQuY29sdW1ucy00IGxpIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDQpKTtcbiAgfVxuXG4gIC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1kaXZpZGVycy5pcy1ncmlkLmNvbHVtbnMtNSBsaSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA1KSk7XG4gIH1cblxuICAud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1sYXRlc3QtcG9zdHMtZGl2aWRlcnMuaXMtZ3JpZC5jb2x1bW5zLTYgbGkge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gNikpO1xuICB9XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1ib3JkZXJzIGxpIHtcbiAgLy8gYm9yZGVyOiBjYWxjKDMgKiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkpIHNvbGlkIHZhcigtLWdsb2JhbC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG59XG5cbi53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWxhdGVzdC1wb3N0cy1ib3JkZXJzIGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtbGF0ZXN0LXBvc3RzLWJvcmRlcnM6bm90KC5pcy1ncmlkKSBsaSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xufVxuXG4uZ2FsbGVyeS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1pdGVtIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdhbGxlcnktaXRlbSBhOmZvY3VzIGltZyB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMzMuMzMlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMjUlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTYuNjYlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTQuMjglO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTIuNSU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMS4xMSU7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZmlndXJlLndwLWNhcHRpb24gYTpmb2N1cyBpbWcge1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG51bCxcbm9sIHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWxpc3QtLWZvbnQtZmFtaWx5KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG59XG5cbnVsLmFsaWduY2VudGVyLFxub2wuYWxpZ25jZW50ZXIge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnVsLmFsaWducmlnaHQsXG5vbC5hbGlnbnJpZ2h0IHtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICAvLyB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMDtcbn1cblxudWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xufVxuXG5kdCB7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZpbml0aW9uLXRlcm0tLWZvbnQtZmFtaWx5KTtcbiAgLy8gZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IHtcbiAgLyoqXG4gICAqIEJsb2NrIE9wdGlvbnNcbiAgICovXG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0LmFsaWduZnVsbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IGE6Zm9jdXMgaW1nIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50IHtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU5MnB4KSB7XG4gIC53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50ID4gKiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMC42NjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygwLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50ID4gKiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50ID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IC53cC1ibG9jay1tZWRpYS10ZXh0X19jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAud3AtYmxvY2stbWVkaWEtdGV4dC5pcy1zdGFja2VkLW9uLW1vYmlsZSAud3AtYmxvY2stbWVkaWEtdGV4dF9fY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIH1cbn1cblxuLndwLWJsb2NrLW1lZGlhLXRleHQuaXMtc3R5bGUtdHdlbnR5dHdlbnR5b25lLWJvcmRlciB7XG4gIC8vIGJvcmRlcjogY2FsYygzICogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpKSBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJvcmRlcik7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmsge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud3AtYmxvY2stbmF2aWdhdGlvbiAud3AtYmxvY2stbmF2aWdhdGlvbi1saW5rIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmtfX2NvbnRlbnQge1xuICBwYWRkaW5nOiB2YXIoLS1wcmltYXJ5LW5hdi0tcGFkZGluZyk7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmsgLndwLWJsb2NrLW5hdmlnYXRpb24tbGlua19fbGFiZWwge1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtZmFtaWx5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1wcmltYXJ5LW5hdi0tZm9udC1zaXplKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXdlaWdodCk7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmtfX3N1Ym1lbnUtaWNvbiB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uID4gLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciAuaGFzLWNoaWxkIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmhlcml0O1xufVxuXG4ud3AtYmxvY2stbmF2aWdhdGlvbiA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIgLmhhcy1jaGlsZCAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyIHtcbiAgLy8gYm9yZGVyOiBub25lO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpO1xuICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgdG9wOiBpbmhlcml0O1xufVxuXG4ud3AtYmxvY2stbmF2aWdhdGlvbiA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIgLmhhcy1jaGlsZCAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmsgLndwLWJsb2NrLW5hdmlnYXRpb24tbGlua19fY29udGVudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogY2FsYygwLjUgKiB2YXIoLS1wcmltYXJ5LW5hdi0tcGFkZGluZykpIHZhcigtLXByaW1hcnktbmF2LS1wYWRkaW5nKTtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyIC5oYXMtY2hpbGQgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciAud3AtYmxvY2stbmF2aWdhdGlvbi1saW5rX19zdWJtZW51LWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud3AtYmxvY2stbmF2aWdhdGlvbiA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIgLmhhcy1jaGlsZDpob3ZlciAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyLFxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyIC5oYXMtY2hpbGQ6Zm9jdXMtd2l0aGluIC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyID4gLmhhcy1jaGlsZCA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWJhY2tncm91bmQpO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICAvLyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wcmltYXJ5LW5hdi0tYm9yZGVyLWNvbG9yKTtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyID4gLmhhcy1jaGlsZCA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXI6YmVmb3JlLFxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyID4gLmhhcy1jaGlsZCA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIHRvcDogLTEwcHg7XG4gIGxlZnQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgLy8gYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LW5hdi0tYm9yZGVyLWNvbG9yKSB0cmFuc3BhcmVudDtcbiAgLy8gYm9yZGVyLXdpZHRoOiAwIDdweCAxMHB4IDdweDtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb24gPiAud3AtYmxvY2stbmF2aWdhdGlvbl9fY29udGFpbmVyID4gLmhhcy1jaGlsZCA+IC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXI6YWZ0ZXIge1xuICB0b3A6IC05cHg7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKSB0cmFuc3BhcmVudDtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb246bm90KC5oYXMtYmFja2dyb3VuZCkgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uOm5vdCguaGFzLWJhY2tncm91bmQpIC53cC1ibG9jay1uYXZpZ2F0aW9uX19jb250YWluZXIgLndwLWJsb2NrLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi53cC1ibG9jay1uYXZpZ2F0aW9uOm5vdCguaGFzLXRleHQtY29sb3IpIC53cC1ibG9jay1uYXZpZ2F0aW9uLWxpbmsgPiBhOmhvdmVyLFxuLndwLWJsb2NrLW5hdmlnYXRpb246bm90KC5oYXMtdGV4dC1jb2xvcikgLndwLWJsb2NrLW5hdmlnYXRpb24tbGluayA+IGE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tcHJpbWFyeS1uYXYtLWNvbG9yLWxpbmstaG92ZXIpO1xufVxuXG4ud3AtYmxvY2stbmF2aWdhdGlvbjpub3QoLmhhcy10ZXh0LWNvbG9yKSAud3AtYmxvY2stbmF2aWdhdGlvbi1saW5rID4gYTpob3ZlciB7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvLyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGRvdHRlZDtcbn1cblxuLndwLWJsb2NrLW5hdmlnYXRpb246bm90KC5oYXMtdGV4dC1jb2xvcikgLndwLWJsb2NrLW5hdmlnYXRpb24tbGlua19fY29udGVudCB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbnAge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0td3AtLXR5cG9ncmFwaHktLWxpbmUtaGVpZ2h0LCAtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG59XG5cbnAuaGFzLWJhY2tncm91bmQge1xuICBwYWRkaW5nOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG59XG5cbnAuaGFzLXRleHQtY29sb3IgYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS13cC0tc3R5bGUtLWNvbG9yLS1saW5rLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpKTtcbn1cblxucHJlLndwLWJsb2NrLXByZWZvcm1hdHRlZCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUge1xuICBwYWRkaW5nOiBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpIDA7XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLy8gYm9yZGVyLXdpZHRoOiB2YXIoLS1wdWxscXVvdGUtLWJvcmRlci13aWR0aCk7XG4gIC8vIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAvLyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvKipcbiAgICogQmxvY2sgT3B0aW9uc1xuICAgKi9cbn1cblxuLndwLWJsb2NrLXB1bGxxdW90ZSBibG9ja3F1b3RlOmJlZm9yZSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGNvbnRlbnQ6ICfigJwnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICAvLyBmb250LXNpemU6IDNyZW07XG4gIC8vIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIC8vIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlIHAge1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tcHVsbHF1b3RlLS1mb250LWZhbWlseSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcHVsbHF1b3RlLS1mb250LXNpemUpO1xuICAvLyBmb250LXN0eWxlOiB2YXIoLS1wdWxscXVvdGUtLWZvbnQtc3R5bGUpO1xuICAvLyBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tcHVsbHF1b3RlLS1sZXR0ZXItc3BhY2luZyk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1wdWxscXVvdGUtLWxpbmUtaGVpZ2h0KTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlIGEge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlIC53cC1ibG9jay1wdWxscXVvdGVfX2NpdGF0aW9uLFxuLndwLWJsb2NrLXB1bGxxdW90ZSBjaXRlLFxuLndwLWJsb2NrLXB1bGxxdW90ZSBmb290ZXIge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIC8vIGZvbnQtc3R5bGU6IHZhcigtLXB1bGxxdW90ZS0tZm9udC1zdHlsZSk7XG4gIC8vIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlOm5vdCguaXMtc3R5bGUtc29saWQtY29sb3IpIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmxlZnQ6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcikgYmxvY2txdW90ZTpiZWZvcmUsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdubGVmdDpub3QoLmlzLXN0eWxlLXNvbGlkLWNvbG9yKSBjaXRlIHtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSA+IHAsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSBibG9ja3F1b3RlIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbndpZGUtd2lkdGgpO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbDpub3QoLmlzLXN0eWxlLXNvbGlkLWNvbG9yKSA+IHAsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbDpub3QoLmlzLXN0eWxlLXNvbGlkLWNvbG9yKSBibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMCBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmlzLXN0eWxlLXNvbGlkLWNvbG9yIHtcbiAgLy8gY29sb3I6IHZhcigtLXB1bGxxdW90ZS0tY29sb3ItZm9yZWdyb3VuZCk7XG4gIHBhZGRpbmc6IGNhbGMoMi41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbiAgLy8gYm9yZGVyLXdpZHRoOiB2YXIoLS1wdWxscXVvdGUtLWJvcmRlci13aWR0aCk7XG4gIC8vIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tcHVsbHF1b3RlLS1ib3JkZXItY29sb3IpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLndwLWJsb2NrLXB1bGxxdW90ZS5pcy1zdHlsZS1zb2xpZC1jb2xvciB7XG4gICAgcGFkZGluZzogY2FsYyg1ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmlzLXN0eWxlLXNvbGlkLWNvbG9yIGJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgLy8gdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLndwLWJsb2NrLXB1bGxxdW90ZS5pcy1zdHlsZS1zb2xpZC1jb2xvciBibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUuaXMtc3R5bGUtc29saWQtY29sb3IgYmxvY2txdW90ZSBwIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1wdWxscXVvdGUtLWZvbnQtc2l6ZSk7XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUuaXMtc3R5bGUtc29saWQtY29sb3IgLndwLWJsb2NrLXB1bGxxdW90ZV9fY2l0YXRpb24sXG4ud3AtYmxvY2stcHVsbHF1b3RlLmlzLXN0eWxlLXNvbGlkLWNvbG9yIGNpdGUsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmlzLXN0eWxlLXNvbGlkLWNvbG9yIGZvb3RlciB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUuaXMtc3R5bGUtc29saWQtY29sb3IuYWxpZ25sZWZ0LFxuLndwLWJsb2NrLXB1bGxxdW90ZS5pcy1zdHlsZS1zb2xpZC1jb2xvci5hbGlnbnJpZ2h0IHtcbiAgcGFkZGluZzogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmlzLXN0eWxlLXNvbGlkLWNvbG9yLmFsaWdubGVmdCBibG9ja3F1b3RlLFxuLndwLWJsb2NrLXB1bGxxdW90ZS5pcy1zdHlsZS1zb2xpZC1jb2xvci5hbGlnbnJpZ2h0IGJsb2NrcXVvdGUge1xuICBtYXgtd2lkdGg6IGluaXRpYWw7XG59XG5cbi53cC1ibG9jay1xdW90ZSB7XG4gIC8vIGJvcmRlci1sZWZ0OiBub25lO1xuXG4gIC8qKlxuICAgKiBCbG9jayBPcHRpb25zXG4gICAqL1xufVxuXG4ud3AtYmxvY2stcXVvdGU6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAnCc7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcXVvdGUtLWZvbnQtc2l6ZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1xdW90ZS0tbGluZS1oZWlnaHQpO1xuICBsZWZ0OiA4cHg7XG59XG5cbi5oYXMtYmFja2dyb3VuZCAud3AtYmxvY2stcXVvdGUgLndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbixcbltjbGFzcyo9YmFja2dyb3VuZC1jb2xvcl0gLndwLWJsb2NrLXF1b3RlIC53cC1ibG9jay1xdW90ZV9fY2l0YXRpb24sXG5bc3R5bGUqPWJhY2tncm91bmQtY29sb3JdIC53cC1ibG9jay1xdW90ZSAud3AtYmxvY2stcXVvdGVfX2NpdGF0aW9uLFxuLndwLWJsb2NrLWNvdmVyW3N0eWxlKj1iYWNrZ3JvdW5kLWltYWdlXSAud3AtYmxvY2stcXVvdGUgLndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbixcbi5oYXMtYmFja2dyb3VuZCAud3AtYmxvY2stcXVvdGUgY2l0ZSxcbltjbGFzcyo9YmFja2dyb3VuZC1jb2xvcl0gLndwLWJsb2NrLXF1b3RlIGNpdGUsXG5bc3R5bGUqPWJhY2tncm91bmQtY29sb3JdIC53cC1ibG9jay1xdW90ZSBjaXRlLFxuLndwLWJsb2NrLWNvdmVyW3N0eWxlKj1iYWNrZ3JvdW5kLWltYWdlXSAud3AtYmxvY2stcXVvdGUgY2l0ZSxcbi5oYXMtYmFja2dyb3VuZCAud3AtYmxvY2stcXVvdGUgZm9vdGVyLFxuW2NsYXNzKj1iYWNrZ3JvdW5kLWNvbG9yXSAud3AtYmxvY2stcXVvdGUgZm9vdGVyLFxuW3N0eWxlKj1iYWNrZ3JvdW5kLWNvbG9yXSAud3AtYmxvY2stcXVvdGUgZm9vdGVyLFxuLndwLWJsb2NrLWNvdmVyW3N0eWxlKj1iYWNrZ3JvdW5kLWltYWdlXSAud3AtYmxvY2stcXVvdGUgZm9vdGVyIHtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIC8vIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53cC1ibG9jay1xdW90ZS5oYXMtdGV4dC1hbGlnbi1yaWdodCBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfigJ0nO1xuICAvLyBmb250LXNpemU6IHZhcigtLXF1b3RlLS1mb250LXNpemUpO1xuICAvLyBmb250LXdlaWdodDogbm9ybWFsO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tcXVvdGUtLWxpbmUtaGVpZ2h0KTtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi53cC1ibG9jay1xdW90ZS5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICBtYXJnaW46IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgYXV0bztcbn1cblxuLndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UsXG4ud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2Uge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgLyogUmVzZXR0aW5nIG1hcmdpbnMgdG8gbWF0Y2ggX2Jsb2NrLWNvbnRhaW5lci5zY3NzICovXG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi53cC1ibG9jay1xdW90ZS5pcy1sYXJnZSBwLFxuLndwLWJsb2NrLXF1b3RlLmlzLXN0eWxlLWxhcmdlIHAge1xuICAvLyBmb250LXNpemU6IHZhcigtLXF1b3RlLS1mb250LXNpemUtbGFyZ2UpO1xuICAvLyBmb250LXN0eWxlOiB2YXIoLS1xdW90ZS0tZm9udC1zdHlsZS1sYXJnZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1xdW90ZS0tbGluZS1oZWlnaHQtbGFyZ2UpO1xufVxuXG4ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2U6YmVmb3JlLFxuLndwLWJsb2NrLXF1b3RlLmlzLXN0eWxlLWxhcmdlOmJlZm9yZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcXVvdGUtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1xdW90ZS0tbGluZS1oZWlnaHQtbGFyZ2UpO1xuICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKTtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmlzLWxhcmdlLmhhcy10ZXh0LWFsaWduLXJpZ2h0OmJlZm9yZSxcbi53cC1ibG9jay1xdW90ZS5pcy1zdHlsZS1sYXJnZS5oYXMtdGV4dC1hbGlnbi1yaWdodDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UuaGFzLXRleHQtYWxpZ24tcmlnaHQgcDpiZWZvcmUsXG4ud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2UuaGFzLXRleHQtYWxpZ24tcmlnaHQgcDpiZWZvcmUge1xuICBjb250ZW50OiAn4oCdJztcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1xdW90ZS0tZm9udC1zaXplLWxhcmdlKTtcbiAgLy8gZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLXF1b3RlLS1saW5lLWhlaWdodC1sYXJnZSk7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmlzLWxhcmdlIC53cC1ibG9jay1xdW90ZV9fY2l0YXRpb24sXG4ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UgY2l0ZSxcbi53cC1ibG9jay1xdW90ZS5pcy1sYXJnZSBmb290ZXIsXG4ud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2UgLndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbixcbi53cC1ibG9jay1xdW90ZS5pcy1zdHlsZS1sYXJnZSBjaXRlLFxuLndwLWJsb2NrLXF1b3RlLmlzLXN0eWxlLWxhcmdlIGZvb3RlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXNtKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UsXG4gIC53cC1ibG9jay1xdW90ZS5pcy1zdHlsZS1sYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG4gIH1cblxuICAud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2U6YmVmb3JlLFxuICAud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2U6YmVmb3JlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLndwLWJsb2NrLXF1b3RlLmlzLWxhcmdlLmhhcy10ZXh0LWFsaWduLXJpZ2h0LFxuICAud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2UuaGFzLXRleHQtYWxpZ24tcmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG4gIH1cblxuICAud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UuaGFzLXRleHQtYWxpZ24tcmlnaHQ6YmVmb3JlLFxuICAud3AtYmxvY2stcXVvdGUuaXMtc3R5bGUtbGFyZ2UuaGFzLXRleHQtYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC53cC1ibG9jay1xdW90ZS5pcy1sYXJnZS5oYXMtdGV4dC1hbGlnbi1jZW50ZXIsXG4gIC53cC1ibG9jay1xdW90ZS5pcy1zdHlsZS1sYXJnZS5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygwLjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkpO1xuICB9XG5cbiAgLndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAud3AtYmxvY2stcXVvdGUuaGFzLXRleHQtYWxpZ24tY2VudGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ud3AtYmxvY2stcnNzIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ud3AtYmxvY2stcnNzID4gbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ud3AtYmxvY2stcnNzOm5vdCguaXMtZ3JpZCkgPiBsaSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMS42NjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygxLjY2NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4ud3AtYmxvY2stcnNzOm5vdCguaXMtZ3JpZCkgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1yc3M6bm90KC5pcy1ncmlkKSA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud3AtYmxvY2stcnNzLmlzLWdyaWQgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi53cC1ibG9jay1yc3MuaXMtZ3JpZCA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud3AtYmxvY2stcnNzLmlzLWdyaWQuY29sdW1ucy0yID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rMik6bnRoLWNoaWxkKDJuKzEpLFxuLndwLWJsb2NrLXJzcy5pcy1ncmlkLmNvbHVtbnMtMiA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzIpOm50aC1jaGlsZCgybisxKSB+IGxpLFxuLndwLWJsb2NrLXJzcy5pcy1ncmlkLmNvbHVtbnMtMyA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzMpOm50aC1jaGlsZCgzbisxKSxcbi53cC1ibG9jay1yc3MuaXMtZ3JpZC5jb2x1bW5zLTMgPiBsaTpudGgtbGFzdC1jaGlsZCgtbiszKTpudGgtY2hpbGQoM24rMSkgfiBsaSxcbi53cC1ibG9jay1yc3MuaXMtZ3JpZC5jb2x1bW5zLTQgPiBsaTpudGgtbGFzdC1jaGlsZCgtbis0KTpudGgtY2hpbGQoNG4rMSksXG4ud3AtYmxvY2stcnNzLmlzLWdyaWQuY29sdW1ucy00ID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rNCk6bnRoLWNoaWxkKDRuKzEpIH4gbGksXG4ud3AtYmxvY2stcnNzLmlzLWdyaWQuY29sdW1ucy01ID4gbGk6bnRoLWxhc3QtY2hpbGQoLW4rNSk6bnRoLWNoaWxkKDVuKzEpLFxuLndwLWJsb2NrLXJzcy5pcy1ncmlkLmNvbHVtbnMtNSA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzUpOm50aC1jaGlsZCg1bisxKSB+IGxpLFxuLndwLWJsb2NrLXJzcy5pcy1ncmlkLmNvbHVtbnMtNiA+IGxpOm50aC1sYXN0LWNoaWxkKC1uKzYpOm50aC1jaGlsZCg2bisxKSxcbi53cC1ibG9jay1yc3MuaXMtZ3JpZC5jb2x1bW5zLTYgPiBsaTpudGgtbGFzdC1jaGlsZCgtbis2KTpudGgtY2hpbGQoNm4rMSkgfiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1yc3MgPiBsaSA+ICoge1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuMzMzICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMC4zMzMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLndwLWJsb2NrLXJzcyA+IGxpID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1yc3MgPiBsaSA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53cC1ibG9jay1yc3MgLndwLWJsb2NrLXJzc19faXRlbS10aXRsZSA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1sYXRlc3QtcG9zdHMtLXRpdGxlLWZvbnQtZmFtaWx5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1sYXRlc3QtcG9zdHMtLXRpdGxlLWZvbnQtc2l6ZSk7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkaW5nLS1mb250LXdlaWdodCk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuMzMzICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi53cC1ibG9jay1yc3MgLndwLWJsb2NrLXJzc19faXRlbS1hdXRob3Ige1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1tZCk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHkpO1xufVxuXG4ud3AtYmxvY2stcnNzIC53cC1ibG9jay1yc3NfX2l0ZW0tcHVibGlzaC1kYXRlIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcbn1cblxuW2NsYXNzKj1pbm5lci1jb250YWluZXJdIC53cC1ibG9jay1yc3MgLndwLWJsb2NrLXJzc19faXRlbS1wdWJsaXNoLWRhdGUsXG4uaGFzLWJhY2tncm91bmQgLndwLWJsb2NrLXJzcyAud3AtYmxvY2stcnNzX19pdGVtLXB1Ymxpc2gtZGF0ZSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1yc3MgLndwLWJsb2NrLXJzc19faXRlbS1leGNlcnB0LFxuLndwLWJsb2NrLXJzcyAud3AtYmxvY2stcnNzX19pdGVtLWZ1bGwtY29udGVudCB7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1sYXRlc3QtcG9zdHMtLWRlc2NyaXB0aW9uLWZvbnQtZmFtaWx5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1sYXRlc3QtcG9zdHMtLWRlc2NyaXB0aW9uLWZvbnQtc2l6ZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuNjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi53cC1ibG9jay1yc3MuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgW2NsYXNzKj1pbm5lci1jb250YWluZXJdIC53cC1ibG9jay1yc3MuYWxpZ25mdWxsLFxuLmVudHJ5LWNvbnRlbnQgLmhhcy1iYWNrZ3JvdW5kIC53cC1ibG9jay1yc3MuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ud3AtYmxvY2stc2VhcmNoIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmRlZmF1bHQtd2lkdGgpO1xufVxuXG4ud3AtYmxvY2stc2VhcmNoX19idXR0b24tb25seS5hbGlnbmNlbnRlciAud3AtYmxvY2stc2VhcmNoX19pbnNpZGUtd3JhcHBlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2xhYmVsIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1mb3JtLS1mb250LXNpemUpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0tZm9ybS0tbGFiZWwtd2VpZ2h0KTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIC8gMyk7XG59XG5cbi53cC1ibG9jay1zZWFyY2ggLndwLWJsb2NrLXNlYXJjaF9faW5wdXQge1xuICAvLyBib3JkZXI6IHZhcigtLWZvcm0tLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtcbiAgLy8gYm9yZGVyLXJhZGl1czogdmFyKC0tZm9ybS0tYm9yZGVyLXJhZGl1cyk7XG4gIC8vIGNvbG9yOiB2YXIoLS1mb3JtLS1jb2xvci10ZXh0KTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWZvcm0tLWxpbmUtaGVpZ2h0KTtcbiAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1idXR0b24tLWJvcmRlci13aWR0aCkpO1xuICBwYWRkaW5nOiB2YXIoLS1mb3JtLS1zcGFjaW5nLXVuaXQpO1xufVxuXG4ud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2lucHV0OmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLWZvcm0tLWNvbG9yLXRleHQpO1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tLWJvcmRlci1jb2xvcik7XG59XG5cbi5oYXMtYmFja2dyb3VuZCAud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2lucHV0LFxuW2NsYXNzKj1iYWNrZ3JvdW5kLWNvbG9yXSAud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2lucHV0LFxuW3N0eWxlKj1iYWNrZ3JvdW5kLWNvbG9yXSAud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2lucHV0LFxuLndwLWJsb2NrLWNvdmVyW3N0eWxlKj1iYWNrZ3JvdW5kLWltYWdlXSAud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2lucHV0IHtcbiAgLy8gYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5oYXMtYmFja2dyb3VuZC5oYXMtZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggLndwLWJsb2NrLXNlYXJjaF9faW5wdXQsXG4uaGFzLWJhY2tncm91bmQuaGFzLWRhcmstZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggLndwLWJsb2NrLXNlYXJjaF9faW5wdXQsXG4uaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCAud3AtYmxvY2stc2VhcmNoX19pbnB1dCB7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBjb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0LWhvdmVyKTtcbiAgLy8gbGluZS1oZWlnaHQ6IDE7XG59XG5cbi53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCk7XG59XG5cbi53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLmhhcy1pY29uIHtcbiAgcGFkZGluZzogNnB4IGNhbGMoMC41ICogdmFyKC0tYnV0dG9uLS1wYWRkaW5nLWhvcml6b250YWwpKTtcbn1cblxuLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24uaGFzLWljb24gc3ZnIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4uaGFzLWJhY2tncm91bmQuaGFzLWdyYXktYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbixcbi5oYXMtYmFja2dyb3VuZC5oYXMtZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4uaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24ge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG4gIC8vIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4uaGFzLWJhY2tncm91bmQuaGFzLWdyYXktYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5oYXMtYmFja2dyb3VuZC5oYXMtZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIsXG4uaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1kYXJrLWdyYXktYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xufVxuXG4uaGFzLWJhY2tncm91bmQuaGFzLXdoaXRlLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4uaGFzLWJhY2tncm91bmQuaGFzLWdyZWVuLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4uaGFzLWJhY2tncm91bmQuaGFzLWJsdWUtYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbixcbi5oYXMtYmFja2dyb3VuZC5oYXMtcHVycGxlLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4uaGFzLWJhY2tncm91bmQuaGFzLXJlZC1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbixcbi5oYXMtYmFja2dyb3VuZC5oYXMteWVsbG93LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24ge1xuICAvLyBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmhhcy1iYWNrZ3JvdW5kLmhhcy13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1ncmVlbi1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1ibHVlLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIsXG4uaGFzLWJhY2tncm91bmQuaGFzLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1yZWQtYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5oYXMtYmFja2dyb3VuZC5oYXMtb3JhbmdlLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIsXG4uaGFzLWJhY2tncm91bmQuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtd2hpdGUtYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtZ3JlZW4tYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtYmx1ZS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1wdXJwbGUtYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5pcy1kYXJrLXRoZW1lIC5oYXMtYmFja2dyb3VuZC5oYXMtcmVkLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaCBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIsXG4uaXMtZGFyay10aGVtZSAuaGFzLWJhY2tncm91bmQuaGFzLW9yYW5nZS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2ggYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy15ZWxsb3ctYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3ZlciB7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0KTtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0KTtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIC53cC1ibG9jay1zZWFyY2hfX2luc2lkZS13cmFwcGVyIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG4gIC8vIGJvcmRlcjogdmFyKC0tZm9ybS0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICAvLyBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgLndwLWJsb2NrLXNlYXJjaF9faW5zaWRlLXdyYXBwZXIgLndwLWJsb2NrLXNlYXJjaF9faW5wdXQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIC53cC1ibG9jay1zZWFyY2hfX2luc2lkZS13cmFwcGVyIC53cC1ibG9jay1zZWFyY2hfX2lucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogMnB4IGRvdHRlZCB2YXIoLS1mb3JtLS1ib3JkZXItY29sb3IpO1xuICBvdXRsaW5lLW9mZnNldDogLTVweDtcbn1cblxuLmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgLndwLWJsb2NrLXNlYXJjaF9faW5zaWRlLXdyYXBwZXIgLndwLWJsb2NrLXNlYXJjaF9faW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlLndwLWJsb2NrLXNlYXJjaF9fdGV4dC1idXR0b24gYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uIHtcbiAgcGFkZGluZzogdmFyKC0tYnV0dG9uLS1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1idXR0b24tLXBhZGRpbmctaG9yaXpvbnRhbCk7XG59XG5cbi5oYXMtYmFja2dyb3VuZC5oYXMtZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbixcbi5oYXMtYmFja2dyb3VuZC5oYXMtZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbiB7XG4gIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgLy8gY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi5oYXMtYmFja2dyb3VuZC5oYXMtZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3Zlcixcbi5oYXMtYmFja2dyb3VuZC5oYXMtZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmhhcy1iYWNrZ3JvdW5kLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIC53cC1ibG9jay1zZWFyY2gud3AtYmxvY2stc2VhcmNoX19idXR0b24taW5zaWRlIGJ1dHRvbi53cC1ibG9jay1zZWFyY2hfX2J1dHRvbjpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXdoaXRlKTtcbn1cblxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLFxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1kYXJrLWdyYXktYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLWluc2lkZSBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24sXG4uaXMtZGFyay10aGVtZSAuaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uIHtcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xuICAvLyBjb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0KTtcbn1cblxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1ncmF5LWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyLFxuLmlzLWRhcmstdGhlbWUgLmhhcy1iYWNrZ3JvdW5kLmhhcy1kYXJrLWdyYXktYmFja2dyb3VuZC1jb2xvciAud3AtYmxvY2stc2VhcmNoLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLWluc2lkZSBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIsXG4uaXMtZGFyay10aGVtZSAuaGFzLWJhY2tncm91bmQuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3IgLndwLWJsb2NrLXNlYXJjaC53cC1ibG9jay1zZWFyY2hfX2J1dHRvbi1pbnNpZGUgYnV0dG9uLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xufVxuXG4uaXMtZGFyay10aGVtZSAud3AtYmxvY2stc2VhcmNoLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLWluc2lkZSBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b24ge1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCk7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLXRleHQpO1xufVxuXG4uaXMtZGFyay10aGVtZSAud3AtYmxvY2stc2VhcmNoLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uLWluc2lkZSBidXR0b24ud3AtYmxvY2stc2VhcmNoX19idXR0b246aG92ZXIge1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCk7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCk7XG4gIC8vIGNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ud3AtYmxvY2stc2VhcmNoX19idXR0b24ge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5ociB7XG4gIC8vIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgLy8gYm9yZGVyLWJvdHRvbTogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpIHNvbGlkIHZhcigtLXNlcGFyYXRvci0tYm9yZGVyLWNvbG9yKTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbmhyLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIC8vIGJvcmRlci1ib3R0b206IHZhcigtLXNlcGFyYXRvci0taGVpZ2h0KSBzb2xpZCB2YXIoLS1zZXBhcmF0b3ItLWJvcmRlci1jb2xvcik7XG4gIG9wYWNpdHk6IDE7XG5cbiAgLyoqXG4gICAqIEJsb2NrIE9wdGlvbnNcbiAgICovXG59XG5cbmhyLndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLWRvdHMpOm5vdCguYWxpZ253aWRlKSB7XG4gIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25kZWZhdWx0LXdpZHRoKTtcbn1cblxuaHIud3AtYmxvY2stc2VwYXJhdG9yOm5vdCguaXMtc3R5bGUtZG90cykuYWxpZ253aWRlIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbndpZGUtd2lkdGgpO1xufVxuXG5oci53cC1ibG9jay1zZXBhcmF0b3I6bm90KC5pcy1zdHlsZS1kb3RzKS5hbGlnbmZ1bGwge1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtLWFsaWduZnVsbC13aWR0aCk7XG59XG5cbmhyLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS10d2VudHl0d2VudHlvbmUtc2VwYXJhdG9yLXRoaWNrIHtcbiAgLy8gYm9yZGVyLWJvdHRvbS13aWR0aDogY2FsYygzICogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpKTtcbn1cblxuaHIud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRvdHMuaGFzLWJhY2tncm91bmQsXG5oci53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtZG90cy5oYXMtdGV4dC1jb2xvciB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbmhyLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kb3RzLmhhcy1iYWNrZ3JvdW5kOmJlZm9yZSxcbmhyLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kb3RzLmhhcy10ZXh0LWNvbG9yOmJlZm9yZSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3IgIWltcG9ydGFudDtcbn1cblxuaHIud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRvdHM6YmVmb3JlIHtcbiAgLy8gY29sb3I6IHZhcigtLXNlcGFyYXRvci0tYm9yZGVyLWNvbG9yKTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14bCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1zbSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xufVxuXG4uaGFzLWJhY2tncm91bmQgaHIud3AtYmxvY2stc2VwYXJhdG9yLFxuW2NsYXNzKj1iYWNrZ3JvdW5kLWNvbG9yXSBoci53cC1ibG9jay1zZXBhcmF0b3IsXG5bc3R5bGUqPWJhY2tncm91bmQtY29sb3JdIGhyLndwLWJsb2NrLXNlcGFyYXRvcixcbi53cC1ibG9jay1jb3ZlcltzdHlsZSo9YmFja2dyb3VuZC1pbWFnZV0gaHIud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgLy8gYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1ibG9jay1zb2NpYWwtbGlua3MgYTpmb2N1cyB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4ud3AtYmxvY2stc29jaWFsLWxpbmtzLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1zb2NpYWwtaWNvbnMtY29sb3IgYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4ud3AtYmxvY2stc29jaWFsLWxpbmtzLmlzLXN0eWxlLXR3ZW50eXR3ZW50eW9uZS1zb2NpYWwtaWNvbnMtY29sb3IgLndwLXNvY2lhbC1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLndwLWJsb2NrLXNwYWNlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAud3AtYmxvY2stc3BhY2VyW3N0eWxlXSB7XG4gICAgaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG50YWJsZSxcbi53cC1ibG9jay10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDI0MHB4O1xuICAvLyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50YWJsZSB0aGVhZCxcbnRhYmxlIHRmb290LFxuLndwLWJsb2NrLXRhYmxlIHRoZWFkLFxuLndwLWJsb2NrLXRhYmxlIHRmb290IHtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG50YWJsZSB0aCxcbi53cC1ibG9jay10YWJsZSB0aCB7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLS1mb250LWZhbWlseSk7XG59XG5cbnRhYmxlIHRkLFxudGFibGUgdGgsXG4ud3AtYmxvY2stdGFibGUgdGQsXG4ud3AtYmxvY2stdGFibGUgdGgge1xuICBwYWRkaW5nOiBjYWxjKDAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSk7XG4gIC8vIGJvcmRlcjogMXB4IHNvbGlkO1xufVxuXG50YWJsZSBmaWdjYXB0aW9uLFxuLndwLWJsb2NrLXRhYmxlIGZpZ2NhcHRpb24ge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG59XG5cbnRhYmxlLmlzLXN0eWxlLXJlZ3VsYXIgLmhhcy1iYWNrZ3JvdW5kLFxudGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQsXG50YWJsZS5pcy1zdHlsZS1zdHJpcGVzIC5oYXMtYmFja2dyb3VuZCB0aGVhZCB0cixcbnRhYmxlLmlzLXN0eWxlLXN0cmlwZXMgLmhhcy1iYWNrZ3JvdW5kIHRmb290IHRyLFxudGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQgdGJvZHkgdHIsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtcmVndWxhciAuaGFzLWJhY2tncm91bmQsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQgdGhlYWQgdHIsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQgdGZvb3QgdHIsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtc3RyaXBlcyAuaGFzLWJhY2tncm91bmQgdGJvZHkgdHIge1xuICAvLyBjb2xvcjogdmFyKC0tdGFibGUtLWhhcy1iYWNrZ3JvdW5kLXRleHQtY29sb3IpO1xufVxuXG50YWJsZS5pcy1zdHlsZS1zdHJpcGVzLFxuLndwLWJsb2NrLXRhYmxlLmlzLXN0eWxlLXN0cmlwZXMge1xuICAvLyBib3JkZXItY29sb3I6IHZhcigtLXRhYmxlLS1zdHJpcGVzLWJvcmRlci1jb2xvcik7XG59XG5cbnRhYmxlLmlzLXN0eWxlLXN0cmlwZXMgdGgsXG50YWJsZS5pcy1zdHlsZS1zdHJpcGVzIHRkLFxuLndwLWJsb2NrLXRhYmxlLmlzLXN0eWxlLXN0cmlwZXMgdGgsXG4ud3AtYmxvY2stdGFibGUuaXMtc3R5bGUtc3RyaXBlcyB0ZCB7XG4gIC8vIGJvcmRlci13aWR0aDogMDtcbn1cblxudGFibGUuaXMtc3R5bGUtc3RyaXBlcyB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSxcbi53cC1ibG9jay10YWJsZS5pcy1zdHlsZS1zdHJpcGVzIHRib2R5IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFibGUtLXN0cmlwZXMtYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbnRhYmxlLmlzLXN0eWxlLXN0cmlwZXMgLmhhcy1iYWNrZ3JvdW5kIHRib2R5IHRyOm50aC1jaGlsZChvZGQpLFxuLndwLWJsb2NrLXRhYmxlLmlzLXN0eWxlLXN0cmlwZXMgLmhhcy1iYWNrZ3JvdW5kIHRib2R5IHRyOm50aC1jaGlsZChvZGQpIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZS05MCk7XG59XG5cbnRhYmxlLndwLWNhbGVuZGFyLXRhYmxlIHRkLFxudGFibGUud3AtY2FsZW5kYXItdGFibGUgdGgge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLy8gYm9yZGVyOiAwO1xuICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIGxpbmUtaGVpZ2h0OiAyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbnRhYmxlLndwLWNhbGVuZGFyLXRhYmxlIHRoIHtcbiAgLy8gZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRhYmxlLndwLWNhbGVuZGFyLXRhYmxlIHRoZWFkLFxudGFibGUud3AtY2FsZW5kYXItdGFibGUgdGJvZHkge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBib3JkZXI6IDFweCBzb2xpZDtcbn1cblxudGFibGUud3AtY2FsZW5kYXItdGFibGUgY2FwdGlvbiB7XG4gIC8vIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53cC1jYWxlbmRhci1uYXYge1xuICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSAvIDIpO1xufVxuXG4ud3AtY2FsZW5kYXItbmF2IHN2ZyB7XG4gIGhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ud3AtY2FsZW5kYXItbmF2IHN2ZyBwYXRoIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4ud3AtY2FsZW5kYXItbmF2IC53cC1jYWxlbmRhci1uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLndwLWJsb2NrLXRhZy1jbG91ZC5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpO1xufVxuXG4ud3AtYmxvY2stdmVyc2Uge1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tZW50cnktY29udGVudC0tZm9udC1mYW1pbHkpO1xufVxuXG4ud3AtYmxvY2stdmlkZW8gZmlnY2FwdGlvbiB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuKiA+IGZpZ3VyZSA+IHZpZGVvIHtcbiAgbWF4LXdpZHRoOiB1bnNldDtcbiAgd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbjpyb290IC5pcy1leHRyYS1zbWFsbC10ZXh0LFxuOnJvb3QgLmhhcy1leHRyYS1zbWFsbC1mb250LXNpemUge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbn1cblxuOnJvb3QgLmlzLXNtYWxsLXRleHQsXG46cm9vdCAuaGFzLXNtYWxsLWZvbnQtc2l6ZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xufVxuXG46cm9vdCAuaXMtcmVndWxhci10ZXh0LFxuOnJvb3QgLmhhcy1yZWd1bGFyLWZvbnQtc2l6ZSxcbjpyb290IC5pcy1ub3JtYWwtZm9udC1zaXplLFxuOnJvb3QgLmhhcy1ub3JtYWwtZm9udC1zaXplLFxuOnJvb3QgLmhhcy1tZWRpdW0tZm9udC1zaXplIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1iYXNlKTtcbn1cblxuOnJvb3QgLmlzLWxhcmdlLXRleHQsXG46cm9vdCAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtbGcpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbn1cblxuOnJvb3QgLmlzLWxhcmdlci10ZXh0LFxuOnJvb3QgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuOnJvb3QgLmlzLWV4dHJhLWxhcmdlLXRleHQsXG46cm9vdCAuaGFzLWV4dHJhLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteGwpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbn1cblxuOnJvb3QgLmlzLWh1Z2UtdGV4dCxcbjpyb290IC5oYXMtaHVnZS1mb250LXNpemUge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXh4bCk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy0tZm9udC13ZWlnaHQtcGFnZS10aXRsZSk7XG59XG5cbjpyb290IC5pcy1naWdhbnRpYy10ZXh0LFxuOnJvb3QgLmhhcy1naWdhbnRpYy1mb250LXNpemUge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXh4eGwpO1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctLWZvbnQtd2VpZ2h0LXBhZ2UtdGl0bGUpO1xufVxuXG4vKiBCbG9jayBBbGlnbm1lbnRzICovXG5cbi8qKlxuICogVGhlc2Ugc2VsZWN0b3JzIHNldCB0aGUgZGVmYXVsdCBtYXggd2lkdGggZm9yIGNvbnRlbnQgYXBwZWFyaW5nIGluc2lkZSBhIHBvc3Qgb3IgcGFnZS5cbiAqL1xuXG4vKipcbiAqIC5hbGlnbmxlZnRcbiAqL1xuLmFsaWdubGVmdCB7XG4gIC8qIHJ0bDppZ25vcmUgKi9cbiAgLy8gdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgPiAuYWxpZ25sZWZ0IHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmRlZmF1bHQtd2lkdGgpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5hbGlnbmxlZnQge1xuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBmbG9hdDogbGVmdDtcblxuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgPiAuYWxpZ25sZWZ0IHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25sZWZ0LW1hcmdpbikpO1xuICB9XG59XG5cbi8qKlxuICogLmFsaWduY2VudGVyXG4gKi9cbi5hbGlnbmNlbnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyoqXG4gKiAuYWxpZ25yaWdodFxuICovXG4uYWxpZ25yaWdodCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gLmFsaWducmlnaHQge1xuICBtYXgtd2lkdGg6IHZhcigtLXJlc3BvbnNpdmUtLWFsaWduZGVmYXVsdC13aWR0aCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLmFsaWducmlnaHQge1xuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAvKiBydGw6aWdub3JlICovXG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50ID4gLmFsaWducmlnaHQge1xuICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbnJpZ2h0LW1hcmdpbikpO1xuICB9XG59XG5cbltjbGFzcyo9aW5uZXItY29udGFpbmVyXSA+IC5hbGlnbmxlZnQgKyAqLFxuW2NsYXNzKj1pbm5lci1jb250YWluZXJdID4gLmFsaWducmlnaHQgKyAqIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyoqXG4gKiAuYWxpZ253aWRlXG4gKi9cbi5hbGlnbndpZGUge1xuICBjbGVhcjogYm90aDtcbn1cblxuLyoqXG4gKiAuYWxpZ25mdWxsXG4gKi9cbi5hbGlnbmZ1bGwge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmhhcy1sZWZ0LWNvbnRlbnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5oYXMtcmlnaHQtY29udGVudCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5oYXMtcGFyYWxsYXgge1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuXG4uaGFzLWRyb3AtY2FwOm5vdCg6Zm9jdXMpOmZpcnN0LWxldHRlciB7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkaW5nLS1mb250LWZhbWlseSk7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkaW5nLS1mb250LXdlaWdodCk7XG4gIC8vIGxpbmUtaGVpZ2h0OiAwLjY2O1xuICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAvLyBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAuMWVtIDAuMWVtIDAgMDtcbiAgLy8gZm9udC1zaXplOiBjYWxjKDEuMiAqIHZhcigtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMSkpO1xufVxuXG4uaGFzLWRyb3AtY2FwOm5vdCg6Zm9jdXMpOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZy10b3A6IDE0cHg7XG59XG5cbi5kZXNrdG9wLW9ubHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5kZXNrdG9wLW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8qIENhdGVnb3J5IDA2IGNvbnRhaW5zIGFsbCBcImJpZ2dlclwiIGNvbXBvbmVudHMgd2hpY2ggY29udGFpbiBlbGVtZW50cyBvZiB0aGUgcHJldmlvdXMgdHdvIGNhdGVnb3JpZXMgbGlrZSBoZWFkZXIsIGZvb3RlciwgcGFnZSB0ZW1wbGF0ZSwgc2luZ2xlIHRlbXBsYXRlLCBjb21tZW50cyBzZWN0aW9uLCBhcmNoaXZlcywgLi4uICovXG4uc2l0ZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICByb3ctZ2FwOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xufVxuXG4ud3AtY3VzdG9tLWxvZ28gLnNpdGUtaGVhZGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAuc2l0ZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgLyAwLjc1KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgyMnB4KSB7XG4gIC5zaXRlLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMi40ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIH1cbn1cblxuLnNpdGUtYnJhbmRpbmcge1xuICAvLyBjb2xvcjogdmFyKC0tYnJhbmRpbmctLWNvbG9yLXRleHQpO1xuICBtYXJnaW4tcmlnaHQ6IDE0MHB4O1xufVxuXG4uc2l0ZS1icmFuZGluZzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5zaXRlLWJyYW5kaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG59XG5cbi5zaXRlLXRpdGxlIHtcbiAgLy8gY29sb3I6IHZhcigtLWJyYW5kaW5nLS1jb2xvci1saW5rKTtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWJyYW5kaW5nLS10aXRsZS0tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWJyYW5kaW5nLS10aXRsZS0tZm9udC1zaXplLW1vYmlsZSk7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIC8vIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1icmFuZGluZy0tdGl0bGUtLXRleHQtdHJhbnNmb3JtKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSAvIDYpO1xufVxuXG4uc2l0ZS10aXRsZSBhIHtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWJyYW5kaW5nLS10aXRsZS0tZm9udC13ZWlnaHQpO1xufVxuXG4uc2l0ZS10aXRsZSBhOmxpbmssXG4uc2l0ZS10aXRsZSBhOnZpc2l0ZWQsXG4uc2l0ZS10aXRsZSBhOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5zaXRlLXRpdGxlIGE6aG92ZXIsXG4uc2l0ZS10aXRsZSBhOmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLWJyYW5kaW5nLS1jb2xvci1saW5rLWhvdmVyKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAuc2l0ZS10aXRsZSB7XG4gICAgLy8gZm9udC1zaXplOiB2YXIoLS1icmFuZGluZy0tdGl0bGUtLWZvbnQtc2l6ZSk7XG4gIH1cbn1cblxuLnNpdGUtZGVzY3JpcHRpb24ge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tYnJhbmRpbmctLWRlc2NyaXB0aW9uLS1mb250LWZhbWlseSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tYnJhbmRpbmctLWRlc2NyaXB0aW9uLS1mb250LXNpemUpO1xuICAvLyBsaW5lLWhlaWdodDogMS40O1xufVxuXG5hLmN1c3RvbS1sb2dvLWxpbmsge1xuICAvLyB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5oYXMtYmFja2dyb3VuZC13aGl0ZSBhLmN1c3RvbS1sb2dvLWxpbms6Zm9jdXMsXG4uaXMtZGFyay10aGVtZSBhLmN1c3RvbS1sb2dvLWxpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uc2l0ZS10aXRsZSA+IGEge1xuICAvLyB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLnNpdGUtbG9nbyB7XG4gIG1hcmdpbjogY2FsYyh2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIC8gMikgMDtcbn1cblxuLnNpdGUtaGVhZGVyID4gLnNpdGUtbG9nbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpICogMS41KTtcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zaXRlLWxvZ28gLmN1c3RvbS1sb2dvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiB2YXIoLS1icmFuZGluZy0tbG9nby0tbWF4LXdpZHRoLW1vYmlsZSk7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWJyYW5kaW5nLS1sb2dvLS1tYXgtaGVpZ2h0LW1vYmlsZSk7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAuc2l0ZS1sb2dvIC5jdXN0b20tbG9nbyB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1icmFuZGluZy0tbG9nby0tbWF4LXdpZHRoKTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1icmFuZGluZy0tbG9nby0tbWF4LWhlaWdodCk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLnNpdGUtaGVhZGVyLmhhcy1sb2dvOm5vdCguaGFzLXRpdGxlLWFuZC10YWdsaW5lKS5oYXMtbWVudSAuc2l0ZS1sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0b3A6IHZhcigtLWdsb2JhbC0tYWRtaW4tYmFyLS1oZWlnaHQpO1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbi1vcGVuIC5zaXRlLWhlYWRlci5oYXMtbG9nbzpub3QoLmhhcy10aXRsZS1hbmQtdGFnbGluZSkuaGFzLW1lbnUgLnNpdGUtbG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5zaXRlLWhlYWRlci5oYXMtbG9nbzpub3QoLmhhcy10aXRsZS1hbmQtdGFnbGluZSkuaGFzLW1lbnUgLnNpdGUtbG9nbyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IGNhbGModmFyKC0tYnV0dG9uLS1wYWRkaW5nLXZlcnRpY2FsKSAtICgwLjI1ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKSArIDEuN2VtKTtcbiAgfVxuXG4gIC5zaXRlLWhlYWRlci5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyLmhhcy1sb2dvLmhhcy10aXRsZS1hbmQtdGFnbGluZS5oYXMtbWVudSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyLmhhcy1sb2dvLmhhcy10aXRsZS1hbmQtdGFnbGluZS5oYXMtbWVudSAuc2l0ZS1icmFuZGluZyB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNjBweCk7XG4gIH1cblxuICAuc2l0ZS1oZWFkZXIuaGFzLWxvZ28uaGFzLXRpdGxlLWFuZC10YWdsaW5lIC5zaXRlLWJyYW5kaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBib2R5Om5vdCgucHJpbWFyeS1uYXZpZ2F0aW9uLW9wZW4pIC5zaXRlLWhlYWRlci5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmU6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBib2R5Om5vdCgucHJpbWFyeS1uYXZpZ2F0aW9uLW9wZW4pIC5zaXRlLWhlYWRlci5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUgLnByaW1hcnktbmF2aWdhdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgfVxuXG4gIGJvZHk6bm90KC5wcmltYXJ5LW5hdmlnYXRpb24tb3BlbikgLnNpdGUtaGVhZGVyLmhhcy1sb2dvLmhhcy10aXRsZS1hbmQtdGFnbGluZSAubWVudS1idXR0b24tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogY2FsYygwcHggLSB2YXIoLS1idXR0b24tLXBhZGRpbmctdmVydGljYWwpICsgKDAuMjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpKTtcbiAgfVxuXG4gIGJvZHk6bm90KC5wcmltYXJ5LW5hdmlnYXRpb24tb3BlbikgLnNpdGUtaGVhZGVyLmhhcy1sb2dvLmhhcy10aXRsZS1hbmQtdGFnbGluZSAubWVudS1idXR0b24tY29udGFpbmVyICNwcmltYXJ5LW1vYmlsZS1tZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpICogMC42IC0gNC41cHgpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpICogMC42IC0gNC41cHgpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHggLSB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkgKiAwLjYpO1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyOm5vdCguaGFzLWxvZ28pLmhhcy10aXRsZS1hbmQtdGFnbGluZSAuc2l0ZS1icmFuZGluZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyOm5vdCguaGFzLW1lbnUpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMS43ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi5uby13aWRnZXRzIC5zaXRlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC5uby13aWRnZXRzIC5zaXRlLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygzICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci10ZXh0KTtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWZvb3Rlci0tZm9udC1mYW1pbHkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWZvb3Rlci0tZm9udC1zaXplKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtYm9keSk7XG4gIC8vIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJvcmRlcik7XG59XG5cbi5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gLnNpdGUtbmFtZSB7XG4gIC8vIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1icmFuZGluZy0tdGl0bGUtLXRleHQtdHJhbnNmb3JtKTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1icmFuZGluZy0tdGl0bGUtLWZvbnQtc2l6ZSk7XG59XG5cbi5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gLnBvd2VyZWQtYnkge1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgyMnB4KSB7XG4gIC5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gLnBvd2VyZWQtYnkge1xuICAgIG1hcmdpbi10b3A6IGluaXRpYWw7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyBhIHtcbiAgLy8gY29sb3I6IHZhcigtLWZvb3Rlci0tY29sb3ItbGluayk7XG59XG5cbi5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gYTpsaW5rLFxuLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyBhOnZpc2l0ZWQsXG4uc2l0ZS1mb290ZXIgPiAuc2l0ZS1pbmZvIGE6YWN0aXZlIHtcbiAgLy8gY29sb3I6IHZhcigtLWZvb3Rlci0tY29sb3ItbGluayk7XG59XG5cbi5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gYTpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1mb290ZXItLWNvbG9yLWxpbmstaG92ZXIpO1xufVxuXG4uc2l0ZS1mb290ZXIgPiAuc2l0ZS1pbmZvIGE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci1saW5rLWhvdmVyKTtcbn1cblxuLmlzLWRhcmstdGhlbWUgLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyBhOmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCkpO1xufVxuXG4uaGFzLWJhY2tncm91bmQtd2hpdGUgLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyBhOmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLXdwLS1zdHlsZS0tY29sb3ItLWxpbmssIHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpKTtcbn1cblxuLnNpbmd1bGFyIC5lbnRyeS1oZWFkZXIge1xuICAvLyBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tZ2xvYmFsLS1jb2xvci1ib3JkZXIpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygyICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4uaG9tZSAuZW50cnktaGVhZGVyIHtcbiAgLy8gYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zaW5ndWxhciAuaGFzLXBvc3QtdGh1bWJuYWlsIC5lbnRyeS1oZWFkZXIge1xuICAvLyBib3JkZXItYm90dG9tOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxLjMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm5vLXJlc3VsdHMubm90LWZvdW5kID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4ucGFnZS1saW5rcyB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnZS1saW5rcyAucG9zdC1wYWdlLW51bWJlcnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAuNjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSk7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbn1cblxuLnBhZ2UtbGlua3MgLnBvc3QtcGFnZS1udW1iZXJzOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5lbnRyeS10aXRsZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1lbnRyeS1oZWFkZXItLWNvbG9yKTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1lbnRyeS1oZWFkZXItLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oMik7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkaW5nLS1saW5lLWhlaWdodC1oMik7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5lbnRyeS10aXRsZSBhIHtcbiAgLy8gY29sb3I6IHZhcigtLWVudHJ5LWhlYWRlci0tY29sb3ItbGluayk7XG4gIC8vIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNWVtO1xufVxuXG4uZW50cnktdGl0bGUgYTpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1lbnRyeS1oZWFkZXItLWNvbG9yLWhvdmVyKTtcbn1cblxuLmVudHJ5LXRpdGxlIGE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZW50cnktaGVhZGVyLS1jb2xvci1mb2N1cyk7XG59XG5cbi5lbnRyeS10aXRsZSBhOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1lbnRyeS1oZWFkZXItLWNvbG9yLWxpbmspO1xufVxuXG4uc2luZ3VsYXIgLmVudHJ5LXRpdGxlIHtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1wYWdlLXRpdGxlKTtcbn1cblxuaDEuZW50cnktdGl0bGUge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0taGVhZGluZy0tbGluZS1oZWlnaHQtaDEpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0taGVhZGluZy0tZm9udC13ZWlnaHQtcGFnZS10aXRsZSk7XG59XG5cbi8qKlxuICogRW50cnkgQ29udGVudFxuICovXG4uZW50cnktY29udGVudCxcbi5lbnRyeS1zdW1tYXJ5IHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWVudHJ5LWNvbnRlbnQtLWZvbnQtZmFtaWx5KTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgcCB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgPiBpZnJhbWVbc3R5bGVdIHtcbiAgbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIDAgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5lbnRyeS1mb290ZXIge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBub25lO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5lbnRyeS1mb290ZXIgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZW50cnktZm9vdGVyIGEge1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4uZW50cnktZm9vdGVyIGE6aG92ZXIsXG4uZW50cnktZm9vdGVyIGE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5LWhvdmVyKTtcbn1cblxuLmVudHJ5LWZvb3RlciBhOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgLy8gYm9yZGVyLWJvdHRvbTogdmFyKC0tc2VwYXJhdG9yLS1oZWlnaHQpIHNvbGlkIHZhcigtLXNlcGFyYXRvci0tYm9yZGVyLWNvbG9yKTtcbn1cblxuYm9keTpub3QoLnNpbmdsZSkgLnNpdGUtbWFpbiA+IGFydGljbGU6bGFzdC1vZi10eXBlIC5lbnRyeS1mb290ZXIge1xuICAvLyBib3JkZXItYm90dG9tOiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkgc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zaW5nbGUgLnNpdGUtbWFpbiA+IGFydGljbGUgPiAuZW50cnktZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogY2FsYygzLjQgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygzLjQgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuOCAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICAvLyBib3JkZXItdG9wOiAzcHggc29saWQgdmFyKC0tc2VwYXJhdG9yLS1ib3JkZXItY29sb3IpO1xuICAvLyBib3JkZXItYm90dG9tOiB2YXIoLS1zZXBhcmF0b3ItLWhlaWdodCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIGNvbHVtbi1nYXA6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG59XG5cbi5zaW5nbGUgLnNpdGUtbWFpbiA+IGFydGljbGUgPiAuZW50cnktZm9vdGVyIC5wb3N0LXRheG9ub21pZXMsXG4uc2luZ2xlIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciAuZnVsbC1zaXplLWxpbmsge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAvLyB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnNpbmdsZSAuc2l0ZS1tYWluID4gYXJ0aWNsZSA+IC5lbnRyeS1mb290ZXIgLmZ1bGwtc2l6ZS1saW5rOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBncmlkLWNvbHVtbjogc3BhbiAyO1xufVxuXG4uc2luZ2xlIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciAucG9zdGVkLW9uLFxuLnNpbmdsZSAuc2l0ZS1tYWluID4gYXJ0aWNsZSA+IC5lbnRyeS1mb290ZXIgLmJ5bGluZSxcbi5zaW5nbGUgLnNpdGUtbWFpbiA+IGFydGljbGUgPiAuZW50cnktZm9vdGVyIC5jYXQtbGlua3MsXG4uc2luZ2xlIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciAudGFncy1saW5rcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC5zaW5nbGUgLnNpdGUtbWFpbiA+IGFydGljbGUgPiAuZW50cnktZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5zaW5nbGUgLnNpdGUtbWFpbiA+IGFydGljbGUgPiAuZW50cnktZm9vdGVyIC5mdWxsLXNpemUtbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuc2luZ2xlIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciAucG9zdC10YXhvbm9taWVzLFxuICAuc2luZ2xlIC5zaXRlLW1haW4gPiBhcnRpY2xlID4gLmVudHJ5LWZvb3RlciAuZnVsbC1zaXplLWxpbmsge1xuICAgIC8vIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBQb3N0IFRodW1ibmFpbHNcbiAqL1xuLnBvc3QtdGh1bWJuYWlsIHtcbiAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucG9zdC10aHVtYm5haWwgLndwLXBvc3QtaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogY2FsYygyICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi8qKlxuICogQXV0aG9yXG4gKi9cbi5hdXRob3ItYmlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlLS1hbGlnbmRlZmF1bHQtd2lkdGgpO1xufVxuXG4uc2l0ZS1tYWluID4gYXJ0aWNsZSA+IC5hdXRob3ItYmlvIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi5hdXRob3ItYmlvLnNob3ctYXZhdGFycyAuYXZhdGFyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5hdXRob3ItYmlvLnNob3ctYXZhdGFycyAuYXV0aG9yLWJpby1jb250ZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLXJlc3BvbnNpdmUtLWFsaWduZGVmYXVsdC13aWR0aCkgLSA5MHB4KTtcbn1cblxuLmF1dGhvci1iaW8gLmF1dGhvci1iaW8tY29udGVudCAuYXV0aG9yLXRpdGxlIHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWVudHJ5LWF1dGhvci1iaW8tLWZvbnQtZmFtaWx5KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1lbnRyeS1hdXRob3ItYmlvLS1mb250LXNpemUpO1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5hdXRob3ItYmlvIC5hdXRob3ItYmlvLWNvbnRlbnQgLmF1dGhvci1kZXNjcmlwdGlvbiB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xufVxuXG4ucGFnZS10aXRsZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtcGFnZS10aXRsZSk7XG59XG5cbmgxLnBhZ2UtdGl0bGUsXG5oMi5wYWdlLXRpdGxlIHtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRpbmctLWZvbnQtd2VpZ2h0LXBhZ2UtdGl0bGUpO1xufVxuXG5oMS5wYWdlLXRpdGxlIHtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRpbmctLWxpbmUtaGVpZ2h0LWgxKTtcbn1cblxuXG4uYXJjaGl2ZSAuY29udGVudC1hcmVhIC5mb3JtYXQtYXNpZGUgLmVudHJ5LWNvbnRlbnQsXG4uYXJjaGl2ZSAuY29udGVudC1hcmVhIC5mb3JtYXQtc3RhdHVzIC5lbnRyeS1jb250ZW50LFxuLmFyY2hpdmUgLmNvbnRlbnQtYXJlYSAuZm9ybWF0LWxpbmsgLmVudHJ5LWNvbnRlbnQsXG4uc2VhcmNoIC5jb250ZW50LWFyZWEgLmZvcm1hdC1hc2lkZSAuZW50cnktY29udGVudCxcbi5zZWFyY2ggLmNvbnRlbnQtYXJlYSAuZm9ybWF0LXN0YXR1cyAuZW50cnktY29udGVudCxcbi5zZWFyY2ggLmNvbnRlbnQtYXJlYSAuZm9ybWF0LWxpbmsgLmVudHJ5LWNvbnRlbnQsXG4uYmxvZyAuY29udGVudC1hcmVhIC5mb3JtYXQtYXNpZGUgLmVudHJ5LWNvbnRlbnQsXG4uYmxvZyAuY29udGVudC1hcmVhIC5mb3JtYXQtc3RhdHVzIC5lbnRyeS1jb250ZW50LFxuLmJsb2cgLmNvbnRlbnQtYXJlYSAuZm9ybWF0LWxpbmsgLmVudHJ5LWNvbnRlbnQge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWxnKTtcbn1cblxuLmFyY2hpdmUgLmZvcm1hdC1pbWFnZSAuZW50cnktY29udGVudCxcbi5hcmNoaXZlIC5mb3JtYXQtZ2FsbGVyeSAuZW50cnktY29udGVudCxcbi5hcmNoaXZlIC5mb3JtYXQtdmlkZW8gLmVudHJ5LWNvbnRlbnQsXG4uc2VhcmNoIC5mb3JtYXQtaW1hZ2UgLmVudHJ5LWNvbnRlbnQsXG4uc2VhcmNoIC5mb3JtYXQtZ2FsbGVyeSAuZW50cnktY29udGVudCxcbi5zZWFyY2ggLmZvcm1hdC12aWRlbyAuZW50cnktY29udGVudCxcbi5ibG9nIC5mb3JtYXQtaW1hZ2UgLmVudHJ5LWNvbnRlbnQsXG4uYmxvZyAuZm9ybWF0LWdhbGxlcnkgLmVudHJ5LWNvbnRlbnQsXG4uYmxvZyAuZm9ybWF0LXZpZGVvIC5lbnRyeS1jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi5hcmNoaXZlIC5lbnRyeS1mb290ZXIgLmNhdC1saW5rcyxcbi5hcmNoaXZlIC5lbnRyeS1mb290ZXIgLnRhZ3MtbGlua3MsXG4uc2VhcmNoIC5lbnRyeS1mb290ZXIgLmNhdC1saW5rcyxcbi5zZWFyY2ggLmVudHJ5LWZvb3RlciAudGFncy1saW5rcyxcbi5ibG9nIC5lbnRyeS1mb290ZXIgLmNhdC1saW5rcyxcbi5ibG9nIC5lbnRyeS1mb290ZXIgLnRhZ3MtbGlua3Mge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFyY2hpdmUubG9nZ2VkLWluIC5lbnRyeS1mb290ZXIgLnBvc3RlZC1vbixcbi5zZWFyY2gubG9nZ2VkLWluIC5lbnRyeS1mb290ZXIgLnBvc3RlZC1vbixcbi5ibG9nLmxvZ2dlZC1pbiAuZW50cnktZm9vdGVyIC5wb3N0ZWQtb24ge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbn1cblxuLmFyY2hpdmUtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhsKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG59XG5cbi5lcnJvcjQwNCBtYWluIHAge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWxnKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpICogMS42NjY2NjY2NjY3KTtcbn1cblxuLnNlYXJjaC1uby1yZXN1bHRzIC5wYWdlLWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiBjYWxjKDMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLyoqXG4gKiBDb21tZW50cyBXcmFwcGVyXG4gKi9cbi5jb21tZW50cy1hcmVhID4gKiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCk7XG59XG5cbi5jb21tZW50cy1hcmVhID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jb21tZW50cy1hcmVhID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbW1lbnRzLWFyZWEuc2hvdy1hdmF0YXJzIC5hdmF0YXIge1xuICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xufVxuXG4uY29tbWVudHMtYXJlYS5zaG93LWF2YXRhcnMgLmZuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDg1cHg7XG59XG5cbi5jb21tZW50cy1hcmVhLnNob3ctYXZhdGFycyAuY29tbWVudC1tZXRhZGF0YSB7XG4gIHBhZGRpbmc6IDhweCAwIDlweCA4NXB4O1xufVxuXG4vKipcbiAqIENvbW1lbnQgVGl0bGVcbiAqL1xuLmNvbW1lbnRzLXRpdGxlLFxuLmNvbW1lbnQtcmVwbHktdGl0bGUge1xuICAvLyBmb250LXNpemU6IHZhcigtLWhlYWRpbmctLWZvbnQtc2l6ZS1oMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLS1sZXR0ZXItc3BhY2luZy1oMik7XG59XG5cbi5jb21tZW50LXJlcGx5LXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uY29tbWVudC1yZXBseS10aXRsZSBzbWFsbCBhIHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgLy8gZm9udC1zdHlsZTogbm9ybWFsO1xuICAvLyBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xufVxuXG4vKiBOZXN0ZWQgY29tbWVudCByZXBseSB0aXRsZSAqL1xuLmNvbW1lbnQgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1yZXBseS10aXRsZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtbGcpO1xufVxuXG4vKipcbiAqIENvbW1lbnQgTGlzdHNcbiAqL1xuLmNvbW1lbnQtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNvbW1lbnQtbGlzdCA+IGxpIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuID4gbGkge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5jb21tZW50LWxpc3QgLmRlcHRoLTIsXG4gIC5jb21tZW50LWxpc3QgLmRlcHRoLTMge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyg0ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKTtcbiAgfVxufVxuXG4vKipcbiAqIENvbW1lbnQgTWV0YVxuICovXG4uY29tbWVudC1tZXRhIC5jb21tZW50LWF1dGhvciB7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1nbG9iYWwtLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDAuMjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5jb21tZW50LW1ldGEgLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmNvbW1lbnQtbWV0YSAuY29tbWVudC1hdXRob3IgLmZuIHtcbiAgLy8gZm9udC1mYW1pbHk6IHZhcigtLWdsb2JhbC0tZm9udC1zZWNvbmRhcnkpO1xuICAvLyBmb250LXdlaWdodDogbm9ybWFsO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLWxnKTtcbiAgaHlwaGVuczogYXV0bztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4uY29tbWVudC1tZXRhIC5jb21tZW50LW1ldGFkYXRhIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICBwYWRkaW5nOiA4cHggMCA5cHg7XG59XG5cbi5jb21tZW50LW1ldGEgLmNvbW1lbnQtbWV0YWRhdGEgLmVkaXQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLmNvbW1lbnQtbWV0YSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLmNvbW1lbnQtbWV0YSAuY29tbWVudC1hdXRob3Ige1xuICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgfVxufVxuXG4ucmVwbHkge1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXNtKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG59XG5cbi5ieXBvc3RhdXRob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNheXMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGluZ2JhY2sgLnVybCxcbi50cmFja2JhY2sgLnVybCB7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtcHJpbWFyeSk7XG59XG5cbi5jb21tZW50LWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMS43ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi5jb21tZW50LWJvZHkgPiAqIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLmNvbW1lbnQtYm9keSAucmVwbHkge1xuICBtYXJnaW46IDA7XG59XG5cbi5jb21tZW50LWNvbnRlbnQgYSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLnBpbmdiYWNrIC5jb21tZW50LWJvZHksXG4udHJhY2tiYWNrIC5jb21tZW50LWJvZHkge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xufVxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCA+ICoge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uY29tbWVudC1yZXNwb25kID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCA+ICo6bGFzdC1jaGlsZC5jb21tZW50LWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xufVxuXG4uY29tbWVudC1hdXRob3Ige1xuICBwYWRkaW5nLXRvcDogM3B4O1xufVxuXG4uY29tbWVudC1hdXRob3IgLnVybCB7XG4gIC8vIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5jb21tZW50LWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5jb21tZW50LWZvcm0gPiAqIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cblxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1ub3RlcyB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xufVxuXG4uY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tdXJsLFxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWNvbW1lbnQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWF1dGhvcixcbi5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1lbWFpbCB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tYXV0aG9yLFxuICAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gIH1cbn1cblxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWNvb2tpZXMtY29uc2VudCA+IGxhYmVsLFxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1ub3RlcyB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUteHMpO1xuICAvLyBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uY29tbWVudC1mb3JtID4gcCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbn1cblxuLmNvbW1lbnQtZm9ybSA+IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jb21tZW50LWZvcm0gPiBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb21tZW50LWZvcm0gPiBwIGxhYmVsLFxuLmNvbW1lbnQtZm9ybSA+IHAgaW5wdXRbdHlwZT1lbWFpbF0sXG4uY29tbWVudC1mb3JtID4gcCBpbnB1dFt0eXBlPXRleHRdLFxuLmNvbW1lbnQtZm9ybSA+IHAgaW5wdXRbdHlwZT11cmxdLFxuLmNvbW1lbnQtZm9ybSA+IHAgdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS1zbSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbiAgd2lkdGg6IDEwMCU7XG4gIC8vIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb3JtLS1sYWJlbC13ZWlnaHQpO1xufVxuXG4uY29tbWVudC1mb3JtID4gcC5jb21tZW50LWZvcm0tY29va2llcy1jb25zZW50IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAuY29tbWVudC1mb3JtID4gcC5jb21tZW50LWZvcm0tYXV0aG9yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMS41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpKTtcbiAgfVxuXG4gIC5jb21tZW50LWZvcm0gPiBwLmNvbW1lbnQtbm90ZXMsXG4gIC5jb21tZW50LWZvcm0gPiBwLmxvZ2dlZC1pbi1hcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAjcHJpbWFyeS1tb2JpbGUtbWVudSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLWJ1dHRvbi0tcGFkZGluZy12ZXJ0aWNhbCkgLSAoMC4yNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSkpIGNhbGMoMC41ICogdmFyKC0tYnV0dG9uLS1wYWRkaW5nLWhvcml6b250YWwpKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAubWVudS1idXR0b24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5tZW51LWJ1dHRvbi1jb250YWluZXIgLmJ1dHRvbi5idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICAvLyBmb250LXNpemU6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXNpemUtYnV0dG9uKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXdlaWdodC1idXR0b24pO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gYm9yZGVyOiBub25lO1xuICAvLyBjb2xvcjogdmFyKC0tcHJpbWFyeS1uYXYtLWNvbG9yLWxpbmspO1xufVxuXG4ubWVudS1idXR0b24tY29udGFpbmVyIC5idXR0b24uYnV0dG9uIC5kcm9wZG93bi1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLmJ1dHRvbiAuZHJvcGRvd24taWNvbiAuc3ZnLWljb24ge1xuICBtYXJnaW4tbGVmdDogY2FsYygwLjI1ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLmJ1dHRvbiAuZHJvcGRvd24taWNvbi5vcGVuIC5zdmctaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4ubWVudS1idXR0b24tY29udGFpbmVyIC5idXR0b24uYnV0dG9uIC5kcm9wZG93bi1pY29uLmNsb3NlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLmJ1dHRvblthcmlhLWV4cGFuZGVkKj10cnVlXSAuZHJvcGRvd24taWNvbi5vcGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLmJ1dHRvblthcmlhLWV4cGFuZGVkKj10cnVlXSAuZHJvcGRvd24taWNvbi5jbG9zZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUgLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLmJ1dHRvblthcmlhLWV4cGFuZGVkKj10cnVlXSAuZHJvcGRvd24taWNvbi5jbG9zZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB0d2VudHl0d2VudHlvbmUtY2xvc2UtYnV0dG9uLXRyYW5zaXRpb247XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbi1vcGVuIC5tZW51LWJ1dHRvbi1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogNTAwO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWJhY2tncm91bmQpO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uLW9wZW4gLm1lbnUtYnV0dG9uLWNvbnRhaW5lciAjcHJpbWFyeS1tb2JpbGUtbWVudSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tZ2xvYmFsLS1hZG1pbi1iYXItLWhlaWdodCk7XG4gIHJpZ2h0OiAwO1xuICAvLyBjb2xvcjogdmFyKC0tcHJpbWFyeS1uYXYtLWNvbG9yLXRleHQpO1xuICAvLyBmb250LXNpemU6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXNpemUpO1xuICAvLyBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tYnV0dG9uLS1saW5lLWhlaWdodCkgKiB2YXIoLS1wcmltYXJ5LW5hdi0tZm9udC1zaXplLWJ1dHRvbikgKyA0MnB4ICsgNXB4KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkodmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHotaW5kZXg6IDQ5OTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAvLyBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUgLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cblxuICAuYWRtaW4tYmFyIC5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUgLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgICB0b3A6IHZhcigtLWdsb2JhbC0tYWRtaW4tYmFyLS1oZWlnaHQpO1xuICB9XG5cbiAgLmFkbWluLWJhciAucHJpbWFyeS1uYXZpZ2F0aW9uID4gLnByaW1hcnktbWVudS1jb250YWluZXIge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWdsb2JhbC0tYWRtaW4tYmFyLS1oZWlnaHQpKTtcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiAucHJpbWFyeS1tZW51LWNvbnRhaW5lcjpmb2N1cyB7XG4gICAgLy8gYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb24tb3BlbiAucHJpbWFyeS1uYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uLW9wZW4gLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbi1vcGVuIC5oYXMtbG9nby5oYXMtdGl0bGUtYW5kLXRhZ2xpbmUgLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiAucHJpbWFyeS1tZW51LWNvbnRhaW5lciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gI3RvZ2dsZS1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IC5wcmltYXJ5LW1lbnUtY29udGFpbmVyIHVsID4gbGkgLnN1Yi1tZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPWZhbHNlXSB+IHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmFkbWluLWJhciAucHJpbWFyeS1uYXZpZ2F0aW9uIHtcbiAgICB0b3A6IGluaXRpYWw7XG4gIH1cblxuICAuYWRtaW4tYmFyIC5wcmltYXJ5LW5hdmlnYXRpb24gPiAucHJpbWFyeS1tZW51LWNvbnRhaW5lciB7XG4gICAgdG9wOiBpbml0aWFsO1xuICB9XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gIH1cblxuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciBsaTpsYXN0LWNoaWxkKCkge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciAuc3ViLW1lbnUtdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiBjYWxjKDIgKiB2YXIoLS1wcmltYXJ5LW5hdi0tcGFkZGluZykgKyAxLjE1ZW0gKyAxcHgpO1xuICB3aWR0aDogNDRweDtcbiAgcGFkZGluZzogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvLyBjb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBib3JkZXI6IG5vbmU7XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyIC5zdWItbWVudS10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0td3AtLXN0eWxlLS1jb2xvci0tbGluaywgdmFyKC0tZ2xvYmFsLS1jb2xvci1wcmltYXJ5KSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgLnN1Yi1tZW51LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciAuc3ViLW1lbnUtdG9nZ2xlIC5pY29uLXBsdXMsXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciAuc3ViLW1lbnUtdG9nZ2xlIC5pY29uLW1pbnVzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciAuc3ViLW1lbnUtdG9nZ2xlIC5pY29uLXBsdXMgc3ZnLFxuLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgLnN1Yi1tZW51LXRvZ2dsZSAuaWNvbi1taW51cyBzdmcge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciAuc3ViLW1lbnUtdG9nZ2xlIC5pY29uLW1pbnVzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgLnN1Yi1tZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdIC5pY29uLW1pbnVzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgLnN1Yi1tZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdIC5pY29uLXBsdXMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciA+IGxpID4gLnN1Yi1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyID4gbGkgPiAuc3ViLW1lbnUge1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogM3B4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgei1pbmRleDogODg4ODg7XG4gIH1cblxuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciA+IGxpID4gLnN1Yi1tZW51OmJlZm9yZSxcbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgPiBsaSA+IC5zdWItbWVudTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIHRvcDogLTEwcHg7XG4gICAgbGVmdDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xuICAgIC8vIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLy8gYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LW5hdi0tYm9yZGVyLWNvbG9yKSB0cmFuc3BhcmVudDtcbiAgICAvLyBib3JkZXItd2lkdGg6IDAgN3B4IDEwcHggN3B4O1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgPiBsaSA+IC5zdWItbWVudTphZnRlciB7XG4gICAgdG9wOiAtOXB4O1xuICAgIC8vIGJvcmRlci1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1iYWNrZ3JvdW5kKSB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyID4gbGkgPiAuc3ViLW1lbnUgbGkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG4gIH1cblxuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciA+IGxpID4gLnN1Yi1tZW51LnN1Ym1lbnUtcmVwb3NpdGlvbi1sZWZ0IHtcbiAgICAvKiBydGw6aWdub3JlICovXG4gICAgbGVmdDogMDtcblxuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyID4gbGkgPiAuc3ViLW1lbnUuc3VibWVudS1yZXBvc2l0aW9uLWxlZnQ6YmVmb3JlLFxuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciA+IGxpID4gLnN1Yi1tZW51LnN1Ym1lbnUtcmVwb3NpdGlvbi1sZWZ0OmFmdGVyIHtcbiAgICAvKiBydGw6aWdub3JlICovXG4gICAgbGVmdDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLWhvcml6b250YWwpO1xuXG4gICAgLyogcnRsOmlnbm9yZSAqL1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgPiBsaSA+IC5zdWItbWVudS5zdWJtZW51LXJlcG9zaXRpb24tcmlnaHQge1xuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICByaWdodDogMDtcblxuICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiA+IGRpdiA+IC5tZW51LXdyYXBwZXIgPiBsaSA+IC5zdWItbWVudS5zdWJtZW51LXJlcG9zaXRpb24tcmlnaHQ6YmVmb3JlLFxuICAucHJpbWFyeS1uYXZpZ2F0aW9uID4gZGl2ID4gLm1lbnUtd3JhcHBlciA+IGxpID4gLnN1Yi1tZW51LnN1Ym1lbnUtcmVwb3NpdGlvbi1yaWdodDphZnRlciB7XG4gICAgLyogcnRsOmlnbm9yZSAqL1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAvKiBydGw6aWdub3JlICovXG4gICAgcmlnaHQ6IHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKTtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIC5wcmltYXJ5LW1lbnUgPiAubWVudS1pdGVtOmhvdmVyID4gYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1wcmltYXJ5LW5hdi0tY29sb3ItbGluay1ob3Zlcik7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbiAucHJpbWFyeS1tZW51LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDBweCAtIHZhcigtLXByaW1hcnktbmF2LS1wYWRkaW5nKSk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMHB4IC0gdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpKTtcbiAgfVxuXG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gLnByaW1hcnktbWVudS1jb250YWluZXIgPiB1bCA+IC5tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAucHJpbWFyeS1uYXZpZ2F0aW9uIC5wcmltYXJ5LW1lbnUtY29udGFpbmVyID4gdWwgPiAubWVudS1pdGVtID4gYSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wcmltYXJ5LW5hdi0tcGFkZGluZyk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpO1xuICB9XG5cbiAgLnByaW1hcnktbmF2aWdhdGlvbiAucHJpbWFyeS1tZW51LWNvbnRhaW5lciA+IHVsID4gLm1lbnUtaXRlbSA+IGEgKyAuc3ViLW1lbnUtdG9nZ2xlIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1cHggLSB2YXIoLS1wcmltYXJ5LW5hdi0tcGFkZGluZykpO1xuICB9XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtZmFtaWx5LW1vYmlsZSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtc2l6ZS1tb2JpbGUpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtd2VpZ2h0KTtcbiAgcGFkZGluZzogdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpIDA7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LW5hdi0tZm9udC1mYW1pbHkpO1xuICAgIC8vIGZvbnQtc2l6ZTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtc2l6ZSk7XG4gICAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXdlaWdodCk7XG4gIH1cbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiBhICsgc3ZnIHtcbiAgZmlsbDogdmFyKC0tcHJpbWFyeS1uYXYtLWNvbG9yLXRleHQpO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIGE6aG92ZXIsXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIGE6bGluayxcbi5wcmltYXJ5LW5hdmlnYXRpb24gYTp2aXNpdGVkIHtcbiAgLy8gY29sb3I6IHZhcigtLXByaW1hcnktbmF2LS1jb2xvci1saW5rLWhvdmVyKTtcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiBhOmhvdmVyIHtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8vIHRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIGE6Zm9jdXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDk5OTk5O1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMnB4O1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6Zmlyc3QtY2hpbGQsXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIC5jdXJyZW50X3BhZ2VfaXRlbSA+IGE6Zmlyc3QtY2hpbGQge1xuICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmZpcnN0LWNoaWxkOmhvdmVyLFxuLnByaW1hcnktbmF2aWdhdGlvbiAuY3VycmVudF9wYWdlX2l0ZW0gPiBhOmZpcnN0LWNoaWxkOmhvdmVyIHtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8vIHRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIC5zdWItbWVudSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXByaW1hcnktbmF2LS1wYWRkaW5nKTtcbiAgLy8gYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeS1uYXYtLWJvcmRlci1jb2xvcik7XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gIC8vIGJvcmRlcjogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODJweCkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uIC5zdWItbWVudSA+IC5tZW51LWl0ZW0gPiAuc3ViLW1lbnUge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODFweCkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uIC5zdWItbWVudSAubWVudS1pdGVtOmxhc3QtY2hpbGQoKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uIC5zdWItbWVudSAubWVudS1pdGVtID4gYSB7XG4gIHBhZGRpbmc6IGNhbGMoMS4yNSAqIHZhcigtLXByaW1hcnktbmF2LS1wYWRkaW5nKSkgdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1wcmltYXJ5LW5hdi0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gIC8vIGZvbnQtc3R5bGU6IHZhcigtLXByaW1hcnktbmF2LS1mb250LXN0eWxlLXN1Yi1tZW51LW1vYmlsZSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbiAuc3ViLW1lbnUgLm1lbnUtaXRlbSA+IGEge1xuICAgIC8vIGZvbnQtc2l6ZTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtc2l6ZS1zdWItbWVudSk7XG4gICAgLy8gZm9udC1zdHlsZTogdmFyKC0tcHJpbWFyeS1uYXYtLWZvbnQtc3R5bGUpO1xuICB9XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ZnLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MnB4KSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb24gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAucHJpbWFyeS1uYXZpZ2F0aW9uIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSAuc3ZnLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByaW1hcnktbmF2aWdhdGlvbiAubWVudS1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICAvLyBmb250LXNpemU6IHZhcigtLWdsb2JhbC0tZm9udC1zaXplLXhzKTtcbiAgLy8gdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8vIGxpbmUtaGVpZ2h0OiAxLjc7XG59XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24gLm1lbnUtaXRlbS1kZXNjcmlwdGlvbiA+IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLmxvY2stc2Nyb2xsaW5nIC5zaXRlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdHdlbnR5dHdlbnR5b25lLWNsb3NlLWJ1dHRvbi10cmFuc2l0aW9uIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mb290ZXItbmF2aWdhdGlvbiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci10ZXh0KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1nbG9iYWwtLWZvbnQtc2l6ZS14cyk7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1mb290ZXItLWZvbnQtZmFtaWx5KTtcbn1cblxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb290ZXItbmF2aWdhdGlvbi13cmFwcGVyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICAvLyBsaW5lLWhlaWdodDogMztcbn1cblxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYSB7XG4gIHBhZGRpbmc6IGNhbGMoMS4yNSAqIHZhcigtLXByaW1hcnktbmF2LS1wYWRkaW5nKSkgdmFyKC0tcHJpbWFyeS1uYXYtLXBhZGRpbmcpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlO1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci1saW5rKTtcbn1cblxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTpsaW5rLFxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTp2aXNpdGVkLFxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTphY3RpdmUge1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci1saW5rKTtcbn1cblxuLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTpob3ZlciB7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvLyB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IGRvdHRlZDtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci1saW5rLWhvdmVyKTtcbn1cblxuLmlzLWRhcmstdGhlbWUgLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTpmb2N1cyAuc3ZnLWljb24ge1xuICBmaWxsOiB2YXIoLS13cC0tc3R5bGUtLWNvbG9yLS1saW5rLCB2YXIoLS1nbG9iYWwtLWNvbG9yLWJhY2tncm91bmQpKTtcbn1cblxuLmhhcy1iYWNrZ3JvdW5kLXdoaXRlIC5mb290ZXItbmF2aWdhdGlvbi13cmFwcGVyIGxpIGE6Zm9jdXMgLnN2Zy1pY29uIHtcbiAgZmlsbDogdmFyKC0td3AtLXN0eWxlLS1jb2xvci0tbGluaywgdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSkpO1xufVxuXG4uZm9vdGVyLW5hdmlnYXRpb24td3JhcHBlciBsaSAuc3ZnLWljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmaWxsOiB2YXIoLS1mb290ZXItLWNvbG9yLWxpbmspO1xufVxuXG4uZm9vdGVyLW5hdmlnYXRpb24td3JhcHBlciBsaSAuc3ZnLWljb246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5mb290ZXItbmF2aWdhdGlvbi13cmFwcGVyIC5zdWItbWVudS10b2dnbGUsXG4uZm9vdGVyLW5hdmlnYXRpb24td3JhcHBlciAubWVudS1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmV4dC9QcmV2aW91cyBuYXZpZ2F0aW9uICovXG4ubmF2aWdhdGlvbiB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4ubmF2aWdhdGlvbiBhIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmlnYXRpb24gYTpob3ZlciB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnktaG92ZXIpO1xuICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBkb3R0ZWQ7XG59XG5cbi5uYXZpZ2F0aW9uIGE6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1zZWNvbmRhcnkpO1xufVxuXG4ubmF2aWdhdGlvbiBhOmFjdGl2ZSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4ubmF2aWdhdGlvbiAubmF2LWxpbmtzID4gKiB7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbn1cblxuLm5hdmlnYXRpb24gLm5hdi1saW5rcyAubmF2LW5leHQgYSxcbi5uYXZpZ2F0aW9uIC5uYXYtbGlua3MgLm5hdi1wcmV2aW91cyBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLm5hdmlnYXRpb24gLm5hdi1saW5rcyAuZG90cyB7XG4gIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1OTJweCkge1xuICAubmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uIC5uYXYtbGlua3MgLm5hdi1uZXh0LFxuICAubmF2aWdhdGlvbiAubmF2LWxpbmtzIC5uYXYtcHJldmlvdXMge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IGluaGVyaXQ7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gKDAuNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSkpO1xuICB9XG5cbiAgLm5hdmlnYXRpb24gLm5hdi1saW5rcyAubmF2LW5leHQge1xuICAgIC8vIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uIC5zdmctaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMgLnN2Zy1pY29uLFxuLm5hdmlnYXRpb24gLnByZXYgLnN2Zy1pY29uIHtcbiAgdG9wOiAtMnB4O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMC4yNSAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSk7XG59XG5cbi5uYXZpZ2F0aW9uIC5uYXYtbmV4dCAuc3ZnLWljb24sXG4ubmF2aWdhdGlvbiAubmV4dCAuc3ZnLWljb24ge1xuICB0b3A6IC0xcHg7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAuMjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpO1xufVxuXG4ucG9zdC1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIGF1dG87XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODIycHgpIHtcbiAgLnBvc3QtbmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIGF1dG87XG4gIH1cbn1cblxuLnBvc3QtbmF2aWdhdGlvbiAubWV0YS1uYXYge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0tZ2xvYmFsLS1saW5lLWhlaWdodC1ib2R5KTtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5wb3N0LW5hdmlnYXRpb24gLnBvc3QtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1nbG9iYWwtLWZvbnQtcHJpbWFyeSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtbGcpO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0tcGFnaW5hdGlvbi0tZm9udC13ZWlnaHQtc3Ryb25nKTtcbiAgLy8gbGluZS1oZWlnaHQ6IHZhcigtLWdsb2JhbC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODIycHgpIHtcbiAgLnBvc3QtbmF2aWdhdGlvbiAucG9zdC10aXRsZSB7XG4gICAgbWFyZ2luOiA1cHggY2FsYygyNHB4ICsgKDAuMjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdW5pdCkpKSAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgycHgpIHtcbiAgLnBvc3QtbmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LW5leHQsXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpO1xufVxuXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dDpmaXJzdC1jaGlsZCxcbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1wcmV2aW91czpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1uZXh0Omxhc3QtY2hpbGQsXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5wYWdpbmF0aW9uLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24ge1xuICAvLyBib3JkZXItdG9wOiAzcHggc29saWQgdmFyKC0tZ2xvYmFsLS1jb2xvci1ib3JkZXIpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgbWFyZ2luOiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpIGF1dG87XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODIycHgpIHtcbiAgLnBhZ2luYXRpb24sXG4gIC5jb21tZW50cy1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW46IHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkgYXV0bztcbiAgfVxufVxuXG4ucGFnaW5hdGlvbiAubmF2LWxpbmtzLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLXBhZ2luYXRpb24tLWNvbG9yLWxpbmstaG92ZXIpO1xufVxuXG4uaXMtZGFyay10aGVtZSAucGFnaW5hdGlvbiAubmF2LWxpbmtzIGE6YWN0aXZlLFxuLmlzLWRhcmstdGhlbWUgLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyOmFjdGl2ZSxcbi5pcy1kYXJrLXRoZW1lIC5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTpob3Zlcjpmb2N1cyxcbi5pcy1kYXJrLXRoZW1lIC5jb21tZW50cy1wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTphY3RpdmUsXG4uaXMtZGFyay10aGVtZSAuY29tbWVudHMtcGFnaW5hdGlvbiAubmF2LWxpbmtzIGE6aG92ZXI6YWN0aXZlLFxuLmlzLWRhcmstdGhlbWUgLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyOmZvY3VzIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmFja2dyb3VuZCk7XG59XG5cbi5oYXMtYmFja2dyb3VuZC13aGl0ZSAucGFnaW5hdGlvbiAubmF2LWxpbmtzIGE6YWN0aXZlLFxuLmhhcy1iYWNrZ3JvdW5kLXdoaXRlIC5wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTpob3ZlcjphY3RpdmUsXG4uaGFzLWJhY2tncm91bmQtd2hpdGUgLnBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyOmZvY3VzLFxuLmhhcy1iYWNrZ3JvdW5kLXdoaXRlIC5jb21tZW50cy1wYWdpbmF0aW9uIC5uYXYtbGlua3MgYTphY3RpdmUsXG4uaGFzLWJhY2tncm91bmQtd2hpdGUgLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyBhOmhvdmVyOmFjdGl2ZSxcbi5oYXMtYmFja2dyb3VuZC13aGl0ZSAuY29tbWVudHMtcGFnaW5hdGlvbiAubmF2LWxpbmtzIGE6aG92ZXI6Zm9jdXMge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICoge1xuICAvLyBjb2xvcjogdmFyKC0tcGFnaW5hdGlvbi0tY29sb3ItdGV4dCk7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1wYWdpbmF0aW9uLS1mb250LWZhbWlseSk7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tcGFnaW5hdGlvbi0tZm9udC1zaXplKTtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLXBhZ2luYXRpb24tLWZvbnQtd2VpZ2h0KTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy11bml0KSk7XG4gIG1hcmdpbi1yaWdodDogY2FsYygwLjY2ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXVuaXQpKTtcbn1cblxuLnBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICouY3VycmVudCxcbi5jb21tZW50cy1wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqLmN1cnJlbnQge1xuICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICo6bm90KC5kb3RzKTpub3QoLmN1cnJlbnQpOmhvdmVyLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICo6bm90KC5kb3RzKTpub3QoLmN1cnJlbnQpOmhvdmVyIHtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBkb3R0ZWQ7XG59XG5cbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqOmZpcnN0LWNoaWxkLFxuLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnBhZ2luYXRpb24gLm5hdi1saW5rcyA+ICo6bGFzdC1jaGlsZCxcbi5jb21tZW50cy1wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqLm5leHQsXG4uY29tbWVudHMtcGFnaW5hdGlvbiAubmF2LWxpbmtzID4gKi5uZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5wYWdpbmF0aW9uIC5uYXYtbGlua3MgPiAqLnByZXYsXG4uY29tbWVudHMtcGFnaW5hdGlvbiAubmF2LWxpbmtzID4gKi5wcmV2IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgyMXB4KSB7XG4gIC5wYWdpbmF0aW9uIC5uYXYtbGlua3MsXG4gIC5jb21tZW50cy1wYWdpbmF0aW9uIC5uYXYtbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyxcbiAgLmNvbW1lbnRzLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMucHJldixcbiAgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5uZXh0LFxuICAuY29tbWVudHMtcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLnByZXYsXG4gIC5jb21tZW50cy1wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMubmV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgxcHgpIHtcbiAgLnBhZ2luYXRpb24gLm5hdi1zaG9ydCxcbiAgLmNvbW1lbnRzLXBhZ2luYXRpb24gLm5hdi1zaG9ydCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29tbWVudHMtcGFnaW5hdGlvbiB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNjYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgbWFyZ2luOiBjYWxjKDMgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKSBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgyMnB4KSB7XG4gIC5jb21tZW50cy1wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW46IGNhbGMoMyAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy12ZXJ0aWNhbCkpIGF1dG8gY2FsYyg0ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSkgYXV0bztcbiAgfVxufVxuXG4uY29tbWVudHMtcGFnaW5hdGlvbiAubmF2LWxpbmtzID4gKiB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtbWQpO1xufVxuXG4ud2lkZ2V0LWFyZWEge1xuICBtYXJnaW4tdG9wOiBjYWxjKDYgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSAvIDMpO1xuICAvLyBjb2xvcjogdmFyKC0tZm9vdGVyLS1jb2xvci10ZXh0KTtcbiAgLy8gZm9udC1zaXplOiB2YXIoLS1mb290ZXItLWZvbnQtc2l6ZSk7XG4gIC8vIGZvbnQtZmFtaWx5OiB2YXIoLS1mb290ZXItLWZvbnQtZmFtaWx5KTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NTJweCkge1xuICAud2lkZ2V0LWFyZWEge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBjb2x1bW4tZ2FwOiBjYWxjKDIgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctaG9yaXpvbnRhbCkpO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53aWRnZXQtYXJlYSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC53aWRnZXQtYXJlYSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygzICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG4gIH1cbn1cblxuLndpZGdldC1hcmVhIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud2lkZ2V0LWFyZWEgdWwgbGkge1xuICAvLyBsaW5lLWhlaWdodDogdmFyKC0td2lkZ2V0LS1saW5lLWhlaWdodC1saXN0KTtcbn1cblxuLndpZGdldC1hcmVhIHVsLnN1Yi1tZW51LFxuLndpZGdldC1hcmVhIHVsLmNoaWxkcmVuIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXdpZGdldC0tc3BhY2luZy1tZW51KTtcbn1cblxuLndpZGdldC1hcmVhIHVsIC5zdWItbWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0LWFyZWEgYSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1mb290ZXItLWNvbG9yLWxpbmspO1xuICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbiAgLy8gdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53aWRnZXQtYXJlYSBhOmxpbmssXG4ud2lkZ2V0LWFyZWEgYTp2aXNpdGVkLFxuLndpZGdldC1hcmVhIGE6YWN0aXZlIHtcbiAgLy8gY29sb3I6IHZhcigtLWZvb3Rlci0tY29sb3ItbGluayk7XG59XG5cbi53aWRnZXQtYXJlYSBhOmhvdmVyIHtcbiAgLy8gY29sb3I6IHZhcigtLWZvb3Rlci0tY29sb3ItbGluay1ob3Zlcik7XG4gIC8vIHRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4ud2lkZ2V0LWFyZWEgLndwLWJsb2NrLXNvY2lhbC1saW5rcy5hbGlnbnJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLndpZGdldC1hcmVhIC53cC1ibG9jay1zb2NpYWwtbGlua3MuYWxpZ25sZWZ0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKTtcbn1cblxuLndpZGdldC1hcmVhOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLndpZGdldC10aXRsZSB7XG4gIC8vIGZvbnQtc2l6ZTogdmFyKC0tZ2xvYmFsLS1mb250LXNpemUtc20pO1xuICAvLyBmb250LXdlaWdodDogdmFyKC0td2lkZ2V0LS1mb250LXdlaWdodC10aXRsZSk7XG4gIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS13aWRnZXQtLWxpbmUtaGVpZ2h0LXRpdGxlKTtcbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC13aWR0aDogdmFyKC0tcmVzcG9uc2l2ZS0tYWxpZ25kZWZhdWx0LXdpZHRoKTtcbn1cblxuLnNlYXJjaC1mb3JtID4gbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLy8gZm9udC13ZWlnaHQ6IHZhcigtLWZvcm0tLWxhYmVsLXdlaWdodCk7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLWZpZWxkIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSAvIDMpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMC42NiAqIHZhcigtLWdsb2JhbC0tc3BhY2luZy1ob3Jpem9udGFsKSk7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSAvIDMpO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLndpZGdldF9zZWFyY2ggPiAuc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtMSAqIHZhcigtLWJ1dHRvbi0tYm9yZGVyLXdpZHRoKSk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMC41ICogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLXZlcnRpY2FsKSk7XG59XG5cbi53aWRnZXRfc2VhcmNoID4gLnNlYXJjaC1mb3JtIC5zZWFyY2gtc3VibWl0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBjb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0LWhvdmVyKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygwLjUgKiB2YXIoLS1nbG9iYWwtLXNwYWNpbmctdmVydGljYWwpKTtcbn1cblxuLndpZGdldF9zZWFyY2ggPiAuc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQ6aG92ZXIge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO1xuICAvLyBjb2xvcjogdmFyKC0tYnV0dG9uLS1jb2xvci10ZXh0KTtcbn1cblxuLndpZGdldF9yc3MgYS5yc3N3aWRnZXQgLnJzcy13aWRnZXQtaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIENhdGVnb3J5IDA3IGlzIGZvciBhbnkgdXRpbGl0eSBjbGFzc2VzIHRoYXQgYXJlIG5vdCBhc3NpZ25lZCB0byBhIHNwZWNpZmljIGNvbXBvbmVudC4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAvLyBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbi5za2lwLWxpbms6Zm9jdXMge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICAvLyBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjbGlwLXBhdGg6IG5vbmU7XG4gIGNsaXAtcGF0aDogbm9uZTtcbiAgLy8gY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBmb250LXNpemU6IDAuODc1cmVtO1xuICAvLyBmb250LXdlaWdodDogNzAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgLy8gbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIC8vIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbi8qIERvIG5vdCBzaG93IHRoZSBvdXRsaW5lIG9uIHRoZSBza2lwIGxpbmsgdGFyZ2V0LiAqL1xuI2NvbnRlbnRbdGFiaW5kZXg9Jy0xJ106Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgKiB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oYXMtYmxhY2stY29sb3JbY2xhc3NdIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmxhY2spO1xufVxuXG4uaGFzLWdyYXktY29sb3JbY2xhc3NdIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZ3JheSk7XG59XG5cbi5oYXMtZGFyay1ncmF5LWNvbG9yW2NsYXNzXSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWRhcmstZ3JheSk7XG59XG5cbi5oYXMtZ3JlZW4tY29sb3JbY2xhc3NdIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZ3JlZW4pO1xufVxuXG4uaGFzLWJsdWUtY29sb3JbY2xhc3NdIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmx1ZSk7XG59XG5cbi5oYXMtcHVycGxlLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXB1cnBsZSk7XG59XG5cbi5oYXMtcmVkLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXJlZCk7XG59XG5cbi5oYXMtb3JhbmdlLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLW9yYW5nZSk7XG59XG5cbi5oYXMteWVsbG93LWNvbG9yW2NsYXNzXSB7XG4gIC8vIGNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXllbGxvdyk7XG59XG5cbi5oYXMtd2hpdGUtY29sb3JbY2xhc3NdIHtcbiAgLy8gY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xufVxuXG4uaGFzLWJhY2tncm91bmQgYSxcbi5oYXMtYmFja2dyb3VuZCBwLFxuLmhhcy1iYWNrZ3JvdW5kIGgxLFxuLmhhcy1iYWNrZ3JvdW5kIGgyLFxuLmhhcy1iYWNrZ3JvdW5kIGgzLFxuLmhhcy1iYWNrZ3JvdW5kIGg0LFxuLmhhcy1iYWNrZ3JvdW5kIGg1LFxuLmhhcy1iYWNrZ3JvdW5kIGg2IHtcbiAgLy8gY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmhhcy1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItYmxhY2spO1xufVxuXG4uaGFzLWdyYXktYmFja2dyb3VuZC1jb2xvcltjbGFzc10ge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWdyYXkpO1xufVxuXG4uaGFzLWRhcmstZ3JheS1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZGFyay1ncmF5KTtcbn1cblxuLmhhcy1ncmVlbi1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItZ3JlZW4pO1xufVxuXG4uaGFzLWJsdWUtYmFja2dyb3VuZC1jb2xvcltjbGFzc10ge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLWJsdWUpO1xufVxuXG4uaGFzLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3ItcHVycGxlKTtcbn1cblxuLmhhcy1yZWQtYmFja2dyb3VuZC1jb2xvcltjbGFzc10ge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbG9iYWwtLWNvbG9yLXJlZCk7XG59XG5cbi5oYXMtb3JhbmdlLWJhY2tncm91bmQtY29sb3JbY2xhc3NdIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1vcmFuZ2UpO1xufVxuXG4uaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3IteWVsbG93KTtcbn1cblxuLmhhcy13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsb2JhbC0tY29sb3Itd2hpdGUpO1xufVxuXG46bm90KC5oYXMtdGV4dC1jb2xvcikuaGFzLWJsYWNrLWJhY2tncm91bmQtY29sb3JbY2xhc3NdLFxuOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1ncmF5LWJhY2tncm91bmQtY29sb3JbY2xhc3NdLFxuOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1kYXJrLWdyYXktYmFja2dyb3VuZC1jb2xvcltjbGFzc10ge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci13aGl0ZSk7XG59XG5cbjpub3QoLmhhcy10ZXh0LWNvbG9yKS5oYXMtZ3JlZW4tYmFja2dyb3VuZC1jb2xvcltjbGFzc10sXG46bm90KC5oYXMtdGV4dC1jb2xvcikuaGFzLWJsdWUtYmFja2dyb3VuZC1jb2xvcltjbGFzc10sXG46bm90KC5oYXMtdGV4dC1jb2xvcikuaGFzLXB1cnBsZS1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSxcbjpub3QoLmhhcy10ZXh0LWNvbG9yKS5oYXMtcmVkLWJhY2tncm91bmQtY29sb3JbY2xhc3NdLFxuOm5vdCguaGFzLXRleHQtY29sb3IpLmhhcy1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvcltjbGFzc10sXG46bm90KC5oYXMtdGV4dC1jb2xvcikuaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yW2NsYXNzXSxcbjpub3QoLmhhcy10ZXh0LWNvbG9yKS5oYXMtd2hpdGUtYmFja2dyb3VuZC1jb2xvcltjbGFzc10ge1xuICAvLyBjb2xvcjogdmFyKC0tZ2xvYmFsLS1jb2xvci1kYXJrLWdyYXkpO1xufVxuXG4uaGFzLXB1cnBsZS10by15ZWxsb3ctZ3JhZGllbnQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHZhcigtLWdsb2JhbC0tY29sb3ItcHVycGxlKSwgdmFyKC0tZ2xvYmFsLS1jb2xvci15ZWxsb3cpKTtcbn1cblxuLmhhcy15ZWxsb3ctdG8tcHVycGxlLWdyYWRpZW50LWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXllbGxvdyksIHZhcigtLWdsb2JhbC0tY29sb3ItcHVycGxlKSk7XG59XG5cbi5oYXMtZ3JlZW4tdG8teWVsbG93LWdyYWRpZW50LWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCB2YXIoLS1nbG9iYWwtLWNvbG9yLWdyZWVuKSwgdmFyKC0tZ2xvYmFsLS1jb2xvci15ZWxsb3cpKTtcbn1cblxuLmhhcy15ZWxsb3ctdG8tZ3JlZW4tZ3JhZGllbnQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHZhcigtLWdsb2JhbC0tY29sb3IteWVsbG93KSwgdmFyKC0tZ2xvYmFsLS1jb2xvci1ncmVlbikpO1xufVxuXG4uaGFzLXJlZC10by15ZWxsb3ctZ3JhZGllbnQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHZhcigtLWdsb2JhbC0tY29sb3ItcmVkKSwgdmFyKC0tZ2xvYmFsLS1jb2xvci15ZWxsb3cpKTtcbn1cblxuLmhhcy15ZWxsb3ctdG8tcmVkLWdyYWRpZW50LWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXllbGxvdyksIHZhcigtLWdsb2JhbC0tY29sb3ItcmVkKSk7XG59XG5cbi5oYXMtcHVycGxlLXRvLXJlZC1ncmFkaWVudC1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE2MGRlZywgdmFyKC0tZ2xvYmFsLS1jb2xvci1wdXJwbGUpLCB2YXIoLS1nbG9iYWwtLWNvbG9yLXJlZCkpO1xufVxuXG4uaGFzLXJlZC10by1wdXJwbGUtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHZhcigtLWdsb2JhbC0tY29sb3ItcmVkKSwgdmFyKC0tZ2xvYmFsLS1jb2xvci1wdXJwbGUpKTtcbn1cblxuaGVhZGVyICosXG5tYWluICosXG5mb290ZXIgKiB7XG4gIG1heC13aWR0aDogdmFyKC0tZ2xvYmFsLS1zcGFjaW5nLW1lYXN1cmUpO1xufVxuXG5odG1sLFxuYm9keSxcbmRpdixcbmhlYWRlcixcbm5hdixcbmFydGljbGUsXG5maWd1cmUsXG5ocixcbm1haW4sXG5zZWN0aW9uLFxuZm9vdGVyIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4uaXMtSUUuaXMtZGFyay10aGVtZSB7XG4gIC8vIGNvbG9yOiAjZmZmO1xufVxuXG4uaXMtSUUuaXMtZGFyay10aGVtZSAqLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgYSxcbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5zaXRlLWRlc2NyaXB0aW9uLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLmVudHJ5LXRpdGxlLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLmVudHJ5LWZvb3Rlcixcbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC53aWRnZXQtYXJlYSxcbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5wb3N0LW5hdmlnYXRpb24gLm1ldGEtbmF2LFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLmZvb3Rlci1uYXZpZ2F0aW9uLXdyYXBwZXIgbGkgYTpsaW5rLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLnNpdGUtZm9vdGVyID4gLnNpdGUtaW5mbyxcbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gYSxcbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5zaXRlLWZvb3RlciA+IC5zaXRlLWluZm8gYTp2aXNpdGVkIHtcbiAgLy8gY29sb3I6ICNmZmY7XG59XG5cbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5zdWItbWVudS10b2dnbGUgc3ZnLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLnN1Yi1tZW51LXRvZ2dsZSBwYXRoLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLnBvc3QtbmF2aWdhdGlvbiAubWV0YS1uYXYgc3ZnLFxuLmlzLUlFLmlzLWRhcmstdGhlbWUgLnBvc3QtbmF2aWdhdGlvbiAubWV0YS1uYXYgcGF0aCB7XG4gIGZpbGw6ICNmZmZmZmY7XG59XG5cbi5pcy1JRS5pcy1kYXJrLXRoZW1lIC5wcmltYXJ5LW5hdmlnYXRpb24gPiBkaXYgPiAubWVudS13cmFwcGVyID4gbGkgPiAuc3ViLW1lbnUgbGkge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MXB4KSB7XG4gIC5pcy1JRS5pcy1kYXJrLXRoZW1lLnByaW1hcnktbmF2aWdhdGlvbi1vcGVuIC5wcmltYXJ5LW5hdmlnYXRpb24gPiAucHJpbWFyeS1tZW51LWNvbnRhaW5lcixcbiAgLmlzLUlFLmlzLWRhcmstdGhlbWUucHJpbWFyeS1uYXZpZ2F0aW9uLW9wZW4gLm1lbnUtYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgfVxufVxuXG4uaXMtSUUuaXMtZGFyay10aGVtZSAuc2tpcC1saW5rOmZvY3VzIHtcbiAgLy8gY29sb3I6ICMyMTc1OWI7XG59XG5cbi5pcy1JRSAubmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1JRSAucG9zdC10aHVtYm5haWwgLndwLXBvc3QtaW1hZ2Uge1xuICBtaW4td2lkdGg6IGF1dG87XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHNDQUFzQztBQUd0Qzs7Ozs7R0FLRztBQ1JILHNCQUFzQjs7QUFDdEIsQUFBQSxDQUFDO0FBQ0QsQ0FBQyxBQUFBLFFBQVE7QUFDVCxDQUFDLEFBQUEsT0FBTyxDQUFDO0VBQ1AsVUFBVSxFQUFFLFVBQVU7Q0FDdkI7O0FBRUQsNEJBQTRCOztBQUM1QixBQUFBLEVBQUUsQ0FBQSxBQUFBLEtBQUMsQUFBQTtBQUNILEVBQUUsQ0FBQSxBQUFBLEtBQUMsQUFBQSxFQUFPO0VBQ1IsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFFRCwy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QUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQTtBQUMvQyxHQUFHLEFBQUEsdUJBQXVCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxjQUFDLEFBQUE7QUFDL0MsR0FBRyxBQUFBLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBO0FBQy9DLEdBQUcsQUFBQSx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQTtBQUMvQyxHQUFHLEFBQUEsdUJBQXVCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxNQUFDLEFBQUE7QUFDL0MsR0FBRyxBQUFBLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBO0FBQy9DLEdBQUcsQUFBQSx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQTtBQUMvQyxHQUFHLEFBQUEsdUJBQXVCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxNQUFDLEFBQUE7QUFDL0MsR0FBRyxBQUFBLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBO0FBQy9DLEdBQUcsQUFBQSx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQTtBQUMvQyxHQUFHLEFBQUEsdUJBQXVCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUE7QUFDL0MsR0FBRyxBQUFBLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBO0FBQy9DLEdBQUcsQUFBQSx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxD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QUFDLEFBQUEsQ0FBUyxTQUFTO0FBQ3hCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0FBVSxTQUFTO0FBQ3pCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FBVyxTQUFTO0FBQzFCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0FBVSxTQUFTO0FBQ3pCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0FBVSxTQUFTO0FBQ3pCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FBYyxTQUFTO0FBQzdCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxjQUFDLEFBQUEsQ0FBb0IsU0FBUztBQUNuQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBQVcsU0FBUztBQUMxQixLQUFLLENBQUMsUUFBUSxBQUFBLFNBQVMsQ0FBQztFQUN0QixPQUFPLEVBQUUsR0FBRztDQUNiOzs7QUFFRCxBQUFBLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsTUFBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsTUFBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBO0FBQ3JCLGNBQWMsQ0FBQyxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxB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 */
