:root {
  --color-light: #ffffff;
  --color-dark: #3F5567;
  --grey-100: #F8F6F2;
  --grey-200: #ededed;
  --grey-300: #D0D0D0;
  --grey-400: #7D7D7D;
  --grey-500: #707070;
  --yellow: #FFC978;
  --panna: #f5f1e3;
  --red: #DB0A0B;
  --orange: #ED785E;
  --dark-green: #065722;
  --green: #889583;
  --light-green: #9EBF99;
  --blue: var(--color-dark);
  --light-blue: #A6C1D6;
  --black: #1A1A1A;
  --color-default: var(--color-dark);
}

:root {
  --container-big-width: 1810px;
  --container-width: 1670px;
  --container-large-width: 1540px;
  --container-medium-width: 1390px;
  --container-small-width: 1180px;
  --container-mid-small-width: 1060px;
  --container-extra-small-width: 880px;
  --container-mini-width: 760px;
  --block-min-width: 600px;
  --block-extra-min-width: 460px;
  --spacer-big: 30px;
  --spacer-large: 20px;
  --spacer-medium: 25px;
  --spacer-small: 20px;
  --transition-default: all 0.5s ease-in-out;
  --font-family: "Poppins", sans-serif;
  --font-family-title: "Futura Passata DISPLAY", sans-serif;
  --font-family-menu: "Futura Passata DISPLAY", sans-serif;
  --font-size: 18px;
  --h1-font-size: 40px;
  --h1-font-weight: 400;
  --h1-margin-bottom: 10px;
  --h2-font-size: 35px;
  --h2-font-weight: 400;
  --h2-margin-bottom: 10px;
  --h3-font-size: 30px;
  --h3-font-weight: 400;
  --h3-margin-bottom: 10px;
  --h4-font-size: 28px;
  --h4-font-weight: 400;
  --h4-margin-bottom: 10px;
  --h5-font-size: 20px;
  --h5-font-weight: 400;
  --h5-margin-bottom: 10px;
  --h6-font-size: 16px;
  --h6-font-weight: 400;
  --h6-margin-bottom: 10px;
}

@media (min-width: 992px) {
  :root {
    --spacer-big: 30px;
  }
}
@media (min-width: 1681px) {
  :root {
    --spacer-big: 50px;
  }
}
@media (min-width: 992px) {
  :root {
    --spacer-large: 20px;
  }
}
@media (min-width: 1681px) {
  :root {
    --spacer-large: 40px;
  }
}
@media (min-width: 576px) {
  :root {
    --h1-font-size: 50px;
  }
}
@media (min-width: 768px) {
  :root {
    --h1-font-size: 60px;
  }
}
@media (min-width: 992px) {
  :root {
    --h1-font-size: 80px;
  }
}
@media (min-width: 1360px) {
  :root {
    --h1-font-size: 80px;
  }
}
@media (min-width: 1681px) {
  :root {
    --h1-font-size: 90px;
  }
}
@media (min-width: 576px) {
  :root {
    --h2-font-size: 40px;
  }
}
@media (min-width: 992px) {
  :root {
    --h2-font-size: 60px;
  }
}
@media (min-width: 1360px) {
  :root {
    --h2-font-size: 65px;
  }
}
@media (min-width: 1681px) {
  :root {
    --h2-font-size: 65px;
  }
}
@media (min-width: 992px) {
  :root {
    --h3-font-size: 35px;
  }
}
@media (min-width: 1260px) {
  :root {
    --h3-font-size: 40px;
  }
}
@media (min-width: 1681px) {
  :root {
    --h3-font-size: 40px;
  }
}
@media (min-width: 992px) {
  :root {
    --h4-font-size: 30px;
  }
}
@media (min-width: 1681px) {
  :root {
    --h4-font-size: 40px;
  }
}
@media (min-width: 992px) {
  :root {
    --h5-font-size: 28px;
  }
}
@media (min-width: 1681px) {
  :root {
    --h5-font-size: 32px;
  }
}
@-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% {
    transform: translateY(-4px);
  }
  100% {
    transform: translateY(35px);
  }
}
.bounceScroll {
  animation-name: bounceScroll;
  transform-origin: center bottom;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  background-color: var(--panna);
}

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

a {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

a.with-image {
  display: flex;
  align-items: flex-start;
  margin: 0;
  cursor: pointer;
}

a.with-image img {
  width: 18px;
  display: inline;
  margin-left: 5px;
  margin-top: 2px;
}

* {
  box-sizing: border-box;
}

.h-full {
  height: 100%;
}

.hidden {
  display: none;
}

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

.overflow-visible {
  overflow: visible;
}

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

.border-bottom {
  border-bottom: 1px solid var(--grey-300);
}

.opacity-03 {
  opacity: 0.3;
}

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

@media (min-width: 992px) {
  .border-radius {
    border-radius: 64px;
  }
}
.border-radius-top {
  border-top-left-radius: 32px;
  border-top-right-radius: 32px;
}

@media (min-width: 992px) {
  .border-radius-top {
    border-top-left-radius: 64px;
    border-top-right-radius: 64px;
  }
}
.margin-negative {
  margin-top: -32px;
  position: relative;
  z-index: 2;
}

@media (min-width: 992px) {
  .margin-negative {
    margin-top: -64px;
  }
}
.maps iframe {
  position: relative;
  z-index: 0;
  border-radius: 32px;
}

@media (min-width: 992px) {
  .maps iframe {
    border-radius: 64px;
  }
}
.text-underline {
  text-decoration: underline;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
  flex-wrap: wrap;
}

.row > .col {
  padding-left: 15px;
  padding-right: 15px;
}

.row > .col.c-1 {
  width: 10%;
}

.row > .col.c-2 {
  width: 20%;
}

.row > .col.c-3 {
  width: 30%;
}

.row > .col.c-4 {
  width: 40%;
}

.row > .col.c-5 {
  width: 50%;
}

.row > .col.c-6 {
  width: 60%;
}

.row > .col.c-7 {
  width: 70%;
}

.row > .col.c-8 {
  width: 80%;
}

.row > .col.c-9 {
  width: 90%;
}

.row > .col.c-10 {
  width: 100%;
}

@media (max-width: 1199px) {
  .row > .col.c-1\:xl {
    width: 10% !important;
  }
  .row > .col.c-2\:xl {
    width: 20% !important;
  }
  .row > .col.c-3\:xl {
    width: 30% !important;
  }
  .row > .col.c-4\:xl {
    width: 40% !important;
  }
  .row > .col.c-5\:xl {
    width: 50% !important;
  }
  .row > .col.c-6\:xl {
    width: 60% !important;
  }
  .row > .col.c-7\:xl {
    width: 70% !important;
  }
  .row > .col.c-8\:xl {
    width: 80% !important;
  }
  .row > .col.c-9\:xl {
    width: 90% !important;
  }
  .row > .col.c-10\:xl {
    width: 100% !important;
  }
}
@media (max-width: 991px) {
  .row > .col.c-1\:lg {
    width: 10% !important;
  }
  .row > .col.c-2\:lg {
    width: 20% !important;
  }
  .row > .col.c-3\:lg {
    width: 30% !important;
  }
  .row > .col.c-4\:lg {
    width: 40% !important;
  }
  .row > .col.c-5\:lg {
    width: 50% !important;
  }
  .row > .col.c-6\:lg {
    width: 60% !important;
  }
  .row > .col.c-7\:lg {
    width: 70% !important;
  }
  .row > .col.c-8\:lg {
    width: 80% !important;
  }
  .row > .col.c-9\:lg {
    width: 90% !important;
  }
  .row > .col.c-10\:lg {
    width: 100% !important;
  }
}
@media (max-width: 767px) {
  .row > .col.c-1\:md {
    width: 10% !important;
  }
  .row > .col.c-2\:md {
    width: 20% !important;
  }
  .row > .col.c-3\:md {
    width: 30% !important;
  }
  .row > .col.c-4\:md {
    width: 40% !important;
  }
  .row > .col.c-5\:md {
    width: 50% !important;
  }
  .row > .col.c-6\:md {
    width: 60% !important;
  }
  .row > .col.c-7\:md {
    width: 70% !important;
  }
  .row > .col.c-8\:md {
    width: 80% !important;
  }
  .row > .col.c-9\:md {
    width: 90% !important;
  }
  .row > .col.c-10\:md {
    width: 100% !important;
  }
}
@media (max-width: 576px) {
  .row > .col.c-1\:sm {
    width: 10% !important;
  }
  .row > .col.c-2\:sm {
    width: 20% !important;
  }
  .row > .col.c-3\:sm {
    width: 30% !important;
  }
  .row > .col.c-4\:sm {
    width: 40% !important;
  }
  .row > .col.c-5\:sm {
    width: 50% !important;
  }
  .row > .col.c-6\:sm {
    width: 60% !important;
  }
  .row > .col.c-7\:sm {
    width: 70% !important;
  }
  .row > .col.c-8\:sm {
    width: 80% !important;
  }
  .row > .col.c-9\:sm {
    width: 90% !important;
  }
  .row > .col.c-10\:sm {
    width: 100% !important;
  }
}
.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);
}

.divider {
  width: 100%;
  border-bottom: solid 1px var(--grey-200);
}

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

@media (min-width: 992px) {
  .container {
    padding: 0 20px;
  }
}
.container.fluid {
  max-width: unset;
  padding: 0;
}

.container.big {
  max-width: var(--container-big-width);
}

.container.large {
  max-width: var(--container-large-width);
}

.container.medium {
  max-width: var(--container-medium-width);
}

.container.small {
  max-width: var(--container-small-width);
}

.container.mid-small {
  max-width: var(--container-mid-small-width);
}

.container.extra-small {
  max-width: var(--container-extra-small-width);
}

@media (min-width: 992px) {
  .container.mini {
    max-width: var(--container-mini-width);
  }
}
@media (min-width: 992px) {
  .container.min-width {
    max-width: var(--block-min-width);
  }
}
@media (min-width: 992px) {
  .container.extra-min-width {
    max-width: var(--block-extra-min-width);
  }
}
.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;
  }
}
.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;
}

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

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

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

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

.d-block {
  display: block;
}

@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;
  }
}
@media (min-width: 992px) {
  .d-lg-block {
    display: block !important;
  }
  .d-lg-none {
    display: none;
  }
}
@media (min-width: 1200px) {
  .d-xl-block {
    display: block !important;
  }
  .d-xl-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--10 {
  margin-bottom: 0.625rem !important;
}

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

.mb-1 {
  margin-bottom: 1rem !important;
}

.mb-1-5 {
  margin-bottom: 1.2rem !important;
}

@media (min-width: 992px) {
  .mb-2 {
    margin-bottom: 2rem !important;
  }
}
.mb-3 {
  margin-bottom: 3rem !important;
}

.mb-4 {
  margin-bottom: 4rem !important;
}

.mb-5 {
  margin-bottom: 5rem !important;
}

@media (min-width: 1681px) {
  .ml-0 {
    margin-left: 0 !important;
  }
}
@media (min-width: 992px) {
  .ml-0-small {
    margin-left: 0 !important;
  }
}
@media (min-width: 1681px) {
  .mr-0 {
    margin-right: 0 !important;
  }
}
.mt-1 {
  margin-top: 1rem !important;
}

.m-20 {
  margin: 15px;
}

@media (min-width: 992px) {
  .m-20 {
    margin: 20px;
  }
}
@media (max-width: 1700px) {
  .padding-mobile {
    padding-left: 35px;
    padding-right: 35px;
  }
}
.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 1rem;
}

.p-2 {
  padding: 2rem;
}

.p-3 {
  padding: 3rem;
}

.p-4 {
  padding: 4rem;
}

.p-5 {
  padding: 5rem;
}

.padding-lr-1 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.p-left {
  padding-left: 50px;
}

.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-black {
  background-color: var(--black);
}

.bg-black p, .bg-black a, .bg-black ul, .bg-black li, .bg-black i, .bg-black span, .bg-black strong {
  color: var(--color-light);
}

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

.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-grey-100 {
  background-color: var(--grey-100);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.bg-white p, .bg-white a, .bg-white ul, .bg-white li, .bg-white i, .bg-white span, .bg-white 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-grey:not(.btn):not(.fa-chevron-right):not(.fa-upload), .color-grey *:not(.btn):not(.fa-chevron-right):not(.fa-upload) {
  color: var(--dark-grey);
}

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

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

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

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

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

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

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

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

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

.pl-0 {
  padding-left: 0;
}

.pl-15 {
  padding-left: 15px;
}

.pr-0 {
  padding-right: 0;
}

.pr-15 {
  padding-right: 15px;
}

.mt-15 {
  margin-top: 15px;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mt-30 {
  margin-top: 30px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mr-10 {
  margin-right: 10px;
}

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

.column-1 {
  column-count: 1;
}

.column-2 {
  column-count: 2;
}

.column-3 {
  column-count: 3;
}

.column-4 {
  column-count: 4;
}

.column-5 {
  column-count: 5;
}

@media (max-width: 1199px) {
  .pl-0\:xl {
    padding-left: 0 !important;
  }
  .pl-15\:xl {
    padding-left: 15px !important;
  }
  .pr-0\:xl {
    padding-right: 0 !important;
  }
  .pr-15\:xl {
    padding-right: 15px !important;
  }
  .mt-15\:xl {
    margin-top: 15px !important;
  }
  .mb-15\:xl {
    margin-bottom: 15px !important;
  }
  .mt-30\:xl {
    margin-top: 30px !important;
  }
  .mb-30\:xl {
    margin-bottom: 30px !important;
  }
  .order-1\:xl {
    order: 1 !important;
  }
  .order-2\:xl {
    order: 2 !important;
  }
  .order-3\:xl {
    order: 3 !important;
  }
  .order-4\:xl {
    order: 4 !important;
  }
  .order-5\:xl {
    order: 5 !important;
  }
  .order-6\:xl {
    order: 6 !important;
  }
  .d-none\:xl {
    display: none !important;
  }
  .column-1\:xl {
    column-count: 1;
  }
  .column-2\:xl {
    column-count: 2;
  }
  .column-3\:xl {
    column-count: 3;
  }
  .column-4\:xl {
    column-count: 4;
  }
  .column-5\:xl {
    column-count: 5;
  }
}
@media (min-width: 992px) and (max-width: 1500px) {
  .d-between {
    display: none;
  }
}
@media (min-width: 992px) {
  .d-none\:lgu {
    display: none !important;
  }
}
@media (max-width: 991px) {
  .pl-0\:lg {
    padding-left: 0 !important;
  }
  .pl-15\:lg {
    padding-left: 15px !important;
  }
  .pr-0\:lg {
    padding-right: 0 !important;
  }
  .pr-15\:lg {
    padding-right: 15px !important;
  }
  .mt-15\:lg {
    margin-top: 15px !important;
  }
  .mb-15\:lg {
    margin-bottom: 15px !important;
  }
  .mt-30\:lg {
    margin-top: 30px !important;
  }
  .mb-30\:lg {
    margin-bottom: 30px !important;
  }
  .order-1\:lg {
    order: 1 !important;
  }
  .order-2\:lg {
    order: 2 !important;
  }
  .order-3\:lg {
    order: 3 !important;
  }
  .order-4\:lg {
    order: 4 !important;
  }
  .order-5\:lg {
    order: 5 !important;
  }
  .order-6\:lg {
    order: 6 !important;
  }
  .d-none\:lg {
    display: none !important;
  }
  .column-1\:lg {
    column-count: 1;
  }
  .column-2\:lg {
    column-count: 2;
  }
  .column-3\:lg {
    column-count: 3;
  }
  .column-4\:lg {
    column-count: 4;
  }
  .column-5\:lg {
    column-count: 5;
  }
}
@media (max-width: 767px) {
  .pl-0\:md {
    padding-left: 0 !important;
  }
  .pl-15\:md {
    padding-left: 15px !important;
  }
  .pr-0\:md {
    padding-right: 0 !important;
  }
  .pr-15\:md {
    padding-right: 15px !important;
  }
  .mt-15\:md {
    margin-top: 15px !important;
  }
  .mb-15\:md {
    margin-bottom: 15px !important;
  }
  .mt-30\:md {
    margin-top: 30px !important;
  }
  .mb-30\:md {
    margin-bottom: 30px !important;
  }
  .order-1\:md {
    order: 1 !important;
  }
  .order-2\:md {
    order: 2 !important;
  }
  .order-3\:md {
    order: 3 !important;
  }
  .order-4\:md {
    order: 4 !important;
  }
  .order-5\:md {
    order: 5 !important;
  }
  .order-6\:md {
    order: 6 !important;
  }
  .d-none\:md {
    display: none !important;
  }
  .column-1\:md {
    column-count: 1;
  }
  .column-2\:md {
    column-count: 2;
  }
  .column-3\:md {
    column-count: 3;
  }
  .column-4\:md {
    column-count: 4;
  }
  .column-5\:md {
    column-count: 5;
  }
}
@media (max-width: 576px) {
  .pl-0\:sm {
    padding-left: 0 !important;
  }
  .pl-15\:sm {
    padding-left: 15px !important;
  }
  .pr-0\:sm {
    padding-right: 0 !important;
  }
  .pr-15\:sm {
    padding-right: 15px !important;
  }
  .mt-15\:sm {
    margin-top: 15px !important;
  }
  .mb-15\:sm {
    margin-bottom: 15px !important;
  }
  .mt-30\:sm {
    margin-top: 30px !important;
  }
  .mb-30\:sm {
    margin-bottom: 30px !important;
  }
  .order-1\:sm {
    order: 1 !important;
  }
  .order-2\:sm {
    order: 2 !important;
  }
  .order-3\:sm {
    order: 3 !important;
  }
  .order-4\:sm {
    order: 4 !important;
  }
  .order-5\:sm {
    order: 5 !important;
  }
  .order-6\:sm {
    order: 6 !important;
  }
  .d-none\:sm {
    display: none !important;
  }
  .column-1\:sm {
    column-count: 1;
  }
  .column-2\:sm {
    column-count: 2;
  }
  .column-3\:sm {
    column-count: 3;
  }
  .column-4\:sm {
    column-count: 4;
  }
  .column-5\:sm {
    column-count: 5;
  }
}
@font-face {
  font-family: "Futura Passata DISPLAY";
  src: url("../fonts/FuturaPassata-DISPLAY.eot");
  src: url("../fonts/FuturaPassata-DISPLAY.eot?#iefix") format("embedded-opentype"), url("../fonts/FuturaPassata-DISPLAY.woff2") format("woff2"), url("../fonts/FuturaPassata-DISPLAY.woff") format("woff"), url("../fonts/FuturaPassata-DISPLAY.ttf") format("truetype"), url("../fonts/FuturaPassata-DISPLAY.svg#FuturaPassata-DISPLAY") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../fonts/Poppins-Light.eot");
  src: url("../fonts/Poppins-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Light.woff2") format("woff2"), url("../fonts/Poppins-Light.woff") format("woff"), url("../fonts/Poppins-Light.ttf") format("truetype"), url("../fonts/Poppins-Light.svg#Poppins-Light") format("svg");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../fonts/Poppins-SemiBold.eot");
  src: url("../fonts/Poppins-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-SemiBold.woff2") format("woff2"), url("../fonts/Poppins-SemiBold.woff") format("woff"), url("../fonts/Poppins-SemiBold.ttf") format("truetype"), url("../fonts/Poppins-SemiBold.svg#Poppins-SemiBold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../fonts/Poppins-Medium.eot");
  src: url("../fonts/Poppins-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Medium.woff2") format("woff2"), url("../fonts/Poppins-Medium.woff") format("woff"), url("../fonts/Poppins-Medium.ttf") format("truetype"), url("../fonts/Poppins-Medium.svg#Poppins-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../fonts/Poppins-Bold.eot");
  src: url("../fonts/Poppins-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Bold.woff2") format("woff2"), url("../fonts/Poppins-Bold.woff") format("woff"), url("../fonts/Poppins-Bold.ttf") format("truetype"), url("../fonts/Poppins-Bold.svg#Poppins-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Poppins";
  src: url("../fonts/Poppins-Regular.eot");
  src: url("../fonts/Poppins-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Regular.woff2") format("woff2"), url("../fonts/Poppins-Regular.woff") format("woff"), url("../fonts/Poppins-Regular.ttf") format("truetype"), url("../fonts/Poppins-Regular.svg#Poppins-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: 300;
  line-height: 1.3;
}

body.light {
  font-weight: 300;
}

body.medium {
  font-weight: 500;
}

body.bold {
  font-weight: bold;
}

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

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

p.light, .p.light, strong.light, b.light, time.light {
  font-weight: 300;
}

p.medium, .p.medium, strong.medium, b.medium, time.medium {
  font-weight: 500;
}

p.bold, .p.bold, strong.bold, b.bold, time.bold {
  font-weight: bold;
}

p.font-title, .p.font-title, strong.font-title, b.font-title, time.font-title {
  font-family: var(--font-family-title);
}

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: 300;
  line-height: 1.5;
}

ul.light, li.light {
  font-weight: 300;
}

ul.bold, li.bold {
  font-weight: 500;
}

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

.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.1;
  display: block;
  font-weight: 400;
}

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

.h1.light, .h2.light, .h3.light, .h4.light, .h5.light, .h6.light, .h7.light {
  font-weight: 300;
}

.h1.bold, .h2.bold, .h3.bold, .h4.bold, .h5.bold, .h6.bold, .h7.bold {
  font-weight: bold;
}

.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, .h7 p, .h7 .p, .h7 ul, .h7 li, .h7 a, .h7 span, .h7 strong, .h7 .strong, .h7 b, .h7 time, .h7 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, .h7.p-style {
  font-family: var(--font-family);
}

.h1 span, .h2 span, .h3 span, .h4 span, .h5 span, .h6 span, .h7 span {
  font-family: var(--font-family-title);
}

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

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

.text-big {
  font-family: var(--font-family-title);
  font-size: 35px;
  line-height: 1;
  margin: 0;
}

@media (min-width: 576px) {
  .text-big {
    font-size: 50px;
  }
}
@media (min-width: 992px) {
  .text-big {
    font-size: 70px;
  }
}
@media (min-width: 1360px) {
  .text-big {
    font-size: 90px;
  }
}
@media (min-width: 1681px) {
  .text-big {
    font-size: 125px;
  }
}
.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-extra-light {
  font-weight: 300;
}

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

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

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

.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);
}

.element-accordion .accordion-elem {
  border-bottom: 1px solid rgba(63, 85, 103, 0.32);
  cursor: pointer;
}

.element-accordion .accordion-elem:first-child {
  border-top: 1px solid rgba(63, 85, 103, 0.32);
}

.element-accordion .title-accordion {
  padding: 22px 0 10px 0;
}

.element-accordion .title-accordion .size-accordion {
  grid-template-columns: 1.8fr 0.2fr;
}

.element-accordion .title-accordion .button-elem {
  display: flex;
  justify-content: end;
  align-items: center;
}

.element-accordion .title-accordion .open-accordion {
  padding: 0;
  position: relative;
  cursor: pointer;
  transition: var(--transition-default);
  font-family: var(--font-family-title);
  color: var(--dark-green);
}

@media (min-width: 992px) {
  .element-accordion .title-accordion .open-accordion {
    visibility: visible;
    opacity: 1;
    font-size: 40px;
  }
}
.element-accordion .title-accordion .open-accordion .open {
  position: relative;
  visibility: visible;
  opacity: 1;
  transition: var(--transition-default);
  font-family: var(--font-family-title);
  color: var(--dark-green);
  margin: 0;
  font-size: 40px;
}

@media (min-width: 992px) {
  .element-accordion .title-accordion .open-accordion .open {
    font-size: 40px;
  }
}
.element-accordion .title-accordion .open-accordion .close {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  right: 4px;
  top: 0;
  transition: var(--transition-default);
  font-family: var(--font-family-title);
  color: var(--dark-green);
  margin: 0;
  font-size: 40px;
}

@media (min-width: 992px) {
  .element-accordion .title-accordion .open-accordion .close {
    font-size: 40px;
  }
}
.element-accordion .title-accordion.on {
  transition: var(--transition-default);
}

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

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

.element-accordion .list-block-element {
  position: relative;
  width: 100%;
  height: auto;
  padding: 0 10px 40px 0;
  cursor: pointer;
  display: none;
}

.element-accordion.light .accordion-elem {
  border-bottom: 1px solid var(--color-light);
}

.element-accordion.light .accordion-elem:first-child {
  border-top: 1px solid var(--color-light);
}

.element-accordion-with-crocini .crocini-block {
  margin-top: 1px;
}

.element-accordion-with-crocini .accordion-elem {
  width: 100%;
}

.element-accordion-with-crocini .accordion-elem .size-accordion {
  grid-template-columns: 1fr;
}

@media (min-width: 992px) {
  .element-accordion-with-crocini .accordion-elem .size-accordion {
    grid-template-columns: 0.6fr 1.1fr 0.3fr;
  }
}
.element-accordion-with-crocini .accordion-elem .size-accordion-desc {
  grid-template-columns: 1fr;
}

@media (min-width: 992px) {
  .element-accordion-with-crocini .accordion-elem .size-accordion-desc {
    grid-template-columns: 0.6fr 1.1fr 0.3fr;
  }
}
.element-accordion-with-crocini .accordion-elem .grid {
  border: none !important;
}

.element-accordion-with-crocini .accordion-elem .title-accordion .button-elem {
  display: flex;
  justify-content: end;
  align-items: center;
}

.element-accordion-with-crocini .accordion-elem .title-accordion .open-accordion {
  padding: 0;
  position: relative;
  cursor: pointer;
  transition: var(--transition-default);
}

@media (min-width: 992px) {
  .element-accordion-with-crocini .accordion-elem .title-accordion .open-accordion {
    visibility: visible;
    opacity: 1;
  }
}
.element-accordion-with-crocini .accordion-elem .title-accordion .open-accordion .translate-open {
  transition: var(--transition-default);
  transform: rotate(0deg);
  width: 30px;
}

@media (min-width: 992px) {
  .element-accordion-with-crocini .accordion-elem .title-accordion .open-accordion .translate-open {
    width: 40px;
  }
}
.element-accordion-with-crocini .accordion-elem .title-accordion.on {
  transition: var(--transition-default);
}

.element-accordion-with-crocini .accordion-elem .title-accordion.on .translate-open {
  transform: rotate(90deg);
  transition: var(--transition-default);
}

.element-accordion-with-crocini .accordion-elem .list-block-element {
  position: relative;
  width: 100%;
  height: auto;
  padding: 0 10px 40px 0;
  cursor: pointer;
  display: none;
}

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

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

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

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

@media (min-width: 992px) {
  .block-grids.big-gap {
    grid-gap: 90px;
    gap: 90px;
  }
}
.block-grids.columns-1 {
  grid-template-columns: 1fr;
}

@media (min-width: 992px) {
  .block-grids.columns-2 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.diff-size {
    grid-template-columns: 0.8fr 1.2fr;
  }
}
.block-grids.columns-2.contact-social {
  grid-template-columns: 0.4fr 1.7fr;
}

@media (min-width: 576px) {
  .block-grids.columns-2.contact-social {
    grid-template-columns: 0.3fr 1.7fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.contact-social {
    grid-template-columns: 0.3fr 1.7fr;
  }
}
@media (min-width: 1300px) {
  .block-grids.columns-2.contact-social {
    grid-template-columns: 0.15fr 1.7fr;
  }
}
.block-grids.columns-2.contact-social img {
  width: 45px;
}

@media (min-width: 992px) {
  .block-grids.columns-2.block-condivisione {
    grid-template-columns: 40px 1fr;
  }
}
.block-grids.columns-2.block-condivisione .link-condivisione a {
  display: inline-block;
  margin: 0 5px;
}

@media (min-width: 992px) {
  .block-grids.columns-2.block-condivisione .link-condivisione a {
    display: block;
    margin: 5px 0;
  }
}
.block-grids.columns-2.block-condivisione .link-condivisione a img {
  width: unset;
  height: 32px;
  aspect-ratio: unset;
}

@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;
  }
}
.block-grids.columns-3.block-step {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .block-grids.columns-3.block-step {
    grid-template-columns: 0.4fr 1fr 1.6fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3.block-step {
    display: grid;
    grid-template-columns: 0.4fr 1fr 1.6fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3.block-step {
    grid-template-columns: 0.4fr 0.8fr 1.8fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-3.prodotti-grid {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3.prodotti-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3.prodotti-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-3.title-block {
    grid-template-columns: 0fr 2fr 0.6fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3.title-block {
    grid-template-columns: 0r 2fr 0.6fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3.title-block {
    grid-template-columns: 0.2fr 2fr 0.6fr;
  }
}
@media (min-width: 1600px) {
  .block-grids.columns-3.title-block {
    grid-template-columns: 0.6fr 2fr 0.6fr;
  }
}
@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.prodotti-block .image {
  position: relative;
}

.block-grids.prodotti-block .image .macchia {
  position: absolute;
  max-width: 496px;
  z-index: -1;
  top: 0;
}

.block-grids.prodotti-block .image .prod-image {
  max-width: 416px;
  aspect-ratio: 1/1;
  object-fit: contain;
}

.block-grids.prodotti-block .text {
  padding-left: 20px;
  padding-right: 20px;
  height: 100%;
}

.block-grids.prodotti-dettaglio-block .image {
  position: relative;
}

.block-grids.prodotti-dettaglio-block .image .macchia {
  position: absolute;
  min-height: 572px;
  z-index: -1;
  top: 0;
}

.block-grids.prodotti-dettaglio-block .image .prod-image {
  min-height: 572px;
  aspect-ratio: 1/1;
  object-fit: contain;
}

.block-grids.prodotti-dettaglio-block .ingredienti .tooltip {
  display: inline-block;
  margin-right: 10px;
}

.block-grids.prodotti-dettaglio-block .ingredienti .tooltip img {
  width: 46px;
  height: 46px;
}

.block-grids.prodotti-dettaglio-block .pesi {
  display: flex;
}

.block-grids.prodotti-dettaglio-block .pesi .peso {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-right: 10px;
  border-radius: 50px;
  border: 1px solid var(--light-green);
  background-color: var(--light-green);
  text-align: center;
  width: 60px;
  height: 60px;
}

.block-grids.prodotti-dettaglio-block .pesi .peso p {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 18px;
  color: var(--color-light);
  margin: 0;
  line-height: 1;
}

.block-grids.prodotti-dettaglio-block .pesi .peso p span {
  display: block;
  font-size: 10px;
  color: var(--color-light);
  margin: 0;
}

.block-grids .grid {
  position: relative;
  overflow: hidden;
}

.block-grids .grid .testo {
  padding: 20px;
}

.block-grids .grid.img-azienda img {
  max-width: 674px;
}

.block-grids .grid.img-contatti img {
  max-width: 1642px;
  display: block;
}

.block-grids .grid.img-azienda-left img, .block-grids .grid.img-azienda-right img {
  max-width: 774px;
}

.block-grids .grid .text-azienda {
  max-width: 812px;
}

.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;
  }
}
.breadcrumbs-container {
  padding-top: 90px;
}

@media (min-width: 992px) {
  .breadcrumbs-container {
    padding-top: 100px;
  }
}
ul.breadcrumbs {
  padding: 10px 0;
  margin: 0;
  list-style: none;
  align-items: center;
  text-align: left;
  display: flex;
  justify-content: start;
  position: relative;
  z-index: 1;
  color: var(--color-dark);
}

ul.breadcrumbs li {
  padding-left: 5px;
  padding-right: 5px;
  color: var(--color-dark);
  display: inline-flex;
  font-size: 12px;
  margin-bottom: 0;
  align-items: center;
}

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

ul.breadcrumbs li a {
  margin-right: 10px;
  color: var(--color-dark);
  font-size: 12px;
  margin-bottom: 0;
}

ul.breadcrumbs li:after {
  content: ">";
}

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

.intro-page ul.breadcrumbs, .intro-page-big ul.breadcrumbs, .intro-page-half ul.breadcrumbs, .light ul.breadcrumbs {
  color: var(--panna);
}

.intro-page ul.breadcrumbs li, .intro-page-big ul.breadcrumbs li, .intro-page-half ul.breadcrumbs li, .light ul.breadcrumbs li {
  color: var(--panna);
}

.intro-page ul.breadcrumbs li a, .intro-page-big ul.breadcrumbs li a, .intro-page-half ul.breadcrumbs li a, .light ul.breadcrumbs li a {
  color: var(--panna);
}

.btn {
  position: relative;
  font-family: var(--font-family);
  transition: var(--transition-default);
  text-decoration: none;
  cursor: pointer;
  border: solid 1.5px rgba(0, 0, 0, 0);
  outline: none;
  text-align: center;
  border-radius: 20px;
  padding: 10px 25px 5px;
  line-height: 1;
  width: 100%;
  display: block;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: 400;
  text-transform: uppercase;
  font-family: var(--font-family-title);
}

@media (min-width: 576px) {
  .btn {
    display: inline-block;
    margin-bottom: unset;
    width: auto;
    font-size: 18px;
    padding: 20px 25px 15px;
  }
}
.btn.btn-red {
  color: var(--red);
  background-color: rgba(0, 0, 0, 0);
  border-color: var(--red);
}

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

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

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

.btn.btn-panna {
  color: var(--color-dark);
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(63, 85, 103, 0.32);
}

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

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

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

.btn.btn-giallo {
  color: var(--blue);
  background-color: var(--giallo);
  border-color: var(--giallo);
}

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

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

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

.btn.btn-outline {
  color: var(--color-light);
  background-color: rgba(0, 0, 0, 0);
  border-color: var(--color-light);
  text-transform: initial;
  font-family: var(--font-family);
  padding: 10px 20px;
}

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

.filtri {
  padding: 5px 0;
}

.filtri ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.filtri ul li {
  display: inline-block;
  padding: 10px;
}

.form-contatti {
  display: block;
}

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

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

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

@media (min-width: 768px) {
  .form-contatti .contact-form .form-group.diff-size .form-input:last-child {
    max-width: 300px;
  }
}
.form-contatti .contact-form .form-group.allegato-form {
  margin-top: 25px;
  margin-bottom: 25px;
}

.form-contatti .contact-form .form-group.check-field {
  margin-bottom: 0;
}

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

@media (min-width: 768px) {
  .form-contatti .contact-form .form-group .form-input {
    width: auto;
  }
}
@media (max-width: 767px) {
  .form-contatti .contact-form .form-group .form-input:first-child {
    margin-bottom: 20px;
  }
}
.form-contatti .contact-form .form-group .form-input label {
  color: var(--color-light);
}

.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: none;
  border-radius: 20px;
  padding: 17px 20px;
  box-sizing: border-box;
  background: var(--color-light);
  color: var(--color-dark);
  font-size: 18px;
}

.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-dark);
  opacity: 0.4;
}

.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-dark);
  opacity: 0.4;
}

.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-dark);
  opacity: 0.4;
}

.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=text]:read-only, .form-contatti .contact-form .form-group .form-input input[type=number]:read-only, .form-contatti .contact-form .form-group .form-input input[type=email]:read-only, .form-contatti .contact-form .form-group .form-input input[type=password]:read-only, .form-contatti .contact-form .form-group .form-input textarea:read-only {
  cursor: not-allowed;
  opacity: 0.6;
}

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

.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 select {
  width: 100%;
  outline: none;
  border: none;
  border-radius: 20px;
  padding: 17px 20px;
  background-color: rgba(0, 0, 0, 0);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: 97% center;
  background-repeat: no-repeat;
  box-sizing: border-box;
  color: var(--color-dark);
  position: relative;
  z-index: 1;
  font-size: 16px;
}

.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 textarea {
  width: 100%;
  outline: none;
  height: 180px;
  font-family: var(--font-family);
}

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

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

.form-contatti .contact-form .form-group .form-input.privacy-container .checkmark {
  position: absolute;
  top: -6px;
  left: 0;
  height: 37px;
  width: 37px;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid var(--color-dark);
  border-radius: 50px;
  margin-bottom: 0;
}

.form-contatti .contact-form .form-group .form-input.privacy-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 7px;
  top: 7px;
  width: 21px;
  height: 21px;
  border-radius: 50px;
  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: 16px;
  color: var(--color-dark);
  padding-left: 46px;
  cursor: pointer;
  text-align: left;
}

.form-contatti .contact-form .form-group .form-input.privacy-container label a {
  font-size: 16px;
  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;
}

.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: 20px;
  border-bottom: 1px solid var(--color-light);
  border-left: none;
  border-right: none;
  border-top: none;
  padding: 10px 15px;
  color: var(--color-dark);
  cursor: pointer;
  overflow: hidden;
  position: relative;
  background-color: var(--grey-200);
  margin-left: 15px;
}

.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: var(--color-default);
}

.form-contatti .contact-form .form-group.inline-form {
  grid-gap: 0;
  gap: 0;
  margin-bottom: 20px;
}

.form-contatti .contact-form .form-group.inline-form .form-input {
  flex: 1 auto;
  margin-bottom: 20px;
}

@media (min-width: 992px) {
  .form-contatti .contact-form .form-group.inline-form .form-input {
    margin-bottom: 0;
  }
}
.form-contatti .contact-form .form-group.inline-form .form-input:last-child {
  max-width: 125px;
  margin-bottom: 20px;
  display: flex;
  justify-content: flex-start;
}

@media (min-width: 992px) {
  .form-contatti .contact-form .form-group.inline-form .form-input:last-child {
    margin-bottom: 0;
    display: flex;
    justify-content: flex-end;
  }
}
.form-contatti .contact-form.light .form-group {
  display: block;
  align-items: center;
  margin-bottom: 16px;
}

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

.form-contatti .contact-form.light .form-group .form-input label {
  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 {
  width: 100%;
  outline: none;
  border: none;
  border-radius: 20px;
  padding: 17px 20px;
  box-sizing: border-box;
  background: #578d6a;
  color: var(--color-light);
  font-size: 18px;
}

.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.4;
}

.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.4;
}

.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.4;
}

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

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

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

.form-contatti .contact-form.light .form-group .form-input select {
  width: 100%;
  outline: none;
  border: none;
  border-radius: 20px;
  padding: 17px 20px;
  background-color: rgba(0, 0, 0, 0);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: 97% center;
  background-repeat: no-repeat;
  box-sizing: border-box;
  color: var(--color-dark);
  position: relative;
  z-index: 1;
  font-size: 16px;
}

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

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

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

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

.form-contatti .contact-form.light .form-group .form-input.privacy-container .checkmark {
  position: absolute;
  top: -6px;
  left: 0;
  height: 37px;
  width: 37px;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid var(--color-light);
  border-radius: 50px;
  margin-bottom: 0;
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 7px;
  top: 7px;
  width: 21px;
  height: 21px;
  border-radius: 50px;
  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 {
  font-size: 16px;
  color: var(--color-light);
  padding-left: 46px;
  cursor: pointer;
  text-align: left;
}

.form-contatti .contact-form.light .form-group .form-input.privacy-container label a {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-light);
}

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

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

.form-contatti .contact-form.light .form-group .form-input .pseudo-input-file .pseudo-button-input {
  --color-border: transparent;
  display: flex;
  align-items: center;
  border-radius: 20px;
  border-bottom: none;
  border-left: none;
  border-right: none;
  border-top: none;
  padding: 16px 20px;
  color: var(--color-light);
  cursor: pointer;
  overflow: hidden;
  position: relative;
  background: #578d6a;
  color: var(--color-light);
  margin-left: 0;
}

.form-contatti .contact-form.light .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.light .form-group .form-input .pseudo-input-file .pseudo-button-input span {
  color: inherit;
}

.form-contatti .contact-form.light .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.light .form-group .form-input .pseudo-input-file .pseudo-button-input:hover::before {
  background-color: var(--color-default);
}

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

@media (min-width: 768px) {
  .form-contatti .contact-form.rivenditori .form-group {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 20px;
    gap: 20px;
    margin-bottom: 20px;
  }
}
[data-form-toggle] {
  display: none;
}

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

.intro {
  position: relative;
  min-height: calc(100vh - 90px);
  min-height: calc(100svh - 90px);
}

@media (min-width: 1100px) {
  .intro {
    min-height: 100vh;
    max-height: 100vh;
    min-height: 100svh;
    max-height: 100svh;
  }
}
.intro .img-gelato {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  object-fit: contain;
  max-width: unset;
  height: 100%;
}

@media (min-width: 992px) {
  .intro .img-gelato {
    object-fit: cover;
  }
}
@media (min-width: 1100px) {
  .intro .img-gelato {
    min-height: 100vh;
    max-height: 100vh;
    min-height: 100svh;
    max-height: 100svh;
  }
}
.intro .img-frutta {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  object-fit: cover;
  max-width: unset;
}

@media (min-width: 1100px) {
  .intro .img-frutta {
    min-height: 100vh;
    max-height: 100vh;
    min-height: 100svh;
    max-height: 100svh;
  }
}
.intro .center-element {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 1;
  position: relative;
}

@media (min-width: 1100px) {
  .intro .center-element {
    min-height: 100vh;
    max-height: 100vh;
    min-height: 100svh;
    max-height: 100svh;
  }
}
.img-scroll-down {
  width: 100px;
  margin: auto;
  cursor: pointer;
}

@media (min-width: 992px) {
  .img-scroll-down {
    width: 125px;
  }
}
.wawe {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  clip-path: polygon(100% 100%, 0% 100%, 0% 34.89%, 2% 40.2%, 4% 45.67%, 6% 51.19%, 8% 56.67%, 10% 61.99%, 12% 67.05%, 14% 71.77%, 16% 76.03%, 18% 79.78%, 20% 82.93%, 22% 85.42%, 24% 87.22%, 26% 88.27%, 28% 88.57%, 30% 88.1%, 32% 86.88%, 34% 84.93%, 36% 82.28%, 38% 79%, 40% 75.13%, 42% 70.75%, 44% 65.96%, 46% 60.83%, 48% 55.46%, 50% 49.97%, 52% 44.45%, 54% 39%, 56% 33.74%, 58% 28.77%, 60% 24.17%, 62% 20.03%, 64% 16.44%, 66% 13.47%, 68% 11.16%, 70% 9.57%, 72% 8.72%, 74% 8.63%, 76% 9.3%, 78% 10.72%, 80% 12.87%, 82% 15.69%, 84% 19.15%, 86% 23.16%, 88% 27.66%, 90% 32.56%, 92% 37.76%, 94% 43.17%, 96% 48.68%, 98% 54.19%, 100% 59.6%);
}

.intro-page {
  position: relative;
  min-height: 460px;
  overflow: hidden;
}

.intro-page:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(2, 14, 26, 0.32);
}

.intro-page .abs-img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  object-fit: cover;
  max-width: unset;
  height: 100%;
}

.intro-page .title {
  position: relative;
  z-index: 2;
}

.intro-page-big {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
}

.intro-page-big:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(2, 14, 26, 0.32);
}

.intro-page-big .abs-img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  object-fit: cover;
  max-width: unset;
  min-height: 100vh;
  min-height: 100svh;
}

.intro-page-big .title {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.intro-page-big .scroll {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  cursor: pointer;
}

.intro-page-half {
  position: relative;
  min-height: 82vh;
  min-height: 82svh;
  overflow: hidden;
}

.intro-page-half:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(2, 14, 26, 0.32);
}

.intro-page-half .abs-img {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  object-fit: cover;
  max-width: unset;
  min-height: 82vh;
  min-height: 82svh;
}

.image-parallax-center {
  position: relative;
}

@media (min-width: 992px) {
  .image-parallax-center img {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
  }
}
.image-parallax {
  overflow: hidden;
  max-height: 724px;
}

.image-parallax .image {
  position: relative;
}

.image-parallax img {
  display: flex;
  object-fit: cover;
  overflow: hidden;
}

.image-parallax.diff-size {
  max-height: unset;
}

.image-parallax-center-bottom {
  position: relative;
}

.image-parallax-center-bottom .image {
  position: relative;
}

@media (min-width: 992px) {
  .image-parallax-center-bottom .image {
    top: 100px;
  }
}
.image-parallax-center-bottom .image img {
  position: relative;
  z-index: 1;
}

.image-parallax-left-bottom {
  position: relative;
}

.image-parallax-left-bottom .image {
  position: relative;
}

@media (max-width: 991px) {
  .image-parallax-left-bottom .image {
    max-height: 402px;
    width: 100%;
  }
}
.image-parallax-left-bottom .image img {
  position: relative;
  z-index: 1;
  object-fit: cover;
}

@media (max-width: 991px) {
  .image-parallax-left-bottom .image img {
    max-height: 402px;
    width: 100%;
  }
}
.parallax-zoom {
  text-align: center;
  position: relative;
  height: 200vh;
}

.parallax-zoom .image-container {
  position: sticky;
  top: 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
}

.parallax-zoom img {
  position: relative;
  pointer-events: none;
  object-fit: cover;
  height: 100vh;
  width: 100vw;
  max-width: none;
}

.parallax-zoom .parallax-svg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.azienda {
  position: relative;
}

.azienda .img-azienda-top-left {
  position: absolute;
  top: 160px;
  left: 8%;
  width: 298px;
  z-index: -1;
  border-radius: 50px;
}

@media (max-width: 991px) {
  .azienda .img-azienda-top-left {
    display: none;
  }
}
@media (min-width: 1681px) {
  .azienda .img-azienda-top-left {
    width: 398px;
    top: 220px;
    left: 10%;
  }
}
.azienda .img-azienda-bottom-left {
  position: absolute;
  bottom: 80px;
  left: 5%;
  width: 298px;
  z-index: -1;
  border-radius: 50px;
}

@media (max-width: 991px) {
  .azienda .img-azienda-bottom-left {
    display: none;
  }
}
@media (min-width: 1681px) {
  .azienda .img-azienda-bottom-left {
    width: 398px;
    bottom: 220px;
  }
}
.azienda .img-azienda-top-right {
  position: absolute;
  right: 5%;
  width: 298px;
  z-index: -1;
  top: 320px;
  border-radius: 50px;
}

@media (max-width: 991px) {
  .azienda .img-azienda-top-right {
    display: none;
  }
}
@media (min-width: 1681px) {
  .azienda .img-azienda-top-right {
    width: 398px;
    top: 720px;
  }
}
.azienda .img-azienda-bottom-right {
  position: absolute;
  right: 12%;
  width: 200px;
  z-index: -1;
  bottom: 80px;
  border-radius: 50px;
}

@media (max-width: 991px) {
  .azienda .img-azienda-bottom-right {
    display: none;
  }
}
@media (min-width: 1681px) {
  .azienda .img-azienda-bottom-right {
    width: 260px;
  }
}
.steps .block-step {
  border: 3px solid var(--color-dark);
  background-color: var(--color-light);
  border-radius: 40px;
  padding: 20px;
  margin-bottom: 20px;
}

@media (min-width: 992px) {
  .steps .block-step {
    padding: 30px 80px;
    border-radius: 140px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%);
    transition: all 1.5s ease-in-out;
  }
}
@media (min-width: 992px) {
  .steps .block-step.reveal-block {
    opacity: 1;
    visibility: visible;
    transition: all 1.5s ease-in-out;
    transform: translateY(0);
  }
}
.steps .block-step .grid * {
  margin-bottom: 0;
}

.steps .block-step .grid .img-step {
  height: 90px;
  width: 81px;
}

@media (min-width: 992px) {
  .steps .block-step .grid .img-step {
    height: 137px;
    width: 122px;
  }
}
@media (min-width: 576px) and (max-width: 1450px) {
  .sliders {
    padding: 0 20px;
  }
}
.sliders .prodotti-grid .slick-list {
  overflow: visible;
}

.sliders .prodotti-grid .grid {
  transition: var(--transition-default);
  position: relative;
  overflow: hidden;
  border-radius: 40px;
  margin: 0 8px;
}

.sliders .prodotti-grid .grid .img-piano {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 1;
  object-fit: cover;
}

.sliders .prodotti-grid .grid .piano {
  transition: var(--transition-default);
  border-radius: 40px;
  padding: 30px;
  position: relative;
  width: 100%;
  min-height: 590px;
  background-color: rgba(2, 14, 26, 0.32);
  z-index: 0;
}

@media (min-width: 992px) {
  .sliders .prodotti-grid .grid .piano {
    min-height: 740px;
    padding: 60px 30px;
  }
}
.sliders .prodotti-grid .grid .piano .small-desc {
  transition: var(--transition-default);
  overflow: hidden;
  height: 0;
  left: 30px;
  bottom: 120px;
}

.sliders .prodotti-grid .grid:hover {
  transition: var(--transition-default);
}

.sliders .prodotti-grid .grid:hover .img-piano {
  opacity: 1;
}

.sliders .prodotti-grid .grid:hover .piano {
  transition: var(--transition-default);
  background: var(--blue);
  z-index: 8;
}

.sliders .prodotti-grid .grid:hover .piano .small-desc {
  transition: var(--transition-default);
  height: auto;
  overflow: visible;
}

.sliders .arrow-prev {
  position: absolute;
  top: -60px;
  left: 10px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .sliders .arrow-prev {
    left: 0;
    bottom: -60px;
    top: unset;
  }
}
.sliders .arrow-next {
  position: absolute;
  top: -60px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .sliders .arrow-next {
    bottom: -60px;
    top: unset;
  }
}
.sliders .slick-dots {
  width: auto;
  background-color: var(--giallo);
  border-radius: 20px;
  display: flex;
  padding: 14px 10px;
  top: -60px;
  bottom: unset;
  left: 60px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .sliders .slick-dots {
    left: 50px;
    bottom: -60px;
    top: unset;
  }
}
.sliders .slick-dots li {
  color: var(--color-light);
  opacity: 1;
  width: 5px;
  height: 5px;
  margin: 0 8px;
}

.sliders .slick-dots li button {
  width: 5px;
  height: 5px;
  border-bottom: 5px solid var(--color-light);
  border-radius: 50px;
  padding: 0;
}

.sliders .slick-dots li button:before {
  content: none;
  color: var(--color-light);
  opacity: 1;
}

.sliders .slick-dots li.slick-active {
  width: 25px;
}

.sliders .slick-dots li.slick-active button {
  width: 25px;
}

.sliders .z-index-zampe {
  position: relative;
  z-index: 2;
}

.sliders .zampe-hover {
  position: absolute;
  top: -80px;
  right: 0;
  z-index: 1;
  max-width: 300px;
  width: 100%;
}

@media (min-width: 992px) {
  .sliders .zampe-hover {
    max-width: 600px;
  }
}
.recensioni .img-sfondo {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 992px) {
  .recensioni .img-sfondo {
    width: 100%;
    max-width: unset;
  }
}
.recensioni:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(2, 14, 26, 0.32);
  z-index: 1;
}

.recensioni .title {
  position: relative;
  z-index: 2;
}

.recensioni .recensioni-slider {
  z-index: 2;
  overflow: visible;
}

.recensioni .recensioni-slider .slick-list {
  overflow: visible;
}

.recensioni .recensioni-slider .slick-list .slick-track {
  overflow: visible;
}

.recensioni .recensioni-slider .recensione-item {
  overflow: visible;
  margin: 0 8px;
  border-radius: 40px;
  padding: 40px;
  background-color: var(--color-light);
  transition: var(--transition-default);
  -webkit-box-shadow: 3px 3px 6px 2px rgba(0, 0, 0, 0.32);
  box-shadow: 3px 3px 6px 2px rgba(0, 0, 0, 0.32);
}

@media (min-width: 1681px) {
  .recensioni .recensioni-slider .recensione-item {
    padding: 80px;
  }
}
.recensioni .recensioni-slider .recensione-item.slick-center {
  border: 3px solid var(--blue);
}

.recensioni .recensioni-slider .recensione-item .img-foto {
  width: 80px;
  height: 80px;
}

.recensioni .recensioni-slider .recensione-item .img-star {
  width: 122px;
  height: auto;
  margin-left: 20px;
}

.recensioni .recensioni-slider .recensione-item .data-opacity {
  opacity: 0.6;
}

.recensioni .recensioni-slider .recensione-item .change-color {
  color: var(--color-dark);
}

.recensioni .recensioni-slider .recensione-item:hover {
  transition: var(--transition-default);
  background-color: var(--blue);
}

.recensioni .recensioni-slider .recensione-item:hover .change-color {
  color: var(--color-light);
}

.recensioni .recensioni-slider .arrow-prev {
  position: absolute;
  bottom: -60px;
  left: 10px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .recensioni .recensioni-slider .arrow-prev {
    left: 0;
  }
}
.recensioni .recensioni-slider .arrow-next {
  position: absolute;
  bottom: -60px;
  cursor: pointer;
}

.recensioni .recensioni-slider .slick-dots {
  width: auto;
  background-color: var(--giallo);
  border-radius: 20px;
  display: flex;
  padding: 14px 10px;
  bottom: -60px;
  left: 60px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .recensioni .recensioni-slider .slick-dots {
    left: 50px;
  }
}
.recensioni .recensioni-slider .slick-dots li {
  color: var(--color-light);
  opacity: 1;
  width: 5px;
  height: 5px;
  margin: 0 8px;
}

.recensioni .recensioni-slider .slick-dots li button {
  width: 5px;
  height: 5px;
  border-bottom: 5px solid var(--color-light);
  border-radius: 50px;
  padding: 0;
}

.recensioni .recensioni-slider .slick-dots li button:before {
  content: none;
  color: var(--color-light);
  opacity: 1;
}

.recensioni .recensioni-slider .slick-dots li.slick-active {
  width: 25px;
}

.recensioni .recensioni-slider .slick-dots li.slick-active button {
  width: 25px;
}

.contatti .contact-info {
  margin-bottom: 30px;
}

@media (min-width: 992px) {
  .contatti .contact-info {
    margin-bottom: 20px;
  }
}
.contatti .contact-info .contact-social .fake-cta {
  border-radius: 50px;
  color: var(--color-light);
  background-color: rgba(0, 0, 0, 0);
  display: block;
  text-align: center;
  transition: var(--transition-default);
}

@media (min-width: 992px) {
  .contatti .contact-info .contact-social .fake-cta {
    display: inline-block;
  }
}
.contatti .contact-info .contact-social .fake-cta.svg {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.contatti .contact-info .contact-social .fake-cta.svg g circle {
  transition: var(--transition-default);
  fill: var(--color-light);
}

.contatti .contact-info .contact-social .fake-cta.svg circle {
  transition: var(--transition-default);
  fill: var(--color-light);
}

.contatti .contact-info .contact-social .fake-cta.text {
  padding: 8px 20px;
  font-weight: bold;
  border: 1px solid var(--color-light);
}

@media (max-width: 374px) {
  .contatti .contact-info .contact-social .fake-cta.text {
    font-size: 14px;
  }
}
@media (min-width: 992px) {
  .contatti .contact-info .contact-social .fake-cta.text {
    padding: 8px 20px;
    font-size: 20px;
  }
}
.contatti .contact-info .contact-social .fake-cta:hover {
  background-color: var(--giallo);
  transition: var(--transition-default);
}

.contatti .contact-info .contact-social .fake-cta:hover.svg g circle {
  transition: var(--transition-default);
  fill: var(--giallo);
}

.contatti .contact-info .contact-social .fake-cta:hover.svg circle {
  transition: var(--transition-default);
  fill: var(--giallo);
}

.tooltip {
  position: relative;
  display: inline-block;
}

.tooltip .tooltiptext {
  visibility: hidden;
  opacity: 0;
  width: 140px;
  background-color: var(--dark-green);
  color: #fff;
  text-align: center;
  border-radius: 12px;
  padding: 8px 15px;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  margin: 0;
  transition: var(--transition-default);
}

.tooltip .tooltiptext:after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) var(--dark-green) rgba(0, 0, 0, 0);
}

.tooltip:hover .tooltiptext {
  transition: var(--transition-default);
  visibility: visible;
  opacity: 1;
}

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

@media (min-width: 1100px) {
  header {
    height: 100px;
    border-bottom-left-radius: 64px;
    border-bottom-right-radius: 64px;
  }
}
header .header-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 80px;
}

@media (min-width: 1100px) {
  header .header-container {
    height: 100px;
  }
}
@media (min-width: 1960px) {
  header .header-container.p-0-header {
    padding-left: 0;
    padding-right: 0;
  }
}
header .header-container .logo-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  width: calc(100% - 120px);
  order: 1;
}

@media (min-width: 1100px) {
  header .header-container .logo-container {
    align-items: flex-start;
    width: 200px;
  }
}
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: var(--transition-default);
  vertical-align: middle;
}

header .header-container nav.menu-container {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  width: 120px;
  order: 3;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container {
    justify-content: flex-start;
    width: calc(100% - 400px);
  }
}
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: 1099px) {
  header .header-container nav.menu-container ul.menu {
    overflow-y: scroll;
  }
}
@media (max-height: 500px) and (max-width: 1099px) {
  header .header-container nav.menu-container ul.menu {
    padding-top: 150px;
    padding-bottom: 75px;
    overflow-y: scroll;
  }
}
@media (max-width: 1099px) {
  header .header-container nav.menu-container ul.menu {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    flex-direction: column;
    align-items: center;
    transform: translateX(100vw);
    margin-top: 80px;
    background-color: var(--color-light);
  }
}
header .header-container nav.menu-container ul.menu li.link-menu {
  padding: 8px 15px;
  margin-bottom: 0;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu {
    padding: 0 10px;
  }
}
@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu:last-child {
    padding-right: 0;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu > a, header .header-container nav.menu-container ul.menu li.link-menu > span {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 10px 22px;
  margin-bottom: 0;
  cursor: pointer;
  transition: var(--transition-default);
  font-weight: 400;
  font-family: var(--font-family-menu);
  font-size: 20px;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--dark-green);
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu > a, header .header-container nav.menu-container ul.menu li.link-menu > span {
    padding: 12px 22px 4px;
    display: inline-block;
    font-size: 18px;
  }
}
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:hover, header .header-container nav.menu-container ul.menu li.link-menu > span.active, header .header-container nav.menu-container ul.menu li.link-menu > span:hover {
  transition: var(--transition-default);
  color: var(--red);
}

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

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu.show-mobile {
    display: none;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu .submenu-container {
  width: 100%;
  transition: opacity 0.5s ease-in-out, max-height 0.5s ease-in-out;
  pointer-events: none;
  opacity: 0;
  max-height: 0;
  overflow: hidden;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu .submenu-container {
    position: absolute;
    left: 0;
    padding-top: 20px;
    max-height: none;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu {
  padding: 20px;
  list-style: none;
  background-color: var(--color-light);
  border-radius: 25px;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu {
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.1);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu li {
  margin-bottom: 6px;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu li {
    text-align: left;
  }
}
header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu li a {
  font-family: var(--font-family-menu);
  text-transform: uppercase;
  color: var(--dark-green);
  transition: var(--transition-default);
}

header .header-container nav.menu-container ul.menu li.link-menu .submenu-container .submenu li a:hover {
  color: var(--red);
}

@media (max-width: 1099px) {
  header .header-container nav.menu-container ul.menu li.link-menu.has-submenu.submenu-active .submenu-container {
    opacity: 1;
    pointer-events: auto;
    max-height: 600px;
  }
}
@media (min-width: 1100px) {
  header .header-container nav.menu-container ul.menu li.link-menu.has-submenu:hover .submenu-container {
    opacity: 1;
    pointer-events: auto;
  }
}
header .header-container nav.menu-container .hamburger {
  position: relative;
  width: 35px;
  height: 35px;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  box-sizing: content-box;
  padding: 20px 15px;
  cursor: pointer;
}

@media (min-width: 1100px) {
  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: 3px;
  background-color: var(--color-dark);
  transition: var(--transition-default);
}

header .header-container nav.menu-container .language-menu-container {
  display: flex;
}

@media (min-width: 1100px) {
  header .header-container nav.menu-container .language-menu-container {
    display: none;
  }
}
header .header-container .menu-contatti {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  width: 200px;
  order: 2;
}

@media (min-width: 1100px) {
  header .header-container .menu-contatti {
    align-items: center;
    order: 3;
  }
}
header .header-container .menu-contatti .social {
  margin-left: 20px;
}

header .header-container .menu-contatti .social.facebook i {
  color: var(--blue);
}

header .header-container .menu-contatti .social.whatsapp i {
  color: var(--dark-green);
}

@media (min-width: 1100px) {
  header .header-container .menu-contatti .social.whatsapp {
    display: none;
  }
}
header .header-container .menu-contatti .social i {
  font-size: 26px;
}

header .header-container .language-menu-container {
  position: relative;
  display: flex;
  align-items: center;
  margin-right: 8px;
  margin-left: 20px;
}

@media (min-width: 1100px) {
  header .header-container .language-menu-container {
    margin-right: 0;
  }
}
header .header-container .language-menu-container .selected-language {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-bottom: 0;
}

header .header-container .language-menu-container .selected-language img {
  width: 30px;
}

header .header-container .language-menu-container .language-menu {
  display: none;
  position: absolute;
  background-color: var(--color-light);
  top: 100%;
  margin-top: 10px;
  left: -5px;
  box-shadow: 0px 1px 4px 1px rgba(0, 0, 0, 0.2);
}

header .header-container .language-menu-container .language-menu.active {
  display: block;
}

header .header-container .language-menu-container .language-menu a {
  display: flex;
  padding: 5px;
  justify-content: center;
  color: var(--color-dark);
  margin-bottom: 0;
}

header .header-container .language-menu-container .language-menu a img {
  min-width: 30px;
}

header .header-container .language-menu-container .language-menu a:hover {
  background-color: #ddd;
}

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

header.other-header .header-container {
  border-bottom: 1px solid var(--giallo);
}

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

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

header.other-header nav.menu-container ul.menu li a {
  color: var(--blue);
}

header.other-header nav.menu-container ul.menu li a:hover {
  color: var(--blue);
}

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

header.other-header nav.menu-container ul.menu li a.contattaci:hover, header.other-header nav.menu-container ul.menu li a.contattaci:focus, header.other-header nav.menu-container ul.menu li a.contattaci:active, header.other-header nav.menu-container ul.menu li a.contattaci:not(:disabled):active, header.other-header nav.menu-container ul.menu li a.contattaci.active {
  color: var(--color-light);
}

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

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

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

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

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

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

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

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

body.light-header header {
  background-color: var(--color-light);
  transition: var(--transition-default);
}

@media (min-width: 1100px) {
  body.light-header header {
    height: 100px;
  }
}
body.light-header header .header-container {
  border-bottom: 1px solid var(--giallo);
  transition: var(--transition-default);
}

@media (min-width: 1100px) {
  body.light-header header .header-container {
    height: 100px;
  }
}
body.light-header header .header-container .logo-container a .logo-dark {
  display: block;
}

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

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

body.light-header header nav.menu-container ul.menu li a:hover {
  color: var(--blue);
}

body.light-header header nav.menu-container ul.menu li a:before {
  border-color: var(--blue);
}

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

body.light-header header .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.menu-open-overlay {
  transition: var(--transition-default);
}

@media (min-width: 1100px) {
  body.menu-open-overlay:before {
    content: "";
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(25, 25, 25, 0.8);
    transition: var(--transition-default);
    z-index: 3;
  }
}
body.menu-open-overlay .submenu-container {
  transform: translateX(0);
  transition: var(--transition-default);
}

@media (min-width: 1100px) {
  body.menu-open-overlay .submenu-container {
    transform: unset;
    visibility: visible;
    opacity: 1;
    z-index: 2;
  }
}
@keyframes hamburger_toggle_before {
  0% {
    transform-origin: center;
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(8px);
  }
  100% {
    transform: translateY(8px) rotate(45deg);
  }
}
@keyframes hamburger_toggle_after {
  0% {
    transform-origin: center;
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-9px);
  }
  100% {
    transform: translateY(-9px) rotate(-45deg);
  }
}
.border-elipse {
  border-top-left-radius: 70%;
  border-top-right-radius: 70%;
}

.border-elipse.negative-margin {
  margin-top: -100px;
  position: relative;
  z-index: 1;
}

@media (min-width: 1681px) {
  .border-elipse.negative-margin {
    margin-top: -145px;
  }
}
footer {
  padding-top: 20px;
  padding-bottom: 20px;
}

footer p {
  font-family: var(--font-family) !important;
}

footer p a {
  font-family: var(--font-family) !important;
  display: inline-block !important;
  font-weight: bold;
}

@media (min-width: 992px) {
  .lg\:text-center {
    text-align: center;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9fY29sb3JzLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19hbmltYXRpb25zLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL2ZvbnRzL19mb250cy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fY3VzdG9tLnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsImNvbXBvbmVudHMvX2Jsb2NrLWdyaWRzLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZmlsdHJpLnNjc3MiLCJjb21wb25lbnRzL19mb3JtLnNjc3MiLCJhYnN0cmFjdHMvX21peGlucy5zY3NzIiwiY29tcG9uZW50cy9faW50cm8uc2NzcyIsImNvbXBvbmVudHMvX3BhcmFsbGF4LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImJhc2UvX3Jlc3BvbnNpdmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFHQTs7O0FDWko7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBUUE7RUFRQTtFQUNBO0VBZUE7RUFLQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQXNCQTtFQUNBO0VBQ0E7RUFrQkE7RUFDQTtFQUNBO0VBY0E7RUFDQTtFQUNBO0VBVUE7RUFDQTtFQUNBO0VBVUE7RUFDQTtFQUNBOzs7QUFqSUE7RUFuQko7SUFvQlE7OztBQUVKO0VBdEJKO0lBdUJROzs7QUFJSjtFQTNCSjtJQTRCUTs7O0FBRUo7RUE5Qko7SUErQlE7OztBQW1DSjtFQWxFSjtJQW1FUTs7O0FBR0o7RUF0RUo7SUF1RVE7OztBQUdKO0VBMUVKO0lBMkVROzs7QUFHSjtFQTlFSjtJQStFUTs7O0FBR0o7RUFsRko7SUFtRlE7OztBQU9KO0VBMUZKO0lBMkZROzs7QUFHSjtFQTlGSjtJQStGUTs7O0FBR0o7RUFsR0o7SUFtR1E7OztBQUdKO0VBdEdKO0lBdUdROzs7QUFPSjtFQTlHSjtJQStHUTs7O0FBR0o7RUFsSEo7SUFtSFE7OztBQUdKO0VBdEhKO0lBdUhROzs7QUFPSjtFQTlISjtJQStIUTs7O0FBR0o7RUFsSUo7SUFtSVE7OztBQU9KO0VBMUlKO0lBMklROzs7QUFHSjtFQTlJSjtJQStJUTs7O0FDMUpSO0VBQ0U7SUFBQTs7RUFDQTtJQUFBOzs7QUFFRjtFQUNFO0lBQUE7O0VBQ0E7SUFBQTs7O0FBRUY7RUFDRTtJQUFBOztFQUNBO0lBQUE7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNFOzs7QUFJSjtFQUNFO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSU47RUFDRTtJQUNFOztFQUVGO0lBQ0U7OztBQUdKO0VBQ0U7RUFDQTs7O0FDL0JGO0VBRUk7RUFDQTs7O0FBR0o7RUFDSTs7O0FBUUo7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUNBO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUtaO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUNBO0VBSko7SUFLUTs7O0FBTUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBS1o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQVNoQjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUErQ1I7RUFDSTtFQUNBOzs7QUFNSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNROzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdBO0VBREo7SUFFUTs7O0FBS0o7RUFESjtJQUVROzs7QUFLSjtFQURKO0lBRVE7OztBQUdSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFJUjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTs7O0FBS1o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUtaO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7OztBQU9SO0VBQ0k7RUFDQTs7O0FBS0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0E7RUFESjtJQUVROzs7QUFHUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHQTtFQURKO0lBRVE7OztBQUtKO0VBREo7SUFFUTs7O0FBS0o7RUFESjtJQUVROzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQVNKO0VBREo7SUFFUTtJQUNBOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQU9KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtaO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlKO0VBQ0k7OztBQUVBO0VBQ0k7OztBQVNKO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQUtSO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFJQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUlBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBTVo7RUFDSTtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBSUE7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFNWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUlBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBTVo7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFJQTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQ3pzQ1o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FDM0RKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU1KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDQTs7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFOSjtJQU9ROzs7QUFJSjtFQVhKO0lBWVE7OztBQUdKO0VBZko7SUFnQlE7OztBQUdKO0VBbkJKO0lBb0JROzs7QUFPUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFNSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFNSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUMzUEo7RUFDSTs7O0FBTEE7RUFDSTs7O0FBUUo7RUFDSTs7O0FBVko7RUFDSTs7O0FDREo7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTtJQUNBO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFWSjtJQVdROzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVpKO0lBYVE7OztBQUtaO0VBQ0k7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlBO0VBQ0k7OztBQUVBO0VBQ0k7OztBQU9aO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFJUjtFQUNJOzs7QUFJQTtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFOSjtJQU9RO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFDQTtFQUpKO0lBS1E7OztBQU9aO0VBQ0k7OztBQUVBO0VBQ0k7RUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ3RMWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtRO0lBQ0E7OztBQUlSO0VBQ0k7OztBQUlBO0VBREo7SUFFUTs7O0FBSUE7RUFESjtJQUVROzs7QUFLUjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUdKO0VBUEo7SUFRUTs7O0FBR0o7RUFYSjtJQVlROzs7QUFHSjtFQUNJOzs7QUFLSjtFQURKO0lBRVE7OztBQUtBO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtRO0lBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFRaEI7RUFESjtJQUVROzs7QUFHSjtFQUxKO0lBTVE7OztBQUdKO0VBVEo7SUFVUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR0o7RUFUSjtJQVVRO0lBQ0E7OztBQUlKO0VBZko7SUFnQlE7OztBQUtKO0VBREo7SUFFUTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUtKO0VBREo7SUFFUTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUdKO0VBYko7SUFjUTs7O0FBT1I7RUFESjtJQUVROzs7QUFHSjtFQUxKO0lBTVE7OztBQUlSO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBR0o7RUFQSjtJQVFROzs7QUFHSjtFQVhKO0lBWVE7OztBQU1KO0VBQ0k7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7O0FBS0o7RUFDSTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUtKO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFLWjtFQUNJOzs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBU3BCO0VBR0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBSUE7RUFDSTs7O0FBS0o7RUFDSTtFQUNBOzs7QUFNSjtFQUNJOzs7QUFJUjtFQUNJOzs7QUFNQTtFQUNJOzs7QUFDQTtFQUZKO0lBR087OztBQUlQO0VBQ0k7OztBQUNBO0VBRko7SUFHUTs7O0FBUVI7RUFDSTs7O0FBQ0E7RUFGSjtJQUdPOzs7QUFJUDtFQUNJOzs7QUFDQTtFQUZKO0lBR1E7OztBQ3hWcEI7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFJQTtFQUNJOzs7QUFVWjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFFQTtFQUNJOzs7QUNoRWhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQXBCSjtJQXFCUTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFJSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUlJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBSUk7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFJSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUlJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBSUk7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFJSTtFQUNBO0VBQ0E7OztBQ3BJWjtFQUNJOzs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUNUWjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0k7OztBQU9RO0VBRko7SUFHUTs7O0FBTWhCO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBS0E7RUFGSjtJQUdROzs7QUFJUjtFQUNJOzs7QUFJSjtFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFJUjtFQVNJOzs7QUFQQTtFQUVJO0VBQ0E7OztBQU9SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFNUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VDNVF4QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VEMFF3QjtFQUNBOzs7QUFJQTtFQUNJOzs7QUFPcEI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTtJQUNBOzs7QUFRaEI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFJSjtFQUNJOzs7QUFJQTtFQUNJOzs7QUFHSjtFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQU1SO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQ3JnQjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RURtZ0I0QjtFQUNBOzs7QUFJQTtFQUNJOzs7QUFVeEI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFTcEI7RUFDSTs7O0FBRUE7RUFDSTs7O0FFL2lCUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7SUFFQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBWEo7SUFZUTs7O0FBR0o7RUFmSjtJQWdCUTtJQUNBO0lBRUE7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7O0FBRUE7RUFWSjtJQVdRO0lBQ0E7SUFFQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFVQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQWJBO0VBSko7SUFLUTtJQUNBO0lBRUE7SUFDQTs7O0FBWVo7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBTVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDM01SO0VBQ0k7OztBQUdJO0VBRko7SUFHUTtJQUNBO0lBQ0E7SUFDQTs7O0FBS1o7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBSUo7RUFDSTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFHSjtFQUNJO0VBQ0E7OztBQUtaO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUdBO0VBSko7SUFLUTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7OztBQU9oQjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNyR1I7RUFDSTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBR0o7RUFaSjtJQWFRO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBR0o7RUFaSjtJQWFRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7OztBQUdKO0VBWko7SUFhUTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNROzs7QUFHSjtFQVpKO0lBYVE7OztBQU1SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFQSjtJQVFRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBSUE7RUFESjtJQUVRO0lBQ0E7SUFDQTtJQUNBOzs7QUFNSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTtJQUNBOzs7QUFTaEI7RUFESjtJQUVPOzs7QUFJQztFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7SUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBOzs7QUFLUjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQU9wQjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUVBO0VBQ0k7OztBQU1oQjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7OztBQU9SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBQ0E7RUFDSTs7O0FBRUE7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVZKO0lBV1E7OztBQUdKO0VBQ0k7OztBQUlKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFOSjtJQU9ROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVZKO0lBV1E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTs7O0FBRUE7RUFDSTs7O0FBU3BCO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSTtFQUNJO0VBQ0E7OztBQUlQO0VBQ0c7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBR0o7RUFUSjtJQVVRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBSU87RUFDSztFQUNBOzs7QUFHUjtFQUNJO0VBQ0E7OztBQ2xnQjVCO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLSjtFQUNJO0VBQ0E7RUFDQTs7O0FDdENaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUEo7SUFRUTs7O0FBSUE7RUFESjtJQUVRO0lBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7SUFDQTs7O0FBR0o7RUFDSTs7O0FBRUE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQU1aO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVRKO0lBVVE7SUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFUSjtJQVVROzs7QUFHSjtFQWJKO0lBY1E7SUFDQTtJQUNBOzs7QUFHSjtFQW5CSjtJQW9CUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7OztBQUlBO0VBREo7SUFFUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFmSjtJQWdCUTtJQUNBO0lBQ0E7OztBQUdKO0VBRUk7RUFDQTs7O0FBS1I7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNRO0lBQ0E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQVNoQjtFQUVRO0lBQ0k7SUFDQTtJQUNBOzs7QUFJWjtFQUVRO0lBQ0k7SUFDQTs7O0FBU3hCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7OztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUtaO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVRKO0lBVVE7SUFDQTs7O0FBR0o7RUFDSTs7O0FBR0k7RUFDSTs7O0FBS0o7RUFDSTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFJUjtFQUNJOzs7QUFNWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUEo7SUFRUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFPcEI7RUFDSTs7O0FBRUE7RUFDSTs7O0FBSVE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBVUo7RUFDSTs7O0FBRUE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUE7RUFLSTs7O0FBUWhCO0VBRUk7OztBQVFBO0VBQ0k7OztBQVF4QjtFQUNJOzs7QUFRb0I7RUFDSTs7O0FBT1o7RUFDSTs7O0FBSUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFQSjtJQVFROzs7QUFHUjtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFRQTtFQUNJOzs7QUFTcEI7RUFDSTtFQUNBOzs7QUFFQTtFQUpKO0lBS1E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFLSTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFVSjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFPWjtFQUVJOzs7QUFRQTtFQUNJOzs7QUFhSjtFQUNJO0VBQ0E7RUFDQTs7O0FBSUE7RUFDSTs7O0FBUzVCO0VBQ0k7OztBQUdJO0VBREo7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTtJQUNBO0lBQ0E7SUFDQTs7O0FBTWhCO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUN6bkJSO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTs7O0FBTVo7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFQTtFQUNJO0VBQ0E7RUFFQTs7O0FDcEJaO0VBQ0k7SUFDSSIsImZpbGUiOiJtYWluLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gICAgLS1jb2xvci1saWdodDogI2ZmZmZmZjtcbiAgICAtLWNvbG9yLWRhcms6ICMzRjU1Njc7IC8vIGNvbG9yZSBkZWZhdWx0IHRlc3RpXG5cbiAgICAtLWdyZXktMTAwOiAjRjhGNkYyO1xuICAgIC0tZ3JleS0yMDA6ICNlZGVkZWQ7XG4gICAgLS1ncmV5LTMwMDogI0QwRDBEMDtcbiAgICAtLWdyZXktNDAwOiAjN0Q3RDdEO1xuICAgIC0tZ3JleS01MDA6ICM3MDcwNzA7XG5cbiAgICAtLXllbGxvdzogI0ZGQzk3ODtcbiAgICAtLXBhbm5hOiAjZjVmMWUzO1xuICAgIC0tcmVkOiAjREIwQTBCO1xuICAgIC0tb3JhbmdlOiAjRUQ3ODVFO1xuICAgIC0tZGFyay1ncmVlbjogIzA2NTcyMjtcbiAgICAtLWdyZWVuOiAjODg5NTgzO1xuICAgIC0tbGlnaHQtZ3JlZW46ICM5RUJGOTk7XG4gICAgLS1ibHVlOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAtLWxpZ2h0LWJsdWU6ICNBNkMxRDY7XG5cbiAgICAtLWJsYWNrOiAjMUExQTFBO1xuXG5cbiAgICAtLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWNvbG9yLWRhcmspOyAvL0NvbG9yZSBkZWZhdWx0IGRlbCB0ZXN0b1xufSIsIi8qKlxuKlxuKiBWYXJpYWJpbGkgZ2xvYmFsaSBwcm9nZXR0b1xuKiBcbiogMDEgLSBDT05URU5JVE9SSVxuKiAwMiAtIFNFUEFSQVRPUklcbiogMDMgLSBUUkFOU0laSU9OSVxuKiAwNCAtIEZPTlRTXG4qXG4qL1xuXG46cm9vdCB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIDAxIC0gQ09OVEVOSVRPUklcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICAgLS1jb250YWluZXItYmlnLXdpZHRoOiAxODEwcHg7IC8vQ29udGFpbmVyIG1hc3NpbW9cbiAgICAtLWNvbnRhaW5lci13aWR0aDogMTY3MHB4OyAvL0NvbnRhaW5lciBwcmluY2lwYWxlIHhcbiAgICAtLWNvbnRhaW5lci1sYXJnZS13aWR0aDogMTU0MHB4OyAvL0NvbnRhaW5lciBwcmluY2lwYWxlIHhcbiAgICAtLWNvbnRhaW5lci1tZWRpdW0td2lkdGg6IDEzOTBweDsgLy9Db250YWluZXIgbWVkaW8geFxuICAgIC0tY29udGFpbmVyLXNtYWxsLXdpZHRoOiAxMTgwcHg7IC8vQ29udGFpbmVyIG1lZGlvIHhcbiAgICAtLWNvbnRhaW5lci1taWQtc21hbGwtd2lkdGg6IDEwNjBweDsgLy9Db250YWluZXIgbWVkaW8geFxuICAgIC0tY29udGFpbmVyLWV4dHJhLXNtYWxsLXdpZHRoOiA4ODBweDtcbiAgICAtLWNvbnRhaW5lci1taW5pLXdpZHRoOiA3NjBweDtcbiAgICAtLWJsb2NrLW1pbi13aWR0aDogNjAwcHg7XG4gICAgLS1ibG9jay1leHRyYS1taW4td2lkdGg6IDQ2MHB4OyAvL0FsdGV6emEgbWluaW1hIGJsb2NjaGkgaW1tYWdpbmUvdGVzdG9cbiAgICBcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDIgLSBTRVBBUkFUT1JJXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC0tc3BhY2VyLWJpZzogMzBweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1zcGFjZXItYmlnOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWJpZzogNTBweDtcbiAgICB9XG5cbiAgICAtLXNwYWNlci1sYXJnZTogMjBweDsgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWxhcmdlOiAyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWxhcmdlOiA0MHB4O1xuICAgIH1cblxuICAgIC0tc3BhY2VyLW1lZGl1bTogMjVweDtcbiAgICAtLXNwYWNlci1zbWFsbDogMjBweDtcblxuICAgIC8vIC0tc3BhY2VyLXNtYWxsOiA2MHB4O1xuICAgIC8vIC0tc3BhY2VyLWV4dHJhLXNtYWxsOiA1MHB4O1xuICAgIC8vIC0tc3BhY2VyLXh4LXNtYWxsOiAyNXB4O1xuICAgIC8vIC0tc3BhY2VyLXh4eC1zbWFsbDoxNXB4O1xuICAgIFxuICAgIC8vIC0tc2VwYXJhdG9yLWJpZzogMTAwcHg7XG4gICAgLy8gLS1zZXBhcmF0b3ItbWVkaXVtOiA2MHB4O1xuICAgIC8vIC0tc2VwYXJhdG9yLXNtYWxsOiAzMHB4O1xuICAgIC8vIC0tc2VwYXJhdG9yLWV4dHJhLXNtYWxsOiAyMHB4O1xuICAgIFxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiAwMyAtIFRSQU5TSVpJT05JXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC0tdHJhbnNpdGlvbi1kZWZhdWx0OiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICBcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDQgLSBGT05UU1xuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLWZvbnQtZmFtaWx5OiAnUG9wcGlucycsIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LWZhbWlseS10aXRsZTogJ0Z1dHVyYSBQYXNzYXRhIERJU1BMQVknLCBzYW5zLXNlcmlmO1xuXG4gICAgLS1mb250LWZhbWlseS1tZW51OiAnRnV0dXJhIFBhc3NhdGEgRElTUExBWScsIHNhbnMtc2VyaWY7XG4gICAgXG4gICAgLS1mb250LXNpemU6IDE4cHg7XG5cbiAgICAtLWgxLWZvbnQtc2l6ZTogNDBweDtcbiAgICAtLWgxLWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1oMS1tYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC0taDEtZm9udC1zaXplOiA1MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAtLWgxLWZvbnQtc2l6ZTogNjBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1oMS1mb250LXNpemU6IDgwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAgICAgICAtLWgxLWZvbnQtc2l6ZTogODBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIC0taDEtZm9udC1zaXplOiA5MHB4O1xuICAgIH1cbiAgICBcbiAgICAtLWgyLWZvbnQtc2l6ZTogMzVweDtcbiAgICAtLWgyLWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1oMi1tYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIC0taDItZm9udC1zaXplOiA0MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAtLWgyLWZvbnQtc2l6ZTogNjBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gICAgICAgIC0taDItZm9udC1zaXplOiA2NXB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgLS1oMi1mb250LXNpemU6IDY1cHg7XG4gICAgfVxuXG4gICAgLS1oMy1mb250LXNpemU6IDMwcHg7XG4gICAgLS1oMy1mb250LXdlaWdodDogNDAwO1xuICAgIC0taDMtbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAtLWgzLWZvbnQtc2l6ZTogMzVweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI2MHB4KSB7XG4gICAgICAgIC0taDMtZm9udC1zaXplOiA0MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgLS1oMy1mb250LXNpemU6IDQwcHg7XG4gICAgfVxuXG4gICAgLS1oNC1mb250LXNpemU6IDI4cHg7XG4gICAgLS1oNC1mb250LXdlaWdodDogNDAwO1xuICAgIC0taDQtbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAtLWg0LWZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIC0taDQtZm9udC1zaXplOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAtLWg1LWZvbnQtc2l6ZTogMjBweDtcbiAgICAtLWg1LWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1oNS1tYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0taDUtZm9udC1zaXplOiAyOHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgLS1oNS1mb250LXNpemU6IDMycHg7XG4gICAgfVxuICAgIFxuICAgIC0taDYtZm9udC1zaXplOiAxNnB4O1xuICAgIC0taDYtZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAtLWg2LW1hcmdpbi1ib3R0b206IDEwcHg7ICAgXG5cbn0iLCJALXdlYmtpdC1rZXlmcmFtZXMgbWVudS1zaG93IHtcbiAgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBtZW51LXNob3cge1xuICAwJSB7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wMCUpOyB9XG4gIDEwMCUgeyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxufVxuQGtleWZyYW1lcyBtZW51LXNob3cge1xuICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5cbi5hbmltYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDElO1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICBcbiAgLmFuaW1hdGVkIHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUtdXAge1xuICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH0gXG4gIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9IFxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZVNjcm9sbCB7XG4gIDAle1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzVweCk7XG4gIH1cbn1cbi5ib3VuY2VTY3JvbGwge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlU2Nyb2xsO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufSIsIi8qKlxuKlxuKiBTdGlsaSBiYXNlIGdlbmVyaWNpIHBlciBvZ25pIHRpcG8gZGkgdGVtcGxhdGVcbiogXG4qIDAxIC0gU0VQQVJBVE9SSVxuKiAwMiAtIENPTlRFTklUT1JJXG4qIDAzIC0gV0lEVEhcbiogMDQgLSBNQVJHSU5cbiogMDUgLSBQQURESU5HXG4qIDA2IC0gQkFDS0dST1VORFxuKiAwNyAtIENPTE9SU1xuKlxuKi9cblxuaHRtbCxcbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYW5uYSk7XG59XG5cbm1haW4ge1xuICAgLy8gb3ZlcmZsb3cteDogaGlkZGVuO1xuXG59XG5cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuYSB7IFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYud2l0aC1pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaC1mdWxsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4ub3ZlcmZsb3ctdmlzaWJsZSB7XG4gICAgb3ZlcmZsb3c6dmlzaWJsZVxufVxuXG4ub3ZlcmZsb3ctc2Nyb2xsLXgge1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuLmJvcmRlci1ib3R0b20ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmV5LTMwMCk7XG59XG5cbi5vcGFjaXR5LTAzIHtcbiAgICBvcGFjaXR5OiAuMztcbn1cblxuLmJvcmRlci1yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDMycHg7XG4gICAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNjRweDtcbiAgICB9XG59XG5cbi5ib3JkZXItcmFkaXVzLXRvcCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzJweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMzJweDtcbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2NHB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNjRweDtcbiAgICB9XG59XG5cbi5tYXJnaW4tbmVnYXRpdmUge1xuICAgIG1hcmdpbi10b3A6IC0zMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC02NHB4O1xuXG4gICAgfVxufVxuXG4ubWFwcyB7XG4gICAgaWZyYW1lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMnB4O1xuICAgIFxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNjRweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRleHQtdW5kZXJsaW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgXG4gICAgJiA+IC5jb2wge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIFxuICAgICAgICAmLmMtMSB7XG4gICAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy0yIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTMge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtNCB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy01IHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTYge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtNyB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy04IHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtMTAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOnhsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOmxnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOm1kIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOnNtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwMSAtIFNFUEFSQVRPUklcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zcGFjZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIFxuICAgICYuYmlnIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItYmlnKTtcbiAgICB9XG4gICAgXG4gICAgJi5sYXJnZSB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLWxhcmdlKTtcbiAgICB9XG4gICAgJi5tZWRpdW0ge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1tZWRpdW0pO1xuICAgIH1cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItc21hbGwpO1xuICAgIH1cbiAgICAvKiAmLnNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItc21hbGwpO1xuICAgIH1cbiAgICAmLmV4dHJhLXNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItZXh0cmEtc21hbGwpO1xuICAgIH1cbiAgICAmLnh4LXNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXIteHgtc21hbGwpO1xuICAgIH1cbiAgICAmLnh4eC1zbWFsbCB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLXh4eC1zbWFsbCk7XG4gICAgfVxuICAgICYucmVtIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItcmVtKTtcbiAgICB9ICovXG59XG5cbi8qIFxuLnNlcGFyYXRvciB7XG4gICAgd2lkdGg6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgIGZsZXgtYmFzaXM6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBcbiAgICAmLmJpZyB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBmbGV4LWJhc2lzOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3ItbWVkaXVtKTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNlcGFyYXRvci1iaWcpO1xuICAgICAgICAgICAgZmxleC1iYXNpczogdmFyKC0tc2VwYXJhdG9yLWJpZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBmbGV4LWJhc2lzOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgIH1cbn0gXG4qL1xuXG4uZGl2aWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHZhcigtLWdyZXktMjAwKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDIgLSBDT05URU5JVE9SSVxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgICYuZmx1aWQge1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBcbiAgICAmLmJpZyB7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLWJpZy13aWR0aCk7XG4gICAgfVxuICAgICYubGFyZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci1sYXJnZS13aWR0aCk7XG4gICAgfVxuICAgICYubWVkaXVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWVkaXVtLXdpZHRoKTtcbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLXNtYWxsLXdpZHRoKTtcbiAgICB9XG4gICAgJi5taWQtc21hbGwge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci1taWQtc21hbGwtd2lkdGgpO1xuICAgIH1cbiAgICAmLmV4dHJhLXNtYWxsIHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItZXh0cmEtc21hbGwtd2lkdGgpO1xuICAgIH1cbiAgICAmLm1pbmkge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWluaS13aWR0aCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5taW4td2lkdGgge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1ibG9jay1taW4td2lkdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5leHRyYS1taW4td2lkdGgge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1ibG9jay1leHRyYS1taW4td2lkdGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYucmVsYXRpdmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIFxuICAgICYuZmxvYXRlZC1yaWdodCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjk5MXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuZmxvYXRlZC1sZWZ0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6OTkxcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wLXJlbGF0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAmLmRpcmVjdGlvbi1jb2x1bW4ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICAmLmRpcmVjdGlvbi1yb3cge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgICYuYWxpZ24tc3RhcnQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gICAgJi5hbGlnbi1lbmQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICAgICYuZmxleC13cmFwIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgICAmLmp1c3RpZnktY2VudGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICYuanVzdGlmeS1zcGFjZS1iZXR3ZWVuIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAmLmp1c3RpZnktc3BhY2UtZXZlbmx5IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgfVxuICAgICYuanVzdGlmeS1zcGFjZS1hcm91bmQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LXN0YXJ0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICAmLmp1c3RpZnktZW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmLmp1c3RpZnktZGVza3RvcC1lbmQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5qdXN0aWZ5LWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5kLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAuZC1zbS1ibG9jayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5kLXNtLW5vbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmQtbWQtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC1tZC1ub25lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5kLWxnLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmQtbGctbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmQteGwtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC14bC1ub25lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmQtbGctaW5saW5lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwMyAtIFdJRFRIXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZnVsbC13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA0IC0gTUFSR0lOXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubS0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLm1iLS0xMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjYyNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ubWItMS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW0gIWltcG9ydGFudDtcbn1cbi5tYi0yIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5tYi0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG4ubWItNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbSAhaW1wb3J0YW50O1xufVxuLm1iLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDtcbn1cbi5tbC0wIHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm1sLTAtc21hbGwge1xuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tci0wIHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tdC0xIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTIwIHtcbiAgICBtYXJnaW46IDE1cHg7XG4gICAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDUgLSBQQURESU5HXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5wYWRkaW5nLW1vYmlsZSB7XG4gICAgQG1lZGlhKG1heC13aWR0aDogMTcwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICB9XG59XG5cbi5wLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnAtMSB7XG4gICAgcGFkZGluZzogMXJlbTtcbn1cbi5wLTIge1xuICAgIHBhZGRpbmc6IDJyZW07XG59XG4ucC0zIHtcbiAgICBwYWRkaW5nOiAzcmVtO1xufVxuLnAtNCB7XG4gICAgcGFkZGluZzogNHJlbTtcbn1cbi5wLTUge1xuICAgIHBhZGRpbmc6IDVyZW07XG59XG5cbi5wYWRkaW5nLWxyLTEge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4ucC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDYgLSBCQUNLR1JPVU5EXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYmctc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgXG4gICAgJi53aXRoLW92ZXJsYXkge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMCwgMCUsIDAlLCAuMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iZy1ibGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuICAgIFxuICAgIHAsIGEsIHVsLCBsaSwgaSwgc3Bhbiwgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB9XG59XG5cbi5iZy1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICBcbiAgICBwLCBhLCB1bCwgbGksIGksIHNwYW4sIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgfVxufVxuXG4uYmctZ3JleS0xMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXktMTAwKTtcbn1cblxuLmJnLWdyZXktMjAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmV5LTIwMCk7XG59XG5cbi5iZy1ncmV5LTMwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JleS0zMDApO1xufVxuXG4uYmctZ3JleS00MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXktNDAwKTtcbn1cblxuLmJnLWdyZXktNTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmV5LTUwMCk7XG59XG5cbi5iZy15ZWxsb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXllbGxvdyk7XG59XG5cbi5iZy1wYW5uYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFubmEpO1xufVxuXG4uYmctcmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZWQpO1xufVxuXG4uYmctb3JhbmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xufVxuXG4uYmctZGFyay1ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmVlbik7XG59XG5cbi5iZy1ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4pO1xufVxuXG4uYmctbGlnaHQtZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbn1cblxuLmJnLWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xufVxuXG4uYmctbGlnaHQtYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtYmx1ZSk7XG59XG5cblxuLmJnLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgXG4gICAgcCwgYSwgdWwsIGxpLCBpLCBzcGFuLCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwNyAtIENPTE9SU1xuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNvbG9yLWRhcmssXG4uY29sb3ItZGFyayAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICB9XG59XG5cbi5jb2xvci1saWdodCxcbi5jb2xvci1saWdodCAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgfVxufVxuXG4uY29sb3ItZ3JleSxcbi5jb2xvci1ncmV5ICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgfVxufVxuXG4uY29sb3IteWVsbG93LFxuLmNvbG9yLXllbGxvdyAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuICAgIH1cbn1cblxuLmNvbG9yLXBhbm5hLFxuLmNvbG9yLXBhbm5hICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXBhbm5hKTtcbiAgICB9XG59XG5cbi5jb2xvci1yZWQsXG4uY29sb3ItcmVkICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXJlZCk7XG4gICAgfVxufVxuXG4uY29sb3Itb3JhbmdlLFxuLmNvbG9yLW9yYW5nZSAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xuICAgIH1cbn1cblxuLmNvbG9yLWxpZ2h0LWdyZWVuLFxuLmNvbG9yLWxpZ2h0LWdyZWVuICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICB9XG59XG5cbi5jb2xvci1ncmVlbixcbi5jb2xvci1ncmVlbiAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgfVxufVxuXG4uY29sb3ItZGFyay1ncmVlbixcbi5jb2xvci1kYXJrLWdyZWVuICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JlZW4pO1xuICAgIH1cbn1cblxuLmNvbG9yLWJsdWUsXG4uY29sb3ItYmx1ZSAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICB9XG59XG5cbi5jb2xvci1saWdodC1ibHVlLFxuLmNvbG9yLWxpZ2h0LWJsdWUgKiB7XG4gICAgJjpub3QoLmJ0bik6bm90KC5mYS1jaGV2cm9uLXJpZ2h0KTpub3QoLmZhLXVwbG9hZCkge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQtYmx1ZSk7XG4gICAgfVxufVxuXG5cbi5wbC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ucGwtMTUge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5wci0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLnByLTE1IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuLm10LTE1IHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuLm1iLTE1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG4ubXQtMzAge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG59XG4ubWItMzAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4ubXItMTAge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbn1cbi5vcmRlci0yIHtcbiAgICBvcmRlcjogMjtcbn1cblxuQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAub3JkZXItbGctMSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICAub3JkZXItbGctMiB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cbn1cbi5vcmRlci0zIHtcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xufVxuLm9yZGVyLTQge1xuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG59XG4ub3JkZXItNSB7XG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcbn1cbi5vcmRlci02IHtcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xufVxuXG4uY29sdW1uIHtcbiAgICAmLTEge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgfVxuICAgICYtMiB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gICAgJi0zIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cbiAgICAmLTQge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgfVxuICAgICYtNSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAucGwtMFxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wbC0xNVxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0wXFw6eGwge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0xNVxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMTVcXDp4bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTE1XFw6eGwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0zMFxcOnhsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMzBcXDp4bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTFcXDp4bCB7XG4gICAgICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0yXFw6eGwge1xuICAgICAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItM1xcOnhsIHtcbiAgICAgICAgb3JkZXI6IDMgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTRcXDp4bCB7XG4gICAgICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci01XFw6eGwge1xuICAgICAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNlxcOnhsIHtcbiAgICAgICAgb3JkZXI6IDYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmQtbm9uZVxcOnhsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuY29sdW1uIHtcbiAgICAgICAgJi0xXFw6eGwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgICAgICYtMlxcOnhsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuICAgICAgICAmLTNcXDp4bCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cbiAgICAgICAgJi00XFw6eGwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgICB9XG4gICAgICAgICYtNVxcOnhsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTUwMHB4KSB7XG4gICAgLmQtYmV0d2VlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5kLW5vbmVcXDpsZ3Uge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucGwtMFxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wbC0xNVxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0wXFw6bGcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0xNVxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMTVcXDpsZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTE1XFw6bGcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0zMFxcOmxnIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMzBcXDpsZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTFcXDpsZyB7XG4gICAgICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0yXFw6bGcge1xuICAgICAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItM1xcOmxnIHtcbiAgICAgICAgb3JkZXI6IDMgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTRcXDpsZyB7XG4gICAgICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci01XFw6bGcge1xuICAgICAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNlxcOmxnIHtcbiAgICAgICAgb3JkZXI6IDYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmQtbm9uZVxcOmxnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuY29sdW1uIHtcbiAgICAgICAgJi0xXFw6bGcge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgICAgICYtMlxcOmxnIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuICAgICAgICAmLTNcXDpsZyB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cbiAgICAgICAgJi00XFw6bGcge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgICB9XG4gICAgICAgICYtNVxcOmxnIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnBsLTBcXDptZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucGwtMTVcXDptZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucHItMFxcOm1kIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucHItMTVcXDptZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm10LTE1XFw6bWQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYi0xNVxcOm1kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMzBcXDptZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTMwXFw6bWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0xXFw6bWQge1xuICAgICAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItMlxcOm1kIHtcbiAgICAgICAgb3JkZXI6IDIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTNcXDptZCB7XG4gICAgICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci00XFw6bWQge1xuICAgICAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNVxcOm1kIHtcbiAgICAgICAgb3JkZXI6IDUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTZcXDptZCB7XG4gICAgICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5kLW5vbmVcXDptZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNvbHVtbiB7XG4gICAgICAgICYtMVxcOm1kIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgfVxuICAgICAgICAmLTJcXDptZCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIH1cbiAgICAgICAgJi0zXFw6bWQge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICB9XG4gICAgICAgICYtNFxcOm1kIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgfVxuICAgICAgICAmLTVcXDptZCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5wbC0wXFw6c20ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnBsLTE1XFw6c20ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnByLTBcXDpzbSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnByLTE1XFw6c20ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0xNVxcOnNtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMTVcXDpzbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm10LTMwXFw6c20ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYi0zMFxcOnNtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItMVxcOnNtIHtcbiAgICAgICAgb3JkZXI6IDEgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTJcXDpzbSB7XG4gICAgICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0zXFw6c20ge1xuICAgICAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNFxcOnNtIHtcbiAgICAgICAgb3JkZXI6IDQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTVcXDpzbSB7XG4gICAgICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci02XFw6c20ge1xuICAgICAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuZC1ub25lXFw6c20ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5jb2x1bW4ge1xuICAgICAgICAmLTFcXDpzbSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJi0yXFw6c20ge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICB9XG4gICAgICAgICYtM1xcOnNtIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgICAgfVxuICAgICAgICAmLTRcXDpzbSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgJi01XFw6c20ge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA1O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxufSIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnRnV0dXJhIFBhc3NhdGEgRElTUExBWSc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0Z1dHVyYVBhc3NhdGEtRElTUExBWS5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvRnV0dXJhUGFzc2F0YS1ESVNQTEFZLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvRnV0dXJhUGFzc2F0YS1ESVNQTEFZLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0Z1dHVyYVBhc3NhdGEtRElTUExBWS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvRnV0dXJhUGFzc2F0YS1ESVNQTEFZLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9GdXR1cmFQYXNzYXRhLURJU1BMQVkuc3ZnI0Z1dHVyYVBhc3NhdGEtRElTUExBWScpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvUG9wcGlucy1MaWdodC5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvUG9wcGlucy1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtTGlnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1MaWdodC5zdmcjUG9wcGlucy1MaWdodCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1BvcHBpbnMnO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9Qb3BwaW5zLVNlbWlCb2xkLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9Qb3BwaW5zLVNlbWlCb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1TZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLVNlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLVNlbWlCb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLVNlbWlCb2xkLnN2ZyNQb3BwaW5zLVNlbWlCb2xkJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtTWVkaXVtLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9Qb3BwaW5zLU1lZGl1bS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtTWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1NZWRpdW0uc3ZnI1BvcHBpbnMtTWVkaXVtJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtQm9sZC5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvUG9wcGlucy1Cb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLUJvbGQuc3ZnI1BvcHBpbnMtQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvUG9wcGlucy1SZWd1bGFyLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9Qb3BwaW5zLVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvUG9wcGlucy1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb3BwaW5zLVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL1BvcHBpbnMtUmVndWxhci5zdmcjUG9wcGlucy1SZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbiIsIi8qKlxuKlxuKiBTdGlsaSByZWxhdGl2aSBhaSBmb250XG4qIFxuKiAwMSAtIEhFQURJTkdcbiogMDIgLSBBTElHTk1FTlRcbiogMDMgLSBUUkFOU0ZPUk1cbiogMDQgLSBXRUlHSFRcbiogMDUgLSBPQ0NISUVMTE9cbiogMDYgLSBMSU5FIEhFSUdIVFxuKlxuKi9cblxuLy8gSW1wb3J0IGFsbCBmb250c1xuQGltcG9ydCBcImZvbnRzL2ZvbnRzXCI7XG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICAmLmxpZ2h0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgJi5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uaW5oZXJpdCB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbnAsIC5wLCBzdHJvbmcsIGIsIHRpbWUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAmLmxpZ2h0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG5cbiAgICAmLmJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAmLmZvbnQtdGl0bGUgIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LXRpdGxlKTtcbiAgICB9XG59XG5cbnVsIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMjVweDtcbn1cblxudWwsIGxpIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICYubGlnaHQge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxufVxuXG5zdHJvbmcsIGIsIC5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi50ZXh0LXNoYWRvdyB7XG4gICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMCB2YXIoLS1jb2xvci1saWdodCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAxIC0gSEVBRElOR1xuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LXRpdGxlKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2LCAuaDcge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS10aXRsZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgJi5saWdodCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgJi5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgcCwgLnAsIHVsLCBsaSwgYSwgc3Bhbiwgc3Ryb25nLCAuc3Ryb25nLCBiLCB0aW1lLCBpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJi5wLXN0eWxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuXG4gICAgfVxufVxuXG4uaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDEtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgxLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDItZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgyLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDMtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgzLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDQtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg0LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDUtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg1LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDYge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDYtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg2LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5oNyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oNy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNy1mb250LXdlaWdodCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taDctbWFyZ2luLWJvdHRvbSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnRleHQtYmlnIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgIH1cblxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogOTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTI1cHg7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwMiAtIEFMSUdOTUVOVFxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDMgLSBUUkFOU0ZPUk1cbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50ZXh0LXVwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi50ZXh0LWxvd2VyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbi50ZXh0LWNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwNCAtIFdFSUdIVFxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnRleHQtZXh0cmEtbGlnaHQge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4udGV4dC1saWdodCB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi50ZXh0LW5vcm1hbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi50ZXh0LWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnRleHQtZXh0cmEtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDUgLSBPQ0NISUVMTE9cbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDYgLSBERUNPUkFUSU9OXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4iLCJAbWl4aW4gZGVidWctY3NzKCRjb2xvcikge1xuICAgICoge1xuICAgICAgICBvdXRsaW5lOiAxcHggZGFzaGVkICRjb2xvcjtcbiAgICB9XG59XG4uZGVidWdcXDpjc3Mge1xuICAgIC0tZGVidWctY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuXG4gICAgQGluY2x1ZGUgZGVidWctY3NzKHZhcigtLWRlYnVnLWNvbG9yKSk7XG5cbiAgICAmXFw6cmVkIHtcbiAgICAgICAgLS1kZWJ1Zy1jb2xvcjogcmVkO1xuXG4gICAgICAgIEBpbmNsdWRlIGRlYnVnLWNzcyh2YXIoLS1kZWJ1Zy1jb2xvcikpO1xuICAgIH1cbn1cbiIsIi5lbGVtZW50LWFjY29yZGlvbiB7XG4gICAgLmFjY29yZGlvbi1lbGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoNjMsIDg1LCAxMDMsIC4zMik7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoNjMsIDg1LCAxMDMsIC4zMik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnRpdGxlLWFjY29yZGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDIycHggMCAxMHB4IDA7XG5cbiAgICAgICAgLnNpemUtYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS44ZnIgLjJmcjtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnV0dG9uLWVsZW0gIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5vcGVuLWFjY29yZGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS10aXRsZSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmVlbik7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5vcGVuIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LXRpdGxlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmVlbik7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwOyBcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS10aXRsZSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JlZW4pO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDsgXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5vcGVuIHtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5saXN0LWJsb2NrLWVsZW1lbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCA0MHB4IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgICAgXG4gICAgfVxuICAgIFxuICAgICYubGlnaHQge1xuICAgICAgICAuYWNjb3JkaW9uLWVsZW0ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVsZW1lbnQtYWNjb3JkaW9uLXdpdGgtY3JvY2luaSB7XG4gICAgLmNyb2NpbmktYmxvY2sge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxuICAgIC5hY2NvcmRpb24tZWxlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5zaXplLWFjY29yZGlvbiB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC42ZnIgMS4xZnIgLjNmcjtcbiAgICAgICAgICAgIH0gXG4gICAgICAgIH1cblxuICAgICAgICAuc2l6ZS1hY2NvcmRpb24tZGVzYyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC42ZnIgMS4xZnIgLjNmcjtcbiAgICAgICAgICAgIH0gXG4gICAgICAgIH1cblxuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAudGl0bGUtYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIC5idXR0b24tZWxlbSAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLm9wZW4tYWNjb3JkaW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnRyYW5zbGF0ZS1vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAudHJhbnNsYXRlLW9wZW4ge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubGlzdC1ibG9jay1lbGVtZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDQwcHggMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7ICAgIFxuICAgICAgICB9XG4gICAgXG4gICAgfVxufVxuIiwiLmJsb2NrLWdyaWRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgIGdhcDogMjBweDtcbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBncmlkLWdhcDogNDBweDtcbiAgICAgICAgZ2FwOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAmLm5vLWdhcCB7XG4gICAgICAgIGdyaWQtZ2FwOiAwO1xuICAgICAgICBnYXA6IDA7XG4gICAgfVxuXG4gICAgJi5taW4tZ2FwIHtcbiAgICAgICAgZ3JpZC1nYXA6IDE2cHg7XG4gICAgICAgIGdhcDogMTZweDtcbiAgICB9XG5cbiAgICAmLmJpZy1nYXAge1xuICAgICAgICBncmlkLWdhcDogMzJweDtcbiAgICAgICAgZ2FwOiAzMnB4O1xuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBncmlkLWdhcDogOTBweDtcbiAgICAgICAgICAgIGdhcDogOTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmNvbHVtbnMtMSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbiAgICBcbiAgICAmLmNvbHVtbnMtMiB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kaWZmLXNpemUge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOGZyIDEuMmZyO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb250YWN0LXNvY2lhbCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC40ZnIgMS43ZnI7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogLjNmciAxLjdmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC4zZnIgMS43ZnI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC4xNWZyIDEuN2ZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5ibG9jay1jb25kaXZpc2lvbmUge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MHB4IDFmcjtcbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAubGluay1jb25kaXZpc2lvbmUge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gXG4gICAgfVxuICAgIFxuICAgICYuY29sdW1ucy0zIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJsb2NrLXN0ZXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuNGZyIDFmciAxLjZmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuNGZyIDFmciAxLjZmcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMC40ZnIgLjhmciAxLjhmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZG90dGktZ3JpZCB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnRpdGxlLWJsb2NrIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMGZyIDJmciAuNmZyXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMHIgMmZyIC42ZnI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC4yZnIgMmZyIC42ZnI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC42ZnIgMmZyIC42ZnI7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucHJvZG90dGktYmxvY2sge1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5tYWNjaGlhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0OTZweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5wcm9kLWltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQxNnB4O1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucHJvZG90dGktZGV0dGFnbGlvLWJsb2NrIHtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLm1hY2NoaWEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NzJweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5wcm9kLWltYWdlIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NzJweDtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmdyZWRpZW50aSB7XG5cbiAgICAgICAgICAgIC50b29sdGlwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGVzaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLnBlc28ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZWVuKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmVlbik7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5ncmlkIHtcbiAgICAgICAgLyogZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgKi9cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLnRlc3RvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7ICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5pbWctYXppZW5kYSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjc0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaW1nLWNvbnRhdHRpIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjQycHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaW1nLWF6aWVuZGEtbGVmdCxcbiAgICAgICAgJi5pbWctYXppZW5kYS1yaWdodCB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzc0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50ZXh0LWF6aWVuZGEge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaW52ZXJ0ZWQge1xuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1vYmlsZS1pbnZlcnRlZCB7XG4gICAgICAgIC5ncmlkIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5icmVhZGNydW1icy1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiA5MHB4O1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuXG4gICAgfVxufVxuXG51bC5icmVhZGNydW1icyB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgIFxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiPlwiO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbnRyby1wYWdlLFxuLmludHJvLXBhZ2UtYmlnLFxuLmludHJvLXBhZ2UtaGFsZixcbi5saWdodCB7XG4gICAgdWwuYnJlYWRjcnVtYnMge1xuICAgICAgICBjb2xvcjogdmFyKC0tcGFubmEpO1xuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXBhbm5hKTtcbiAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wYW5uYSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogc29saWQgMS41cHggdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDI1cHggNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjVweCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAmLmJ0bi1yZWQge1xuICAgICAgICBjb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZWQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLWJsdWUge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tcGFubmEge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNjMsIDg1LCAxMDMsIC4zMik7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcGFubmEpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLWdyZWVuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tZ2lhbGxvIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1naWFsbG8pO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi13aGl0ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmJ0bi1vdXRsaW5lIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgfSBcbiAgICB9XG59IiwiLmZpbHRyaSB7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgdWx7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICB9XG59IiwiLmZvcm0tY29udGF0dGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLmNvbnRhY3QtZm9ybSB7XG4gICAgICAgIC8vbWF4LXdpZHRoOiA5MTJweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZGlmZi1zaXplIHtcbiAgICAgICAgICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWxsZWdhdG8tZm9ybSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNoZWNrLWZpZWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTdweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmNvbG9yLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpyZWFkLW9ubHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC42O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgICAgICAgICAgICAgICAgIC8qIENocm9tZSwgU2FmYXJpLCBFZGdlLCBPcGVyYSAqL1xuICAgICAgICAgICAgICAgICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAgICAgICAgICAgICAgICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8qIEZpcmVmb3ggKi9cbiAgICAgICAgICAgICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTdweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk3JSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJisuc2VsZWN0LWFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5wcml2YWN5LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNoZWNrbWFyayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZH4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0NnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnBzZXVkby1pbnB1dC1maWxlIHtcbiAgICAgICAgICAgICAgICAgICAgW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucHNldWRvLWZpbGVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1idXR0b24taW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmV5LTIwMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFic29sdXRlX2Z1bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pbmxpbmUtZm9ybSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1nYXA6IDA7XG4gICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGlnaHQge1xuICAgICAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWdhcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxN3B4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzU3OEQ2QTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb2xvci1saWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTdweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTclIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICYrLnNlbGVjdC1hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgJi5wcml2YWN5LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWR+LmNoZWNrbWFyazphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0NnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5wc2V1ZG8taW5wdXQtZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAucHNldWRvLWZpbGVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wc2V1ZG8tYnV0dG9uLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWNvbG9yLWJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzU3OEQ2QTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZV9mdWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJpdmVuZGl0b3JpIHtcbiAgICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbltkYXRhLWZvcm0tdG9nZ2xlXSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufSIsIkBtaXhpbiBhYnNvbHV0ZV9mdWxsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xufVxuQG1peGluIGRfZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbkBtaXhpbiBhc3BlY3RfcmF0aW8oJGxhcmdoZXp6YSwgJGFsdGV6emEpIHtcbiAgICBoZWlnaHQ6IDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogKCgxMDAgKiAkYWx0ZXp6YSkgLyAkbGFyZ2hlenphKSAqIDElO1xufVxuXG5AbWl4aW4gdmVydGljYWxBbGlnbigkcG9zaXRpb246IHJlbGF0aXZlKSB7XG5cdHBvc2l0aW9uOiAgJHBvc2l0aW9uO1xuXHR0b3A6ICAgICAgIDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5AbWl4aW4gaG9yaXpvbnRhbEFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcblx0cG9zaXRpb246ICAkcG9zaXRpb247XG5cdGxlZnQ6ICAgICAgNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbkBtaXhpbiBjZW50ZXIoJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuXHRwb3NpdGlvbjogICRwb3NpdGlvbjtcblx0dG9wOiAgICAgICA1MCU7XG5cdGxlZnQ6ICAgICAgNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn0iLCIuaW50cm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDBzdmggLSA5MHB4KTtcbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIFxuICAgICAgICBtaW4taGVpZ2h0OiAxMDBzdmg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMHN2aDtcbiAgICB9XG5cbiAgICAuaW1nLWdlbGF0byB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbWctZnJ1dHRhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jZW50ZXItZWxlbWVudHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgICBcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBzdmg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDBzdmg7XG4gICAgICAgIH1cblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbn1cblxuLmltZy1zY3JvbGwtZG93biB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG5cbiAgICB9XG5cbn1cblxuLndhd2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMTAwJSAxMDAlLCAwJSAxMDAlICwgMC4wMCUgMzQuODklLCAyLjAwJSA0MC4yMCUsIDQuMDAlIDQ1LjY3JSwgNi4wMCUgNTEuMTklLCA4LjAwJSA1Ni42NyUsIDEwLjAwJSA2MS45OSUsIDEyLjAwJSA2Ny4wNSUsIDE0LjAwJSA3MS43NyUsIDE2LjAwJSA3Ni4wMyUsIDE4LjAwJSA3OS43OCUsIDIwLjAwJSA4Mi45MyUsIDIyLjAwJSA4NS40MiUsIDI0LjAwJSA4Ny4yMiUsIDI2LjAwJSA4OC4yNyUsIDI4LjAwJSA4OC41NyUsIDMwLjAwJSA4OC4xMCUsIDMyLjAwJSA4Ni44OCUsIDM0LjAwJSA4NC45MyUsIDM2LjAwJSA4Mi4yOCUsIDM4LjAwJSA3OS4wMCUsIDQwLjAwJSA3NS4xMyUsIDQyLjAwJSA3MC43NSUsIDQ0LjAwJSA2NS45NiUsIDQ2LjAwJSA2MC44MyUsIDQ4LjAwJSA1NS40NiUsIDUwLjAwJSA0OS45NyUsIDUyLjAwJSA0NC40NSUsIDU0LjAwJSAzOS4wMCUsIDU2LjAwJSAzMy43NCUsIDU4LjAwJSAyOC43NyUsIDYwLjAwJSAyNC4xNyUsIDYyLjAwJSAyMC4wMyUsIDY0LjAwJSAxNi40NCUsIDY2LjAwJSAxMy40NyUsIDY4LjAwJSAxMS4xNiUsIDcwLjAwJSA5LjU3JSwgNzIuMDAlIDguNzIlLCA3NC4wMCUgOC42MyUsIDc2LjAwJSA5LjMwJSwgNzguMDAlIDEwLjcyJSwgODAuMDAlIDEyLjg3JSwgODIuMDAlIDE1LjY5JSwgODQuMDAlIDE5LjE1JSwgODYuMDAlIDIzLjE2JSwgODguMDAlIDI3LjY2JSwgOTAuMDAlIDMyLjU2JSwgOTIuMDAlIDM3Ljc2JSwgOTQuMDAlIDQzLjE3JSwgOTYuMDAlIDQ4LjY4JSwgOTguMDAlIDU0LjE5JSwgMTAwLjAwJSA1OS42MCUpO1xufVxuXG4uaW50cm8tcGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDQ2MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIsIDE0LCAyNiwgLjMyKTtcbiAgICB9XG5cbiAgICAuYWJzLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxufVxuXG4uaW50cm8tcGFnZS1iaWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMDBzdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMiwgMTQsIDI2LCAuMzIpO1xuICAgIH1cblxuICAgIC5hYnMtaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgICB9XG5cbiAgICAudGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cblxuICAgIC5zY3JvbGwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG5cbi5pbnRyby1wYWdlLWhhbGYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiA4MnZoO1xuICAgIG1pbi1oZWlnaHQ6IDgyc3ZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIsIDE0LCAyNiwgLjMyKTtcbiAgICB9XG5cbiAgICAuYWJzLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDgydmg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDgyc3ZoO1xuICAgIH1cbn0iLCIuaW1hZ2UtcGFyYWxsYXgtY2VudGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW1nIHtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7ICAgICAgICAgXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbWFnZS1wYXJhbGxheCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiA3MjRweDtcblxuICAgIC5pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG5cbiAgICAmLmRpZmYtc2l6ZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHVuc2V0OyAgIFxuICAgIH1cbn1cblxuLmltYWdlLXBhcmFsbGF4LWNlbnRlci1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW1hZ2UtcGFyYWxsYXgtbGVmdC1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLy90b3A6IDE1MHB4O1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDAycHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQwMnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5wYXJhbGxheC16b29tIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAqIDIpO1xuXG4gICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG4gICAgLnBhcmFsbGF4LXN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cblxuIiwiLmF6aWVuZGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbWctYXppZW5kYS10b3AtbGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxNjBweDtcbiAgICAgICAgbGVmdDogOCU7XG4gICAgICAgIHdpZHRoOiAyOThweDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDE2ODFweCkge1xuICAgICAgICAgICAgd2lkdGg6IDM5OHB4O1xuICAgICAgICAgICAgdG9wOiAyMjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbWctYXppZW5kYS1ib3R0b20tbGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA4MHB4O1xuICAgICAgICBsZWZ0OiA1JTtcbiAgICAgICAgd2lkdGg6IDI5OHB4O1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcblxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZVxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMzk4cHg7XG4gICAgICAgICAgICBib3R0b206IDIyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmltZy1hemllbmRhLXRvcC1yaWdodCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDUlO1xuICAgICAgICB3aWR0aDogMjk4cHg7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB0b3A6IDMyMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzOThweDtcbiAgICAgICAgICAgIHRvcDogNzIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1nLWF6aWVuZGEtYm90dG9tLXJpZ2h0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTIlO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBib3R0b206IDgwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZVxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTY4MXB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdGVwcyB7XG4gICAgLmJsb2NrLXN0ZXAge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggODBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE0MHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXZlYWwtYmxvY2sge1xuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDEuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nLXN0ZXAge1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogODFweDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTM3cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLnNsaWRlcnMge1xuICAgIEBtZWRpYShtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogMTQ1MHB4KSB7XG4gICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cblxuICAgIC5wcm9kb3R0aS1ncmlkIHtcbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgOHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuaW1nLXBpYW5vIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBpYW5vIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICAvL21pbi1oZWlnaHQ6IDU2MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1OTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIsMTQsMjYsIC4zMik7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDc0MHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNtYWxsLWRlc2Mge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDEyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuXG4gICAgICAgICAgICAgICAgLmltZy1waWFubyB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnBpYW5vIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDg7XG5cbiAgICAgICAgICAgICAgICAgICAgLnNtYWxsLWRlc2Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFycm93LXByZXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICAgICAgICB0b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFycm93LW5leHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgYm90dG9tOiAtNjBweDtcbiAgICAgICAgICAgIHRvcDogdW5zZXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1naWFsbG8pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDEwcHg7XG4gICAgICAgIHRvcDogLTYwcHg7XG4gICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICAgICAgICB0b3A6IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkgIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC56LWluZGV4LXphbXBlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC56YW1wZS1ob3ZlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtODBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5yZWNlbnNpb25pIHtcbiAgICAuaW1nLXNmb25kbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgeyAgIFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyLDE0LDI2LCAuMzIpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAucmVjZW5zaW9uaS1zbGlkZXIge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJlY2Vuc2lvbmUtaXRlbSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCA4cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDNweCAzcHggNnB4IDJweCByZ2JhKDAsMCwwLDAuMzIpOyBcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDNweCAzcHggNnB4IDJweCByZ2JhKDAsMCwwLDAuMzIpO1xuXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNsaWNrLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tYmx1ZSk7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgLmltZy1mb3RvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWctc3RhciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAuZGF0YS1vcGFjaXR5IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNoYW5nZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuXG4gICAgICAgICAgICAgICAgLmNoYW5nZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93LXByZXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtNjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdy1uZXh0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMTBweDtcbiAgICAgICAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICAgICAgICBsZWZ0OiA2MHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpICB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDhweDtcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhdHRpIHtcbiAgICAuY29udGFjdC1pbmZvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3Qtc29jaWFsICB7XG4gICAgICAgICAgICAuZmFrZS1jdGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGcge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGlnaHQpO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDM3NHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2lhbGxvKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcblxuICAgICAgICAgICAgICAgICAgICAmLnN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWdpYWxsbyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgXG4gICAgLnRvb2x0aXB0ZXh0IHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JlZW4pO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICBcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWRhcmstZ3JlZW4pIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC50b29sdGlwdGV4dCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59IiwiaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogOTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2NHB4O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNjRweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wLTAtaGVhZGVyIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxOTYwcHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH0gIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubG9nby1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgICAgICAgICBvcmRlcjogMTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAubG9nby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAvKmZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ki9cbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdWwubWVudSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTA5OXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtaGVpZ2h0OiA1MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIC8qanVzdGlmeS1jb250ZW50OiBjZW50ZXI7Ki9cbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHZ3KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBsaS5saW5rLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktbWVudSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjJweCA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnNob3ctbW9iaWxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQsIG1heC1oZWlnaHQgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggM3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LW1lbnUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5oYXMtc3VibWVudSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnN1Ym1lbnUtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS1jb250YXR0aSB7XG4gICAgICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICBvcmRlcjogMjtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYud2hhdHNhcHAge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFuZ3VhZ2UtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5zZWxlY3RlZC1sYW5ndWFnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMXB4IDRweCAxcHggcmdiYSgwLDAsMCwuMik7XG4gICAgXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5vdGhlci1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIFxuICAgICAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2lhbGxvKTtcblxuICAgICAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgLmxvZ28tZGFyayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHVsLm1lbnUgeyAgICAgICAgXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7ICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNvbnRhdHRhY2l7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmhhbWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhbmctY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkge1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG5cbiAgICAmLm1lbnUtb3BlbiB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAubG9nby1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBhIHsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dvLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vYW5pbWF0aW9uLW5hbWU6IGhhbWJ1cmdlcl90b2dnbGVfYmVmb3JlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9hbmltYXRpb24tbmFtZTogaGFtYnVyZ2VyX3RvZ2dsZV9hZnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC05cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgLmxhbmd1YWdlLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmxpZ2h0LWhlYWRlciB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1naWFsbG8pO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubG9nby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIG5hdi5tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgdWwubWVudSB7ICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFuZy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIC5zZWxlY3RlZC1sYW5ndWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhbmd1YWdlLW1lbnUtb3BlbiB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgLmxhbmctY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0ZWQtbGFuZ3VhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5tZW51LW9wZW4tb3ZlcmxheSB7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgIFxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUsIDI1LCAyNSwgLjgpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhhbWJ1cmdlcl90b2dnbGVfYmVmb3JlIHtcbiAgICAwJSAgIHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICA1MCUgIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KSByb3RhdGUoNDVkZWcpO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgaGFtYnVyZ2VyX3RvZ2dsZV9hZnRlciB7XG4gICAgMCUgICB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgNTAlICB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOXB4KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOXB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9XG59IiwiLmJvcmRlci1lbGlwc2Uge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDcwJTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNzAlO1xuXG4gICAgJi5uZWdhdGl2ZS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogICAxO1xuXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDE2ODFweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE0NXB4O1xuXG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KSAhaW1wb3J0YW50O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qXG4gKiBzbTogNTc2cHhcbiAqIG1kOiA3NjhweFxuICogbGc6IDk5MnB4XG4gKiB4bDogMTIwMHB4XG4qL1xuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubGdcXDp0ZXh0LWNlbnRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59Il19 */
