:root {
  --color-light: #ffffff;
  --color-dark: #020E1A;
  --grey-100: #F8F6F2;
  --grey-200: #ededed;
  --grey-300: #E9EAE5;
  --grey-400: #7D7D7D;
  --grey-500: #A0A0A0;
  --color-primary: #FFD000;
  --color-secondary: #03416D;
  --red: #CC3333;
  --color-muted: #93928E;
  --color-default: var(--color-dark);
}

:root {
  --container-big-width: 1850px;
  --container-width: 1500px;
  --container-large-width: 1540px;
  --container-medium-width: 1250px;
  --container-small-width: 1230px;
  --container-extra-small-width: 1040px;
  --container-mini-width: 680px;
  --block-min-width: 480px;
  --block-min-height: 580px;
  --spacer-big: 30px;
  --spacer-large: 20px;
  --spacer-medium: 25px;
  --spacer-small: 20px;
  --transition-default: all 0.5s ease-in-out;
  --font-family: "Inter", sans-serif;
  --font-family-title: "Inter", sans-serif;
  --font-family-menu: "Inter", sans-serif;
  --font-size: 16px;
  --font-size-small: 14px;
  --h1-font-size: 35px;
  --h1-font-weight: 500;
  --h1-margin-bottom: 15px;
  --h2-font-size: 25px;
  --h2-font-weight: 500;
  --h2-margin-bottom: 15px;
  --h3-font-size: 20px;
  --h3-font-weight: 500;
  --h3-margin-bottom: 15px;
  --h4-font-size: 18px;
  --h4-font-weight: 500;
  --h4-margin-bottom: 15px;
  --h5-font-size: 16px;
  --h5-font-weight: 500;
  --h5-margin-bottom: 15px;
  --h6-font-size: 14px;
  --h6-font-weight: 500;
  --h6-margin-bottom: 15px;
}

@media (min-width: 1200px) {
  :root {
    --container-width: 1670px;
    --container-medium-width: 1380px;
  }
}
@media (min-width: 992px) {
  :root {
    --spacer-big: 30px;
  }
}
@media (min-width: 1200px) {
  :root {
    --spacer-big: 60px;
  }
}
@media (min-width: 992px) {
  :root {
    --spacer-large: 30px;
  }
}
@media (min-width: 1601px) {
  :root {
    --spacer-large: 40px;
  }
}
@media (min-width: 992px) {
  :root {
    --h1-font-size: 61px;
  }
}
@media (min-width: 992px) {
  :root {
    --h2-font-size: 30px;
  }
}
@media (min-width: 992px) {
  :root {
    --h3-font-size: 25px;
  }
}
@media (min-width: 992px) {
  :root {
    --h4-font-size: 18px;
  }
}
@media (min-width: 992px) {
  :root {
    --h5-font-size: 14px;
    --h5-font-size: 16px;
  }
}
@-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(-5px);
  }
  100% {
    transform: translateY(5px);
  }
}
.bounceScroll {
  animation-name: bounceScroll;
  transform-origin: center bottom;
  animation-iteration-count: infinite;
}

html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

body::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: var(--color-light);
  z-index: 11;
}

body.loaded::after {
  display: none;
}

main.other-page {
  padding-top: 80px;
}

@media (min-width: 1100px) {
  main.other-page {
    padding-top: 110px;
  }
}
.h-padding {
  padding-top: 80px;
}

@media (min-width: 1100px) {
  .h-padding {
    padding-top: 110px;
  }
}
img {
  max-width: 100%;
  height: auto;
  width: 100%;
}

img.icona-contatti {
  width: 30px;
  margin-bottom: 10px;
}

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

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

a:hover {
  text-decoration: none;
}

* {
  box-sizing: border-box;
}

.h-full {
  height: 100%;
}

.hidden {
  display: none;
}

.overflow-visible {
  overflow: visible;
}

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

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

.opacity-03 {
  opacity: 0.3;
}

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

.border-radius.small {
  border-radius: 4px;
}

.dot {
  position: relative;
  padding-left: 15px;
}

.dot::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
}

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

.dot.black::before {
  background-color: var(--color-dark);
}

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

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

@media (min-width: 992px) {
  .d-flex.justify-desktop-end-left {
    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 !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-block {
    display: block !important;
  }
  .d-xl-none {
    display: none !important;
  }
}
@media (min-width: 1682px) {
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-none {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .d-lg-inline {
    display: inline !important;
  }
}
.full-width {
  width: 100% !important;
  max-width: 100% !important;
}

.w-480 {
  max-width: 480px;
}

.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: 992px) {
  .ml-0 {
    margin-left: 0 !important;
  }
}
@media (min-width: 992px) {
  .ml-0-small {
    margin-left: 0 !important;
  }
}
@media (min-width: 992px) {
  .mr-0 {
    margin-right: 0 !important;
  }
}
.mt-1 {
  margin-top: 1rem !important;
}

.m-20 {
  margin: 15px;
}

@media (min-width: 992px) {
  .m-20 {
    margin: 20px;
  }
}
.gap-1 {
  gap: 1rem;
}

@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-section.header-bg {
  height: 45vh;
  min-height: 200px;
}

@media (min-width: 1200px) {
  .bg-section.header-bg {
    min-height: 500px;
  }
}
.bg-dark {
  background-color: var(--color-dark);
}

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

.bg-dark.bkg-color {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
}

.bg-light-dark {
  background-color: hsla(0, 0%, 100%, 0.08);
}

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

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

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

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

.bg-white .h1, .bg-white .h2, .bg-white .h3, .bg-white .h4, .bg-white .h5, .bg-white .h6, .bg-white .p, .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-muted:not(.btn):not(.fa-chevron-right):not(.fa-upload), .color-muted *:not(.btn):not(.fa-chevron-right):not(.fa-upload) {
  color: var(--color-muted);
}

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

.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;
  }
}
.no-events {
  pointer-events: none;
}

@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-Black.eot");
  src: url("../fonts/Inter-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-Black.woff2") format("woff2"), url("../fonts/Inter-Black.woff") format("woff"), url("../fonts/Inter-Black.ttf") format("truetype"), url("../fonts/Inter-Black.svg#Inter-Black") format("svg");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-SemiBold.eot");
  src: url("../fonts/Inter-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-SemiBold.woff2") format("woff2"), url("../fonts/Inter-SemiBold.woff") format("woff"), url("../fonts/Inter-SemiBold.ttf") format("truetype"), url("../fonts/Inter-SemiBold.svg#Inter-SemiBold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-ExtraLight.eot");
  src: url("../fonts/Inter-ExtraLight.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-ExtraLight.woff2") format("woff2"), url("../fonts/Inter-ExtraLight.woff") format("woff"), url("../fonts/Inter-ExtraLight.ttf") format("truetype"), url("../fonts/Inter-ExtraLight.svg#Inter-ExtraLight") format("svg");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-ExtraBold.eot");
  src: url("../fonts/Inter-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-ExtraBold.woff2") format("woff2"), url("../fonts/Inter-ExtraBold.woff") format("woff"), url("../fonts/Inter-ExtraBold.ttf") format("truetype"), url("../fonts/Inter-ExtraBold.svg#Inter-ExtraBold") format("svg");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-Regular.eot");
  src: url("../fonts/Inter-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-Regular.woff2") format("woff2"), url("../fonts/Inter-Regular.woff") format("woff"), url("../fonts/Inter-Regular.ttf") format("truetype"), url("../fonts/Inter-Regular.svg#Inter-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-Bold.eot");
  src: url("../fonts/Inter-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-Bold.woff2") format("woff2"), url("../fonts/Inter-Bold.woff") format("woff"), url("../fonts/Inter-Bold.ttf") format("truetype"), url("../fonts/Inter-Bold.svg#Inter-Bold") format("svg");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-Light.eot");
  src: url("../fonts/Inter-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-Light.woff2") format("woff2"), url("../fonts/Inter-Light.woff") format("woff"), url("../fonts/Inter-Light.ttf") format("truetype"), url("../fonts/Inter-Light.svg#Inter-Light") format("svg");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-Medium.eot");
  src: url("../fonts/Inter-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Inter-Medium.woff2") format("woff2"), url("../fonts/Inter-Medium.woff") format("woff"), url("../fonts/Inter-Medium.ttf") format("truetype"), url("../fonts/Inter-Medium.svg#Inter-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: var(--font-family);
  color: var(--color-default);
  font-size: var(--font-size);
  font-weight: 400;
  line-height: 1.3;
}

body.light {
  font-weight: 300;
}

body.regular {
  font-weight: 400;
}

body.medium {
  font-weight: 500;
}

body.semibold {
  font-weight: 600;
}

body.bold {
  font-weight: 700;
}

.light {
  font-weight: 300;
}

.regular {
  font-weight: 400;
}

.medium {
  font-weight: 500;
}

.semibold {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

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

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

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

p.regular, .p.regular, strong.regular, b.regular, time.regular, i.regular {
  font-weight: 400;
}

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

p.semibold, .p.semibold, strong.semibold, b.semibold, time.semibold, i.semibold {
  font-weight: 600;
}

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

p:last-child, .p:last-child, strong:last-child, b:last-child, time:last-child, i:last-child {
  margin-bottom: 0;
}

.text-small {
  font-size: var(--font-size-small);
}

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.regular, li.regular {
  font-weight: 400;
}

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

ul.semibold, li.semibold {
  font-weight: 600;
}

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

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

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

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

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

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

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

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

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

.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.line-p, .h2.line-p, .h3.line-p, .h4.line-p, .h5.line-p, .h6.line-p, .h7.line-p {
  line-height: 1.3;
}

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

@media (min-width: 992px) {
  .h1.small {
    font-size: 50px;
  }
}
.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-size: 7vw;
  line-height: 1;
  margin: 0;
}

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

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

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

@media (min-width: 992px) {
  .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-medium {
  font-weight: 500;
}

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

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

.occhiello {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
}

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

.btn {
  position: relative;
  font-family: var(--font-family);
  transition: var(--transition-default);
  text-decoration: none;
  cursor: pointer;
  outline: none;
  text-align: center;
  line-height: 1;
  width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  font-weight: 600;
  border-radius: 8px;
  align-items: center;
  justify-content: center;
  border: none;
  font-size: 14px;
  padding: 15px 20px;
}

@media (min-width: 576px) {
  .btn {
    margin-bottom: unset;
    width: auto;
  }
}
.btn .icon {
  width: 18px;
  height: 18px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn.btn-primary {
  color: var(--color-dark);
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
}

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

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

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

.btn.btn-dark .icon svg {
  color: var(--color-light);
}

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

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

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

.btn.btn-light .icon svg {
  color: var(--color-dark);
}

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

.btn.btn-dark-full {
  background-color: var(--color-dark);
  border: 1px solid var(--color-dark);
  color: var(--color-light);
  padding: 10px 30px;
}

@media (max-width: 575px) {
  .btn.btn-dark-full {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
}
.btn.btn-dark-full:hover, .btn.btn-dark-full:focus, .btn.btn-dark-full:active, .btn.btn-dark-full:not(:disabled):active {
  color: var(--color-dark);
  background-color: var(--color-light);
  border: 1px solid var(--color-dark);
}

.btn.btn-dark-full.full {
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

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 {
  color: var(--color-dark);
  font-size: 12px;
  margin-bottom: 0;
}

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

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

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

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

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

.form-contatti {
  display: block;
}

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

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

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

.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: 16px;
  }
}
.form-contatti .contact-form .form-group .form-input.color-light:not(.privacy-container) {
  padding: 20px;
  background-color: hsla(0, 0%, 100%, 0.2);
}

.form-contatti .contact-form .form-group .form-input label {
  font-size: 14px;
  font-weight: 600;
  margin-top: 0px;
  margin-bottom: 12px;
  display: block;
  text-transform: uppercase;
}

.form-contatti .contact-form .form-group .form-input input[type=text], .form-contatti .contact-form .form-group .form-input input[type=number], .form-contatti .contact-form .form-group .form-input input[type=email], .form-contatti .contact-form .form-group .form-input input[type=password], .form-contatti .contact-form .form-group .form-input textarea {
  width: 100%;
  outline: none;
  border: 1px solid rgba(0, 0, 0, 0);
  padding: 0px 0px 12px;
  box-sizing: border-box;
  background-color: rgba(0, 0, 0, 0);
  font-size: 14px;
  border-bottom-color: var(--color-dark);
  font-family: var(--font-family);
}

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

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

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

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

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

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

.form-contatti .contact-form .form-group .form-input input[type=number] {
  -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: 1px solid rgba(0, 0, 0, 0);
  background-color: var(--red);
  border-color: #e85d5d;
  border-radius: 8px;
  padding: 17px 18px;
  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;
  font-family: var(--font-family);
}

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

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

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

.form-contatti .contact-form .form-group .form-input.privacy-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 10px;
  transform: translate(-50%, -50%);
  border-radius: 0;
  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: 14px;
  padding-left: 30px;
  cursor: pointer;
  text-transform: initial !important;
  font-family: var(--font-family);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 400;
}

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

.form-contatti .contact-form .form-group .form-input .pseudo-input-file {
  font-family: var(--font-family);
  text-transform: initial;
  font-size: 16px;
  opacity: 0.8;
  font-weight: 400;
  margin-bottom: 0;
  position: relative;
}

.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:after {
  content: url(../img/icone/upload.svg);
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;
}

.form-contatti .contact-form .form-group .form-input .pseudo-input-file .pseudo-files-list {
  width: 100%;
  display: inline-block;
  color: var(--color-light);
  font-style: italic;
  text-transform: initial;
  text-decoration: underline;
  font-size: 12px;
  position: absolute;
  left: 18px;
}

.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: 8px;
  border: 1px solid #e85d5d;
  padding: 17px 18px;
  color: var(--color-light);
  cursor: pointer;
  overflow: hidden;
  position: relative;
  background-color: var(--red);
}

.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;
  margin: 0;
}

.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.dark .contact-form .form-group .form-input label {
  color: var(--color-light);
}

.form-contatti.dark .contact-form .form-group .form-input input[type=text], .form-contatti.dark .contact-form .form-group .form-input input[type=number], .form-contatti.dark .contact-form .form-group .form-input input[type=email], .form-contatti.dark .contact-form .form-group .form-input input[type=password], .form-contatti.dark .contact-form .form-group .form-input textarea {
  background-color: rgba(0, 0, 0, 0);
  border-color: hsla(0, 0%, 100%, 0.5);
  color: var(--color-light);
}

.form-contatti.dark .contact-form .form-group .form-input input[type=text]::placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=number]::placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=email]::placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=password]::placeholder, .form-contatti.dark .contact-form .form-group .form-input textarea::placeholder {
  color: #a0a0a0;
  opacity: 0.8;
}

.form-contatti.dark .contact-form .form-group .form-input input[type=text]:-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=number]:-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=email]:-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=password]:-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input textarea:-ms-input-placeholder {
  color: #a0a0a0;
  opacity: 0.8;
}

.form-contatti.dark .contact-form .form-group .form-input input[type=text]::-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=number]::-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=email]::-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input input[type=password]::-ms-input-placeholder, .form-contatti.dark .contact-form .form-group .form-input textarea::-ms-input-placeholder {
  color: #a0a0a0;
  opacity: 0.8;
}

.form-contatti.dark .contact-form .form-group .form-input.privacy-container .checkmark {
  border: 1px solid var(--color-dark);
}

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

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

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

.form-contatti.dark .contact-form .form-group .form-input .pseudo-input-file:after {
  content: url(../img/icone/upload.svg);
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;
}

.form-contatti.dark .contact-form .form-group .form-input .pseudo-input-file .pseudo-files-list {
  color: var(--color-dark);
}

.form-contatti.dark .contact-form .form-group .form-input .pseudo-input-file .pseudo-button-input {
  --color-border: var(--color-dark);
  border: 1px solid #404852;
  color: var(--color-dark);
  background-color: rgba(0, 0, 0, 0);
}

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

.form-contatti .type-candidatura {
  display: block;
  text-transform: uppercase;
}

.form-contatti .type-candidatura.hide {
  display: none;
}

.form-contatti .type-candidatura span {
  display: inline-block;
  text-transform: initial;
}

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

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

.intro {
  position: relative;
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  max-height: 100vh;
  max-height: 100svh;
  overflow: hidden;
}

.intro.img-full:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #020e1a;
  background: linear-gradient(180deg, rgba(2, 14, 26, 0.05) 0%, rgb(2, 14, 26) 100%);
}

.intro.img-full .img-atf {
  object-fit: cover;
  min-height: 100vh;
  min-height: 100svh;
  max-height: 100vh;
  max-height: 100svh;
  display: flex;
}

.intro.img-full .atf-text {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 10vh;
  transform: translate(-50%, 0);
}

.intro.img-full .atf-text .text {
  width: 100%;
}

@media (min-width: 1200px) {
  .intro.img-full .atf-text .text {
    width: 600px;
  }
}
.intro.img-full .atf-text .h3 {
  margin-bottom: 20px;
}

.intro.img-full .scroll-down {
  position: absolute;
  right: 15px;
  bottom: 10px;
  z-index: 11;
  cursor: pointer;
}

@media (min-width: 768px) {
  .intro.img-full .scroll-down {
    bottom: 10vh;
  }
}
@media (min-width: 1730px) {
  .intro.img-full .scroll-down {
    right: calc((100vw - 1670px) / 2 + 20px);
  }
}
.intro.img-full .scroll-down img {
  width: 20px;
  height: 30px;
  animation: bounce 2s infinite;
}

.intro.img-full .scroll-down .btn {
  padding: 0;
  width: 37px;
  height: 37px;
}

.intro.img-full .scroll-down .btn svg {
  color: var(--color-light);
}

.intro.img-full .scroll-down .btn:hover svg {
  color: var(--color-dark);
}

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

.block-grids.no-gap {
  grid-gap: 0;
  gap: 0;
}

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

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

@media (min-width: 992px) {
  .block-grids.big-gap {
    grid-gap: 50px;
    gap: 50px;
  }
}
@media (min-width: 1200px) {
  .block-grids.big-gap {
    grid-gap: 100px;
    gap: 100px;
  }
}
@media (min-width: 1682px) {
  .block-grids.big-gap {
    grid-gap: 150px;
    gap: 150px;
  }
}
.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.prod-grid {
    grid-template-columns: 30px auto;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-2.diff-size {
    grid-template-columns: 0.9fr 1.1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .block-grids.columns-3.custom-grid {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 992px) {
  .block-grids.columns-3.custom-grid {
    grid-template-columns: 25% 25% 50%;
  }
}
@media (min-width: 1200px) {
  .block-grids.columns-3.custom-grid {
    grid-template-columns: 25% 25% 50%;
  }
}
.block-grids.columns-3.full-md {
  grid-template-columns: 1fr;
}

@media (min-width: 1200px) {
  .block-grids.columns-3.full-md {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@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.block-soluzioni .soluzione {
  position: relative;
  overflow: hidden;
  transition: var(--transition-default);
  min-height: 500px;
  align-items: start;
  display: flex;
  flex-direction: column;
  justify-content: end;
  border: 1px solid var(--grey-200);
  border-radius: 8px;
}

.block-grids.block-soluzioni .soluzione .soluzione-img {
  position: absolute;
  overflow: hidden;
  height: 100%;
  width: 100%;
  top: 0;
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione .soluzione-img:before {
  transition: var(--transition-default);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(2, 14, 26, 0.32);
  z-index: 1;
}

.block-grids.block-soluzioni .soluzione .soluzione-img img {
  transition: var(--transition-default);
  object-fit: cover;
  height: 100%;
  transform: translateY(0);
}

.block-grids.block-soluzioni .soluzione .soluzione-desc {
  position: relative;
  bottom: 0;
  padding: 20px;
  width: 100%;
  z-index: 1;
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .title {
  margin-bottom: 0;
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .desc {
  transition: var(--transition-default);
  height: 0;
  overflow: hidden;
  font-size: 16px;
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .change-color {
  transition: var(--transition-default);
  color: var(--color-light);
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .change-grey {
  transition: var(--transition-default);
  color: var(--color-light);
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .standard {
  display: block;
  width: 35px;
  height: 35px;
  margin-top: 25px;
}

.block-grids.block-soluzioni .soluzione .soluzione-desc .hover {
  display: none;
  width: 35px;
  height: 35px;
  margin-top: 25px;
}

.block-grids.block-soluzioni .soluzione:hover {
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-img {
  border-radius: 8px;
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-img:before {
  transition: var(--transition-default);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(2, 14, 26, 0);
  z-index: 1;
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-img img {
  transition: var(--transition-default);
  border-radius: 8px;
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc {
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc .desc {
  height: auto;
  overflow: visible;
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc .change-color {
  color: var(--color-dark);
  transition: var(--transition-default);
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc .change-grey {
  transition: var(--transition-default);
  color: var(--grey-400);
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc .standard {
  display: none;
}

.block-grids.block-soluzioni .soluzione:hover .soluzione-desc .hover {
  display: block;
}

.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;
  }
}
.block-grids.custom-grid .grid {
  border-bottom: 0.5px solid hsla(0, 0%, 100%, 0.2);
}

@media (min-width: 992px) {
  .block-grids.custom-grid .grid {
    border-right: 0.5px solid hsla(0, 0%, 100%, 0.2);
  }
}
.block-grids.custom-grid .grid.no-border-right {
  border-right: none;
}

.block-grids.custom-grid .grid.to-show-animation .img-mobile {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

@media (min-width: 992px) {
  .block-grids.custom-grid .grid.to-show-animation .img-mobile {
    display: none;
  }
}
.block-grids.custom-grid .grid .inside {
  padding: 20px;
  width: 100%;
}

@media (min-width: 1200px) {
  .block-grids.custom-grid .grid .inside {
    padding: 40px;
  }
}
.block-grids.custom-grid .grid .inside:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: rgba(18, 18, 18, 0.5);
}

@media (min-width: 992px) {
  .block-grids.custom-grid .grid .inside:before {
    content: none;
  }
}
@media (min-width: 992px) {
  .block-grids.custom-grid .grid .inside .show-hover {
    display: none;
  }
}
.block-grids.custom-grid .grid .inside .icona {
  display: none;
  position: relative;
  width: 24px;
  height: 24px;
  cursor: pointer;
}

@media (min-width: 992px) {
  .block-grids.custom-grid .grid .inside .icona {
    display: block;
  }
}
.block-grids.custom-grid .grid .inside .icona img {
  width: 24px;
  height: 24px;
}

.block-grids.custom-grid .grid .inside .icona .plus {
  display: block;
}

.block-grids.custom-grid .grid .inside .icona .minus {
  display: none;
  position: absolute;
  left: 0;
}

.block-grids.custom-grid .grid .inside:hover .icona .plus {
  display: none;
}

.block-grids.custom-grid .grid .inside:hover .icona .minus {
  display: block;
}

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

.block-grids.custom-alternate .item .img-vertical {
  display: block;
}

.block-grids.custom-alternate .item .img-horizontal {
  display: none;
}

@media (min-width: 576px) {
  .block-grids.custom-alternate {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .block-grids.custom-alternate .item:nth-child(4n+1) {
    grid-column: span 1;
  }
  .block-grids.custom-alternate .item:nth-child(4n+1) .img-vertical {
    display: block;
  }
  .block-grids.custom-alternate .item:nth-child(4n+1) .img-horizontal {
    display: none;
  }
  .block-grids.custom-alternate .item:nth-child(4n+2) {
    grid-column: span 2;
  }
  .block-grids.custom-alternate .item:nth-child(4n+2) .img-vertical {
    display: none;
  }
  .block-grids.custom-alternate .item:nth-child(4n+2) .img-horizontal {
    display: block;
  }
  .block-grids.custom-alternate .item:nth-child(4n+3) {
    grid-column: span 2;
  }
  .block-grids.custom-alternate .item:nth-child(4n+3) .img-vertical {
    display: none;
  }
  .block-grids.custom-alternate .item:nth-child(4n+3) .img-horizontal {
    display: block;
  }
  .block-grids.custom-alternate .item:nth-child(4n+4) {
    grid-column: span 1;
  }
  .block-grids.custom-alternate .item:nth-child(4n+4) .img-vertical {
    display: block;
  }
  .block-grids.custom-alternate .item:nth-child(4n+4) .img-horizontal {
    display: none;
  }
}
.block-grids.title-value-grid {
  display: grid;
  grid-template-columns: auto auto;
  gap: 15px;
}

.block-grids.info-form {
  display: grid;
  grid-template-columns: 1fr;
}

@media (min-width: 992px) {
  .block-grids.info-form {
    grid-template-columns: auto 1fr;
    gap: 100px;
  }
}
.block-grids.info-form .info {
  padding-top: 80px;
}

@media (max-width: 991px) {
  .block-grids.info-form .info {
    order: 2;
    display: grid;
    gap: 40px;
    grid-template-columns: 1fr 1fr;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    text-align: center;
  }
}
@media (max-width: 575px) {
  .block-grids.info-form .info {
    grid-template-columns: 1fr;
  }
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.clip-image-animate {
  position: relative;
  overflow: hidden;
  transition: clip-path 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  clip-path: inset(0 0 100% 0);
  display: flex;
  margin-bottom: 20px;
}

.clip-image-animate .clip-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: clip-path 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.clip-image-animate .clip-img.play-video {
  position: absolute;
  z-index: 1;
}

.clip-image-animate .clip-img.aspect-img {
  aspect-ratio: 734/424;
}

.image-parallax {
  position: relative;
  overflow: hidden;
  max-height: unset;
  min-height: unset;
}

@media (min-width: 992px) {
  .image-parallax {
    height: 70vh;
    max-height: 800px;
  }
}
@media (min-width: 1681px) {
  .image-parallax.margin-negative {
    margin-top: -150px;
  }
}
.image-parallax img {
  position: relative;
  display: flex;
  object-fit: cover;
  top: 0;
}

@media (min-width: 992px) {
  .image-parallax img {
    position: absolute;
  }
}
.pagination {
  list-style: none;
  padding-left: 0;
}

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

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

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

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

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

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

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

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

.swiper-recensioni {
  position: relative;
}

.swiper-recensioni .swiper-scrollbar {
  background: rgba(0, 0, 0, 0.2);
  width: calc(100% - 100px);
  z-index: 2;
  left: 0;
}

.swiper-recensioni .swiper-scrollbar .swiper-scrollbar-drag {
  background: #000;
}

.swiper-recensioni .swiper-container-horizontal > .swiper-scrollbar {
  border-radius: 2px;
  height: 5px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.swiper-recensioni .arrow-prev, .swiper-recensioni .arrow-next {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 37px;
  height: 37px;
  border: solid 1px;
  border-radius: 5px;
  cursor: pointer;
}

.swiper-recensioni .arrow-prev.color-light, .swiper-recensioni .arrow-next.color-light {
  border-color: var(--color-light);
}

.swiper-recensioni .arrow-prev {
  position: relative;
  bottom: 0px;
  right: 0px;
}

.swiper-recensioni .arrow-prev.swiper-button-disabled {
  opacity: 0.4;
}

.swiper-recensioni .arrow-next {
  position: relative;
  bottom: 0px;
  right: 0;
}

.swiper-recensioni .arrow-next.swiper-button-disabled {
  opacity: 0.4;
}

.swiper-before-after {
  overflow: visible;
}

.swiper-before-after .swiper-slide .img-slider {
  transition: transform 0.8s ease;
  transform-origin: 100% 50%;
}

.swiper-before-after .swiper-slide:not(.swiper-slide-active) .img-slider {
  transform: scale(0.8);
}

.swiper-before-after .swiper-slide:not(.swiper-slide-active) .h4 {
  display: none;
}

.swiper-before-after .swiper-slide.swiper-slide-prev .img-slider {
  transform-origin: 100% 50%;
}

.swiper-before-after .swiper-slide.swiper-slide-next .img-slider, .swiper-before-after .swiper-slide.swiper-slide-prev + .swiper-slide .img-slider {
  transform-origin: 0% 50%;
}

.swiper-before-after .arrow-prev, .swiper-before-after .arrow-next {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 37px;
  height: 37px;
  border: solid 1px;
  border-radius: 5px;
  cursor: pointer;
  z-index: 2;
}

.swiper-before-after .arrow-prev.color-light, .swiper-before-after .arrow-next.color-light {
  border-color: var(--color-dark);
}

.swiper-before-after .arrow-prev {
  position: absolute;
  bottom: 0px;
  left: 0;
}

.swiper-before-after .arrow-prev.swiper-button-disabled {
  opacity: 0.4;
}

.swiper-before-after .arrow-next {
  position: absolute;
  bottom: 0px;
  right: 0;
}

.swiper-before-after .arrow-next.swiper-button-disabled {
  opacity: 0.4;
}

.swiper-before-after .img-slider {
  position: relative;
  aspect-ratio: 16/10;
}

.swiper-before-after .img-slider .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: auto 100%;
  display: flex;
}

.swiper-before-after .img-slider .img.foreground-img {
  border-right: 2px solid var(--color-light);
  width: 50%;
}

.swiper-before-after .slider-elem {
  position: absolute;
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  outline: none;
  margin: 0;
  transition: all 0.2s;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1236/695;
}

.swiper-before-after .slider-elem::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 2px;
  height: 100%;
  background: #fff;
  cursor: pointer;
}

.swiper-before-after .slider-elem::-moz-range-thumb {
  width: 2px;
  height: 100%;
  background: #fff;
  cursor: pointer;
}

.swiper-before-after .slider-button {
  width: 60px;
  height: 60px;
  pointer-events: none;
  position: absolute;
  border-radius: 50%;
  background-color: rgba(61, 97, 119, 0.5);
  border: 2px solid var(--color-light);
  left: calc(50% - 30px);
  top: calc(50% - 30px);
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (min-width: 992px) {
  .swiper-before-after .slider-button {
    width: 80px;
    height: 80px;
    left: calc(50% - 40px);
    top: calc(50% - 40px);
  }
}
.swiper-before-after .slider-button:after {
  content: "";
  padding: 6px;
  display: inline-block;
  border: solid var(--color-light);
  border-width: 0 2px 2px 0;
  transform: rotate(-45deg);
}

@media (min-width: 992px) {
  .swiper-before-after .slider-button:after {
    padding: 8px;
  }
}
.swiper-before-after .slider-button:before {
  content: "";
  padding: 6px;
  display: inline-block;
  border: solid var(--color-light);
  border-width: 0 2px 2px 0;
  transform: rotate(135deg);
}

@media (min-width: 992px) {
  .swiper-before-after .slider-button:before {
    padding: 8px;
  }
}
.card {
  border-radius: var(--border-radius, 10px);
  background-color: rgba(2, 14, 26, 0.32);
  border: solid 1px rgba(2, 14, 26, 0.7);
  padding: var(--padding-card-top, 30px) var(--padding-card-left, 25px);
}

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

.card.small {
  border: 0;
  padding: 15px;
}

.card.review {
  --padding-card-top: 30px;
  --padding-card-left: 30px;
  --border-radius: 10px;
}

.card.review .review-value {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 20px;
}

.card.review .review-value .value {
  font-family: var(--font-family-title);
  color: var(--color-muted);
  font-size: 0.8rem;
}

.card.review .review-value .value span {
  color: var(--color-default);
  font-size: 1.2rem;
}

.card.review .review-value .stars {
  display: flex;
  gap: 2px;
}

.card.review .review-value .stars .fas.fa-star {
  color: #ffb912;
}

.card.review .review-value .stars .far.fa-star {
  color: var(--color-muted);
}

.card.card-question-answer {
  --padding-card-top: 30px;
  --padding-card-left: 0px !important;
  background-color: rgba(0, 0, 0, 0);
  margin-bottom: 0px;
  border-left: 0;
  border-right: 0;
  border-top-width: 0px;
  border-radius: 0;
  border-color: hsla(0, 0%, 100%, 0.4);
}

.card.card-question-answer:nth-child(1) {
  border-top-width: 1px;
}

.card.card-question-answer:last-child {
  margin-bottom: 0;
}

.card.card-question-answer .title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.card.card-question-answer .title .h3 {
  padding-right: 10px;
}

.card.card-question-answer .title .indicator .minus {
  display: none;
}

.card.card-question-answer .title .indicator .plus {
  display: block;
}

.card.card-question-answer .content {
  overflow: hidden;
  display: none;
}

@media (min-width: 1200px) {
  .card.card-question-answer .content {
    width: 60%;
  }
}
.card.card-question-answer .content p {
  padding: 10px 0px 0px;
}

.card.card-question-answer.active {
  border-bottom-color: var(--color-light);
}

.card.card-question-answer.active .title .indicator .minus {
  display: block;
}

.card.card-question-answer.active .title .indicator .plus {
  display: none;
}

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

@media (min-width: 1400px) {
  header {
    height: 120px;
  }
}
header .header-container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  height: 90px;
  padding: 0 10px;
  transition: all 0.5s ease-in-out;
}

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

@media (min-width: 1200px) {
  header .header-container .logo-container {
    width: 250px;
  }
}
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 {
  transition: all 0.5s ease-in-out;
  vertical-align: middle;
  height: 70px;
}

@media (min-width: 1200px) {
  header .header-container .logo-container a img {
    height: 80px;
  }
}
header .header-container nav.menu-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 65px;
  order: 3;
}

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

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

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

@media (min-width: 1200px) {
  header .header-container nav.menu-container ul.menu li.link-menu a.a-link {
    padding: 15px 0;
    display: inline-block;
    color: var(--color-light);
  }
}
header .header-container nav.menu-container ul.menu li.link-menu a.a-link.active {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

header .header-container nav.menu-container .hamburger {
  position: relative;
  width: 35px;
  height: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  box-sizing: content-box;
  padding: 15px;
  cursor: pointer;
}

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

header.light-header {
  background-color: rgba(0, 0, 0, 0);
}

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

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

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

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

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

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

body.menu-open header {
  background-color: var(--color-light);
}

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

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

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

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

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

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

body.sticky-header header {
  background-color: hsla(0, 0%, 100%, 0.95);
  transition: all 0.5s ease-in-out;
  height: 90px;
}

@media (max-width: 1199px) {
  body.sticky-header header {
    background-color: var(--color-light);
  }
}
body.sticky-header header .header-container {
  height: 90px;
  transition: all 0.5s ease-in-out;
}

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

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

body.sticky-header header .header-container .logo-container a img {
  transition: all 0.5s ease-in-out;
  vertical-align: middle;
  height: 70px;
}

@media (max-width: 1199px) {
  body.sticky-header header .header-container nav.menu-container ul.menu {
    margin-top: 70px;
  }
}
body.sticky-header header .header-container nav.menu-container ul.menu li.link-menu a {
  color: var(--color-dark);
}

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

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

body.sticky-header header .header-container .lang-container .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);
}

@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);
  }
}
footer {
  position: relative;
  background-color: var(--color-dark);
}

footer .copyright p {
  display: inline-block;
}

footer .copyright p a {
  display: inline-block;
}

@media (min-width: 992px) {
  .lg\:text-center {
    text-align: center;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9fY29sb3JzLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19hbmltYXRpb25zLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL2ZvbnRzL19mb250cy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fY3VzdG9tLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImNvbXBvbmVudHMvX2ludHJvLnNjc3MiLCJjb21wb25lbnRzL19ibG9jay1ncmlkcy5zY3NzIiwiY29tcG9uZW50cy9fY2xpcC1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fcGluLXNjcm9sbC5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL19jYXJkLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImJhc2UvX3Jlc3BvbnNpdmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBRUE7RUFDQTs7O0FDTEo7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFVQTtFQVFBO0VBUUE7RUFDQTtFQWVBO0VBS0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQVFBO0VBQ0E7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQU9BO0VBQ0E7RUFDQTs7O0FBbEdBO0VBZko7SUFnQlE7SUFDQTs7O0FBT0o7RUF4Qko7SUF5QlE7OztBQUVKO0VBM0JKO0lBNEJROzs7QUFJSjtFQWhDSjtJQWlDUTs7O0FBRUo7RUFuQ0o7SUFvQ1E7OztBQW9DSjtFQXhFSjtJQXlFUTs7O0FBT0o7RUFoRko7SUFpRlE7OztBQU9KO0VBeEZKO0lBeUZROzs7QUFTSjtFQWxHSjtJQW1HUTs7O0FBT0o7RUExR0o7SUEyR1E7SUFDQTs7O0FDdkhSO0VBQ0U7SUFBQTs7RUFDQTtJQUFBOzs7QUFFRjtFQUNFO0lBQUE7O0VBQ0E7SUFBQTs7O0FBRUY7RUFDRTtJQUFBOztFQUNBO0lBQUE7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNFOzs7QUFJSjtFQUNFO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSU47RUFDRTtJQUNFOztFQUVGO0lBQ0U7OztBQUdKO0VBQ0U7RUFDQTtFQUNBOzs7QUNoQ0Y7RUFFSTtFQUNBO0VBQ0E7OztBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTs7O0FBS1o7RUFDSTs7O0FBRUE7RUFISjtJQUlROzs7QUFJUjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBQ0E7RUFDSTs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLQTtFQUNJOzs7QUFLSjtFQUNJOzs7QUFLWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBU2hCO0VBQ0k7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQStDUjtFQUNJO0VBQ0E7OztBQU1KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVJKO0lBU1E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBR0E7RUFESjtJQUVROzs7QUFLSjtFQURKO0lBRVE7OztBQUdSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFJUjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTs7O0FBS1o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUdSO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBS1o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBR0o7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUdKO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7OztBQU9SO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTs7O0FBS0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0E7RUFESjtJQUVROzs7QUFHUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHQTtFQURKO0lBRVE7OztBQUtKO0VBREo7SUFFUTs7O0FBS0o7RUFESjtJQUVROzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFQTtFQUhKO0lBSVE7OztBQUlSO0VBQ0k7OztBQVFBO0VBREo7SUFFUTtJQUNBOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQU9KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtROzs7QUFNWjtFQUNJOzs7QUFFQTtFQUVJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUVBO0VBRUk7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVBO0VBRUk7OztBQVNKO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQU1KO0VBQ0k7OztBQUtSO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFJQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFJUjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUlBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBTVo7RUFDSTtJQUNJOzs7QUFLUjtFQUNJO0lBQ0k7OztBQUlSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBSUE7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFNWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUlBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBTVo7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFJQTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQU1aO0VBQ0k7OztBQ3ZxQ0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7O0FDckZKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBSVI7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU1KO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdJO0VBREo7SUFFUTs7O0FBSVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQU1KO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBR1I7RUFDSTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBTUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7OztBQ25USjtFQUNJOzs7QUFMQTtFQUNJOzs7QUFRSjtFQUNJOzs7QUFWSjtFQUNJOzs7QUNGUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBdEJKO0lBdUJRO0lBQ0E7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFJSTtFQUNBO0VBQ0E7OztBQUtSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFDQTtFQUNJOzs7QUFJUjtFQUlJO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUNBO0VBQ0k7OztBQUlSO0VBSUk7RUFDQTtFQUNBOzs7QUFLUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQU5KO0lBT1E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FBR0o7RUFJSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDOUhaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBRUk7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUlBO0VBQ0k7OztBQUtaO0VBQ0k7OztBQUNBO0VBQ0k7OztBQUNBO0VBQ0k7OztBQ2pEaEI7RUFDSTs7O0FBRUE7RUFFSTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBTEo7SUFNUTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJOzs7QUFRSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNROzs7QUFLQTtFQUZKO0lBR1E7OztBQUlSO0VBQ0k7RUFDQTs7O0FBR0o7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBS0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFJQTtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFLWjtFQVNJOzs7QUFQQTtFQUVJO0VBQ0E7OztBQU9SO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBRUE7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7OztBQUlKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VDL1J4QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VENlJ3QjtFQUNBOzs7QUFjUjtFQUNJOzs7QUFHSjtFQUtJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBT0o7RUFDSTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFNUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBUzVCO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFLWjtFQUNJOzs7QUFFQTtFQUNJOzs7QUUzWlI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBSVI7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVBKO0lBUVE7OztBQUVKO0VBVko7SUFXUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHQTtFQUNJOzs7QUNuRnhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTtJQUNBOzs7QUFHSjtFQVRKO0lBVVE7SUFDQTs7O0FBR0o7RUFkSjtJQWVRO0lBQ0E7OztBQUlSO0VBQ0k7OztBQUlBO0VBREo7SUFFUTs7O0FBSUE7RUFESjtJQUVROzs7QUFLSjtFQURKO0lBRVE7OztBQU1SO0VBREo7SUFFUTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUlBO0VBREo7SUFFUTs7O0FBR0o7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUdSO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBTVI7RUFESjtJQUVROzs7QUFHSjtFQUxKO0lBTVE7OztBQUlSO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTs7O0FBR0o7RUFQSjtJQVFROzs7QUFHSjtFQVhKO0lBWVE7OztBQUtKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFJUjtFQUNJOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU9wQjtFQUdJO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUlBO0VBQ0k7OztBQUtKO0VBQ0k7RUFDQTs7O0FBTUo7RUFDSTs7O0FBSVI7RUFDSTs7O0FBTUE7RUFDSTs7O0FBQ0E7RUFGSjtJQUdPOzs7QUFJUDtFQUNJOzs7QUFDQTtFQUZKO0lBR1E7OztBQVFSO0VBQ0k7OztBQUNBO0VBRko7SUFHTzs7O0FBSVA7RUFDSTs7O0FBQ0E7RUFGSjtJQUdROzs7QUFPWjtFQUNJOzs7QUFDQTtFQUZKO0lBR1E7OztBQUdKO0VBQ0k7OztBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFQSjtJQVFROzs7QUFNWjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQTtFQWRKO0lBZVE7OztBQUtKO0VBREo7SUFFUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVBKO0lBUVE7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFFSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQWNBO0VBQ0k7OztBQUdKO0VBQ0k7OztBQVF4QjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0k7RUFDSTs7O0FBRUo7RUFDSTs7O0FBSVI7RUFkSjtJQWVROztFQUVBO0lBQ0k7O0VBRUE7SUFDSTs7RUFFSjtJQUNJOztFQUdSO0lBQ0k7O0VBRUE7SUFDSTs7RUFFSjtJQUNJOztFQUdSO0lBQ0k7O0VBRUE7SUFDSTs7RUFFSjtJQUNJOztFQUdSO0lBQ0k7O0VBRUE7SUFDSTs7RUFFSjtJQUNJOzs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUE7RUFKSjtJQUtRO0lBQ0E7OztBQUdKO0VBQ0k7OztBQUVBO0VBSEo7SUFJUTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUVKO0VBaEJKO0lBaUJROzs7QUFNaEI7RUFDSTtJQUNJOztFQUVKO0lBQ0k7OztBQ2hpQlI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQU1BO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FDeEJaO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7OztBQUVBO0VBUEo7SUFRUTtJQUNBOzs7QUFJQTtFQURKO0lBRVE7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBTko7SUFPUTs7O0FDekJaO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDbkVaO0VBQ0k7OztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUtaO0VBQ0k7OztBQUdJO0VBQ0k7RUFDQTs7O0FBSUE7RUFDSTs7O0FBRUo7RUFDSTs7O0FBSUo7RUFDSTs7O0FBS0o7RUFDSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQU1aO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VOakhKO0VBQ0E7RUFDQTtFTWlISTs7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUlOO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VOL0lKO0VBQ0E7RUFDQTs7O0FNZ0pJO0VBWko7SUFhUTtJQUNBO0lBQ0E7SUFDQTs7O0FBY0o7RUFWSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBUUE7OztBQU5BO0VBSUo7SUFIUTs7O0FBT1I7RUFkSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBWUE7OztBQVZBO0VBUUo7SUFQUTs7O0FDeE1oQjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFFQTtFQUNJO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTs7O0FBRUE7RUFDSTs7O0FBRUo7RUFDSTs7O0FBTWhCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQUNJOzs7QUFHQTtFQUNJOzs7QUFFSjtFQUNJOzs7QUFJWjtFQUNJO0VBQ0E7OztBQUVBO0VBSko7SUFLUTs7O0FBR0o7RUFDSTs7O0FBR1I7RUFDSTs7O0FBSVE7RUFDSTs7O0FBRUo7RUFDSTs7O0FDNUd4QjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFYSjtJQVlROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBVko7SUFXUTs7O0FBR0o7RUFkSjtJQWVROzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUE7RUFSSjtJQVNROzs7QUFHSjtFQUNJOzs7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1ROzs7QUFNaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUko7SUFTUTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVRKO0lBVVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1ROzs7QUFHSjtFQVRKO0lBVVE7OztBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQWRKO0lBZVE7SUFDQTtJQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBT3BCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQTtFQVhKO0lBWVE7OztBQUdKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFNaEI7RUFDSTs7O0FBS1k7RUFDSTs7O0FBR0o7RUFDSTs7O0FBU0k7RUFDSTs7O0FBT1o7RUFFSTs7O0FBUUE7RUFDSTs7O0FBUzVCO0VBQ0k7OztBQUVJO0VBQ0k7OztBQUtZO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU9aO0VBQ0k7OztBQUlBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7OztBQUVBO0VBUEo7SUFRUTs7O0FBR1I7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBZ0JRO0VBQ0k7OztBQVc1QjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUE7RUFMSjtJQU1ROzs7QUFHSjtFQUNJO0VBQ0E7OztBQUlRO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFPSjtFQURKO0lBRVE7OztBQU1JO0VBQ0k7OztBQU9aO0VBQ0k7OztBQUVKO0VBQ0k7OztBQVFBO0VBQ0k7OztBQWNSO0VBQ0k7RUFDQTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFVaEM7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQzdaUjtFQUNJO0VBQ0E7OztBQUdJO0VBQ0k7OztBQUVBO0VBQ0k7OztBQ0ZoQjtFQUNJO0lBQ0kiLCJmaWxlIjoibWFpbi5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiOnJvb3Qge1xuICAgIC0tY29sb3ItbGlnaHQ6ICNmZmZmZmY7XG4gICAgLS1jb2xvci1kYXJrOiAjMDIwRTFBOyAvLyBjb2xvcmUgZGVmYXVsdCB0ZXN0aVxuXG4gICAgLS1ncmV5LTEwMDogI0Y4RjZGMjtcbiAgICAtLWdyZXktMjAwOiAjZWRlZGVkO1xuICAgIC0tZ3JleS0zMDA6ICNFOUVBRTU7XG4gICAgLS1ncmV5LTQwMDogIzdEN0Q3RDtcbiAgICAtLWdyZXktNTAwOiAjQTBBMEEwO1xuXG4gICAgLS1jb2xvci1wcmltYXJ5OiAjRkZEMDAwO1xuICAgIC0tY29sb3Itc2Vjb25kYXJ5OiAjMDM0MTZEO1xuXG4gICAgLS1yZWQ6ICNDQzMzMzM7XG5cbiAgICAtLWNvbG9yLW11dGVkOiAjOTM5MjhFO1xuICAgIC0tY29sb3ItZGVmYXVsdDogdmFyKC0tY29sb3ItZGFyayk7IC8vQ29sb3JlIGRlZmF1bHQgZGVsIHRlc3RvXG59IiwiLyoqXG4qXG4qIFZhcmlhYmlsaSBnbG9iYWxpIHByb2dldHRvXG4qIFxuKiAwMSAtIENPTlRFTklUT1JJXG4qIDAyIC0gU0VQQVJBVE9SSVxuKiAwMyAtIFRSQU5TSVpJT05JXG4qIDA0IC0gRk9OVFNcbipcbiovXG5cbjpyb290IHtcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDEgLSBDT05URU5JVE9SSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLWNvbnRhaW5lci1iaWctd2lkdGg6IDE4NTBweDsgLy9Db250YWluZXIgbWFzc2ltb1xuICAgIC0tY29udGFpbmVyLXdpZHRoOiAxNTAwcHg7IC8vQ29udGFpbmVyIHByaW5jaXBhbGUgeFxuICAgIC0tY29udGFpbmVyLWxhcmdlLXdpZHRoOiAxNTQwcHg7IC8vQ29udGFpbmVyIHByaW5jaXBhbGUgeFxuICAgIC0tY29udGFpbmVyLW1lZGl1bS13aWR0aDogMTI1MHB4OyAvL0NvbnRhaW5lciBtZWRpbyB4XG4gICAgLS1jb250YWluZXItc21hbGwtd2lkdGg6IDEyMzBweDsgLy9Db250YWluZXIgbWVkaW8geFxuICAgIFxuICAgIC0tY29udGFpbmVyLWV4dHJhLXNtYWxsLXdpZHRoOiAxMDQwcHg7XG4gICAgLS1jb250YWluZXItbWluaS13aWR0aDogNjgwcHg7XG4gICAgLS1ibG9jay1taW4td2lkdGg6IDQ4MHB4O1xuICAgIC0tYmxvY2stbWluLWhlaWdodDogNTgwcHg7IC8vQWx0ZXp6YSBtaW5pbWEgYmxvY2NoaSBpbW1hZ2luZS90ZXN0b1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAtLWNvbnRhaW5lci13aWR0aDogMTY3MHB4O1xuICAgICAgICAtLWNvbnRhaW5lci1tZWRpdW0td2lkdGg6IDEzODBweDtcbiAgICB9XG4gICAgXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIDAyIC0gU0VQQVJBVE9SSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLXNwYWNlci1iaWc6IDMwcHg7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0tc3BhY2VyLWJpZzogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAtLXNwYWNlci1iaWc6IDYwcHg7XG4gICAgfVxuXG4gICAgLS1zcGFjZXItbGFyZ2U6IDIwcHg7IFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAtLXNwYWNlci1sYXJnZTogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE2MDFweCkge1xuICAgICAgICAtLXNwYWNlci1sYXJnZTogNDBweDtcbiAgICB9XG5cbiAgICAtLXNwYWNlci1tZWRpdW06IDI1cHg7XG4gICAgLS1zcGFjZXItc21hbGw6IDIwcHg7XG5cbiAgICAvLyAtLXNwYWNlci1zbWFsbDogNjBweDtcbiAgICAvLyAtLXNwYWNlci1leHRyYS1zbWFsbDogNTBweDtcbiAgICAvLyAtLXNwYWNlci14eC1zbWFsbDogMjVweDtcbiAgICAvLyAtLXNwYWNlci14eHgtc21hbGw6MTVweDtcbiAgICBcbiAgICAvLyAtLXNlcGFyYXRvci1iaWc6IDEwMHB4O1xuICAgIC8vIC0tc2VwYXJhdG9yLW1lZGl1bTogNjBweDtcbiAgICAvLyAtLXNlcGFyYXRvci1zbWFsbDogMzBweDtcbiAgICAvLyAtLXNlcGFyYXRvci1leHRyYS1zbWFsbDogMjBweDtcbiAgICBcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogMDMgLSBUUkFOU0laSU9OSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAtLXRyYW5zaXRpb24tZGVmYXVsdDogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIDA0IC0gRk9OVFNcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICAgLS1mb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtZmFtaWx5LXRpdGxlOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuXG4gICAgLS1mb250LWZhbWlseS1tZW51OiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIFxuICAgIC0tZm9udC1zaXplOiAxNnB4O1xuICAgIC0tZm9udC1zaXplLXNtYWxsOiAxNHB4O1xuXG4gICAgLS1oMS1mb250LXNpemU6IDM1cHg7XG4gICAgLS1oMS1mb250LXdlaWdodDogNTAwO1xuICAgIC0taDEtbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1oMS1mb250LXNpemU6IDYxcHg7XG4gICAgfVxuICAgIFxuICAgIC0taDItZm9udC1zaXplOiAyNXB4O1xuICAgIC0taDItZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAtLWgyLW1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0taDItZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAtLWgzLWZvbnQtc2l6ZTogMjBweDtcbiAgICAtLWgzLWZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgLS1oMy1tYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIC0taDMtZm9udC1zaXplOiAyNXB4O1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0gKi9cblxuICAgIC0taDQtZm9udC1zaXplOiAxOHB4O1xuICAgIC0taDQtZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAtLWg0LW1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1oNC1mb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIFxuICAgIC0taDUtZm9udC1zaXplOiAxNnB4O1xuICAgIC0taDUtZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAtLWg1LW1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLS1oNS1mb250LXNpemU6IDE0cHg7XG4gICAgICAgIC0taDUtZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBcbiAgICAtLWg2LWZvbnQtc2l6ZTogMTRweDtcbiAgICAtLWg2LWZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgLS1oNi1tYXJnaW4tYm90dG9tOiAxNXB4OyAgIFxuXG59IiwiQC13ZWJraXQta2V5ZnJhbWVzIG1lbnUtc2hvdyB7XG4gIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cbiAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgbWVudS1zaG93IHtcbiAgMCUgeyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMDAlKTsgfVxuICAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cbkBrZXlmcmFtZXMgbWVudS1zaG93IHtcbiAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cbiAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxufVxuXG4uYW5pbWF0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAxJTtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgXG4gIC5hbmltYXRlZCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLXVwIHtcbiAgMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB9IFxuICAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfSBcbn1cblxuQGtleWZyYW1lcyBib3VuY2VTY3JvbGwge1xuICAwJXtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gIH1cbn1cbi5ib3VuY2VTY3JvbGwge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlU2Nyb2xsO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn0iLCIvKipcbipcbiogU3RpbGkgYmFzZSBnZW5lcmljaSBwZXIgb2duaSB0aXBvIGRpIHRlbXBsYXRlXG4qIFxuKiAwMSAtIFNFUEFSQVRPUklcbiogMDIgLSBDT05URU5JVE9SSVxuKiAwMyAtIFdJRFRIXG4qIDA0IC0gTUFSR0lOXG4qIDA1IC0gUEFERElOR1xuKiAwNiAtIEJBQ0tHUk9VTkRcbiogMDcgLSBDT0xPUlNcbipcbiovXG5cbmh0bWwsXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbmJvZHkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIHotaW5kZXg6IDExO1xuICAgIH1cbiAgICAmLmxvYWRlZCB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbm1haW4ub3RoZXItcGFnZSB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTEwcHg7XG4gICAgfVxufVxuICAgIFxuLmgtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgICB9XG59XG5cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaWNvbmEtY29udGF0dGkge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG59XG5cbi5vYmplY3QtY292ZXIge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5hIHsgXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaC1mdWxsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vdmVyZmxvdy12aXNpYmxlIHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG5cbi5vdmVyZmxvdy1zY3JvbGwteCB7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuXG4uYm9yZGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xufVxuXG4ub3BhY2l0eS0wMyB7XG4gICAgb3BhY2l0eTogLjM7XG59XG5cbi5ib3JkZXItcmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAxN3B4O1xuXG4gICAgJi5zbWFsbCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG59XG5cbi5kb3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBoZWlnaHQ6IDVweDtcblxuICAgIH1cblxuICAgICYud2hpdGUge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ibGFjayB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgXG4gICAgJiA+IC5jb2wge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIFxuICAgICAgICAmLmMtMSB7XG4gICAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy0yIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTMge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtNCB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy01IHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTYge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtNyB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgICAgICYuYy04IHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLTkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtMTAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6eGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOnhsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6bGcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOmxnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6bWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOm1kIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgICYuYy0xXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0yXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0zXFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy00XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy01XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy02XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy03XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy04XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy05XFw6c20ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy0xMFxcOnNtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKiAwMSAtIFNFUEFSQVRPUklcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zcGFjZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIFxuICAgICYuYmlnIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItYmlnKTtcbiAgICB9XG4gICAgXG4gICAgJi5sYXJnZSB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLWxhcmdlKTtcbiAgICB9XG4gICAgJi5tZWRpdW0ge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1tZWRpdW0pO1xuICAgIH1cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItc21hbGwpO1xuICAgIH1cbiAgICAvKiAmLnNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItc21hbGwpO1xuICAgIH1cbiAgICAmLmV4dHJhLXNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItZXh0cmEtc21hbGwpO1xuICAgIH1cbiAgICAmLnh4LXNtYWxsIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXIteHgtc21hbGwpO1xuICAgIH1cbiAgICAmLnh4eC1zbWFsbCB7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLXh4eC1zbWFsbCk7XG4gICAgfVxuICAgICYucmVtIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItcmVtKTtcbiAgICB9ICovXG59XG5cbi8qIFxuLnNlcGFyYXRvciB7XG4gICAgd2lkdGg6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgIGZsZXgtYmFzaXM6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBcbiAgICAmLmJpZyB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBmbGV4LWJhc2lzOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3ItbWVkaXVtKTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IHZhcigtLXNlcGFyYXRvci1tZWRpdW0pO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNlcGFyYXRvci1iaWcpO1xuICAgICAgICAgICAgZmxleC1iYXNpczogdmFyKC0tc2VwYXJhdG9yLWJpZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgICAgICBmbGV4LWJhc2lzOiB2YXIoLS1zZXBhcmF0b3Itc21hbGwpO1xuICAgIH1cbn0gXG4qL1xuXG4uZGl2aWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHZhcigtLWdyZXktMjAwKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDIgLSBDT05URU5JVE9SSVxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgICYuZmx1aWQge1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBcbiAgICAmLmJpZyB7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLWJpZy13aWR0aCk7XG4gICAgfVxuICAgICYubGFyZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci1sYXJnZS13aWR0aCk7XG4gICAgfVxuICAgICYubWVkaXVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWVkaXVtLXdpZHRoKTtcbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLXNtYWxsLXdpZHRoKTtcbiAgICB9XG4gICAgJi5leHRyYS1zbWFsbCB7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLWV4dHJhLXNtYWxsLXdpZHRoKTtcbiAgICB9XG4gICAgJi5taW5pIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLW1pbmktd2lkdGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYubWluLXdpZHRoIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tYmxvY2stbWluLXdpZHRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnJlbGF0aXZlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBcbiAgICAmLmZsb2F0ZWQtcmlnaHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo5OTFweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmZsb2F0ZWQtbGVmdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjk5MXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucC1yZWxhdGl2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5kLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgXG4gICAgJjo6YWZ0ZXIsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgJi5kaXJlY3Rpb24tY29sdW1uIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgJi5kaXJlY3Rpb24tcm93IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICAmLmFsaWduLXN0YXJ0IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgICYuYWxpZ24tZW5kIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbiAgICAmLmZsZXgtd3JhcCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LWNlbnRlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAmLmp1c3RpZnktc3BhY2UtYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LXNwYWNlLWV2ZW5seSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgIH1cbiAgICAmLmp1c3RpZnktc3BhY2UtYXJvdW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICAgICYuanVzdGlmeS1zdGFydCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgJi5qdXN0aWZ5LWVuZCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJi5qdXN0aWZ5LWRlc2t0b3AtZW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuanVzdGlmeS1kZXNrdG9wLWVuZC1sZWZ0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmp1c3RpZnktY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmQtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgIC5kLXNtLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmQtc20tbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZC1tZC1ibG9jayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5kLW1kLW5vbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmQtbGctYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC1sZy1ub25lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kLXhsLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmQteGwtbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNjgycHgpIHtcbiAgICAuZC14eGwtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuZC14eGwtbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuZC1sZy1pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAzIC0gV0lEVEhcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLnctNDgwIHtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDQgLSBNQVJHSU5cbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5tLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItLTEwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuNjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tYi0xLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMnJlbSAhaW1wb3J0YW50O1xufVxuLm1iLTIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLm1iLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cbi5tYi00IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtICFpbXBvcnRhbnQ7XG59XG4ubWItNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50O1xufVxuLm1sLTAge1xuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tbC0wLXNtYWxsIHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubXItMCB7XG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5tdC0xIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tLTIwIHtcbiAgICBtYXJnaW46IDE1cHg7XG4gICAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgIH1cbn1cblxuLmdhcC0xIHtcbiAgICBnYXA6IDFyZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA1IC0gUEFERElOR1xuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ucGFkZGluZy1tb2JpbGUge1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDE3MDBweCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gICAgfVxufVxuXG4ucC0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wLTEge1xuICAgIHBhZGRpbmc6IDFyZW07XG59XG4ucC0yIHtcbiAgICBwYWRkaW5nOiAycmVtO1xufVxuLnAtMyB7XG4gICAgcGFkZGluZzogM3JlbTtcbn1cbi5wLTQge1xuICAgIHBhZGRpbmc6IDRyZW07XG59XG4ucC01IHtcbiAgICBwYWRkaW5nOiA1cmVtO1xufVxuXG4ucGFkZGluZy1sci0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLnAtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA2IC0gQkFDS0dST1VORFxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJnLXNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIFxuICAgICYud2l0aC1vdmVybGF5IHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKDAsIDAlLCAwJSwgLjIpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuaGVhZGVyLWJnIHtcbiAgICAgICAgaGVpZ2h0OiA0NXZoO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uYmctZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgXG4gICAgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNixcbiAgICAucCwgcCwgYSwgdWwsIGxpLCBpLCBzcGFuLCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIH1cblxuICAgICYuYmtnLWNvbG9yIHsgXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxufVxuXG4uYmctbGlnaHQtZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMDgpO1xuICAgIFxuICAgIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG4gICAgLnAsIHAsIGEsIHVsLCBsaSwgaSwgc3Bhbiwgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB9XG59XG5cbi5iZy1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG59XG5cbi5iZy1yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJlZCk7XG59XG5cbi5iZy1ncmV5LTEwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JleS0xMDApO1xufVxuXG4uYmctZ3JleS0yMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXktMjAwKTtcbn1cblxuLmJnLWdyZXktMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmV5LTMwMCk7XG59XG5cbi5iZy1ncmV5LTQwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JleS00MDApO1xufVxuXG4uYmctZ3JleS01MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXktNTAwKTtcbn1cbi5iZy13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIFxuICAgIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYsXG4gICAgLnAsIHAsIGEsIHVsLCBsaSwgaSwgc3Bhbiwgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDcgLSBDT0xPUlNcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jb2xvci1kYXJrLFxuLmNvbG9yLWRhcmsgKiB7XG4gICAgJjpub3QoLmJ0bik6bm90KC5mYS1jaGV2cm9uLXJpZ2h0KTpub3QoLmZhLXVwbG9hZCkge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgfVxufVxuXG4uY29sb3ItbGlnaHQsXG4uY29sb3ItbGlnaHQgKiB7XG4gICAgJjpub3QoLmJ0bik6bm90KC5mYS1jaGV2cm9uLXJpZ2h0KTpub3QoLmZhLXVwbG9hZCkge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIH1cbn1cblxuLmNvbG9yLW11dGVkLFxuLmNvbG9yLW11dGVkICoge1xuICAgICY6bm90KC5idG4pOm5vdCguZmEtY2hldnJvbi1yaWdodCk6bm90KC5mYS11cGxvYWQpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW11dGVkKTtcbiAgICB9XG59XG5cbi5jb2xvci1ncmV5LTUwMCxcbi5jb2xvci1ncmV5LTUwMCAqIHtcbiAgICAmOm5vdCguYnRuKTpub3QoLmZhLWNoZXZyb24tcmlnaHQpOm5vdCguZmEtdXBsb2FkKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LTUwMCk7XG4gICAgfVxufVxuXG5cbi5wbC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ucGwtMTUge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5wci0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLnByLTE1IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuLm10LTE1IHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuLm1iLTE1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG59XG4ubXQtMzAge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG59XG4ubWItMzAge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4ubXItMTAge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbn1cbi5vcmRlci0yIHtcbiAgICBvcmRlcjogMjtcbn1cblxuQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAub3JkZXItbGctMSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICAub3JkZXItbGctMiB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cbn1cbi5vcmRlci0zIHtcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xufVxuLm9yZGVyLTQge1xuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG59XG4ub3JkZXItNSB7XG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcbn1cbi5vcmRlci02IHtcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xufVxuXG4uY29sdW1uIHtcbiAgICAmLTEge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgfVxuICAgICYtMiB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gICAgJi0zIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cbiAgICAmLTQge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgfVxuICAgICYtNSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAucGwtMFxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wbC0xNVxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0wXFw6eGwge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0xNVxcOnhsIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMTVcXDp4bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTE1XFw6eGwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0zMFxcOnhsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMzBcXDp4bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTFcXDp4bCB7XG4gICAgICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0yXFw6eGwge1xuICAgICAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItM1xcOnhsIHtcbiAgICAgICAgb3JkZXI6IDMgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTRcXDp4bCB7XG4gICAgICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci01XFw6eGwge1xuICAgICAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNlxcOnhsIHtcbiAgICAgICAgb3JkZXI6IDYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmQtbm9uZVxcOnhsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuY29sdW1uIHtcbiAgICAgICAgJi0xXFw6eGwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgICAgICYtMlxcOnhsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuICAgICAgICAmLTNcXDp4bCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cbiAgICAgICAgJi00XFw6eGwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgICB9XG4gICAgICAgICYtNVxcOnhsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTUwMHB4KSB7XG4gICAgLmQtYmV0d2VlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5kLW5vbmVcXDpsZ3Uge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucGwtMFxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wbC0xNVxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0wXFw6bGcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wci0xNVxcOmxnIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMTVcXDpsZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTE1XFw6bGcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0zMFxcOmxnIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMzBcXDpsZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTFcXDpsZyB7XG4gICAgICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0yXFw6bGcge1xuICAgICAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItM1xcOmxnIHtcbiAgICAgICAgb3JkZXI6IDMgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTRcXDpsZyB7XG4gICAgICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci01XFw6bGcge1xuICAgICAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNlxcOmxnIHtcbiAgICAgICAgb3JkZXI6IDYgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmQtbm9uZVxcOmxnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuY29sdW1uIHtcbiAgICAgICAgJi0xXFw6bGcge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgICAgICYtMlxcOmxnIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuICAgICAgICAmLTNcXDpsZyB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cbiAgICAgICAgJi00XFw6bGcge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgICB9XG4gICAgICAgICYtNVxcOmxnIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnBsLTBcXDptZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucGwtMTVcXDptZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucHItMFxcOm1kIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucHItMTVcXDptZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm10LTE1XFw6bWQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYi0xNVxcOm1kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXQtMzBcXDptZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iLTMwXFw6bWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0xXFw6bWQge1xuICAgICAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItMlxcOm1kIHtcbiAgICAgICAgb3JkZXI6IDIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTNcXDptZCB7XG4gICAgICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci00XFw6bWQge1xuICAgICAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNVxcOm1kIHtcbiAgICAgICAgb3JkZXI6IDUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTZcXDptZCB7XG4gICAgICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5kLW5vbmVcXDptZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNvbHVtbiB7XG4gICAgICAgICYtMVxcOm1kIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgfVxuICAgICAgICAmLTJcXDptZCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIH1cbiAgICAgICAgJi0zXFw6bWQge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICB9XG4gICAgICAgICYtNFxcOm1kIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgfVxuICAgICAgICAmLTVcXDptZCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5wbC0wXFw6c20ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnBsLTE1XFw6c20ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnByLTBcXDpzbSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnByLTE1XFw6c20ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tdC0xNVxcOnNtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWItMTVcXDpzbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm10LTMwXFw6c20ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYi0zMFxcOnNtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItMVxcOnNtIHtcbiAgICAgICAgb3JkZXI6IDEgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTJcXDpzbSB7XG4gICAgICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci0zXFw6c20ge1xuICAgICAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3JkZXItNFxcOnNtIHtcbiAgICAgICAgb3JkZXI6IDQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9yZGVyLTVcXDpzbSB7XG4gICAgICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5vcmRlci02XFw6c20ge1xuICAgICAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuZC1ub25lXFw6c20ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5jb2x1bW4ge1xuICAgICAgICAmLTFcXDpzbSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJi0yXFw6c20ge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICB9XG4gICAgICAgICYtM1xcOnNtIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgICAgfVxuICAgICAgICAmLTRcXDpzbSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgJi01XFw6c20ge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiA1O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxufVxuXG4ubm8tZXZlbnRzIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn0iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvSW50ZXItQmxhY2suZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLUJsYWNrLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItQmxhY2sud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUJsYWNrLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1CbGFjay5zdmcjSW50ZXItQmxhY2snKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLVNlbWlCb2xkLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1TZW1pQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLVNlbWlCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLVNlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1TZW1pQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItU2VtaUJvbGQuc3ZnI0ludGVyLVNlbWlCb2xkJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUxpZ2h0LmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUxpZ2h0LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItRXh0cmFMaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUxpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUxpZ2h0LnN2ZyNJbnRlci1FeHRyYUxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUJvbGQuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLUV4dHJhQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUV4dHJhQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1FeHRyYUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUV4dHJhQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItRXh0cmFCb2xkLnN2ZyNJbnRlci1FeHRyYUJvbGQnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIuc3ZnI0ludGVyLVJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLUJvbGQuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUJvbGQuc3ZnI0ludGVyLUJvbGQnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLUxpZ2h0LmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItTGlnaHQuc3ZnI0ludGVyLUxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9JbnRlci1NZWRpdW0uZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludGVyLU1lZGl1bS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9JbnRlci1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludGVyLU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW50ZXItTWVkaXVtLnN2ZyNJbnRlci1NZWRpdW0nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuIiwiLyoqXG4qXG4qIFN0aWxpIHJlbGF0aXZpIGFpIGZvbnRcbiogXG4qIDAxIC0gSEVBRElOR1xuKiAwMiAtIEFMSUdOTUVOVFxuKiAwMyAtIFRSQU5TRk9STVxuKiAwNCAtIFdFSUdIVFxuKiAwNSAtIE9DQ0hJRUxMT1xuKiAwNiAtIExJTkUgSEVJR0hUXG4qXG4qL1xuXG4vLyBJbXBvcnQgYWxsIGZvbnRzXG5AaW1wb3J0IFwiZm9udHMvZm9udHNcIjtcblxuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGVmYXVsdCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgICYubGlnaHQge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYucmVndWxhciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgJi5tZWRpdW0ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgICYuc2VtaWJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufVxuXG4ubGlnaHQge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4ucmVndWxhciB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5tZWRpdW0ge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uc2VtaWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmluaGVyaXQge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG5wLCAucCwgc3Ryb25nLCBiLCB0aW1lLCBpIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgJi5saWdodCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgJi5yZWd1bGFyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgJi5zZW1pYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJi5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLnRleHQtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbn1cblxudWwge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAyNXB4O1xufVxuXG51bCwgbGkge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgJi5saWdodCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgJi5yZWd1bGFyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgJi5zZW1pYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJi5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbnN0cm9uZywgYiwgLnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnRleHQtc2hhZG93IHtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDEgLSBIRUFESU5HXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2LCAuaDcge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS10aXRsZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYubGlnaHQge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICYucmVndWxhciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgJi5tZWRpdW0ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgICYuc2VtaWJvbGQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgcCwgLnAsIHVsLCBsaSwgYSwgc3Bhbiwgc3Ryb25nLCAuc3Ryb25nLCBiLCB0aW1lLCBpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJi5wLXN0eWxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICB9XG5cbiAgICAmLmxpbmUtcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgfVxufVxuXG4uaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDEtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgxLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4uaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDItZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgyLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDMtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWgzLW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDQtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg0LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDUtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg1LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4uaDYge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0taDYtZm9udC13ZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWg2LW1hcmdpbi1ib3R0b20pO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5oNyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oNy1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNy1mb250LXdlaWdodCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taDctbWFyZ2luLWJvdHRvbSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnRleHQtYmlnIHtcbiAgICBmb250LXNpemU6IDd2dztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAyIC0gQUxJR05NRU5UXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi50ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbn1cbi50ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDAzIC0gVFJBTlNGT1JNXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udGV4dC11cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4udGV4dC1sb3dlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG4udGV4dC1jYXBpdGFsaXplIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogMDQgLSBXRUlHSFRcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50ZXh0LWV4dHJhLWxpZ2h0IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuLnRleHQtbGlnaHQge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4udGV4dC1ub3JtYWwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4udGV4dC1tZWRpdW0ge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4udGV4dC1ib2xkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cbi50ZXh0LWV4dHJhLWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA1IC0gT0NDSElFTExPXG4qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5vY2NoaWVsbG8ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIDA2IC0gREVDT1JBVElPTlxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuIiwiQG1peGluIGRlYnVnLWNzcygkY29sb3IpIHtcbiAgICAqIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRhc2hlZCAkY29sb3I7XG4gICAgfVxufVxuLmRlYnVnXFw6Y3NzIHtcbiAgICAtLWRlYnVnLWNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcblxuICAgIEBpbmNsdWRlIGRlYnVnLWNzcyh2YXIoLS1kZWJ1Zy1jb2xvcikpO1xuXG4gICAgJlxcOnJlZCB7XG4gICAgICAgIC0tZGVidWctY29sb3I6IHJlZDtcblxuICAgICAgICBAaW5jbHVkZSBkZWJ1Zy1jc3ModmFyKC0tZGVidWctY29sb3IpKTtcbiAgICB9XG59XG4iLCIuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuYnRuLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLWxpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICYuYnRuLWRhcmstZnVsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgcGFkZGluZzogMTBweCAzMHB4O1xuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZ1bGwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICB9XG59IiwidWwuYnJlYWRjcnVtYnMge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICBcbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgLy9tYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiPlwiO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGlnaHQge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuZm9ybS1jb250YXR0aSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAuY29udGFjdC1mb3JtIHtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDkxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBncmlkLWdhcDogMTZweDtcbiAgICAgICAgICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qICYuYWxsZWdhdG8tZm9ybSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfSAqL1xuXG4gICAgICAgICAgICAmLmNoZWNrLWZpZWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY29sb3ItbGlnaHQ6bm90KC5wcml2YWN5LWNvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAvKmNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7Ki9cbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDBweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcblxuICAgICAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jb2xvci1saWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgICAgICAgICAgICAgICAgICAvKiBDaHJvbWUsIFNhZmFyaSwgRWRnZSwgT3BlcmEgKi9cbiAgICAgICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbiAgICAgICAgICAgICAgICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvKiBGaXJlZm94ICovXG4gICAgICAgICAgICAgICAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRTg1RDVEO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE3cHggMThweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NyUgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICYrLnNlbGVjdC1hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnByaXZhY3ktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jaGVja21hcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0OmNoZWNrZWR+LmNoZWNrbWFyazphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTsqL1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTsqL1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHNldWRvLWlucHV0LWZpbGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuODtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgW3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKC4uL2ltZy9pY29uZS91cGxvYWQuc3ZnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1maWxlcy1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1idXR0b24taW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRTg1RDVEO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTdweCAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFic29sdXRlX2Z1bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5kYXJrIHtcbiAgICAgICAgLmNvbnRhY3QtZm9ybSB7XG4gICAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgLmZvcm0taW5wdXQge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgICAgICAgICAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0EwQTBBMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0EwQTBBMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNBMEEwQTA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAmLnByaXZhY3ktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jaGVja21hcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1pbnB1dC1maWxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCguLi9pbWcvaWNvbmUvdXBsb2FkLnN2Zyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLnBzZXVkby1maWxlcy1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAucHNldWRvLWJ1dHRvbi1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MDQ4NTI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHlwZS1jYW5kaWRhdHVyYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICYuaGlkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2RhdGEtZm9ybS10b2dnbGVdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59IiwiQG1peGluIGFic29sdXRlX2Z1bGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG59XG5AbWl4aW4gZF9mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuQG1peGluIGFzcGVjdF9yYXRpbygkbGFyZ2hlenphLCAkYWx0ZXp6YSkge1xuICAgIGhlaWdodDogMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAoKDEwMCAqICRhbHRlenphKSAvICRsYXJnaGV6emEpICogMSU7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbEFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUpIHtcblx0cG9zaXRpb246ICAkcG9zaXRpb247XG5cdHRvcDogICAgICAgNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbkBtaXhpbiBob3Jpem9udGFsQWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuXHRwb3NpdGlvbjogICRwb3NpdGlvbjtcblx0bGVmdDogICAgICA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuQG1peGluIGNlbnRlcigkcG9zaXRpb246IHJlbGF0aXZlKSB7XG5cdHBvc2l0aW9uOiAgJHBvc2l0aW9uO1xuXHR0b3A6ICAgICAgIDUwJTtcblx0bGVmdDogICAgICA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG5AbWl4aW4gY2VudGVyRmxleCgpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59IiwiLmludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwc3ZoO1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIG1heC1oZWlnaHQ6IDEwMHN2aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pbWctZnVsbCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigyLDE0LDI2KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMiwxNCwyNiwwLjA1KSAwJSwgcmdiYSgyLDE0LDI2LDEpIDEwMCUpO1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5pbWctYXRmIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBzdmg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAuYXRmLXRleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMTB2aDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGwtZG93biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDEwdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTczMHB4KSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoKCgxMDB2dyAtIDE2NzBweCkgLyAyKSArIDIwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzN3B4O1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIuYmxvY2stZ3JpZHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgZ2FwOiAyMHB4O1xuICAgIFxuICAgICYubm8tZ2FwIHtcbiAgICAgICAgZ3JpZC1nYXA6IDA7XG4gICAgICAgIGdhcDogMDtcbiAgICB9XG5cbiAgICAmLm1pbi1nYXAge1xuICAgICAgICBncmlkLWdhcDogMTZweDtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgIH1cblxuICAgICYuYmlnLWdhcCB7XG4gICAgICAgIGdyaWQtZ2FwOiAyNXB4O1xuICAgICAgICBnYXA6IDI1cHg7XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC1nYXA6IDUwcHg7XG4gICAgICAgICAgICBnYXA6IDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAxMDBweDtcbiAgICAgICAgICAgIGdhcDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgycHgpIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAxNTBweDtcbiAgICAgICAgICAgIGdhcDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTEge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTIge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZC1ncmlkIHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kaWZmLXNpemUge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOWZyIDEuMWZyO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmNvbHVtbnMtMyB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXN0b20tZ3JpZCB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNSUgMjUlIDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogIDI1JSAyNSUgNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZnVsbC1tZCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTQge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5jb2x1bW5zLTUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvY2stc29sdXppb25pIHtcbiAgICAgICAgLnNvbHV6aW9uZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyZXktMjAwKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgXG4gICAgICAgICAgICAuc29sdXppb25lLWltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgIFxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIsIDE0LCAyNiwgLjMyKTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5zb2x1emlvbmUtZGVzYyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAuZGVzYyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAuY2hhbmdlLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgLmNoYW5nZS1ncmV5IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgLnN0YW5kYXJkIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgIC5ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuc29sdXppb25lLWltZyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMiwgMTQsIDI2LCAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgLnNvbHV6aW9uZS1kZXNjIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5kZXNjIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmNoYW5nZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5jaGFuZ2UtZ3JleSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLWRlZmF1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXktNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAuc3RhbmRhcmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5ncmlkIHtcbiAgICAgICAgLyogZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgKi9cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLnRlc3RvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7ICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5pbWctYXppZW5kYSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjc0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaW1nLWNvbnRhdHRpIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjQycHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaW1nLWF6aWVuZGEtbGVmdCxcbiAgICAgICAgJi5pbWctYXppZW5kYS1yaWdodCB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzc0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50ZXh0LWF6aWVuZGEge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaW52ZXJ0ZWQge1xuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1vYmlsZS1pbnZlcnRlZCB7XG4gICAgICAgIC5ncmlkIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY3VzdG9tLWdyaWQge1xuICAgICAgICAuZ3JpZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAuNXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpO1xuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IC41cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubm8tYm9yZGVyLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYudG8tc2hvdy1hbmltYXRpb24ge1xuXG4gICAgICAgICAgICAgICAgLmltZy1tb2JpbGUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5zaWRlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTgsMTgsMTgsIC41KTtcbiAgICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE4LDE4LDE4LC4yKSAwJSwgcmdiYSgxOCwxOCwxOCwgLjg1KSA4MCUsIHJnYmEoMTgsMTgsMTgsLjk1KSAxMDAlKTtcbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuc2hvdy1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyAgIFxuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIH0gXG5cbiAgICAgICAgICAgICAgICAuaWNvbmEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5taW51cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIC8qIC5zaG93LWhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICovXG4gICAgICAgICAgICAgICAgICAgIC5pY29uYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAucGx1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5taW51cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1hbHRlcm5hdGUge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAuaW1nLXZlcnRpY2FsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAuaW1nLWhvcml6b250YWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG5cbiAgICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCg0biArIDEpIHsgXG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuaW1nLXZlcnRpY2FsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAuaW1nLWhvcml6b250YWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICB9IC8qIFByaW1vIGVsZW1lbnRvIGRpIG9nbmkgY2ljbG8gKi9cbiAgICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCg0biArIDIpIHsgXG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcblxuICAgICAgICAgICAgICAgIC5pbWctdmVydGljYWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgLmltZy1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvKiBTZWNvbmRvIGVsZW1lbnRvICovXG4gICAgICAgICAgICAuaXRlbTpudGgtY2hpbGQoNG4gKyAzKSB7IFxuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG5cbiAgICAgICAgICAgICAgICAuaW1nLXZlcnRpY2FsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIC5pbWctaG9yaXpvbnRhbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gLyogVGVyem8gZWxlbWVudG8gKi9cbiAgICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCg0biArIDQpIHsgXG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcblxuICAgICAgICAgICAgICAgIC5pbWctdmVydGljYWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIC5pbWctaG9yaXpvbnRhbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvKiBRdWFydG8gZWxlbWVudG8gKi9cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudGl0bGUtdmFsdWUtZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgfVxuXG4gICAgJi5pbmZvLWZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICAgICAgICAgIGdhcDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBnYXA6IDQwcHg7XG5cbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZWluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICB9XG59IiwiLmNsaXAtaW1hZ2UtYW5pbWF0ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogY2xpcC1wYXRoIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDAgMCAxMDAlIDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIC5jbGlwLWltZyAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogY2xpcC1wYXRoIC41cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSA7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgIC8vIG1heC1oZWlnaHQ6IDQ3OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wbGF5LXZpZGVvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFzcGVjdC1pbWcge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA3MzQvNDI0O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5pbWFnZS1wYXJhbGxheCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICBtaW4taGVpZ2h0OiB1bnNldDtcblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGhlaWdodDogNzB2aDtcbiAgICAgICAgbWF4LWhlaWdodDogODAwcHg7XG4gICAgfVxuXG4gICAgJi5tYXJnaW4tbmVnYXRpdmUge1xuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxNjgxcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgICAgICAgICAgICAgaSwgc3BhbntcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXJyZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnN3aXBlci1yZWNlbnNpb25pIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuc3dpcGVyLXNjcm9sbGJhciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIC5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAxKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgIC5hcnJvdy1wcmV2LCAuYXJyb3ctbmV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJi5jb2xvci1saWdodCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnJvdy1wcmV2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcblxuICAgICAgICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hcnJvdy1uZXh0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgJi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN3aXBlci1iZWZvcmUtYWZ0ZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIC5pbWctc2xpZGVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuOHMgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLnN3aXBlci1zbGlkZS1hY3RpdmUpIHtcbiAgICAgICAgICAgIC5pbWctc2xpZGVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaDQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zd2lwZXItc2xpZGUtcHJldiB7XG4gICAgICAgICAgICAuaW1nLXNsaWRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zd2lwZXItc2xpZGUtbmV4dCxcbiAgICAgICAgJi5zd2lwZXItc2xpZGUtcHJldiArIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgLmltZy1zbGlkZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnJvdy1wcmV2LCAuYXJyb3ctbmV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgJi5jb2xvci1saWdodCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFycm93LXByZXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFycm93LW5leHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmltZy1zbGlkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTYvMTA7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYuZm9yZWdyb3VuZC1pbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAuc2xpZGVyLWVsZW0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyRmxleDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxMjM2LzY5NTtcbiAgICAgICBcbiAgICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc2xpZGVyLWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2MSwgOTcsIDExOSwgLjUpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyRmxleDtcblxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDQwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1peGluIGFycm93LWhlbHBlcigpIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuXG4gICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFycm93LWhlbHBlcigpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhcnJvdy1oZWxwZXIoKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cywgMTBweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyLCAxNCwgMjYsIDAuMzIpO1xuICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoMiwgMTQsIDI2LCAwLjcpO1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctY2FyZC10b3AsIDMwcHgpIHZhcigtLXBhZGRpbmctY2FyZC1sZWZ0LCAyNXB4KTtcblxuICAgICYuYmctc2Vjb25kYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cblxuICAgICYucmV2aWV3IHtcbiAgICAgICAgLS1wYWRkaW5nLWNhcmQtdG9wOiAzMHB4O1xuICAgICAgICAtLXBhZGRpbmctY2FyZC1sZWZ0OiAzMHB4O1xuICAgICAgICAtLWJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgLnJldmlldy12YWx1ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LXRpdGxlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbXV0ZWQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN0YXJzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogMnB4O1xuXG4gICAgICAgICAgICAgICAgLmZhcy5mYS1zdGFyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkI5MTI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5mYXIuZmEtc3RhciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tdXRlZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5jYXJkLXF1ZXN0aW9uLWFuc3dlciB7XG4gICAgICAgIC0tcGFkZGluZy1jYXJkLXRvcDogMzBweDtcbiAgICAgICAgLS1wYWRkaW5nLWNhcmQtbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC40KTtcblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIC5oMyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbmRpY2F0b3Ige1xuICAgICAgICAgICAgICAgIC5taW51cyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwcHggMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAuaW5kaWNhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgLm1pbnVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogOTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIGhlaWdodDogOTBweDtcbiAgICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgfVxuXG4gICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICAgICAgICAgICAgb3JkZXI6IDE7XG5cbiAgICAgICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAubG9nby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI1MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdWwubWVudSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxpbmstbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhLmEtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZGVmYXVsdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktdGl0bGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5saWdodC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgXG4gICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5sb2dvLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIC5sb2dvLWRhcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5sb2dvLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgXG4gICAgICAgICAgICBuYXYubWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHVsLm1lbnUgeyAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYubGluay1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspOyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmhhbWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgLmxhbmd1YWdlLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keSB7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kZWZhdWx0KTtcbiAgICAmLm1lbnUtb3BlbiB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG5cbiAgICAgICAgICAgIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAubG9nby1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dvLWRhcmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAubG9nby1saWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbmF2Lm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vYW5pbWF0aW9uLW5hbWU6IGhhbWJ1cmdlcl90b2dnbGVfYmVmb3JlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9hbmltYXRpb24tbmFtZTogaGFtYnVyZ2VyX3RvZ2dsZV9hZnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1lZ2FtZW51LW9wZW4ge1xuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG5hdi5tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIHVsLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5saW5rLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5zdGlja3ktaGVhZGVyIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjk1KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubG9nby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZ28tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuYXYubWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5saW5rLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5oYW1idXJnZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0ZWQtbGFuZ3VhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sYW5ndWFnZS1tZW51LW9wZW4ge1xuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIC5sYW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIC5sYW5ndWFnZS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubGFuZ3VhZ2UtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkLWxhbmd1YWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoYW1idXJnZXJfdG9nZ2xlX2JlZm9yZSB7XG4gICAgMCUgICB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgNTAlICB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIGhhbWJ1cmdlcl90b2dnbGVfYWZ0ZXIge1xuICAgIDAlICAge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDUwJSAge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTlweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTlweCkgcm90YXRlKC00NWRlZyk7XG4gICAgfVxufVxuIiwiZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuICogc206IDU3NnB4XG4gKiBtZDogNzY4cHhcbiAqIGxnOiA5OTJweFxuICogeGw6IDEyMDBweFxuKi9cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmxnXFw6dGV4dC1jZW50ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufSJdfQ== */
