:root {
  --color-light: #ffffff;
  --color-dark: #191C1F;
  --dark-grey: #5B5C5E;
  --grey: #2f2f2f;
  --v-light-grey: #F6F8FB;
  --light-grey: #F2F4F7;
  --middle-light-grey: #E1E1E1;
  --color-text: #736F6C;
  --red: #FE1016;
  --color-default: var(--color-dark);
}

:root {
  --container-big-width: 1850px;
  --container-width: 1670px;
  --container-large-width: 1500px;
  --container-medium-width: 1290px;
  --container-small-width: 1180px;
  --container-extra-small-width: 940px;
  --container-mini-width: 630px;
  --block-min-width: 400px;
  --block-min-height: 580px;
  --spacer-big: 30px;
}

@media (min-width: 992px) {
  :root {
    --spacer-big: 30px;
  }
}
@media (min-width: 1681px) {
  :root {
    --spacer-big: 50px;
  }
}
:root {
  --spacer-large: 20px;
}

@media (min-width: 992px) {
  :root {
    --spacer-large: 30px;
  }
}
@media (min-width: 1601px) {
  :root {
    --spacer-large: 40px;
  }
}
:root {
  --spacer-medium: 25px;
  --spacer-small: 20px;
  --spacer-extra-small: 10px;
  --transition-default: all 0.5s ease-in-out;
  --font-family: 'GeneralSans', sans-serif;
  --font-family-title: 'GeneralSans', sans-serif;
  --font-family-menu: 'GeneralSans', sans-serif;
  --font-space-grotesk: 'Space Grotesk', sans-serif;
  --font-size: 1rem;
  --h1-font-size: clamp(3.125rem, 6vw, 6.25rem);
  --h1-font-weight: 600;
  --h1-margin-bottom: 10px;
  --h2-font-size: clamp(1.875rem, 5vw, 3.125rem);
  --h2-font-weight: 600;
  --h2-margin-bottom: 10px;
  --h3-font-size: clamp(1.875rem, 4vw, 2.375rem);
  --h3-font-weight: 600;
  --h3-margin-bottom: 10px;
  --h4-font-size: clamp(1.625rem, 3vw, 1.875rem);
  --h4-font-weight: 600;
  --h4-margin-bottom: 10px;
  --h5-font-size: clamp(1.125rem, 3vw, 1.5rem);
  --h5-font-weight: 600;
  --h5-margin-bottom: 10px;
  --h6-font-size: 1.125rem;
  --h6-font-weight: 600;
  --h6-margin-bottom: 10px;
}

@-webkit-keyframes menu-show {
  0% {
    -webkit-transform: translateY(100%);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes menu-show {
  0% {
    -moz-transform: translateY(0%);
  }
  100% {
    -moz-transform: translateY(0);
  }
}
@keyframes menu-show {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
.animation {
  position: relative;
  overflow: hidden;
  width: 101%;
  display: flex !important;
  align-items: center;
  transform-origin: bottom left;
}

.animation .animated {
  line-height: 1.3;
}

@keyframes slide-up {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes bounceScroll {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.bounceScroll {
  display: inline-block;
  animation: bounceScroll 2s infinite;
}

.simpleFadeIn {
  opacity: 0;
  transition: opacity 1000ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 1000ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.simpleFadeIn.visible {
  opacity: 1;
}

.simpleFadeInLeft {
  opacity: 0;
  transform: translateX(-100vw);
  transition: opacity 1000ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 1000ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.simpleFadeInLeft.visible {
  opacity: 1;
  transform: translateX(0);
}

.simpleFadeInRight {
  opacity: 0;
  transform: translateX(100vw);
  transition: opacity 1000ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 1000ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.simpleFadeInRight.visible {
  opacity: 1;
  transform: translateX(0);
}

.animateTop {
  opacity: 0;
  transform: translateY(130px);
  transition: opacity 1000ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 1000ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.animateTop.visible {
  opacity: 1;
  transform: translateY(0);
}

.animateRight {
  opacity: 0;
  transform: translate(-130px, 100px);
  transition: opacity 1000ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 1000ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.animateRight.visible {
  opacity: 1;
  transform: translate(0);
}

html, body {
  margin: 0;
  padding: 0;
  background-color: var(--light-grey);
}

main {
  padding-top: 72px;
}

img {
  height: auto;
  width: 100%;
}

.object-cover {
  object-fit: cover;
}

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

a:hover {
  text-decoration: none;
}

* {
  box-sizing: border-box;
}

.h-full {
  height: 100%;
}

.hidden {
  display: none;
}

.overflow-visible {
  overflow: visible;
}

.overflow-x-scroll {
  overflow-x: scroll;
}

.overflow-hidden {
  overflow: hidden;
}

.border-bottom {
  border-bottom: 1px solid var(--color-dark);
}

.border-bottom.light-grey {
  border-bottom: 1px solid rgba(18, 18, 18, 0.1);
}

.border-radius {
  border-radius: 16px;
}

.border-bottom-radius {
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
}

.spacer {
  width: 100%;
}

.spacer.big {
  height: var(--spacer-big);
}

.spacer.large {
  height: var(--spacer-large);
}

.spacer.medium {
  height: var(--spacer-medium);
}

.spacer.small {
  height: var(--spacer-small);
}

.spacer.extra-small {
  height: var(--spacer-extra-small);
}

.container {
  width: 100%;
  max-width: var(--container-width);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container {
    padding: 0 20px;
  }
}
.container.fluid {
  width: clamp(0rem, 15rem + 62.5vw, 90rem);
  max-width: unset;
  padding: 0;
}

.container.big {
  width: 100%;
  max-width: var(--container-big-width);
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.big {
    padding: 0 20px;
  }
}
.container.large {
  width: 100%;
  max-width: var(--container-large-width);
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.large {
    padding: 0 20px;
  }
}
.container.medium {
  width: 100%;
  max-width: var(--container-medium-width);
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.medium {
    padding: 0 20px;
  }
}
.container.small {
  width: 100%;
  max-width: var(--container-small-width);
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.small {
    padding: 0 20px;
  }
}
.container.extra-small {
  width: 100%;
  max-width: var(--container-extra-small-width);
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.extra-small {
    padding: 0 20px;
  }
}
.container.mini {
  width: 100%;
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.mini {
    max-width: var(--container-mini-width);
    padding: 0 20px;
  }
}
.container.min-width {
  width: 100%;
  padding: 0 15px;
}

@media (min-width: 992px) {
  .container.min-width {
    max-width: var(--block-min-width);
    padding: 0 20px;
  }
}
.container.relative {
  position: relative;
}

.container.floated-right {
  margin-left: auto;
  margin-right: 0;
}

@media (max-width: 991px) {
  .container.floated-right {
    padding: 0;
  }
}
.container.floated-left {
  margin-left: 0;
  margin-right: auto;
}

@media (max-width: 991px) {
  .container.floated-left {
    padding: 0;
  }
}
@media (min-width: 992px) {
  .container.p-40 {
    padding: 0 40px;
  }
}
@media (min-width: 992px) {
  .container.p-60 {
    padding: 0 60px;
  }
}
.p-relative {
  position: relative;
  z-index: 1;
}

.d-flex {
  display: flex;
}

.d-flex::after, .d-flex::before {
  display: none;
}

.d-flex.direction-column {
  flex-direction: column;
}

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

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

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

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

.d-flex.flex-wrap {
  flex-wrap: wrap;
}

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

@media (max-width: 767px) {
  .d-flex.justify-mobile-center {
    justify-content: center;
  }
}
.d-flex.justify-space-between {
  justify-content: space-between;
}

.d-flex.justify-space-evenly {
  justify-content: space-evenly;
}

.d-flex.justify-space-around {
  justify-content: space-around;
}

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

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

@media (min-width: 992px) {
  .d-flex.justify-desktop-end {
    justify-content: flex-end;
  }
}
.d-none {
  display: none !important;
}

.d-block {
  display: block !important;
}

@media (min-width: 576px) {
  .d-sm-block {
    display: block !important;
  }
  .d-sm-none {
    display: none;
  }
}
@media (min-width: 768px) {
  .d-md-block {
    display: block !important;
  }
  .d-md-none {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .d-lg-block {
    display: block !important;
  }
  .d-lg-none {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-block {
    display: block !important;
  }
  .d-xl-none {
    display: none;
  }
}
@media (min-width: 1601px) {
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-none {
    display: none;
  }
}
@media (min-width: 992px) {
  .d-lg-inline {
    display: inline !important;
  }
}
.full-width {
  width: 100% !important;
  max-width: 100% !important;
}

.m-0 {
  margin: 0 !important;
}

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

.ml-0 {
  margin-left: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.p-0 {
  padding: 0 !important;
}

.p-left-40 {
  padding-left: 40px !important;
}

.p-right-0 {
  padding-right: 0 !important;
}

.bg-section {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.bg-section.with-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.bg-opacity-light {
  background-color: #fff;
}

@media (min-width: 992px) {
  .bg-opacity-light {
    background-color: hsla(0, 0%, 100%, 0.8);
  }
}
.bg-dark {
  background-color: var(--color-dark);
}

.bg-dark .h1, .bg-dark .h2, .bg-dark .h3, .bg-dark .h4, .bg-dark .h5, .bg-dark .h6, .bg-dark p, .bg-dark a, .bg-dark ul, .bg-dark li, .bg-dark i, .bg-dark span, .bg-dark strong {
  color: var(--color-light);
}

.bg-dark-grey {
  background-color: var(--dark-grey);
}

.bg-dark-grey .h1, .bg-dark-grey .h2, .bg-dark-grey .h3, .bg-dark-grey .h4, .bg-dark-grey .h5, .bg-dark-grey .h6, .bg-dark-grey p, .bg-dark-grey a, .bg-dark-grey ul, .bg-dark-grey li, .bg-dark-grey i, .bg-dark-grey span, .bg-dark-grey strong {
  color: var(--color-light);
}

.bg-v-light-grey {
  background-color: var(--light-grey);
}

.bg-v-light-grey .h1, .bg-v-light-grey .h2, .bg-v-light-grey .h3, .bg-v-light-grey .h4, .bg-v-light-grey .h5, .bg-v-light-grey .h6, .bg-v-light-grey p, .bg-v-light-grey a, .bg-v-light-grey ul, .bg-v-light-grey li, .bg-v-light-grey i, .bg-v-light-grey span, .bg-v-light-grey strong {
  color: var(--color-dark);
}

.bg-light-grey {
  background-color: var(--light-grey);
}

.bg-light-grey .h1, .bg-light-grey .h2, .bg-light-grey .h3, .bg-light-grey .h4, .bg-light-grey .h5, .bg-light-grey .h6, .bg-light-grey p, .bg-light-grey a, .bg-light-grey ul, .bg-light-grey li, .bg-light-grey i, .bg-light-grey span, .bg-light-grey strong {
  color: var(--color-dark);
}

.bg-light {
  background-color: var(--color-light);
}

.bg-light .h1, .bg-light .h2, .bg-light .h3, .bg-light .h4, .bg-light .h5, .bg-light .h6, .bg-light p, .bg-light a, .bg-light ul, .bg-light li, .bg-light i, .bg-light span, .bg-light strong {
  color: var(--color-dark);
}

.color-dark:not(.btn):not(.fa-chevron-right):not(.fa-upload), .color-dark *:not(.btn):not(.fa-chevron-right):not(.fa-upload) {
  color: var(--color-dark);
}

.color-light:not(.btn):not(.fa-chevron-right):not(.fa-upload), .color-light *:not(.btn):not(.fa-chevron-right):not(.fa-upload) {
  color: var(--color-light);
}

.color-text:not(.btn):not(.fa-chevron-right):not(.fa-upload), .color-text *:not(.btn):not(.fa-chevron-right):not(.fa-upload) {
  color: var(--color-text);
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

@media (min-width: 992px) {
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
}
.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-6 {
  order: 6 !important;
}

.vector-grey {
  overflow: hidden;
  position: absolute;
  width: auto;
  left: 0;
  top: -12px;
  object-fit: cover;
}

@media (min-width: 992px) {
  .vector-grey {
    width: 100%;
  }
}
.vettore-img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
}

@font-face {
  font-family: "GeneralSans";
  src: url("../fonts/GeneralSans-Light.woff2") format("woff2"), url("../fonts/GeneralSans-Light.woff") format("woff"), url("../fonts/GeneralSans-Light.eot") format("embedded-opentype"), url("../fonts/GeneralSans-Light.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "GeneralSans";
  src: url("../fonts/GeneralSans-Regular.woff2") format("woff2"), url("../fonts/GeneralSans-Regular.woff") format("woff"), url("../fonts/GeneralSans-Regular.eot") format("embedded-opentype"), url("../fonts/GeneralSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "GeneralSans";
  src: url("../fonts/GeneralSans-Medium.woff2") format("woff2"), url("../fonts/GeneralSans-Medium.woff") format("woff"), url("../fonts/GeneralSans-Medium.eot") format("embedded-opentype"), url("../fonts/GeneralSans-Medium.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "GeneralSans";
  src: url("../fonts/GeneralSans-Semibold.woff2") format("woff2"), url("../fonts/GeneralSans-Semibold.woff") format("woff"), url("../fonts/GeneralSans-Semibold.eot") format("embedded-opentype"), url("../fonts/GeneralSans-Semibold.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "GeneralSans";
  src: url("../fonts/GeneralSans-Bold.woff2") format("woff2"), url("../fonts/GeneralSans-Bold.woff") format("woff"), url("../fonts/GeneralSans-Bold.eot") format("embedded-opentype"), url("../fonts/GeneralSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Space Grotesk";
  src: url("../fonts/SpaceGrotesk-Regular.eot");
  src: url("../fonts/SpaceGrotesk-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/SpaceGrotesk-Regular.woff2") format("woff2"), url("../fonts/SpaceGrotesk-Regular.woff") format("woff"), url("../fonts/SpaceGrotesk-Regular.ttf") format("truetype"), url("../fonts/SpaceGrotesk-Regular.svg#SpaceGrotesk-Regular") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: var(--font-family);
  color: var(--color-default);
  font-size: var(--font-size);
  font-weight: 500;
  line-height: 1.5;
  font-smooth: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body .light {
  font-weight: 300;
}

body .regular {
  font-weight: 400;
}

body .medium {
  font-weight: 500;
}

body .semibold {
  font-weight: 600;
}

body .bold {
  font-weight: 700;
}

.inherit {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  display: inherit;
  font-family: inherit;
}

p, .p, strong, b, time, i {
  font-family: var(--font-family);
  color: var(--color-default);
  font-size: var(--font-size);
  margin-top: 0;
  margin-bottom: 8px;
  font-weight: 500;
  line-height: 1.5;
}

p.p-small, .p.p-small, strong.p-small, b.p-small, time.p-small, i.p-small {
  font-size: 0.75rem;
}

a {
  font-family: var(--font-family);
  color: var(--color-default);
  font-size: var(--font-size);
  margin-top: 0;
  margin-bottom: 8px;
  font-weight: 600;
  line-height: 1.5;
}

ul {
  padding-inline-start: 25px;
}

ul, li {
  font-family: var(--font-family);
  color: var(--color-default);
  font-size: var(--font-size);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.5;
}

strong, b, .strong {
  font-weight: 600;
}

.text-shadow {
  text-shadow: 1px 1px 0 var(--color-light);
}

.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-family-title);
  line-height: 1.3;
  display: block;
}

.h1 p, .h1 .p, .h1 ul, .h1 li, .h1 a, .h1 span, .h1 strong, .h1 .strong, .h1 b, .h1 time, .h1 i, .h2 p, .h2 .p, .h2 ul, .h2 li, .h2 a, .h2 span, .h2 strong, .h2 .strong, .h2 b, .h2 time, .h2 i, .h3 p, .h3 .p, .h3 ul, .h3 li, .h3 a, .h3 span, .h3 strong, .h3 .strong, .h3 b, .h3 time, .h3 i, .h4 p, .h4 .p, .h4 ul, .h4 li, .h4 a, .h4 span, .h4 strong, .h4 .strong, .h4 b, .h4 time, .h4 i, .h5 p, .h5 .p, .h5 ul, .h5 li, .h5 a, .h5 span, .h5 strong, .h5 .strong, .h5 b, .h5 time, .h5 i, .h6 p, .h6 .p, .h6 ul, .h6 li, .h6 a, .h6 span, .h6 strong, .h6 .strong, .h6 b, .h6 time, .h6 i {
  font-family: inherit;
  line-height: inherit;
  font-size: inherit;
  margin-bottom: inherit;
  margin-top: inherit;
}

.h1.p-style, .h2.p-style, .h3.p-style, .h4.p-style, .h5.p-style, .h6.p-style {
  font-family: var(--font-family);
}

.h1 {
  font-size: var(--h1-font-size);
  font-weight: var(--h1-font-weight);
  margin-bottom: var(--h1-margin-bottom);
  margin-top: 0;
}

.h2 {
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  margin-bottom: var(--h2-margin-bottom);
  margin-top: 0;
}

.h3 {
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  margin-bottom: var(--h3-margin-bottom);
  margin-top: 0;
}

.h4 {
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  margin-bottom: var(--h4-margin-bottom);
  margin-top: 0;
}

.h5 {
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  margin-bottom: var(--h5-margin-bottom);
  margin-top: 0;
}

.h6 {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  margin-bottom: var(--h6-margin-bottom);
  margin-top: 0;
}

.h6.h6-small {
  font-size: 1rem;
}

.p h1, .p h2, .p h3, .p h4, .p h5, .p h6 {
  font-family: var(--font-family-title);
  line-height: 1.1;
  display: block;
}

.p h1 {
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  margin-bottom: var(--h2-margin-bottom);
  margin-top: 16px;
}

.p h2 {
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  margin-bottom: var(--h3-margin-bottom);
  margin-top: 16px;
}

.p h3 {
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  margin-bottom: var(--h4-margin-bottom);
  margin-top: 16px;
}

.p h4 {
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  margin-bottom: var(--h5-margin-bottom);
  margin-top: 16px;
}

.p h5 {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  margin-bottom: var(--h6-margin-bottom);
  margin-top: 16px;
}

.p h6 {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  margin-bottom: var(--h6-margin-bottom);
  margin-top: 16px;
}

.text-underline {
  text-decoration: underline;
}

.font-space-grotesk {
  font-family: "Space Grotesk", sans-serif;
  font-size: 0.75rem;
}

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

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

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

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

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

.text-lowercase {
  text-transform: lowercase;
}

.text-capitalize {
  text-transform: capitalize;
}

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

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

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

.text-semibold {
  font-weight: 500;
}

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

.text-extra-bold {
  font-weight: 800;
}

.debug\:css {
  --debug-color: var(--color-default);
}

.debug\:css * {
  outline: 1px dashed var(--debug-color);
}

.debug\:css\:red {
  --debug-color: red;
}

.debug\:css\:red * {
  outline: 1px dashed var(--debug-color);
}

.accordion-elem {
  border-bottom: 1px solid #cacaca;
}

.accordion-elem .title-accordion {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 15px 0;
  cursor: pointer;
  transition: var(--transition-default);
  overflow: hidden;
}

.accordion-elem .title-accordion .default {
  visibility: visible;
  opacity: 1;
  transition: var(--transition-default);
  margin: 0;
}

.accordion-elem .title-accordion .default img {
  width: 15px;
}

.accordion-elem .title-accordion .hover {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  transition: var(--transition-default);
  margin: 0;
}

.accordion-elem .title-accordion .hover img {
  width: 15px;
}

.accordion-elem.on .title-accordion .default {
  visibility: hidden;
  opacity: 0;
  transition: var(--transition-default);
}

.accordion-elem.on .title-accordion .hover {
  visibility: visible;
  opacity: 1;
  transition: var(--transition-default);
}

.accordion-elem .list-block-element {
  position: relative;
  width: 100%;
  height: auto;
  cursor: pointer;
  display: none;
}

.block-grids {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 25px;
  gap: 25px;
}

@media (min-width: 992px) {
  .block-grids {
    grid-gap: 50px;
    gap: 50px;
  }
}
.block-grids.no-gap {
  grid-gap: 0;
  gap: 0;
}

.block-grids.small-gap {
  grid-gap: 20px;
  gap: 20px;
}

.block-grids.small-gap-bottom {
  grid-gap: 0 20px;
  gap: 0 20px;
}

.block-grids.min-gap {
  grid-gap: 20px 32px;
  gap: 20px 32px;
}

@media (min-width: 992px) {
  .block-grids.columns-2 {
    grid-template-columns: 1fr 1fr;
  }
}
.block-grids.columns-2.menu-block {
  grid-gap: 0 20px;
  gap: 0 20px;
}

@media (min-width: 992px) {
  .block-grids.columns-2.menu-block {
    grid-template-columns: 1fr;
    margin-top: 0;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-2.menu-block {
    grid-template-columns: 1fr 0.8fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-2.footer-grid {
    grid-template-columns: 0.8fr 1.2fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.footer-grid {
    grid-template-columns: 0.7fr 1.3fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-2.footer-grid {
    grid-template-columns: 0.6fr 1.4fr;
  }
}
.block-grids.columns-2.menu-float {
  grid-template-columns: 1fr;
}

@media (min-width: 576px) {
  .block-grids.columns-2.menu-float {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-2.menu-float {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-2.small-left {
    grid-template-columns: 0.9fr 1.1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.small-left {
    grid-template-columns: 0.9fr 1.1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-2.small-left {
    grid-template-columns: 0.9fr 1.1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-2.small-right {
    grid-template-columns: 1.1fr 0.9fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.small-right {
    grid-template-columns: 1.1fr 0.9fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-2.small-right {
    grid-template-columns: 1.1fr 0.9fr;
  }
}
.block-grids.columns-2.with-padding {
  padding: 20px;
}

.block-grids.columns-2.accordion-grid {
  grid-template-columns: 1fr 50px;
}

@media (min-width: 992px) {
  .block-grids.columns-2.accordion-grid {
    grid-template-columns: 1fr 50px;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.block-cat-cerca {
    grid-template-columns: 1.8fr 0.4fr;
  }
}
.block-grids.columns-2.competenze-grid {
  grid-template-columns: 60px 1fr;
  border-bottom: 1px solid #e4e7ec;
  padding: 20px 10px;
}

@media (min-width: 576px) {
  .block-grids.columns-2.competenze-grid {
    grid-template-columns: 60px 1fr;
  }
}
.block-grids.columns-2.competenze-grid img {
  width: 60px;
  height: 60px;
}

@media (min-width: 768px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 576px) {
  .block-grids.columns-3.footer-menu-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.block-grids.columns-3.partner-grid {
  grid-template-columns: 1fr 1fr;
}

@media (min-width: 576px) {
  .block-grids.columns-3.partner-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.block-grids.columns-3.download-grid {
  grid-template-columns: 60px 1fr 20px;
  border-bottom: 1px solid #e4e7ec;
  padding: 0 10px 20px;
}

@media (min-width: 576px) {
  .block-grids.columns-3.download-grid {
    grid-template-columns: 60px 1fr 20px;
  }
}
@media (min-width: 576px) {
  .block-grids.columns-4 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.block-grids.columns-5 {
  grid-template-columns: 1fr;
}

@media (min-width: 576px) {
  .block-grids.columns-5 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-5 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}
.block-grids .grid {
  position: relative;
}

.block-grids.inverted > .grid:first-child {
  order: 1;
}

@media (min-width: 992px) {
  .block-grids.inverted > .grid:first-child {
    order: 2;
  }
}
.block-grids.inverted > .grid:last-child {
  order: 2;
}

@media (min-width: 992px) {
  .block-grids.inverted > .grid:last-child {
    order: 1;
  }
}
.block-grids.mobile-inverted > .grid:first-child {
  order: 2;
}

@media (min-width: 992px) {
  .block-grids.mobile-inverted > .grid:first-child {
    order: 1;
  }
}
.block-grids.mobile-inverted > .grid:last-child {
  order: 1;
}

@media (min-width: 992px) {
  .block-grids.mobile-inverted > .grid:last-child {
    order: 2;
  }
}
.sezione-numeri {
  position: relative;
}

@media (max-width: 991px) {
  .sezione-numeri {
    padding: 40px 0;
  }
}
.sezione-numeri:before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  background-color: #e4e7ec;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
}

@media (min-width: 992px) {
  .sezione-numeri:before {
    display: none;
  }
}
.sezione-numeri:after {
  content: "";
  position: absolute;
  transform: translateY(-50%);
  left: 50%;
  top: 105%;
  transform: translate(-50%, -100%);
  width: 12px;
  height: 12px;
  border-radius: 100px;
  background-color: var(--color-dark);
  z-index: 1;
}

@media (min-width: 992px) {
  .sezione-numeri:after {
    display: none;
  }
}
.sezione-numeri:last-child:after, .sezione-numeri:last-child:before {
  display: none;
}

.sezione-numeri .numero {
  position: absolute;
  top: 0;
  font-size: clamp(7.5rem, 10vw, 11.25rem);
  color: var(--light-grey);
  line-height: 0.7;
  z-index: 0;
  margin: 0;
}

.sezione-numeri .numero.right {
  right: 0;
}

@media (min-width: 992px) {
  .sezione-numeri .numero.right {
    right: 20px;
  }
}
.sezione-numeri .numero.left {
  left: 0;
}

@media (min-width: 992px) {
  .sezione-numeri .numero.left {
    left: 20px;
  }
}
.sezione-numeri .content-text {
  position: relative;
  z-index: 1;
  padding: 10px;
}

.sezione-numeri .content-text.mr-60 {
  width: calc(100% - 40px);
  margin-right: 40px;
  text-align: right;
}

@media (min-width: 992px) {
  .sezione-numeri .content-text.mr-60 {
    margin-right: 60px;
    width: 100%;
    text-align: left;
  }
}
.sezione-numeri .content-text.ml-60 {
  width: calc(100% - 40px);
  margin-left: 40px;
}

@media (min-width: 992px) {
  .sezione-numeri .content-text.ml-60 {
    width: 100%;
    margin-left: 60px;
  }
}
.sezione-numeri .grid:first-child:before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  background-color: #e4e7ec;
  z-index: 1;
  top: 0;
  right: 0;
}

@media (max-width: 991px) {
  .sezione-numeri .grid:first-child:before {
    display: none;
  }
}
.sezione-numeri .grid:first-child:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5px;
  width: 12px;
  height: 12px;
  border-radius: 100px;
  background-color: var(--red);
  z-index: 1;
}

@media (max-width: 991px) {
  .sezione-numeri .grid:first-child:after {
    display: none;
  }
}
.blog-list .grid .card-s1-img, .corsi-list .grid .card-s1-img {
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}

.blog-list .grid .card-s1-img img, .corsi-list .grid .card-s1-img img {
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}

.blog-list .grid .card-s1-desc, .corsi-list .grid .card-s1-desc {
  position: relative;
  bottom: 0;
  padding: 20px;
  width: 100%;
  z-index: 1;
  transition: var(--transition-default);
}

.flag-data {
  position: absolute;
  padding: 5px 10px;
  font-size: 0.75rem;
  border-radius: 8px;
  font-weight: 500;
}

.flag-data.data-imminente {
  background-color: #53ae17;
  color: #fff;
  top: 10px;
  right: 10px;
}

.flag-data.data-passata {
  background-color: #333;
  color: #fff;
  top: 10px;
  right: 10px;
}

.pillola-grey {
  background-color: var(--light-grey);
  color: var(--color-dark);
  display: inline-block;
  padding: 5px 10px;
  border-radius: 8px;
  font-weight: 500;
}

ul.breadcrumbs {
  padding: 10px 0;
  margin: 0;
  list-style: none;
  align-items: center;
  text-align: left;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  color: var(--color-dark);
  font-family: var(--font-space-grotesk);
  text-transform: uppercase;
}

ul.breadcrumbs.b-start {
  justify-content: flex-start;
}

ul.breadcrumbs li {
  padding-left: 2px;
  padding-right: 2px;
  color: var(--color-dark);
  display: inline-flex;
  font-size: 0.75rem;
  margin-bottom: 0;
  align-items: center;
  font-family: var(--font-space-grotesk);
}

ul.breadcrumbs li:first-child {
  padding-left: 0;
}

ul.breadcrumbs li a {
  color: var(--color-text);
  font-size: 0.75rem;
  margin-bottom: 0;
  font-family: var(--font-space-grotesk);
  text-decoration: underline;
}

ul.breadcrumbs li:after {
  content: ">";
  margin-left: 8px;
}

ul.breadcrumbs li:last-child::after {
  display: none;
}

ul.breadcrumbs.light {
  color: var(--color-light);
}

ul.breadcrumbs.light li {
  color: var(--color-light);
}

ul.breadcrumbs.light li a {
  color: var(--color-light);
}

.btn {
  --border-radius: 8px;
  --bg-color: var(--color-dark);
  --text-color: var(--color-light);
  --border-color: var(--color-dark);
  --bg-color-hover: var(--dark-grey);
  --text-color-hover: var(--color-light);
  --border-color-hover: var(--dark-grey);
  position: relative;
  font-family: var(--font-family);
  transition: var(--transition-default);
  text-decoration: none;
  cursor: pointer;
  outline: none;
  text-align: center;
  border-radius: var(--border-radius);
  line-height: 1;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: solid 1px var(--border-color);
  background-color: var(--bg-color);
  color: var(--text-color);
}

@media (min-width: 576px) {
  .btn {
    width: auto;
  }
}
@media (min-width: 992px) {
  .btn.m-right {
    margin-right: 10px;
  }
}
.btn:hover, .btn:focus, .btn:active, .btn:not(:disabled):active {
  color: var(--text-color-hover);
  background-color: var(--bg-color-hover);
  border-color: var(--border-color-hover);
}

.btn.btn-dark {
  background: var(--color-dark);
  color: var(--text-color);
  border-color: var(--border-color);
}

.btn.btn-dark:hover, .btn.btn-dark:focus, .btn.btn-dark:active, .btn.btn-dark:not(:disabled):active {
  color: var(--text-color-hover);
  background-color: var(--bg-color-hover);
  border-color: var(--border-color-hover);
}

.btn.btn-outline {
  background: rgba(0, 0, 0, 0);
  color: var(--color-dark);
  border-color: var(--color-dark);
}

.btn.btn-outline:hover, .btn.btn-outline:focus, .btn.btn-outline:active, .btn.btn-outline:not(:disabled):active {
  color: var(--color-dark);
  background-color: var(--color-light);
  border-color: var(--color-dark);
}

.btn.btn-grey {
  background: var(--light-grey);
  color: var(--color-dark);
  border-color: var(--light-grey);
}

.btn.btn-grey:hover, .btn.btn-grey:focus, .btn.btn-grey:active, .btn.btn-grey:not(:disabled):active {
  color: var(--color-dark);
  background-color: var(--middle-light-grey);
  border-color: var(--middle-light-grey);
}

.btn.btn-light {
  background: var(--color-light);
  color: var(--color-dark);
  border-color: var(--color-light);
}

.btn.btn-light:hover, .btn.btn-light:focus, .btn.btn-light:active, .btn.btn-light:not(:disabled):active {
  color: var(--color-dark);
  background-color: var(--middle-light-grey);
  border-color: var(--middle-light-grey);
}

.btn.btn-dark-arrow {
  background: var(--grey);
  color: var(--text-color);
  border-color: var(--grey);
  padding: 12px 50px 12px 20px;
}

.btn.btn-dark-arrow:before {
  content: "";
  position: absolute;
  right: 12px;
  background-image: url("../img/icone/arrow-up-right.svg");
  display: inline-block;
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
}

.btn.btn-dark-arrow:hover, .btn.btn-dark-arrow:focus, .btn.btn-dark-arrow:active, .btn.btn-dark-arrow:not(:disabled):active {
  color: var(--text-color-hover);
  background-color: var(--color-dark);
  border-color: var(--color-dark);
}

.btn.w-100 {
  width: 100%;
}

.btn.no-word-break {
  white-space: nowrap;
}

.btn.with-margin {
  margin-right: 0;
  margin-bottom: 10px;
}

@media (min-width: 992px) {
  .btn.with-margin {
    margin-right: 10px;
  }
}
.form-contatti {
  display: block;
  border-radius: 14px;
  padding: 30px;
}

.form-contatti .contact-form {
  width: 100%;
}

.form-contatti .contact-form .form-group {
  display: block;
  align-items: center;
  margin-bottom: 20px;
}

.form-contatti .contact-form .form-group.border-top {
  margin-bottom: 0;
}

.form-contatti .contact-form .form-group.border-top .form-input:last-child {
  border-right: none;
}

@media (min-width: 768px) {
  .form-contatti .contact-form .form-group {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 20px 10px;
    gap: 20px 10px;
    margin-bottom: 20px;
  }
}
.form-contatti .contact-form .form-group:last-child {
  margin-bottom: 0px;
}

.form-contatti .contact-form .form-group.allegato-form {
  margin-top: 25px;
  margin-bottom: 25px;
}

.form-contatti .contact-form .form-group .form-input {
  flex: 1;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0px;
  width: 100%;
  position: relative;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .form-contatti .contact-form .form-group .form-input {
    width: auto;
    margin-bottom: 0;
  }
}
.form-contatti .contact-form .form-group .form-input .title-form {
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 400;
  display: block;
  margin-bottom: 10px;
}

.form-contatti .contact-form .form-group .form-input input[type=text], .form-contatti .contact-form .form-group .form-input input[type=number], .form-contatti .contact-form .form-group .form-input input[type=email], .form-contatti .contact-form .form-group .form-input input[type=password], .form-contatti .contact-form .form-group .form-input textarea {
  width: 100%;
  outline: none;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 14px 16px;
  box-sizing: border-box;
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 400;
}

.form-contatti .contact-form .form-group .form-input input[type=text]::placeholder, .form-contatti .contact-form .form-group .form-input input[type=number]::placeholder, .form-contatti .contact-form .form-group .form-input input[type=email]::placeholder, .form-contatti .contact-form .form-group .form-input input[type=password]::placeholder, .form-contatti .contact-form .form-group .form-input textarea::placeholder {
  color: var(--color-text);
  opacity: 1;
}

.form-contatti .contact-form .form-group .form-input input[type=text]:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=number]:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=email]:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=password]:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input textarea:-ms-input-placeholder {
  color: var(--color-text);
  opacity: 1;
}

.form-contatti .contact-form .form-group .form-input input[type=text]::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=number]::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=email]::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=password]::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input textarea::-ms-input-placeholder {
  color: var(--color-text);
  opacity: 1;
}

.form-contatti .contact-form .form-group .form-input input[type=text].color-light::placeholder, .form-contatti .contact-form .form-group .form-input input[type=number].color-light::placeholder, .form-contatti .contact-form .form-group .form-input input[type=email].color-light::placeholder, .form-contatti .contact-form .form-group .form-input input[type=password].color-light::placeholder, .form-contatti .contact-form .form-group .form-input textarea.color-light::placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form .form-group .form-input input[type=text].color-light:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=number].color-light:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=email].color-light:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=password].color-light:-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input textarea.color-light:-ms-input-placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form .form-group .form-input input[type=text].color-light::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=number].color-light::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=email].color-light::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input input[type=password].color-light::-ms-input-placeholder, .form-contatti .contact-form .form-group .form-input textarea.color-light::-ms-input-placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form .form-group .form-input input[type=number]::-webkit-outer-spin-button, .form-contatti .contact-form .form-group .form-input input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.form-contatti .contact-form .form-group .form-input input[type=number] {
  -moz-appearance: textfield;
}

.form-contatti .contact-form .form-group .form-input select {
  width: 100%;
  outline: none;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 14px 16px;
  box-sizing: border-box;
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 400;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: 97% center;
  background-repeat: no-repeat;
  background-image: url(../img/icone/arrow-select.png);
  background-size: 12px;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  font-size: 0.875rem;
  font-weight: 400;
}

.form-contatti .contact-form .form-group .form-input select + .select-arrow {
  position: absolute;
  right: 15px;
  top: 12px;
  margin-bottom: 0;
}

.form-contatti .contact-form .form-group .form-input select option:first-child {
  color: #ccc;
}

.form-contatti .contact-form .form-group .form-input textarea {
  width: 100%;
  outline: none;
  font-family: var(--font-family);
}

.form-contatti .contact-form .form-group .form-input.privacy-container {
  display: flex;
  align-items: baseline;
  margin-bottom: 5px;
  position: relative;
}

.form-contatti .contact-form .form-group .form-input.privacy-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 15px;
  width: 15px;
  z-index: 2;
}

.form-contatti .contact-form .form-group .form-input.privacy-container .checkmark {
  position: absolute;
  top: 2px;
  left: 2px;
  height: 20px;
  width: 20px;
  background: rgba(0, 0, 0, 0);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid #999;
  border-radius: 5px;
  margin-bottom: 0;
}

.form-contatti .contact-form .form-group .form-input.privacy-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 2px;
  top: 2px;
  width: 14px;
  height: 14px;
  border-radius: 3px;
  background-color: var(--color-dark);
}

.form-contatti .contact-form .form-group .form-input.privacy-container input:checked ~ .checkmark:after {
  display: block;
}

.form-contatti .contact-form .form-group .form-input.privacy-container label {
  font-size: 0.875rem;
  color: var(--color-dark);
  padding-left: 26px;
  cursor: pointer;
  text-transform: initial !important;
}

.form-contatti .contact-form .form-group .form-input.privacy-container label a {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-dark);
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file [type=file] {
  display: none;
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-files-list {
  width: 100%;
  display: block;
  color: var(--color-dark);
  font-style: italic;
  text-decoration: underline;
  font-size: 16px;
}

@media (min-width: 768px) {
  .form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-files-list {
    position: absolute;
  }
}
.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input {
  --color-border: var(--color-dark);
  display: flex;
  align-items: center;
  border-radius: 0;
  border-bottom: none;
  border-left: none;
  border-right: none;
  border-top: none;
  padding: 7px 0;
  color: var(--color-dark);
  cursor: pointer;
  overflow: hidden;
  position: relative;
  background-color: rgba(0, 0, 0, 0);
  font-size: 18px;
  font-weight: 400;
}

@media (min-width: 992px) {
  .form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input {
    font-size: 22px;
  }
}
@media (min-width: 1441px) {
  .form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input {
    font-size: 35px;
  }
}
.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input svg {
  margin-right: 10px;
  flex-shrink: 0;
  fill: var(--color-default);
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input span {
  color: inherit;
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  transition: var(--transition-default);
  opacity: 0.1;
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input:hover::before {
  background-color: rgba(0, 0, 0, 0);
}

.form-contatti .contact-form.light .form-group .form-input .title-form {
  color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input input[type=text], .form-contatti .contact-form.light .form-group .form-input input[type=number], .form-contatti .contact-form.light .form-group .form-input input[type=email], .form-contatti .contact-form.light .form-group .form-input input[type=password], .form-contatti .contact-form.light .form-group .form-input textarea {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form.light .form-group .form-input input[type=text]::placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=number]::placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=email]::placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=password]::placeholder, .form-contatti .contact-form.light .form-group .form-input textarea::placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form.light .form-group .form-input input[type=text]:-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=number]:-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=email]:-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=password]:-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input textarea:-ms-input-placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form.light .form-group .form-input input[type=text]::-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=number]::-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=email]::-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input input[type=password]::-ms-input-placeholder, .form-contatti .contact-form.light .form-group .form-input textarea::-ms-input-placeholder {
  color: var(--color-light);
  opacity: 0.8;
}

.form-contatti .contact-form.light .form-group .form-input select {
  color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input select + .select-arrow {
  filter: invert(1);
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container .checkmark {
  border: 1px solid #999;
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container .checkmark:after {
  background-color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container input:checked ~ .checkmark:after {
  display: block;
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container label {
  color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container label a {
  color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input .pseudo-input-file .pseudo-button-input {
  --color-border: var(--color-light);
  color: var(--color-light);
}

.form-contatti .contact-form.light .form-group .form-input .pseudo-input-file .pseudo-button-input svg {
  fill: var(--color-light);
}

.search-corsi {
  position: relative;
  width: 100%;
}

.search-corsi .form-group {
  display: block;
}

.search-corsi .form-group .form-input {
  padding: 0;
  margin-top: 0;
}

.search-corsi .form-group .form-input input {
  width: 100%;
  outline: none;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  padding: 14px 16px 14px 34px;
  box-sizing: border-box;
  background: var(--color-light);
  color: var(--color-text);
  font-size: 0.875rem;
  font-weight: 400;
}

.search-corsi .form-group .form-input input::placeholder {
  color: var(--color-text);
  opacity: 1;
}

.search-corsi .form-group .form-input input:-ms-input-placeholder {
  color: var(--color-text);
  opacity: 1;
}

.search-corsi .form-group .form-input input::-ms-input-placeholder {
  color: var(--color-text);
  opacity: 1;
}

.search-corsi .form-group .form-input input:disabled {
  cursor: not-allowed;
}

.search-corsi .form-group .form-input .search-btn {
  position: absolute;
  left: 10px;
  top: 53%;
  transform: translateY(-50%);
  margin: 0;
  line-height: 1;
}

.search-corsi .form-group .form-input .search-btn img {
  width: 15px;
  height: 16px;
}

[data-form-toggle] {
  display: none;
}

[data-form-toggle].active {
  display: block;
}

.search-header .form-group .form-input {
  padding: 0;
  margin-top: 0;
}

.search-header .form-group .form-input input {
  width: calc(100% - 106px);
  outline: none;
  border-bottom: 1px solid #9a9187;
  border-left: none;
  border-right: none;
  border-top: none;
  border-radius: 0;
  padding: 10px 0;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0);
  color: var(--color-text);
  font-size: 1.25rem;
  font-weight: 400;
}

.search-header .form-group .form-input input::placeholder {
  color: #ccc;
  opacity: 1;
}

.search-header .form-group .form-input input:-ms-input-placeholder {
  color: #ccc;
  opacity: 1;
}

.search-header .form-group .form-input input::-ms-input-placeholder {
  color: #ccc;
  opacity: 1;
}

.search-header .form-group .form-input input:active, .search-header .form-group .form-input input:focus {
  margin-bottom: 0;
}

.search-header .form-group .form-input input:disabled {
  cursor: not-allowed;
}

.search-header .form-group .form-input .search-btn {
  background-color: var(--red-light);
  color: var(--color-light);
  border: var(--red-light);
  padding: 10px 30px;
  width: auto;
  border-radius: 25px;
  cursor: pointer;
}

@media (min-width: 768px) {
  .search-header .form-group .form-input .search-btn {
    padding: 10px 40px;
  }
}
.search-header .form-group .form-input .search-btn img {
  width: 20px;
  vertical-align: middle;
}

.search-header .form-group .form-input .search-btn:hover, .search-header .form-group .form-input .search-btn:focus, .search-header .form-group .form-input .search-btn:active, .search-header .form-group .form-input .search-btn:not(:disabled):active {
  transition: var(--transition-default);
  background: var(--color-dark);
  border-color: var(--red-light);
  color: var(--color-dark);
}

.intro {
  position: relative;
}

.intro .img-intro {
  position: relative;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  min-height: 40vh;
  overflow: hidden;
}

.intro .img-intro:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  z-index: 1;
}

.intro .img-intro img {
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  display: flex;
  position: absolute;
  object-fit: cover;
  z-index: 0;
  height: 100%;
}

.intro .img-intro.border-radius:before {
  border-radius: 16px;
}

.intro .text-container {
  position: relative;
  color: var(--color-light);
  width: 100%;
  z-index: 2;
}

.pagination {
  list-style: none;
  padding-left: 0;
}

.pagination li {
  margin-right: 10px;
  display: inline-block;
}

.pagination li:last-child {
  margin-right: 0;
}

.pagination li .btn {
  width: 42px;
  height: 42px;
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  border-radius: 8px;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid rgba(0, 0, 0, 0);
}

.pagination li .btn i {
  margin: 0;
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  transform: none;
  font-size: 0.875rem;
}

.pagination li .btn span {
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--color-dark);
}

.pagination li .btn:hover {
  background-color: var(--light-grey);
  color: var(--color-dark);
}

.pagination li .btn:hover i, .pagination li .btn:hover span {
  color: var(--color-dark);
}

.pagination li .current {
  width: 42px;
  height: 42px;
  padding: 5px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  color: var(--color-dark);
  background-color: var(--light-grey);
  border: 1px solid var(--light-grey);
  border-radius: 8px;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
}

.search-result-container {
  position: absolute;
  right: 0;
  min-width: 400px;
  width: 100%;
  top: 48px;
}

.search-result-container .corsi-results {
  background-color: var(--light-grey);
  padding: 10px;
  border-radius: 15px;
  margin-top: 0;
  max-height: 200px;
  overflow-y: scroll;
}

@media (min-width: 992px) {
  .search-result-container .corsi-results {
    padding: 10px;
    max-height: 450px;
  }
}
.search-result-container .corsi-results.hide {
  padding: 0;
}

.search-result-container .corsi-results a {
  border-top: 1px solid #ededed;
  padding-top: 10px;
  display: block;
  padding-bottom: 10px;
  width: 100%;
  margin-bottom: 0;
}

.search-result-container .corsi-results a:first-child {
  border-top: none;
}

.search-result-container .corsi-results .block-grids {
  margin-top: 0;
  margin-bottom: 0;
}

.search-result-container .corsi-results .block-grids .grid {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.search-result-container .corsi-results .block-grids .grid .text {
  padding-left: 10px;
}

.search-result-container .corsi-results .block-grids .grid .text p {
  font-size: 14px;
}

.search-result-container .load-corsi {
  margin-top: 10px;
  margin-bottom: 0;
  text-align: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

@media (min-width: 992px) {
  .search-result-container .load-corsi {
    margin-top: 20px;
  }
}
.search-result-container .load-corsi.hide {
  display: none;
  transition: var(--transition-default);
}

.search-result-container .load-corsi i {
  margin: 0;
}

.search-result-container .no-result-found.hide {
  display: none;
}

.search-result-container.search-result-open {
  z-index: 2;
  opacity: 1;
  visibility: visible;
}

.sezione-slider, .sezione-grid, .sezione-corsi {
  padding-bottom: 45px;
}

.sezione-slider .inside-slide, .sezione-grid .inside-slide, .sezione-corsi .inside-slide {
  padding: 40px 20px;
}

.sezione-slider .inside-slide.small-padding, .sezione-grid .inside-slide.small-padding, .sezione-corsi .inside-slide.small-padding {
  padding: 20px;
}

.sezione-slider .inside-slide .icona, .sezione-grid .inside-slide .icona, .sezione-corsi .inside-slide .icona {
  width: 32px;
  height: 32px;
}

.sezione-slider .swiper-pagination, .sezione-grid .swiper-pagination, .sezione-corsi .swiper-pagination {
  width: auto;
}

.sezione-slider .swiper-pagination .swiper-pagination-bullet, .sezione-grid .swiper-pagination .swiper-pagination-bullet, .sezione-corsi .swiper-pagination .swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 20px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 3px));
  border-radius: 0;
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 5px);
}

.sezione-slider .swiper-pagination .swiper-pagination-bullet-active, .sezione-grid .swiper-pagination .swiper-pagination-bullet-active, .sezione-corsi .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--red);
}

[data-id-toggle-content] {
  display: none;
}

[data-id-toggle-content].active-filter-content {
  display: block;
}

[data-id-toggle-content].active-filter-content.block-grids {
  display: grid;
}

.link-toggle {
  cursor: pointer;
}

.link-toggle.active-filter {
  color: var(--color-dark);
  background-color: var(--middle-light-grey);
  border-color: var(--middle-light-grey);
}

[data-id-hover-content] {
  display: none;
}

[data-id-hover-content].active-hover-filter-content {
  display: block;
}

[data-id-hover-content].active-hover-filter-content.block-grids {
  display: grid;
}

.link-toggle {
  cursor: pointer;
}

.categorie-list {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
}

.categorie-list li a {
  font-weight: 500;
  color: var(--color-text);
  transition: var(--transition-default);
}

.categorie-list li a.active-filter {
  transition: var(--transition-default);
  color: var(--color-dark);
  text-decoration: underline;
}

.categorie-list li a:hover {
  color: var(--color-dark);
  transition: var(--transition-default);
}

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9;
  padding: 0;
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.5s ease-in-out;
  height: 70px;
}

header .header-container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  height: 70px;
  padding: 0 10px;
  transition: all 0.5s ease-in-out;
}

@media (min-width: 1200px) {
  header .header-container {
    padding: 0 20px;
  }
}
header .header-container .logo-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  width: calc(100% - 65px);
  order: 1;
}

@media (min-width: 1200px) {
  header .header-container .logo-container {
    width: 300px;
  }
}
header .header-container .logo-container a {
  display: block;
}

header .header-container .logo-container a::after {
  content: none;
}

header .header-container .logo-container a .logo-dark {
  display: none;
}

header .header-container .logo-container a .logo-light {
  display: block;
}

header .header-container .logo-container a img {
  width: auto;
  transition: all 0.5s ease-in-out;
  vertical-align: middle;
  height: 55px;
}

header .header-container nav.menu-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 65px;
  order: 3;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container {
    align-items: flex-end;
    width: calc(100% - 300px);
  }
}
header .header-container nav.menu-container ul.menu {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  transition: var(--transition-default);
  text-align: center;
  align-items: center;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: translateX(100vw);
    border-top: 1px solid var(--color-light);
    margin-top: 70px;
    background-color: var(--color-light);
    height: calc(100vh - 70px);
  }
}
header .header-container nav.menu-container ul.menu li {
  padding: 0 15px;
  margin-bottom: 0;
  text-align: center;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li {
    padding: 10px 10px;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu > a {
  position: relative;
  display: block;
  text-decoration: none;
  color: var(--color-dark);
  padding: 5px 10px;
  margin-bottom: 0;
  cursor: pointer;
  transition: var(--transition-default);
  font-weight: 500;
  font-family: var(--font-family-title);
  font-size: 1.125rem;
  white-space: nowrap;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu > a {
    padding: 5px 10px;
    display: inline-block;
    font-size: 1rem;
    color: var(--color-light);
  }
}
header .header-container nav.menu-container ul.menu li.link-menu > a:hover, header .header-container nav.menu-container ul.menu li.link-menu > a.active, header .header-container nav.menu-container ul.menu li.link-menu > a.focus {
  border-radius: 8px;
  background-color: var(--color-light);
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu {
  position: relative;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu {
    position: relative;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -20px;
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg {
  transition: var(--transition-default);
  transform: rotate(0deg);
  transform-origin: center;
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg path {
  fill: var(--color-light);
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container {
  padding: 15px 20px;
  border-radius: 0;
  position: absolute;
  transition: var(--transition-default);
  width: auto;
  background: var(--color-light);
  opacity: 0;
  visibility: hidden;
  box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  left: 0;
  transform: translateX(-50%);
  min-width: 450px;
  margin-top: 10px;
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container.settore {
  left: unset;
  transform: unset;
  right: 0;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container.settore {
    left: 100%;
  }
}
@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container {
    position: fixed;
    min-width: unset;
    left: 100%;
    transform: unset;
    top: 0;
    opacity: 1;
    visibility: visible;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    padding: 0 20px 40px;
    margin-top: 0;
    box-shadow: none;
    border-radius: 0;
    width: 100%;
    height: 100%;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container.open-submenu {
  opacity: 1;
  visibility: visible;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container.open-submenu {
    z-index: 1;
    left: 0;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .back-arrow {
  display: none;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .back-arrow {
    position: absolute;
    right: 0;
    left: 5px;
    margin-bottom: 0;
    width: calc(100% - 10px);
    font-size: 16px;
    display: block;
    top: 10px;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .title-submenu {
  text-align: left;
  font-size: 30px;
  font-weight: 500;
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 1rem;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .title-submenu {
    text-align: center;
    font-size: 1.125rem;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu {
  list-style: none;
  padding: 0;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu {
    padding: 0 30px 0 0;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu li {
  text-align: left;
  padding: 5px 0;
  transition: var(--transition-default);
  white-space: nowrap;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu li {
    text-align: center;
    font-size: 1.125rem;
  }
}
@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu li.btn-link {
    border-top: none;
    border-bottom: none;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu li a {
  text-transform: initial;
  padding: 0;
  color: var(--color-text);
  margin-bottom: 10px;
  font-size: 0.9375rem;
}

@media (max-width: 1199px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .submenu li a {
    font-size: 1.125rem;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .img-container {
  display: none;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .img-container {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .img-container .img-menu {
  max-width: 200px;
  width: 200px;
  object-fit: cover;
  opacity: 1;
  visibility: visible;
  border-radius: 8px;
}

header .header-container nav.menu-container ul.menu li.link-menu.megamenu .submenu-container .img-container .img-menu.hide {
  opacity: 0;
  visibility: hidden;
}

header .header-container nav.menu-container ul.menu li.link-menu.mobile {
  display: block;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu.mobile {
    display: none;
  }
}
header .header-container nav.menu-container .hamburger {
  position: relative;
  width: 35px;
  height: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  box-sizing: content-box;
  padding: 15px;
  cursor: pointer;
}

@media (min-width: 1200px) {
  header .header-container nav.menu-container .hamburger {
    display: none;
  }
}
header .header-container nav.menu-container .hamburger::before, header .header-container nav.menu-container .hamburger::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--color-light);
  transition: var(--transition-default);
}

header .header-container .lang-container {
  display: none;
  flex-direction: row;
  align-items: center;
  position: relative;
  width: 70px;
  order: 2;
  justify-content: center;
  z-index: 2;
}

@media (min-width: 1200px) {
  header .header-container .lang-container {
    display: flex;
    order: 4;
    width: 80px;
  }
}
header .header-container .lang-container .link-cta.desktop {
  display: none;
}

@media (min-width: 1200px) {
  header .header-container .lang-container .link-cta.desktop {
    display: block;
  }
}
header .header-container .lang-container .language-menu-container {
  position: relative;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
}

header .header-container .lang-container .language-menu-container .selected-language {
  text-transform: uppercase;
  cursor: pointer;
  position: relative;
  z-index: 2;
}

header .header-container .lang-container .language-menu-container .selected-language i {
  margin: 0;
  position: absolute;
  right: -14px;
  font-size: 10px;
  top: 8px;
  color: var(--color-light);
}

header .header-container .lang-container .language-menu-container .selected-language img {
  vertical-align: middle;
}

header .header-container .lang-container .language-menu-container .language-menu {
  position: absolute;
  top: 100%;
  right: 0;
  background-color: rgba(0, 0, 0, 0);
  transition: var(--transition-default);
  list-style: none;
  padding: 0;
  opacity: 0;
  transform: translateY(-20px);
  pointer-events: none;
}

header .header-container .lang-container .language-menu-container .language-menu li a {
  margin: 0;
}

header .header-container .lang-container .language-menu-container .language-menu li.hide {
  display: none;
}

header.light-header {
  background-color: var(--light-grey);
}

header.light-header .header-container .logo-container a .logo-dark {
  display: block;
}

header.light-header .header-container .logo-container a .logo-light {
  display: none;
}

header.light-header .header-container nav.menu-container ul.menu li.link-menu a {
  color: var(--color-dark);
}

header.light-header .header-container nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg path {
  fill: var(--color-dark);
}

header.light-header .header-container nav.menu-container .hamburger::before, header.light-header .header-container nav.menu-container .hamburger::after {
  background-color: var(--color-dark);
}

header.light-header .header-container .lang-container .language-menu-container .selected-language i {
  color: var(--light-dark);
}

body {
  transition: var(--transition-default);
}

@media (max-width: 1199px) {
  body.menu-open header {
    background-color: var(--color-light);
  }
}
body.menu-open header .header-container .logo-container a .logo-dark {
  display: block;
}

body.menu-open header .header-container .logo-container a .logo-light {
  display: none;
}

body.menu-open header nav.menu-container ul.menu {
  transform: translateX(0);
}

body.menu-open header nav.menu-container ul.menu li.link-menu a {
  color: var(--color-dark);
}

body.menu-open header nav.menu-container ul.menu li.link-menu a.active {
  background-color: var(--light-grey);
}

body.menu-open header nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg path {
  fill: var(--color-dark);
}

body.menu-open header nav.menu-container .hamburger::before {
  animation-duration: 0.5s;
  transform-origin: center;
  transform: translateY(6px) rotate(45deg);
  background-color: var(--color-dark);
}

@media (max-width: 991px) {
  body.menu-open header nav.menu-container .hamburger::before {
    transform: translateY(7px) rotate(45deg);
  }
}
body.menu-open header nav.menu-container .hamburger::after {
  animation-duration: 0.5s;
  transform-origin: center;
  transform: translateY(-8px) rotate(-45deg);
  background-color: var(--color-dark);
}

body.sticky-header header {
  transition: all 0.5s ease-in-out;
}

body.sticky-header header .header-container {
  transition: all 0.5s ease-in-out;
}

body.sticky-header header .header-container nav.menu-container ul.menu li.link-menu a {
  color: var(--color-dark);
}

body.sticky-header header .header-container nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg path {
  fill: var(--color-dark);
}

body.sticky-header header .header-container nav.menu-container .hamburger::before {
  background-color: var(--color-dark);
}

body.sticky-header header .header-container nav.menu-container .hamburger::after {
  background-color: var(--color-dark);
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light {
  color: var(--color-light);
  border: 1px solid var(--color-dark);
  background-color: var(--color-dark);
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light .text {
  color: var(--color-light);
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light .arrow:before {
  background-image: url("../img/icone/arrow-light.svg");
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:hover, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:focus, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:active, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:not(:disabled):active {
  transition: var(--transition-default);
  border: 1px solid var(--color-dark);
  background-color: var(--color-light);
  color: var(--color-dark);
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:hover .text, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:focus .text, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:active .text, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:not(:disabled):active .text {
  color: var(--color-dark);
}

body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:hover .arrow:before, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:focus .arrow:before, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:active .arrow:before, body.sticky-header header .header-container .lang-container .link-cta.desktop .btn-light:not(:disabled):active .arrow:before {
  background-image: url("../img/icone/arrow-dark.svg");
}

body.sticky-header header .header-container .lang-container .language-menu-container .selected-language i {
  color: var(--color-dark);
}

body.language-menu-open header .header-container .lang-container .language-menu-container .language-menu {
  opacity: 1;
  transform: translateY(0px);
  pointer-events: auto;
}

body.language-menu-open header .header-container .lang-container .language-menu-container .selected-language i {
  color: var(--color-dark);
}

body.sub-menu-open header .header-container .logo-container a .logo-dark {
  display: block;
}

body.sub-menu-open header .header-container .logo-container a .logo-light {
  display: none;
}

body.sub-menu-open header nav.menu-container ul.menu li.link-menu a {
  color: var(--color-dark);
}

body.sub-menu-open header nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg {
  transition: var(--transition-default);
  transform: rotate(-180deg);
  transform-origin: center;
}

body.sub-menu-open header nav.menu-container ul.menu li.link-menu.megamenu a[data-open-submenu] .plus svg path {
  fill: var(--color-dark);
}

body.sub-menu-open header nav.menu-container .hamburger::before {
  animation-duration: 0.5s;
  transform-origin: center;
  transform: translateY(6px) rotate(45deg);
  background-color: var(--color-dark);
}

@media (max-width: 991px) {
  body.sub-menu-open header nav.menu-container .hamburger::before {
    transform: translateY(7px) rotate(45deg);
  }
}
body.sub-menu-open header nav.menu-container .hamburger::after {
  animation-duration: 0.5s;
  transform-origin: center;
  transform: translateY(-8px) rotate(-45deg);
  background-color: var(--color-dark);
}

.whatsapp-fixed {
  position: fixed;
  bottom: 5px;
  right: 10px;
  z-index: 2;
  width: 58px;
}

@media (min-width: 992px) {
  .whatsapp-fixed {
    display: none;
  }
}
.whatsapp-fixed::after {
  content: none;
}

footer {
  position: relative;
}

@media (max-width: 767px) {
  footer {
    text-align: center;
  }
}
footer .menu-footer {
  padding: 0;
  list-style: none;
}

footer .menu-footer li a {
  font-weight: 500;
  display: block;
  padding: 5px 0;
  margin: 0;
  font-size: 0.875rem;
}

.menu-float {
  position: fixed;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px;
  border-radius: 16px;
  z-index: 2;
  width: calc(100% - 20px);
}

@media (min-width: 576px) {
  .menu-float {
    width: auto;
    bottom: 20px;
  }
}
@media (min-width: 992px) {
  .menu-float {
    padding: 6px;
  }
}
@media (max-width: 567px) {
  .menu-float .grid:first-child a {
    margin-bottom: 10px !important;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9fY29sb3JzLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19hbmltYXRpb25zLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL2ZvbnRzL19mb250cy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fY3VzdG9tLnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsImNvbXBvbmVudHMvX2Jsb2NrLWdyaWRzLnNjc3MiLCJjb21wb25lbnRzL19ibG9jay1jYXJkcy1zMS5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImFic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19pbnRyby5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX3RvZ2dsZS1jb250ZW50LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJO0VBQ0E7RUFFQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUVBOzs7QUNMSjtFQUlJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUtBOzs7QUFDQTtFQXBCSjtJQXFCUTs7O0FBRUo7RUF2Qko7SUF3QlE7OztBQXhCUjtFQTJCSTs7O0FBQ0E7RUE1Qko7SUE2QlE7OztBQUVKO0VBL0JKO0lBZ0NROzs7QUFoQ1I7RUFtQ0k7RUFDQTtFQUNBO0VBS0E7RUFLQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOzs7QUN4Rko7RUFDRTtJQUNFOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUFJSjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0U7OztBQUlKO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUFJSjtFQUVFO0lBS0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOzs7QUFJSjtFQUNFO0VBRUE7OztBQU1GO0VBQ0U7RUFDQTs7O0FBRUE7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0U7RUFDQTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0U7RUFDQTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0U7RUFDQTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0U7RUFDQTs7O0FDcEhKO0VBRUk7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFNSjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFPUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7O0FBR0E7RUFWSjtJQVdROzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR1I7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7SUFDQTs7O0FBR1I7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFNSjtFQUZKO0lBR1E7OztBQU1KO0VBRko7SUFHUTs7O0FBS1o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHQTtFQURKO0lBRVE7OztBQUdSO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUlBO0VBREo7SUFFUTs7O0FBS1o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7OztBQU9SO0VBQ0k7RUFDQTs7O0FBS0o7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS1o7RUFDSTs7O0FBQ0E7RUFGSjtJQUdROzs7QUFJUjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFTSjtFQUNJOzs7QUFNSjtFQUNJOzs7QUFNSjtFQUNJOzs7QUFJUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQzVoQko7RUFDRTtFQUNBO0VBSUU7RUFDQTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUlFO0VBQ0E7RUFDQTs7QUFHSjtFQUNFO0VBQ0E7RUFJRTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTtFQUNBO0VBSUU7RUFDQTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUlFO0VBQ0E7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTs7QUNuREo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBTUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FDdlFKO0VBQ0k7OztBQUxBO0VBQ0k7OztBQVFKO0VBQ0k7OztBQVZKO0VBQ0k7OztBQ0ZSO0VBQ0k7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBUUo7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFPWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQzdEUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFJQTtFQURKO0lBRVE7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtRO0lBQ0E7OztBQUdKO0VBVEo7SUFVUTs7O0FBS0o7RUFESjtJQUVROzs7QUFHSjtFQUxKO0lBTVE7OztBQUdKO0VBVEo7SUFVUTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFHSjtFQVBKO0lBUVE7OztBQU1KO0VBRko7SUFHUTs7O0FBR0o7RUFOSjtJQU9ROzs7QUFHSjtFQVZKO0lBV1E7OztBQU9KO0VBRko7SUFHUTs7O0FBSUo7RUFQSjtJQVFROzs7QUFJSjtFQVpKO0lBYVE7OztBQUtSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBS0o7RUFESjtJQUVROzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1ROzs7QUFHSjtFQUNJO0VBQ0E7OztBQU1SO0VBREo7SUFFUTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUlBO0VBREo7SUFFUTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1ROzs7QUFNUjtFQURKO0lBRVE7OztBQUdKO0VBTEo7SUFNUTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFHSjtFQVBKO0lBUVE7OztBQUdKO0VBWEo7SUFZUTs7O0FBSVI7RUFDSTs7O0FBS0k7RUFDSTs7O0FBQ0E7RUFGSjtJQUdPOzs7QUFJUDtFQUNJOzs7QUFDQTtFQUZKO0lBR1E7OztBQVFSO0VBQ0k7OztBQUNBO0VBRko7SUFHTzs7O0FBSVA7RUFDSTs7O0FBQ0E7RUFGSjtJQUdROzs7QUFRcEI7RUFDSTs7O0FBQ0E7RUFGSjtJQUdROzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFYSjtJQVlROzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBYko7SUFjUTs7O0FBS0o7RUFFSTs7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBQ0E7RUFGSjtJQUdROzs7QUFJUjtFQUNJOzs7QUFDQTtFQUZKO0lBR1E7OztBQUtaO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7SUFDQTs7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVZKO0lBV1E7OztBQUtSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBWko7SUFhUTs7O0FDN1haO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDbkRKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFLWjtFQUNJOzs7QUFDQTtFQUNJOzs7QUFDQTtFQUNJOzs7QUMxRGhCO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOzs7QUFFQTtFQWpDSjtJQWtDUTs7O0FBSUE7RUFESjtJQUVROzs7QUFJUjtFQUlJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBSUk7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFJSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUlJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBSUk7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFJSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBQ0E7RUFISjtJQUlROzs7QUN4Slo7RUFDSTtFQUNBO0VBQ0E7OztBQUNBO0VBRUk7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSTtFQUNJOzs7QUFLWjtFQWZKO0lBZ0JRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFUSjtJQVVRO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFLSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBT1I7RUFFSTtFQUNBOzs7QUFMUjtFQVNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQU1SO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBbEJKO0lBbUJROzs7QUFHSjtFQXRCSjtJQXVCUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUMxUnhCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUR3UndCO0VBQ0E7OztBQUlBO0VBQ0k7OztBQVlaO0VBQ0k7OztBQUdKO0VBS0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFDSTs7O0FBS0o7RUFDSTs7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUE7RUFDSTs7O0FBT1I7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFVaEM7RUFDSTtFQUNBOzs7QUFDQTtFQUNJOzs7QUFDQTtFQUNJO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQVNwQjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFNQTtFQUNJO0VBQ0E7OztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUVKO0VBRUk7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBVEo7SUFVUTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUlJO0VBQ0E7RUFDQTtFQUNBOzs7QUV4Z0JwQjtFQUNJOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFLWjtFQUNHO0VBQ0M7RUFDQTtFQUNBOzs7QUM5Q1I7RUFDSTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBTVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNwRVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNRO0lBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFQTtFQUNJOzs7QUFRcEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFLSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FDekZSO0VBR0k7OztBQUVBO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FDN0JaO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUtaO0VBQ0k7OztBQUNBO0VBQ0k7RUFDQTtFQUNBOzs7QUFLUjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFFQTtFQUNJOzs7QUFLWjtFQUNJOzs7QUFVSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQ25FaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFWSjtJQVdROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNROzs7QUFHSjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNRO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBVEo7SUFVUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBZEo7SUFlUTtJQUNBO0lBQ0E7SUFDQTs7O0FBR0o7RUFHSTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQU1oQjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUxKO0lBTVE7OztBQUlSO0VBL0JKO0lBZ0NRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtRO0lBQ0E7OztBQUlSO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7O0FBRUE7RUFUSjtJQVVRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTs7O0FBS0E7RUFESjtJQUVRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUM7RUFQTDtJQVFROzs7QUFTaEI7RUFDSTs7O0FBQ0E7RUFGSjtJQUdRO0lBQ0E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTs7O0FBT3BCO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBT3BCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7OztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBVko7SUFXUTtJQUNBO0lBQ0E7OztBQUlBO0VBQ0k7OztBQUNBO0VBRko7SUFHUTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0k7RUFDSTs7O0FBR0o7RUFDSTs7O0FBUXhCO0VBQ0k7OztBQU1ZO0VBQ0k7OztBQUdKO0VBQ0k7OztBQVNJO0VBQ0k7OztBQU9ZO0VBQ0k7OztBQVc1QjtFQUVJOzs7QUFRQTtFQUNJOzs7QUFTNUI7RUFDSTs7O0FBR1E7RUFESjtJQUVROzs7QUFNUTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFPWjtFQUNJOzs7QUFLUTtFQUNJOzs7QUFHQTtFQUNJOzs7QUFTUTtFQUNJOzs7QUFXNUI7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFQSjtJQVFROzs7QUFHUjtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFRaEI7RUFFSTs7O0FBRUE7RUFDSTs7O0FBU2dCO0VBQ0k7OztBQVFZO0VBQ0k7OztBQVc1QjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFTQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBSUE7RUFDSTs7O0FBSVI7RUFJSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBSUE7RUFDSTs7O0FBV2hCO0VBQ0k7OztBQWNSO0VBQ0k7RUFDQTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFnQlI7RUFDSTs7O0FBR0o7RUFDSTs7O0FBWUE7RUFDSTs7O0FBU1E7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQVc1QjtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVBKO0lBUVE7OztBQUdSO0VBRUk7RUFDQTtFQUNBO0VBQ0E7OztBQVF4QjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUEo7SUFRTzs7O0FBR0g7RUFDSTs7O0FDeHhCUjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFPaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVZKO0lBV1E7SUFDQTs7O0FBR0o7RUFmSjtJQWdCUTs7O0FBTVE7RUFESjtJQUVRIiwiZmlsZSI6Im1haW4ubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcbiAgICAtLWNvbG9yLWxpZ2h0OiAjZmZmZmZmO1xuICAgIC0tY29sb3ItZGFyazogIzE5MUMxRjsgLy8gY29sb3JlIGRlZmF1bHQgdGVzdGlcblxuICAgIC0tZGFyay1ncmV5OiAjNUI1QzVFO1xuXG4gICAgLS1ncmV5OiAjMmYyZjJmO1xuXG4gICAgLS12LWxpZ2h0LWdyZXk6ICNGNkY4RkI7XG4gICAgLS1saWdodC1ncmV5OiAjRjJGNEY3O1xuICAgIC0tbWlkZGxlLWxpZ2h0LWdyZXk6ICNFMUUxRTE7XG5cbiAgICAtLWNvbG9yLXRleHQ6ICM3MzZGNkM7XG5cbiAgICAtLXJlZDogI0ZFMTAxNjtcblxuICAgIC0tY29sb3ItZGVmYXVsdDogdmFyKC0tY29sb3ItZGFyayk7IC8vQ29sb3JlIGRlZmF1bHQgZGVsIHRlc3RvXG59IiwiLyoqXG4qXG4qIFZhcmlhYmlsaSBnbG9iYWxpIHByb2dldHRvXG4qIFxuKiAwMSAtIENPTlRFTklUT1JJXG4qIDAyIC0gU0VQQVJBVE9SSVxuKiAwMyAtIFRSQU5TSVpJT05JXG4qIDA0IC0gRk9OVFNcbipcbiovXG5cbjpyb290IHtcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDEgLSBDT05URU5JVE9SSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLWNvbnRhaW5lci1iaWctd2lkdGg6IDE4NTBweDsgLy9Db250YWluZXIgbWFzc2ltb1xuICAgIC0tY29udGFpbmVyLXdpZHRoOiAxNjcwcHg7IC8vQ29udGFpbmVyIHByaW5jaXBhbGUgeFxuICAgIC0tY29udGFpbmVyLWxhcmdlLXdpZHRoOiAxNTAwcHg7IC8vQ29udGFpbmVyIHByaW5jaXBhbGUgeFxuICAgIC0tY29udGFpbmVyLW1lZGl1bS13aWR0aDogMTI5MHB4OyAvL0NvbnRhaW5lciBtZWRpbyB4XG4gICAgLS1jb250YWluZXItc21hbGwtd2lkdGg6IDExODBweDsgLy9Db250YWluZXIgbWVkaW8geFxuICAgIFxuICAgIC0tY29udGFpbmVyLWV4dHJhLXNtYWxsLXdpZHRoOiA5NDBweDtcbiAgICAtLWNvbnRhaW5lci1taW5pLXdpZHRoOiA2MzBweDtcbiAgICBcbiAgICAtLWJsb2NrLW1pbi13aWR0aDogNDAwcHg7XG4gICAgLS1ibG9jay1taW4taGVpZ2h0OiA1ODBweDsgLy9BbHRlenphIG1pbmltYSBibG9jY2hpIGltbWFnaW5lL3Rlc3RvXG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDIgLSBTRVBBUkFUT1JJXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC0tc3BhY2VyLWJpZzogMzBweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1zcGFjZXItYmlnOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWJpZzogNTBweDtcbiAgICB9XG5cbiAgICAtLXNwYWNlci1sYXJnZTogMjBweDsgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWxhcmdlOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWxhcmdlOiA0MHB4O1xuICAgIH1cblxuICAgIC0tc3BhY2VyLW1lZGl1bTogMjVweDtcbiAgICAtLXNwYWNlci1zbWFsbDogMjBweDtcbiAgICAtLXNwYWNlci1leHRyYS1zbWFsbDogMTBweDtcbiAgICBcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDMgLSBUUkFOU0laSU9OSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLXRyYW5zaXRpb24tZGVmYXVsdDogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIDA0IC0gRk9OVFNcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICAgLS1mb250LWZhbWlseTogJ0dlbmVyYWxTYW5zJywgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtZmFtaWx5LXRpdGxlOiAnR2VuZXJhbFNhbnMnLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC1mYW1pbHktbWVudTogJ0dlbmVyYWxTYW5zJywgc2Fucy1zZXJpZjtcblxuICAgIC0tZm9udC1zcGFjZS1ncm90ZXNrOiAnU3BhY2UgR3JvdGVzaycsIHNhbnMtc2VyaWY7XG4gICAgXG4gICAgLS1mb250LXNpemU6ICN7cHgtdG8tcmVtKDE2cHgpfTtcbiBcbiAgICAtLWgxLWZvbnQtc2l6ZTogI3tjbGFtcC1yZW0oNTBweCwgNnZ3LCAxMDBweCl9O1xuICAgIC0taDEtZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAtLWgxLW1hcmdpbi1ib3R0b206IDEwcHg7XG4gXG4gICAgLS1oMi1mb250LXNpemU6ICN7Y2xhbXAtcmVtKDMwcHgsIDV2dywgNTBweCl9O1xuICAgIC0taDItZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAtLWgyLW1hcmdpbi1ib3R0b206IDEwcHg7XG4gXG4gICAgLS1oMy1mb250LXNpemU6ICN7Y2xhbXAtcmVtKDMwcHgsIDR2dywgMzhweCl9O1xuICAgIC0taDMtZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAtLWgzLW1hcmdpbi1ib3R0b206IDEwcHg7XG4gXG4gICAgLS1oNC1mb250LXNpemU6ICN7Y2xhbXAtcmVtKDI2cHgsIDN2dywgMzBweCl9O1xuICAgIC0taDQtZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAtLWg0LW1hcmdpbi1ib3R0b206IDEwcHg7XG4gXG4gICAgLS1oNS1mb250LXNpemU6ICN7Y2xhbXAtcmVtKDE4cHgsIDN2dywgMjRweCl9O1xuICAgIC0taDUtZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAtLWg1LW1hcmdpbi1ib3R0b206IDEwcHg7XG4gXG4gICAgLS1oNi1mb250LXNpemU6ICN7cHgtdG8tcmVtKDE4cHgpfTtcbiAgICAtLWg2LWZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgLS1oNi1tYXJnaW4tYm90dG9tOiAxMHB4O1xuXG59IiwiQC13ZWJraXQta2V5ZnJhbWVzIG1lbnUtc2hvdyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBtZW51LXNob3cge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1lbnUtc2hvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLmFuaW1hdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMSU7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG5cbiAgLmFuaW1hdGVkIHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUtdXAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlU2Nyb2xsIHtcblxuICAwJSxcbiAgMjAlLFxuICA1MCUsXG4gIDgwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5cbi5ib3VuY2VTY3JvbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIEFzc2ljdXJhdGkgY2hlIGwnZWxlbWVudG8gc2lhIHZpc2liaWxlIGUgaW5saW5lICovXG4gIGFuaW1hdGlvbjogYm91bmNlU2Nyb2xsIDJzIGluZmluaXRlO1xufVxuXG5cblxuLyogSW5pdGlhbCBzdGF0ZSBmb3IgdGhlIGVsZW1lbnRzICovXG4uc2ltcGxlRmFkZUluIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEuMDAwKSwgdHJhbnNmb3JtIDEwMDBtcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xuXG4gICYudmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc2ltcGxlRmFkZUluTGVmdCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwdncpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEwMDBtcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMS4wMDApLCB0cmFuc2Zvcm0gMTAwMG1zIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XG5cbiAgJi52aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uc2ltcGxlRmFkZUluUmlnaHQge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwdncpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEwMDBtcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMS4wMDApLCB0cmFuc2Zvcm0gMTAwMG1zIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XG5cbiAgJi52aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uYW5pbWF0ZVRvcCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMzBweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTAwMG1zIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxLjAwMCksIHRyYW5zZm9ybSAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEuMDAwKTtcblxuICAmLnZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5hbmltYXRlUmlnaHQge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTMwcHgsIDEwMHB4KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEuMDAwKSwgdHJhbnNmb3JtIDEwMDBtcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xuXG4gICYudmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcbiAgfVxufVxuXG5cblxuXG4iLCIvKipcbipcbiogU3RpbGkgYmFzZSBnZW5lcmljaSBwZXIgb2duaSB0aXBvIGRpIHRlbXBsYXRlXG4qIFxuKiAwMSAtIFNFUEFSQVRPUklcbiogMDIgLSBDT05URU5JVE9SSVxuKiAwMyAtIFdJRFRIXG4qIDA0IC0gTUFSR0lOXG4qIDA1IC0gUEFERElOR1xuKiAwNiAtIEJBQ0tHUk9VTkRcbiogMDcgLSBDT0xPUlNcbipcbiovXG5cbmh0bWwsXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbn1cblxubWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDcycHg7XG59XG5cbmltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ub2JqZWN0LWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuYSB7IFxuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaC1mdWxsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vdmVyZmxvdy12aXNpYmxlIHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG5cbi5vdmVyZmxvdy14LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuXG4ub3ZlcmZsb3ctaGlkZGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgJi5saWdodC1ncmV5IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTgsIDE4LCAxOCwgLjEwKTtcbiAgICB9XG59XG5cbi5ib3JkZXItcmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xufVxuXG4uYm9yZGVyLWJvdHRvbS1yYWRpdXMge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE2cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE2cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAxIC0gU0VQQVJBVE9SSVxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNwYWNlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgXG4gICAgJi5iaWcge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1iaWcpO1xuICAgIH1cbiAgICBcbiAgICAmLmxhcmdlIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItbGFyZ2UpO1xuICAgIH1cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLW1lZGl1bSk7XG4gICAgfVxuICAgICYuc21hbGwge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1zbWFsbCk7XG4gICAgfVxuICAgICYuZXh0cmEtc21hbGwge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1leHRyYS1zbWFsbCk7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwMiAtIENPTlRFTklUT1JJXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgXG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIFxuICAgIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gICAgXG4gICAgXG4gICAgJi5mbHVpZCB7XG4gICAgICAgIHdpZHRoOiBmbHVpZC1jb250YWluZXIoKTtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgJi5iaWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItYmlnLXdpZHRoKTtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxhcmdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLWxhcmdlLXdpZHRoKTtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci1tZWRpdW0td2lkdGgpO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItc21hbGwtd2lkdGgpO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZXh0cmEtc21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItZXh0cmEtc21hbGwtd2lkdGgpO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5taW5pIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWluaS13aWR0aCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5taW4td2lkdGgge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWJsb2NrLW1pbi13aWR0aCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5yZWxhdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgJi5mbG9hdGVkLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6OTkxcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5mbG9hdGVkLWxlZnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo5OTFweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucC00MHtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnAtNjAge1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wLXJlbGF0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAmLmRpcmVjdGlvbi1jb2x1bW4ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICAmLmRpcmVjdGlvbi1yb3cge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgICYuYWxpZ24tc3RhcnQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gICAgJi5hbGlnbi1lbmQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICAgICYuZmxleC13cmFwIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgICAmLmp1c3RpZnktY2VudGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICYuanVzdGlmeS1tb2JpbGUtY2VudGVyIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmp1c3RpZnktc3BhY2UtYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LXNwYWNlLWV2ZW5seSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgIH1cbiAgICAmLmp1c3RpZnktc3BhY2UtYXJvdW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICAgICYuanVzdGlmeS1zdGFydCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LWVuZCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJi5qdXN0aWZ5LWRlc2t0b3AtZW5kIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAuZC1zbS1ibG9jayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5kLXNtLW5vbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmQtbWQtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC1tZC1ub25lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmQtbGctYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC1sZy1ub25lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kLXhsLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmQteGwtbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMXB4KSB7XG4gICAgLmQteHhsLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmQteHhsLW5vbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuZC1sZy1pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAzIC0gV0lEVEhcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDQgLSBNQVJHSU5cbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5tLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuLm1iLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5tbC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuLm1yLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwNSAtIFBBRERJTkdcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5wLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbi5wLWxlZnQtNDAge1xuICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuLnAtcmlnaHQtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDYgLSBCQUNLR1JPVU5EXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYmctc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgXG4gICAgJi53aXRoLW92ZXJsYXkge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMCwgMCUsIDAlLCAuMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iZy1vcGFjaXR5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDEpO1xuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpO1xuICAgIH1cbn1cblxuLmJnLWRhcmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgIFxuICAgIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG4gICAgcCwgYSwgdWwsIGxpLCBpLCBzcGFuLCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIH1cbn1cblxuLmJnLWRhcmstZ3JleSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICBcbiAgICAuaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2LFxuICAgIHAsIGEsIHVsLCBsaSwgaSwgc3Bhbiwgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB9XG59XG5cbi5iZy12LWxpZ2h0LWdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIFxuICAgIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG4gICAgcCwgYSwgdWwsIGxpLCBpLCBzcGFuLCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgfVxufVxuXG4uYmctbGlnaHQtZ3JleSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgXG4gICAgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNixcbiAgICBwLCBhLCB1bCwgbGksIGksIHNwYW4sIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICB9XG59XG5cbi5iZy1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIFxuICAgIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG4gICAgcCwgYSwgdWwsIGxpLCBpLCBzcGFuLCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwNyAtIENPTE9SU1xuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNvbG9yLWRhcmssXG4uY29sb3ItZGFyayAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICB9XG59XG5cbi5jb2xvci1saWdodCxcbi5jb2xvci1saWdodCAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgfVxufVxuXG4uY29sb3ItdGV4dCxcbi5jb2xvci10ZXh0ICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgIH1cbn1cblxuLm9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xufVxuLm9yZGVyLTIge1xuICAgIG9yZGVyOiAyO1xufVxuXG5AbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5vcmRlci1sZy0xIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICAgIC5vcmRlci1sZy0yIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxufVxuLm9yZGVyLTMge1xuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XG59XG4ub3JkZXItNCB7XG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcbn1cbi5vcmRlci01IHtcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xufVxuLm9yZGVyLTYge1xuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XG59XG5cblxuLnZlY3Rvci1ncmV5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLTEycHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi52ZXR0b3JlLWltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTs7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59IiwiXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHZW5lcmFsU2Fucyc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9HZW5lcmFsU2Fucy1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLUxpZ2h0LmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLUxpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dlbmVyYWxTYW5zJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9HZW5lcmFsU2Fucy1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLVJlZ3VsYXIuZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdHZW5lcmFsU2Fucyc7XG4gIHNyYzogIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtTWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtTWVkaXVtLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9HZW5lcmFsU2Fucy1NZWRpdW0udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2VuZXJhbFNhbnMnO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLVNlbWlib2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLVNlbWlib2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9HZW5lcmFsU2Fucy1TZW1pYm9sZC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtU2VtaWJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2VuZXJhbFNhbnMnO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL0dlbmVyYWxTYW5zLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtQm9sZC5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvR2VuZXJhbFNhbnMtQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnU3BhY2UgR3JvdGVzayc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL1NwYWNlR3JvdGVzay1SZWd1bGFyLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9TcGFjZUdyb3Rlc2stUmVndWxhci5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1NwYWNlR3JvdGVzay1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1NwYWNlR3JvdGVzay1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9TcGFjZUdyb3Rlc2stUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvU3BhY2VHcm90ZXNrLVJlZ3VsYXIuc3ZnI1NwYWNlR3JvdGVzay1SZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbiIsIi8qKlxuKlxuKiBTdGlsaSByZWxhdGl2aSBhaSBmb250XG4qIFxuKiAwMSAtIEhFQURJTkdcbiogMDIgLSBBTElHTk1FTlRcbiogMDMgLSBUUkFOU0ZPUk1cbiogMDQgLSBXRUlHSFRcbiogMDUgLSBPQ0NISUVMTE9cbiogMDYgLSBMSU5FIEhFSUdIVFxuKlxuKi9cblxuLy8gSW1wb3J0IGFsbCBmb250c1xuQGltcG9ydCBcImZvbnRzL2ZvbnRzXCI7XG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICBmb250LXNtb290aDogYXV0bzsgLyogbyBhbnRpYWxpYXNlZCAqL1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiBQZXIgV2ViS2l0ICovXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogUGVyIG1hY09TICovXG5cbiAgICAubGlnaHQge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIC5yZWd1bGFyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAubWVkaXVtIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAuc2VtaWJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgIC5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbi5pbmhlcml0IHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxucCwgLnAsIHN0cm9uZywgYiwgdGltZSwgaSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGVmYXVsdCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICYucC1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTJweCl9O1xuICAgIH1cbn1cblxuXG5hIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG51bCB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDI1cHg7XG59XG5cbnVsLCBsaSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGVmYXVsdCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbnN0cm9uZywgYiwgLnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnRleHQtc2hhZG93IHtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDEgLSBIRUFESU5HXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBwLCAucCwgdWwsIGxpLCBhLCBzcGFuLCBzdHJvbmcsIC5zdHJvbmcsIGIsIHRpbWUsIGkge1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmLnAtc3R5bGUge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgIH1cbn1cblxuLmgxIHtcbiAgICBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWgxLWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oMS1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWgyLWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oMi1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWgzLWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oMy1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmg0IHtcbiAgICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWg0LWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oNC1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmg1IHtcbiAgICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWg1LWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oNS1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xufVxuLmg2IHtcbiAgICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWg2LWZvbnQtd2VpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oNi1tYXJnaW4tYm90dG9tKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgJi5oNi1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTZweCl9O1xuICAgIH1cbn1cblxuLnAge1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWgyLWZvbnQtd2VpZ2h0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taDItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0taDMtZm9udC13ZWlnaHQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oMy1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNC1mb250LXdlaWdodCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg0LW1hcmdpbi1ib3R0b20pO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWg1LWZvbnQtd2VpZ2h0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taDUtbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgfVxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1oNi1mb250LXNpemUpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0taDYtZm9udC13ZWlnaHQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oNi1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICB9XG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNi1mb250LXdlaWdodCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg2LW1hcmdpbi1ib3R0b20pO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIH1cbn1cblxuLnRleHQtdW5kZXJsaW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmZvbnQtc3BhY2UtZ3JvdGVzayB7XG4gICAgZm9udC1mYW1pbHk6ICdTcGFjZSBHcm90ZXNrJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDEycHgpfTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDIgLSBBTElHTk1FTlRcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi50ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAzIC0gVFJBTlNGT1JNXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udGV4dC11cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4udGV4dC1sb3dlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG4udGV4dC1jYXBpdGFsaXplIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDQgLSBXRUlHSFRcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50ZXh0LWV4dHJhbGlnaHQge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG4udGV4dC1saWdodCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi50ZXh0LW5vcm1hbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi50ZXh0LXNlbWlib2xkIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuLnRleHQtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi50ZXh0LWV4dHJhLWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA1IC0gT0NDSElFTExPXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA2IC0gREVDT1JBVElPTlxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuIiwiQG1peGluIGRlYnVnLWNzcygkY29sb3IpIHtcbiAgICAqIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRhc2hlZCAkY29sb3I7XG4gICAgfVxufVxuLmRlYnVnXFw6Y3NzIHtcbiAgICAtLWRlYnVnLWNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcblxuICAgIEBpbmNsdWRlIGRlYnVnLWNzcyh2YXIoLS1kZWJ1Zy1jb2xvcikpO1xuXG4gICAgJlxcOnJlZCB7XG4gICAgICAgIC0tZGVidWctY29sb3I6IHJlZDtcblxuICAgICAgICBAaW5jbHVkZSBkZWJ1Zy1jc3ModmFyKC0tZGVidWctY29sb3IpKTtcbiAgICB9XG59XG4iLCIuYWNjb3JkaW9uLWVsZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0FDQUNBO1xuXG4gICAgLnRpdGxlLWFjY29yZGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgXG4gICAgICAgIC5kZWZhdWx0IHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob3ZlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLm9uIHtcblxuICAgICAgICAudGl0bGUtYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIC5kZWZhdWx0IHtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaG92ZXIge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5saXN0LWJsb2NrLWVsZW1lbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgICBcbiAgICB9XG59IiwiLmJsb2NrLWdyaWRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtZ2FwOiAyNXB4O1xuICAgIGdhcDogMjVweDtcbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBncmlkLWdhcDogNTBweDtcbiAgICAgICAgZ2FwOiA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAmLm5vLWdhcCB7XG4gICAgICAgIGdyaWQtZ2FwOiAwO1xuICAgICAgICBnYXA6IDA7XG4gICAgfVxuXG4gICAgJi5zbWFsbC1nYXAge1xuICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cblxuICAgICYuc21hbGwtZ2FwLWJvdHRvbSB7XG4gICAgICAgIGdyaWQtZ2FwOiAwIDIwcHg7XG4gICAgICAgIGdhcDogMCAyMHB4O1xuICAgIH1cblxuICAgICYubWluLWdhcCB7XG4gICAgICAgIGdyaWQtZ2FwOiAyMHB4IDMycHg7XG4gICAgICAgIGdhcDogMjBweCAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAmLmNvbHVtbnMtMiB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW51LWJsb2NrIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAwIDIwcHg7XG4gICAgICAgICAgICBnYXA6IDAgMjBweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIC44ZnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvb3Rlci1ncmlkIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogLjhmciAxLjJmcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuN2ZyIDEuM2ZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuNmZyIDEuNGZyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW51LWZsb2F0IHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc21hbGwtbGVmdCB7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogLjlmciAxLjFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOWZyIDEuMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOWZyIDEuMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLnNtYWxsLXJpZ2h0IHtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjFmciAuOWZyO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4xZnIgLjlmcjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjFmciAuOWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLndpdGgtcGFkZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY2NvcmRpb24tZ3JpZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5ibG9jay1jYXQtY2VyY2Ege1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjhmciAuNGZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbXBldGVuemUtZ3JpZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDYwcHggMWZyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNEU3RUM7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNjBweCAxZnI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuY29sdW1ucy0zIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvb3Rlci1tZW51LWdyaWQge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucGFydG5lci1ncmlkIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZG93bmxvYWQtZ3JpZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDYwcHggMWZyIDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U0RTdFQztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDYwcHggMWZyIDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZ3JpZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLmludmVydGVkIHtcbiAgICAgICAgPi5ncmlkIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubW9iaWxlLWludmVydGVkIHtcbiAgICAgICAgPi5ncmlkIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uc2V6aW9uZS1udW1lcmkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgfVxuXG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlN2VjO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOjk5MnB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9ICBcbiAgICAgICAgXG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogMTA1JTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfSAgXG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLm51bWVybyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6ICN7Y2xhbXAtcmVtKDEyMHB4LCAxMHZ3LCAxODBweCl9O1xuICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAuNztcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZWZ0IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC10ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgICYubXItNjAge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1sLTYwIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlN2VjO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6OTkxcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9ICBcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo5OTFweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH0gIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5ibG9nLWxpc3QsXG4uY29yc2ktbGlzdCB7XG4gICAgLmdyaWQge1xuICAgICAgICAuY2FyZC1zMS1pbWcge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTZweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNnB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE2cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC1zMS1kZXNjIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpOyAgXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbGFnLWRhdGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDEycHgpfTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICYuZGF0YS1pbW1pbmVudGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTNhZTE3O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICByaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAmLmRhdGEtcGFzc2F0YSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgIH1cbn1cbi5waWxsb2xhLWdyZXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59IiwidWwuYnJlYWRjcnVtYnMge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3BhY2UtZ3JvdGVzayk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICYuYi1zdGFydCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgXG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDEycHgpfTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3BhY2UtZ3JvdGVzayk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAje3B4LXRvLXJlbSgxMnB4KX07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3BhY2UtZ3JvdGVzayk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGlnaHQge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYnRuIHtcbiAgICAtLWJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgIC0tYmctY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgIC0tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICBcbiAgICAtLWJnLWNvbG9yLWhvdmVyOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIC0tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIC0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1kYXJrLWdyZXkpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTRweCl9O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEycHggMjBweDtcblxuICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYubS1yaWdodCB7XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1ob3Zlcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNvbG9yLWhvdmVyKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItaG92ZXIpO1xuICAgIH1cblxuICAgICYuYnRuLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvci1ob3Zlcik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jb2xvci1ob3Zlcik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICBcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi1ncmV5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICBcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1pZGRsZS1saWdodC1ncmV5KTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbWlkZGxlLWxpZ2h0LWdyZXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1taWRkbGUtbGlnaHQtZ3JleSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW1pZGRsZS1saWdodC1ncmV5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLWRhcmstYXJyb3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZXkpO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDUwcHggMTJweCAyMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uZS9hcnJvdy11cC1yaWdodC5zdmcnKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3ItaG92ZXIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi53LTEwMCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYubm8td29yZC1icmVhayB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgJi53aXRoLW1hcmdpbiAge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmZvcm0tY29udGF0dGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICAuY29udGFjdC1mb3JtIHtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDkxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAmLmJvcmRlci10b3Age1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdyaWQtZ2FwOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWxsZWdhdG8tZm9ybSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBcblxuICAgICAgICAgICAgLmZvcm0taW5wdXQge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50aXRsZS1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE0cHgpfTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFNEU3RUM7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAje3B4LXRvLXJlbSgxNHB4KX07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuY29sb3ItbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgLyogQ2hyb21lLCBTYWZhcmksIEVkZ2UsIE9wZXJhICovXG4gICAgICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gICAgICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0U0RTdFQztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE0cHgpfTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk3JSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbmUvYXJyb3ctc2VsZWN0LnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE0cHgpfTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICAgICAgICAgICAgICAmKy5zZWxlY3QtYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnByaXZhY3ktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig5cHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOXB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dDpjaGVja2Vkfi5jaGVja21hcms6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE0cHgpfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTRweCl9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnBzZXVkby1pbnB1dC1maWxlIHtcbiAgICAgICAgICAgICAgICAgICAgW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucHNldWRvLWZpbGVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wc2V1ZG8tYnV0dG9uLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTQ0MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGVfZnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5saWdodCB7XG4gICAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgLmZvcm0taW5wdXQge1xuXG4gICAgICAgICAgICAgICAgICAgIC50aXRsZS1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICYrLnNlbGVjdC1hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnByaXZhY3ktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jaGVja21hcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk5OTk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZH4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1pbnB1dC1maWxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wc2V1ZG8tYnV0dG9uLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1jb3JzaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRTRFN0VDO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDE2cHggMTRweCAzNHB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE0cHgpfTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1idG4ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogNTMlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbltkYXRhLWZvcm0tdG9nZ2xlXSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uc2VhcmNoLWhlYWRlciB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwNnB4KTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOWE5MTg3O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMjBweCl9O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNjY2NjY2M7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNjY2NjY2M7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJlZC1saWdodCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHZhcigtLXJlZC1saWdodCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXJlZC1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcInNhc3M6bWV0YVwiO1xuXG5AbWl4aW4gYWJzb2x1dGVfZnVsbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbn1cblxuQG1peGluIGRfZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gYXNwZWN0X3JhdGlvKCRsYXJnaGV6emEsICRhbHRlenphKSB7XG4gICAgaGVpZ2h0OiAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206ICgoMTAwICogJGFsdGV6emEpIC8gJGxhcmdoZXp6YSkgKiAxJTtcbn1cblxuQG1peGluIHZlcnRpY2FsQWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5AbWl4aW4gaG9yaXpvbnRhbEFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcbiAgICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbkBtaXhpbiBjZW50ZXIoJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkdmFsdWUpIHtcbiAgICBAaWYgbWV0YS50eXBlLW9mKCR2YWx1ZSk9PSdudW1iZXInIGFuZCBtYXRoLnVuaXQoJHZhbHVlKSAhPVwiXCIge1xuICAgICAgICBAcmV0dXJuIG1hdGguZGl2KCR2YWx1ZSwgJHZhbHVlICogMCArIDEpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gcHgtdG8tcmVtKCRweCwgJGJhc2U6IDE2KSB7XG4gICAgQHJldHVybiBtYXRoLmRpdihzdHJpcC11bml0KCRweCksICRiYXNlKSAqIDFyZW07XG59XG5cbkBmdW5jdGlvbiBjbGFtcC1yZW0oJG1pbiwgJHByZWZlcnJlZCwgJG1heCwgJGJhc2U6IDE2KSB7XG4gICAgJG1pbi1yZW06IGlmKG1hdGgudW5pdCgkbWluKT09cHgsIHB4LXRvLXJlbSgkbWluLCAkYmFzZSksICRtaW4pO1xuICAgICRtYXgtcmVtOiBpZihtYXRoLnVuaXQoJG1heCk9PXB4LCBweC10by1yZW0oJG1heCwgJGJhc2UpLCAkbWF4KTtcbiAgICBAcmV0dXJuIGNsYW1wKCN7JG1pbi1yZW19LCAjeyRwcmVmZXJyZWR9LCAjeyRtYXgtcmVtfSk7XG59XG5cblxuQGZ1bmN0aW9uIGZsdWlkLWNvbnRhaW5lcigkbWluLXZ3OiAxNDQwLCAkbWF4LXZ3OiAxOTIwLCAkbWluLXNpemU6IDExNDAsICRtYXgtc2l6ZTogMTQ0MCkge1xuICAkc2xvcGU6IG1hdGguZGl2KCgkbWF4LXNpemUgLSAkbWluLXNpemUpLCAoJG1heC12dyAtICRtaW4tdncpKTtcbiAgJGludGVyY2VwdDogJG1pbi1zaXplIC0gKCRzbG9wZSAqICRtaW4tdncpO1xuXG4gIEByZXR1cm4gY2xhbXAoXG4gICAgMHJlbSxcbiAgICBjYWxjKCN7cHgtdG8tcmVtKCRpbnRlcmNlcHQpfSArICN7KCRzbG9wZSAqIDEwMCl9dncpLFxuICAgICN7cHgtdG8tcmVtKCRtYXgtc2l6ZSl9XG4gICk7XG59IiwiLmludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW1nLWludHJvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNnB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTZweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwdmg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIFxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuNSk7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNnB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE2cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE2cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTZweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJvcmRlci1yYWRpdXMge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC1jb250YWluZXIge1xuICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgXG4gICAgfVxufVxuXG4iLCIucGFnaW5hdGlvbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTRweCl9O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTRweCl9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTRweCl9O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG5cbiAgICAgICAgICAgICAgICBpLCBzcGFue1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXJyZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAje3B4LXRvLXJlbSgxNHB4KX07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5zZWFyY2gtcmVzdWx0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1pbi13aWR0aDogNDAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA0OHB4O1xuXG4gICAgLmNvcnNpLXJlc3VsdHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5oaWRlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRURFREVEO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJsb2NrLWdyaWRzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvYWQtY29yc2kge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubm8tcmVzdWx0LWZvdW5kIHtcbiAgICAgICAgJi5oaWRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5zZWFyY2gtcmVzdWx0LW9wZW4ge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbn1cbiIsIi5zZXppb25lLXNsaWRlcixcbi5zZXppb25lLWdyaWQsXG4uc2V6aW9uZS1jb3JzaSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQ1cHg7XG5cbiAgICAuaW5zaWRlLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuXG4gICAgICAgICYuc21hbGwtcGFkZGluZyAge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uYSB7XG4gICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiAge1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCAyMHB4KSk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCAzcHgpKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA1cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIltkYXRhLWlkLXRvZ2dsZS1jb250ZW50XSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuYWN0aXZlLWZpbHRlci1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJi5ibG9jay1ncmlkcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGluay10b2dnbGV7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICYuYWN0aXZlLWZpbHRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWlkZGxlLWxpZ2h0LWdyZXkpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLW1pZGRsZS1saWdodC1ncmV5KTtcbiAgICB9XG59XG5cblxuW2RhdGEtaWQtaG92ZXItY29udGVudF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmFjdGl2ZS1ob3Zlci1maWx0ZXItY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICYuYmxvY2stZ3JpZHMge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpbmstdG9nZ2xle1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmLmFjdGl2ZS1ob3Zlci1maWx0ZXIge1xuICAgICAgICAvKiBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1pZGRsZS1saWdodC1ncmV5KTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1taWRkbGUtbGlnaHQtZ3JleSk7ICovXG4gICAgfVxufVxuXG5cblxuLmNhdGVnb3JpZS1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjBweDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcblxuICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcblxuICAgICAgICAgICAgJi5hY3RpdmUtZmlsdGVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogOTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIGhlaWdodDogNzBweDtcblxuICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICAgICAgICAgICAgb3JkZXI6IDE7XG5cbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAubG9nby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBuYXYubWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzAwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHZ3KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA3MHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxpbmstbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS10aXRsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAje3B4LXRvLXJlbSgxOHB4KX07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTZweCl9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZm9jdXN7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5tZWdhbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYVtkYXRhLW9wZW4tc3VibWVudV0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGx1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3otaW5kZXg6IC0xMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnNldHRvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW4tc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFjay1hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGl0bGUtc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTZweCl9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMThweCl9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMThweCl9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5idG4tbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogI3tweC10by1yZW0oMTVweCl9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICN7cHgtdG8tcmVtKDE4cHgpfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmltZy1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2FzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmhhbWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhbmctY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGluay1jdGEge1xuICAgICAgICAgICAgICAgICYuZGVza3RvcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFuZ3VhZ2UtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5saWdodC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgICAgXG4gICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcblxuICAgICAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgLmxvZ28tZGFyayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgIG5hdi5tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgdWwubWVudSB7ICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi5saW5rLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubWVnYW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhW2RhdGEtb3Blbi1zdWJtZW51XSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGx1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHsgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmhhbWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgLmxhbmd1YWdlLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keSB7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAmLm1lbnUtb3BlbiB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAubG9nby1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dvLWRhcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAubG9nby1saWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICYubGluay1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm1lZ2FtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYVtkYXRhLW9wZW4tc3VibWVudV0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vYW5pbWF0aW9uLW5hbWU6IGhhbWJ1cmdlcl90b2dnbGVfYmVmb3JlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9hbmltYXRpb24tbmFtZTogaGFtYnVyZ2VyX3RvZ2dsZV9hZnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5zdGlja3ktaGVhZGVyIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuXG4gICAgICAgICAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgdWwubWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmxpbmstbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspOyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm1lZ2FtZW51IHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYVtkYXRhLW9wZW4tc3VibWVudV0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGFuZy1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIC5saW5rLWN0YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRlc2t0b3Age1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idG4tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbmUvYXJyb3ctbGlnaHQuc3ZnJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbmUvYXJyb3ctZGFyay5zdmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0ZWQtbGFuZ3VhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sYW5ndWFnZS1tZW51LW9wZW4ge1xuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubGFuZ3VhZ2UtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc3ViLW1lbnUtb3BlbiB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZ28tZGFyayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dvLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBuYXYubWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHVsLm1lbnUge1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICYubGluay1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5tZWdhbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFbZGF0YS1vcGVuLXN1Ym1lbnVdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmhhbWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL2FuaW1hdGlvbi1uYW1lOiBoYW1idXJnZXJfdG9nZ2xlX2JlZm9yZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vYW5pbWF0aW9uLW5hbWU6IGhhbWJ1cmdlcl90b2dnbGVfYWZ0ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC41cztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ud2hhdHNhcHAtZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDVweDtcbiAgICByaWdodDogMTBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiA1OHB4O1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxufSIsImZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5tZW51LWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAje3B4LXRvLXJlbSgxNHB4KX07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1lbnUtZmxvYXQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDEwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICB9XG5cbiAgICAuZ3JpZCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNTY3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufSJdfQ== */
