@charset "UTF-8";
/*
 * Import reset
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a, a:link, a:visited, a:hover, a:active, a:focus {
  text-decoration: none;
}

h1, h2, h3, h4, h5, h5 {
  margin-bottom: 5px !important;
}

/*
 * Import base and layout
 */
.scroll-animation, .custom-animation {
  /*
   * Scroll Animations FadeIn
   */
  /*
   * Déplacement venant du bas
   */
  /*
   * Effet scale
   */
}
@keyframes opacityAnimation {
  0% {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.scroll-animation.animation-fadein, .custom-animation.animation-fadein {
  opacity: 0;
}
.scroll-animation.animation-fadein.active-element, .custom-animation.animation-fadein.active-element {
  opacity: 1;
  animation: opacityAnimation 3s;
}
.scroll-animation.animation-fadein-slow, .custom-animation.animation-fadein-slow {
  opacity: 0;
}
.scroll-animation.animation-fadein-slow.active-element, .custom-animation.animation-fadein-slow.active-element {
  opacity: 1;
  animation: opacityAnimation 4s;
}
.scroll-animation.animation-fadein-fast, .custom-animation.animation-fadein-fast {
  opacity: 0;
}
.scroll-animation.animation-fadein-fast.active-element, .custom-animation.animation-fadein-fast.active-element {
  opacity: 1;
  transition: opacity 2.5s ease;
}
.scroll-animation.animation-come-in-bottom, .custom-animation.animation-come-in-bottom {
  opacity: 0.7;
  transform: translateY(160px);
  transition: transform 900ms ease, opacity 1.9s ease;
}
.scroll-animation.animation-come-in-bottom.active-element, .custom-animation.animation-come-in-bottom.active-element {
  opacity: 1;
  transform: translateX(0);
}
.scroll-animation.animation-come-in-bottom-fadein, .custom-animation.animation-come-in-bottom-fadein {
  opacity: 0;
  transform: translateY(160px);
  transition: transform 900ms ease, opacity 1.9s ease;
}
.scroll-animation.animation-come-in-bottom-fadein.active-element, .custom-animation.animation-come-in-bottom-fadein.active-element {
  opacity: 1;
  transform: translateX(0);
}
.scroll-animation.animation-come-in-bottom-no-fadein, .custom-animation.animation-come-in-bottom-no-fadein {
  transform: translateY(160px);
  transition: transform 900ms ease, opacity 1.9s ease;
}
.scroll-animation.animation-come-in-bottom-no-fadein.active-element, .custom-animation.animation-come-in-bottom-no-fadein.active-element {
  transform: translateX(0);
}
.scroll-animation.animation-come-in-bottom-alt, .custom-animation.animation-come-in-bottom-alt {
  opacity: 0.2;
  transform: translateY(200px);
  transition: transform 700ms ease, opacity 1.9s ease;
}
.scroll-animation.animation-come-in-bottom-alt.active-element, .custom-animation.animation-come-in-bottom-alt.active-element {
  opacity: 1;
  transform: translateX(0);
}
.scroll-animation.animation-scale, .custom-animation.animation-scale {
  opacity: 0.2;
  transform: scale(50%);
  transition: transform 500ms ease, opacity 1.7s ease;
}
.scroll-animation.animation-scale.active-element, .custom-animation.animation-scale.active-element {
  opacity: 1;
  transform: scale(100%);
}
.scroll-animation.child-images-scale img, .custom-animation.child-images-scale img {
  opacity: 0.2;
  transform: scale(50%);
  transition: transform 500ms ease, opacity 1.7s ease;
}
.scroll-animation.child-images-scale.active-element img, .custom-animation.child-images-scale.active-element img {
  opacity: 1;
  transform: scale(100%);
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
html, body {
  font-family: "Urbanist", sans-serif;
  font-weight: 300;
  font-size: 14.3px;
  line-height: 24px;
  color: #212529;
}
@media (max-width: 575px) {
  html, body {
    font-size: 15px;
  }
}

a {
  color: inherit;
  transition: all 0.3s;
  cursor: pointer;
}
a:hover {
  color: #a0a0a0;
}

p {
  letter-spacing: 0.4px;
}

.font-playfair-display {
  font-family: "Playfair Display", serif;
}

.bold, strong {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

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

.text-danger {
  color: #b14147;
}

.color-grey {
  color: #a0a0a0;
}

.color-light-grey {
  color: #CCC;
}

.cursor-pointer {
  cursor: pointer !important;
}

.container {
  width: 100% !important;
  max-width: 1449px;
}
@media (max-width: 379px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (min-width: 576px) {
  .container {
    padding-left: 50px;
    padding-right: 50px;
  }
}

h1.main-title, h2.main-title {
  font-family: "Playfair Display", serif;
  font-size: 35px;
  text-transform: uppercase;
  text-align: center;
}

h1.second-title, h2.second-title {
  font-family: "Playfair Display", serif;
  font-size: 27px;
  text-transform: uppercase;
  text-align: center;
}

h2.subtitle, h3.subtitle, h4.subtitle {
  font-family: "Playfair Display", serif;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.7em;
}

h2.subtitle-alt, h3.subtitle-alt, h4.subtitle-alt {
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.7em;
}

.background-light-grey {
  background-color: #faf8f8;
}

.background-grey {
  background-color: #f8f6f6;
}

.background-black {
  background: #242321;
  color: #FFF;
}

.separator {
  position: absolute;
  width: 100px;
  left: 50%;
  transform: translateX(-50%);
  border-bottom: 1px solid #212529;
}

.separator-inline {
  width: 100px;
  margin-left: auto;
  margin-right: auto;
  border-bottom: 1px solid #212529;
}

@media (max-width: 767px) {
  .small-dimension-order-1 {
    order: 1;
  }
  .small-dimension-order-2 {
    order: 2;
  }
}
@media (max-width: 991px) {
  .medium-dimension-order-1 {
    order: 1;
  }
  .medium-dimension-order-2 {
    order: 2;
  }
}
/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
/*
 * Notification
 */
.notification {
  position: fixed;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2000;
  border-radius: 10px;
  text-align: center;
  padding: 20px;
  display: none;
}
.notification.notification-success {
  background-color: #ceb588;
  color: #FFF;
}
.notification.notification-error {
  background-color: #b15257;
  color: #FFF;
}

.back-to-top {
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #212529;
  cursor: pointer;
  transform: translateY(70px);
  transition: transform 0.4s ease;
}
.back-to-top.active {
  transform: translateY(0);
}
.back-to-top.active:hover {
  transform: translateY(-5px);
}
.back-to-top .arrow {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  transform: translateY(-50%);
}
.back-to-top .arrow > .shaft {
  background-color: #FFF;
  display: block;
  height: 20px;
  width: 1px;
  position: relative;
}
.back-to-top .arrow > .shaft:before, .back-to-top .arrow > .shaft:after {
  background-color: #FFF;
  content: "";
  display: block;
  height: 12px;
  width: 1px;
  position: absolute;
  top: 0;
}
.back-to-top .arrow > .shaft:before {
  transform: rotate(40deg);
  transform-origin: top left;
  left: 0;
}
.back-to-top .arrow > .shaft:after {
  transform: rotate(-40deg);
  transform-origin: top right;
  left: 0;
}

.principal-message__wrapper {
  height: 500px;
  display: flex;
  background-color: #f8f6f6;
  margin-bottom: 3.75rem;
}
.principal-message__wrapper > div {
  margin: auto;
  text-align: center;
}

.copy-protection {
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.99);
  display: flex;
  z-index: 1000;
}
.copy-protection > div {
  margin: auto;
  width: 300px;
  font-size: 1.3em;
  line-height: 1.6em;
  font-style: italic;
  text-align: center;
}

.air-datepicker-global-container .air-datepicker-body--day-name {
  color: #212529 !important;
}
.air-datepicker-global-container .air-datepicker-cell.-current- {
  color: #212529 !important;
  font-weight: bold;
}
.air-datepicker-global-container .air-datepicker-cell.-selected- {
  color: #FFF !important;
  background: #212529 !important;
}

.top-navigation {
  width: 100%;
  display: inline-block;
  padding: 0;
  text-align: center;
  margin-top: 30px;
}
.top-navigation li {
  display: inline-block;
  cursor: pointer;
  position: relative;
  letter-spacing: 0.5px;
}
@media (max-width: 644px) {
  .top-navigation li {
    padding: 5px 10px;
    margin: 5px;
    border: 1px solid #212529;
    border-radius: 5px;
  }
}
@media (min-width: 645px) {
  .top-navigation li {
    margin-left: 4px;
    padding: 10px 15px;
    color: #212529;
  }
  .top-navigation li:not(:last-child):after {
    content: "";
    position: absolute;
    top: 10px;
    right: -5px;
    height: 25px;
    border-right: 1px solid #e6e6e6;
  }
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.arrow-left, .arrow-right {
  padding: 7px 0;
  height: 1px;
  transition: transform 0.4s ease;
}
.arrow-left > .shaft, .arrow-right > .shaft {
  background-color: #212529;
  display: block;
  height: 1px;
  width: 100px;
  position: relative;
}
.arrow-left > .shaft:before, .arrow-left > .shaft:after, .arrow-right > .shaft:before, .arrow-right > .shaft:after {
  background-color: #212529;
  content: "";
  display: block;
  height: 1px;
  width: 10px;
  position: absolute;
  top: 0;
}

@media (min-width: 576px) {
  .arrow-left:hover {
    transform: translateX(-15px);
  }
}
.arrow-left > .shaft:before {
  transform: rotate(40deg);
  transform-origin: top left;
  left: 0;
}
.arrow-left > .shaft:after {
  transform: rotate(-40deg);
  transform-origin: bottom left;
  left: 0;
}

@media (min-width: 576px) {
  .arrow-right:hover {
    transform: translateX(15px);
  }
}
.arrow-right > .shaft:before {
  transform: rotate(40deg);
  transform-origin: top right;
  right: 0;
}
.arrow-right > .shaft:after {
  transform: rotate(-40deg);
  transform-origin: bottom right;
  right: 0;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
@media (max-width: 767px) {
  .splide .splide__arrows {
    display: inline-block;
    width: 100%;
    text-align: center;
    margin-top: 3.75rem;
  }
  .splide .splide__arrows .splide__arrow {
    position: relative;
    display: inline-block;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background-color: inherit;
    border: 1px solid #212529;
    color: #212529;
    font-size: 1.5em;
    padding-top: 1px;
    opacity: 1;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
    cursor: pointer;
  }
  .splide .splide__arrows .splide__arrow:hover {
    background-color: #212529;
    color: #FFF;
    opacity: 1;
  }
  .splide .splide__arrows .splide__arrow.splide__arrow--prev {
    margin-right: 30px;
  }
}
@media (min-width: 768px) {
  .splide {
    margin-bottom: 5rem;
  }
  .splide .splide__arrows .splide__arrow {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid #FFF;
    color: #212529;
    font-size: 1.5em;
    padding-top: 1px;
    margin-top: -10px;
    opacity: 1;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
    cursor: pointer;
  }
}
@media (max-width: 575px) {
  .splide__slide img {
    height: 200px;
    border-left: 5px solid #FFF;
    border-right: 5px solid #FFF;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .splide__slide img {
    height: 250px;
    border-left: 8px solid #FFF;
    border-right: 8px solid #FFF;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .splide__slide img {
    height: 400px;
    border-left: 15px solid #FFF;
    border-right: 15px solid #FFF;
  }
}
@media (min-width: 1200px) {
  .splide__slide img {
    height: 530px;
    border-left: 20px solid #FFF;
    border-right: 20px solid #FFF;
  }
}
.splide .ratio--3-2 {
  aspect-ratio: 3/2;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
input, textarea, select {
  background-color: inherit;
  color: #212529;
  border: 1px solid #CCC;
  font-size: 14px;
  padding: 10px;
  width: 100%;
  resize: none;
}
input:is(select), textarea:is(select), select:is(select) {
  appearance: none; /* Désactiver le style par défaut sur tous les navigateurs */
  padding-top: 10px; /* Ajuster le padding pour aligner avec les autres champs */
  padding-bottom: 10px;
  background-color: inherit;
  color: inherit;
  border: 1px solid #CCC;
  font-size: inherit;
  line-height: inherit;
}
input.is-invalid, textarea.is-invalid, select.is-invalid {
  border-color: #dc3545;
}
input:focus, textarea:focus, select:focus {
  border: 1px solid black;
  outline: none;
}

.form-input:has(select)::after {
  content: "";
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-right: 1px solid #212529;
  border-bottom: 1px solid #212529;
  pointer-events: none;
}

input[type=number] {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

input[type=submit] {
  width: auto;
}

/*
 * Form input style
 */
.form-input {
  margin-top: 1.5rem;
  position: relative;
}
.form-input input, .form-input textarea, .form-input select {
  border-top: transparent !important;
  border-right: transparent !important;
  border-left: transparent !important;
  border-radius: 0 !important;
  padding-left: 0rem;
  padding-right: 0rem;
}
.form-input label {
  position: absolute;
  top: 10px;
  left: 0;
  cursor: text;
  opacity: 0.5;
  transition: transform 0.3s ease-out, font-size 0.3s ease-out;
}
.form-input input:focus ~ label, .form-input input.fill ~ label, .form-input textarea:focus ~ label, .form-input textarea.fill ~ label, .form-input select ~ label {
  transform-origin: left center;
  transform: translate3d(0, -100%, 0);
  font-size: 0.9em;
  color: #212529;
}
@media not all and (min-resolution: 0.001dpcm) {
  .form-input input:focus ~ label, .form-input input.fill ~ label, .form-input textarea:focus ~ label, .form-input textarea.fill ~ label, .form-input select ~ label {
    font-size: 1em;
  }
}
.form-input input:focus ~ label, .form-input textarea:focus ~ label, .form-input select:focus ~ label, .form-input .datepicker-open ~ label {
  opacity: 1;
}
.form-input .datepicker-open {
  border-color: #212529;
}
.form-input .form-eye-password {
  position: absolute;
  top: 5px;
  right: 0;
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
  width: 35px;
  height: 35px;
  opacity: 0.2;
}
.form-input i {
  position: absolute;
  top: 15px;
  right: 0;
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
  font-size: 1.5em;
  opacity: 0.2;
}

/*
 * Basic radio style
 */
.radio-label {
  margin-bottom: 15px;
  line-height: 20px;
}
.radio-label input {
  display: none;
}
.radio-label .radio-style {
  position: relative;
  display: inline-block;
  background-color: transparent;
  border: 1px solid #212529;
  height: 15px;
  width: 15px;
  vertical-align: middle;
  margin-top: -3px;
  border-radius: 50%;
  margin-right: 5px;
}
.radio-label input:checked + .radio-style:before {
  position: absolute;
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  top: 3px;
  left: 3px;
  background-color: #212529;
  border-radius: 50%;
}

/*
 * Basic checkbox style
 */
.checkbox-label {
  margin-bottom: 15px;
  line-height: 20px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.checkbox-label input {
  display: none;
}
.checkbox-label .checkbox-style {
  position: relative;
  display: inline-block;
  background-color: transparent;
  border: 1px solid #212529;
  height: 15px;
  width: 15px;
  vertical-align: middle;
  margin-top: -3px;
  border-radius: 3px;
  margin-right: 5px;
}
.checkbox-label input:checked + .checkbox-style {
  background-color: #212529;
}
.checkbox-label input:checked + .checkbox-style:before {
  position: absolute;
  content: "";
  display: block;
  width: 5px;
  height: 9px;
  top: 1px;
  left: 4px;
  border: solid #FFF;
  border-width: 0 1px 1px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.checkbox-label input.is-invalid ~ .checkbox-style {
  border-color: #dc3545;
}
.checkbox-label input.is-invalid ~ * {
  color: #dc3545;
}

/*
 * Customize checkbox and label style for choice
 */
.form-choice {
  position: relative;
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}
.form-choice label {
  width: 100%;
  padding-left: 25px;
  line-height: 1.7em;
}
.form-choice label .checkbox-style, .form-choice label .radio-style {
  margin-right: -18px;
  transform: translateX(-25px);
}
.form-choice label .show-if-checked {
  display: none;
}
.form-choice label input:checked ~ .show-if-checked {
  display: block;
}

/*
 * Input submit style
 */
input[type=submit].btn {
  white-space: normal;
  max-width: 100%;
}

/*
 * Slider
 */
.slider-label .checkbox-slider {
  position: relative;
  display: block;
  width: 40px;
  height: 20px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transform: translate3d(0, 0, 0);
}
.slider-label .checkbox-slider:before {
  content: "";
  position: relative;
  top: 3px;
  left: 3px;
  width: 34px;
  height: 14px;
  display: block;
  background: #dedede;
  border-radius: 8px;
  transition: background 0.2s ease;
}
.slider-label .checkbox-slider span {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  display: block;
  background: #CCC;
  border-radius: 10px;
  transition: all 0.2s ease;
}
.slider-label .checkbox-slider span:before {
  content: "";
  position: absolute;
  display: block;
  margin: -18px;
  width: 56px;
  height: 56px;
  background: #212529;
  opacity: 0.5;
  border-radius: 50%;
  transform: scale(0);
  pointer-events: none;
}
.slider-label input {
  display: none;
}
.slider-label input:checked + .checkbox-slider:before {
  background: #383f45;
}
.slider-label input:checked + .checkbox-slider span {
  background: #212529;
  transform: translateX(20px);
  transition: all 0.2s cubic-bezier(0.8, 0.4, 0.3, 1.25), background 0.15s ease;
}
.slider-label input:checked + .checkbox-slider span:before {
  transform: scale(1);
  opacity: 0;
  transition: all 0.4s ease;
}
.slider-label input:disabled + .checkbox-slider {
  opacity: 0.5;
  cursor: not-allowed !important;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.btn {
  border-radius: 0;
  padding: 1em 2em;
  font-size: 1.2em;
}
.btn.btn-xs {
  font-size: 0.8em;
  padding: 4px 12px !important;
}
.btn.btn-sm {
  padding: 6px 10px !important;
}
.btn.btn-radius {
  border-radius: 30px !important;
}
.btn.btn-primary {
  background-color: #ceb588;
  color: #FFF;
  border: none;
}
.btn.btn-primary:hover {
  background-color: #bf9f64;
}
.btn.btn-dark {
  background-color: #212529;
  color: #FFF;
  border: none;
}
.btn.btn-dark:hover {
  background-color: #0a0c0d;
}
.btn.btn-dark.loading {
  background-color: #212529;
  color: #212529;
  position: relative;
  cursor: default;
}
.btn.btn-dark.loading:before {
  content: " ";
  position: absolute;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid #ffffff;
  animation: spinner-bulqg1 0.8s infinite linear alternate, spinner-oaa3wk 1.6s infinite linear;
}
.btn.btn-dark.loading:not(.btn-sm):before {
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
}
.btn.btn-dark.loading.btn-sm:before {
  top: calc(50% - 10px);
  left: calc(50% - 10px);
  width: 20px;
  height: 20px;
}
.btn.btn-outline-dark {
  background-color: transparent;
  color: #212529;
  border: 1px solid #212529;
}
.btn.btn-outline-dark:hover {
  background-color: #212529;
  color: #FFF;
}
.btn.btn-outline-dark.loading {
  background-color: transparent;
  color: transparent;
  position: relative;
  cursor: default;
}
.btn.btn-outline-dark.loading:before {
  content: " ";
  position: absolute;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid #212529;
  animation: spinner-bulqg1 0.8s infinite linear alternate, spinner-oaa3wk 1.6s infinite linear;
}
.btn.btn-outline-dark.loading:not(.btn-sm):before {
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
}
.btn.btn-outline-dark.loading.btn-sm:before {
  top: calc(50% - 10px);
  left: calc(50% - 10px);
  width: 20px;
  height: 20px;
}
.btn.btn-outline-dark.btn-outline-dark-disabled {
  background-color: transparent;
  color: #212529;
  border: 1px solid #212529;
  cursor: not-allowed !important;
  opacity: 0.3;
}
.btn.btn-outline-dark-disabled {
  background-color: transparent;
  color: #212529;
  border: 1px solid #212529;
  cursor: not-allowed !important;
  opacity: 0.3;
}
@keyframes spinner-bulqg1 {
  0% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
  }
  12.5% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
  }
  25% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
  }
  50% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  62.5% {
    clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  75% {
    clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
  }
}
@keyframes spinner-oaa3wk {
  0% {
    transform: scaleY(1) rotate(0deg);
  }
  49.99% {
    transform: scaleY(1) rotate(135deg);
  }
  50% {
    transform: scaleY(-1) rotate(0deg);
  }
  100% {
    transform: scaleY(-1) rotate(-135deg);
  }
}
/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
header.menu-open ~ .gdpr-cookies__wrapper {
  display: none;
}

.gdpr-cookies__wrapper {
  position: fixed;
  background: #FFF;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15), 0 2px 6px rgba(0, 0, 0, 0.05);
  border-radius: 7px;
  padding: 1.25rem;
  z-index: 1050;
  transform: translateX(-120%);
}
@keyframes showCookieConsentAnimation {
  0% {
    transform: translateX(-120%);
  }
  40% {
    transform: translateX(20px);
  }
  60% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes hideCookieConsentAnimation {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-120%);
  }
}
.gdpr-cookies__wrapper.close {
  animation: hideCookieConsentAnimation 0.3s 1;
}
.gdpr-cookies__wrapper.visible {
  animation: showCookieConsentAnimation 1s 1;
  transform: translateX(0);
}
@media (max-width: 575px) {
  .gdpr-cookies__wrapper {
    left: 10px;
    right: 10px;
    bottom: 10px;
  }
}
@media (min-width: 576px) {
  .gdpr-cookies__wrapper {
    width: 420px;
    left: 20px;
    bottom: 80px;
  }
}
.gdpr-cookies__wrapper .gdpr-cookies__image {
  position: absolute;
  width: 130px;
  opacity: 0.3;
  z-index: -1;
  filter: grayscale(1);
}
@media (max-width: 575px) {
  .gdpr-cookies__wrapper .gdpr-cookies__image {
    top: 20px;
    right: 0;
  }
}
@media (min-width: 576px) {
  .gdpr-cookies__wrapper .gdpr-cookies__image {
    top: 10px;
    right: 10px;
  }
}
.gdpr-cookies__wrapper .gdpr-cookies__title {
  font-family: "Playfair Display", serif;
  font-size: 25px;
  text-transform: uppercase;
  line-height: 35px;
  max-width: 290px;
}
.gdpr-cookies__wrapper .gdpr-cookies__buttons {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  display: inline-flex;
}
.gdpr-cookies__wrapper .gdpr-cookies__buttons .button {
  width: 33.33%;
  height: 50px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-reject {
  border-top: 1px solid #CCC;
  border-bottom-left-radius: 7px;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-reject:hover {
  background: #fafafa;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-choice {
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-choice:hover {
  background: #fafafa;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-accept {
  background: #212529;
  color: #FFF;
  font-weight: bold;
  border-bottom-right-radius: 7px;
}
.gdpr-cookies__wrapper .gdpr-cookies__principal-page .button.gdpr-accept:hover {
  background: #16181b;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .tool__wrapper {
  display: inline-flex;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .tool__wrapper .tool__image {
  width: 30px;
  display: flex;
  align-items: center;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .tool__wrapper .tool__image img {
  width: 30px;
  border-radius: 5px;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .tool__wrapper .tool__description {
  padding-left: 1.25rem;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .tool__wrapper .tool__consent {
  width: 80px;
  display: flex;
  align-items: center;
  justify-content: end;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-back {
  border-top: 1px solid #CCC;
  border-bottom-left-radius: 7px;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-back:hover {
  background: #fafafa;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-accept-all:not(.black) {
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-accept-all:not(.black):hover {
  background: #fafafa;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-accept-all.black {
  background: #212529;
  color: #FFF;
  font-weight: bold;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-accept-all.black:hover {
  background: #16181b;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-confirm-choice:not(.black) {
  border-top: 1px solid #CCC;
  border-bottom-right-radius: 7px;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-confirm-choice:not(.black):hover {
  background: #fafafa;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-confirm-choice.black {
  background: #212529;
  color: #FFF;
  font-weight: bold;
  border-bottom-right-radius: 7px;
}
.gdpr-cookies__wrapper .gdpr-cookies__choice-page .button.gdpr-confirm-choice.black:hover {
  background: #16181b;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.c-modal {
  overflow: scroll;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: none;
}
.c-modal.visible {
  display: flex;
}
.c-modal::before {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  opacity: 0.3;
  content: " ";
}
.c-modal .c-modal-click-outside-modal {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.c-modal .c-modal-wrapper {
  width: 100%;
  margin: auto;
}
.c-modal .c-modal-wrapper .c-modal-dialog {
  position: relative;
  width: 700px;
  margin: 20px auto;
  padding: 30px;
  background-color: #FFF;
}
.c-modal .c-modal-wrapper .c-modal-dialog .c-modal-close {
  position: absolute;
  top: 15px;
  right: 15px;
}
.c-modal .c-modal-wrapper .c-modal-dialog .c-modal-close i {
  cursor: pointer;
  font-size: 1.9em;
}
.c-modal .c-modal-wrapper .c-modal-dialog:not(.c-modal .c-modal-wrapper .c-modal-dialog--min) {
  width: 700px;
}
@media (max-width: 767px) {
  .c-modal .c-modal-wrapper .c-modal-dialog:not(.c-modal .c-modal-wrapper .c-modal-dialog--min) {
    width: 95%;
  }
}
.c-modal .c-modal-wrapper .c-modal-dialog--min {
  width: 550px;
}
@media (max-width: 575px) {
  .c-modal .c-modal-wrapper .c-modal-dialog--min {
    width: 95%;
  }
}
.c-modal .c-modal-wrapper .c-modal-dialog .modal-title {
  font-size: 1.3em;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
header {
  display: block;
  position: relative;
  z-index: 1000;
}
@media (max-width: 799px) {
  header .header__layout {
    position: relative;
    width: 100%;
    text-align: center;
  }
  header .header__layout .header__logo-home {
    width: 120px;
    height: 93px;
    margin: 15px auto 0;
    position: relative;
    margin-bottom: 1.25rem;
    z-index: 100;
  }
  header .header__layout .header__main {
    position: fixed;
    top: 0;
    width: 100%;
    height: 50px;
    background-color: #FFF;
  }
  header .header__layout .header__main .header__menu-hamburger {
    position: absolute;
    top: 16px;
    left: 20px;
    width: 30px;
    z-index: 110;
  }
  header .header__layout .header__main .header__menu-hamburger .line {
    position: absolute;
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #212529;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  header .header__layout .header__main .header__menu-hamburger:not(.close) .line.first-line {
    top: 0;
  }
  header .header__layout .header__main .header__menu-hamburger:not(.close) .line.second-line {
    top: 15px;
  }
  header .header__layout .header__main .header__menu-hamburger.close {
    position: fixed;
  }
  header .header__layout .header__main .header__menu-hamburger.close .first-line {
    top: 10px;
    transform: rotate(45deg);
  }
  header .header__layout .header__main .header__menu-hamburger.close .second-line {
    top: 10px;
    transform: rotate(-45deg);
  }
  header .header__layout .header__main .header__menu-hamburger .action-click {
    position: absolute;
    top: -10px;
    left: -10px;
    height: 40px;
    width: 40px;
    cursor: pointer;
  }
  header .header__layout .header__main__content {
    display: none;
  }
  header .header__layout .header__main__content.open {
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #FFF;
    z-index: 100;
    overflow-y: auto;
  }
  header .header__layout .header__main__content.open > ul {
    margin: auto;
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }
  header .header__layout .header__main__content.open > ul li {
    text-align: center;
    letter-spacing: 0.5px;
    opacity: 0;
    transform: translateY(10px);
  }
  header .header__layout .header__main__content.open > ul li a {
    color: #212529;
  }
}
@media (max-width: 799px) and (max-width: 575px) {
  header .header__layout .header__main__content.open > ul li {
    padding: 15px 0;
    font-size: 1.8em;
  }
  header .header__layout .header__main__content.open > ul li i {
    transform: translateY(3px);
  }
}
@media (max-width: 799px) and (min-width: 576px) {
  header .header__layout .header__main__content.open > ul li {
    padding: 25px 0;
    font-size: 2.2em;
  }
  header .header__layout .header__main__content.open > ul li i {
    transform: translateY(4px);
  }
}
@media (max-width: 799px) {
  @keyframes menuLiAnimation {
    0% {
      opacity: 0;
      transform: translateY(10px);
    }
    25% {
      transform: translateY(0);
    }
    100% {
      opacity: 1;
    }
  }
}
@media (max-width: 799px) {
  header .header__layout .header__main__content.open > ul li.visible {
    opacity: 1;
    transform: translateY(0);
    animation: menuLiAnimation 2s 1;
  }
}
@media (max-width: 799px) {
  header .header__layout .header__main__content.open > ul li .header__submenu:not(.open) {
    display: none;
  }
}
@media (max-width: 799px) {
  header .header__layout .header__main__content.open > ul li .header__submenu.open {
    margin-top: 10px;
  }
  header .header__layout .header__main__content.open > ul li .header__submenu.open li {
    padding: 8px 0;
    font-size: 0.8em;
  }
}
@media (max-width: 799px) {
  header .header__secondary-menu {
    position: fixed;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: row-reverse;
    height: auto;
    z-index: 100;
  }
  header .header__secondary-menu__item {
    height: 46px;
    z-index: 150;
    box-sizing: border-box;
    text-align: center;
  }
  header .header__secondary-menu__item a {
    color: #212529;
  }
  header .header__secondary-menu__item--access-photos {
    width: 70px;
    height: 50px;
    background-color: #212529;
    padding: 11px;
    font-size: 10px;
    line-height: 13px;
    letter-spacing: 2px;
    font-weight: 400;
    margin-right: -3px;
  }
  header .header__secondary-menu__item--access-photos a {
    color: #FFF;
  }
  header .header__secondary-menu__item--gift-coupons {
    padding: 11px 18px;
    opacity: 0.8;
  }
  header .header__secondary-menu__item--gift-coupons img {
    width: 26px;
  }
  header .header__secondary-menu__item--gift-coupons span {
    display: none;
  }
}
@media (max-width: 799px) {
  header .header__social-media {
    display: none;
  }
}
@media (min-width: 800px) {
  header.fixed {
    margin-bottom: 60px;
  }
  header.fixed .header__main {
    position: fixed;
    top: 0;
  }
  header .header__layout {
    position: relative;
    width: 100%;
    text-align: center;
  }
  header .header__layout .header__logo-home {
    width: 176px;
    height: 137px;
    margin: 15px auto 0;
  }
  header .header__layout .header__main {
    background-color: #FFF;
    width: 100%;
  }
  header .header__layout .header__main .header__menu-hamburger {
    display: none;
  }
  header .header__layout .header__main__content {
    height: 100%;
    width: 100%;
    padding-top: 8px;
  }
  header .header__layout .header__main__content > ul {
    display: inline-block;
  }
  header .header__layout .header__main__content > ul > li {
    position: relative;
    float: left;
    padding-top: 12px;
    padding-bottom: 12px;
    text-transform: uppercase;
    font-size: 15px;
    letter-spacing: 0.1rem;
    font-weight: 400;
  }
  header .header__layout .header__main__content > ul > li > a, header .header__layout .header__main__content > ul > li > span[data-submenu] {
    margin: 0 18px 0 18px;
    color: #212529;
    cursor: pointer;
  }
  header .header__layout .header__main__content > ul > li ul.header__submenu {
    display: none;
    position: absolute;
    top: 30px;
    left: 2px;
    width: 200px;
    text-align: start;
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #FFF;
    box-shadow: 6px 6px 20px -20px rgba(0, 0, 0, 0.15);
  }
  header .header__layout .header__main__content > ul > li ul.header__submenu li {
    padding: 10px 15px;
    text-transform: none;
    cursor: pointer;
  }
  header .header__layout .header__main__content > ul > li ul.header__submenu li:hover a {
    color: #a0a0a0;
  }
  header .header__layout .header__main__content > ul > li.hover ul.header__submenu {
    display: block;
  }
  header .header__secondary-menu {
    position: absolute;
    right: 0;
    float: right;
    top: 0;
    display: flex;
    flex-direction: row-reverse;
    height: auto;
  }
  header .header__secondary-menu__item {
    height: 46px;
    z-index: 150;
    box-sizing: border-box;
    text-align: center;
  }
  header .header__secondary-menu__item a {
    color: #212529;
  }
  header .header__secondary-menu__item--access-photos {
    width: 150px;
    border-left: 1px solid #212529;
    padding: 11px;
    font-size: 12px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 400;
  }
  header .header__secondary-menu__item--gift-coupons {
    padding: 9px 18px;
  }
  header .header__secondary-menu__item--gift-coupons a {
    display: flex;
    align-items: center;
    padding-top: 2px;
    padding-bottom: 2px;
    border-radius: 30px;
  }
  header .header__secondary-menu__item--gift-coupons a img {
    width: 23px;
  }
  header .header__secondary-menu__item--gift-coupons a span {
    margin-left: 0.5rem;
    font-size: 12px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 400;
  }
  header .header__social-media {
    position: absolute;
    top: 13px;
    left: 13px;
  }
  header .header__social-media i {
    font-size: 18px;
    margin: 0 10px;
    color: #c4c4c4;
    cursor: pointer;
    transition: all 0.3s;
  }
  header .header__social-media i:hover {
    color: #212529;
  }
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
footer h2 {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  text-transform: uppercase;
  text-align: center;
}
footer .follow-instagram {
  font-size: 1.1em;
}
footer .follow-instagram::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-90px, -1px);
  border-bottom: 1px solid #212529;
  height: 1px;
  width: 22px;
}
footer .follow-instagram::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(71px, -1px);
  border-bottom: 1px solid #212529;
  height: 1px;
  width: 22px;
}
footer .footer__menu {
  text-align: center;
}
footer .footer__menu ul li {
  position: relative;
  float: left;
  padding-top: 12px;
  padding-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: 400;
}
footer .footer__menu ul li a {
  margin: 0 18px 0 18px;
  color: #212529;
}
@media (max-width: 767px) {
  footer .footer__menu ul {
    display: block;
  }
  footer .footer__menu ul li {
    width: 100%;
  }
  footer .footer__menu ul li a {
    margin: 0 18px 0 18px;
    color: #212529;
  }
}
@media (min-width: 768px) {
  footer .footer__menu ul {
    display: inline-block;
  }
}
footer .footer__partners {
  text-align: center;
}
footer .footer__partners img {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
  height: 90px;
  opacity: 0.85;
  transition: opacity 0.2s ease-in-out;
}
footer .footer__partners img:hover {
  opacity: 1;
}
footer .footer__social-media {
  text-align: center;
}
footer .footer__social-media i {
  font-size: 18px;
  margin: 0 10px;
  cursor: pointer;
  transition: all 0.3s;
}
footer .footer__social-media i:hover {
  color: #212529;
}

/*
 * Import pages
 */
/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.slideshow-home {
  position: relative;
  transition: opacity 1s ease;
  width: 100%;
}
.slideshow-home--mobile {
  aspect-ratio: 1/1;
}
@media (min-width: 576px) {
  .slideshow-home--mobile {
    display: none;
  }
}
.slideshow-home--desktop {
  aspect-ratio: 2500/1042;
}
@media (max-width: 575px) {
  .slideshow-home--desktop {
    display: none;
  }
}
.slideshow-home.hidden-intro {
  opacity: 0;
}

img.slide {
  position: absolute;
  transition: opacity 0.5s ease-in;
  width: 100%;
}
@media (max-width: 575px) {
  img.slide {
    padding-bottom: 20px;
  }
}
@media (min-width: 576px) {
  img.slide {
    padding: 20px 50px 50px;
  }
}

img.slide + img.slide {
  opacity: 0;
}

.first-title {
  font-family: "Urbanist", sans-serif;
  text-transform: uppercase;
  color: #212529;
}
@media (max-width: 575px) {
  .first-title {
    font-size: 20px;
    line-height: 34px;
    letter-spacing: 0.3rem;
    text-align: center;
  }
}
@media (min-width: 576px) {
  .first-title {
    font-size: 15px;
    letter-spacing: 0.1rem;
  }
}

.photographer-title {
  font-family: "Playfair Display", serif;
  font-size: 25px;
  text-transform: uppercase;
}
@media (max-width: 575px) {
  .photographer-title {
    text-align: center;
  }
}

@media (max-width: 575px) {
  .home__mobile-action {
    text-align: center;
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }
  .home__mobile-action i {
    transform: rotate(90deg);
  }
  .home__mobile-action img {
    width: 120px;
    border-radius: 50%;
  }
}
@media (min-width: 576px) {
  .home__mobile-action {
    display: none;
  }
}

.photographer-portrait {
  position: relative;
  margin-top: 0.9rem;
  margin-left: 3.25rem;
  margin-right: 3.25rem;
}
.photographer-portrait .portrait-frame {
  content: "";
  position: absolute;
  height: calc(100% - 7px);
  width: 100%;
  top: -0.8rem;
  left: -1rem;
  border-radius: 200px;
  border: 1px solid #a0a0a0;
}

.news-home__wrapper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  width: 8000px;
  transition: all 1.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.news-home__wrapper .news-home__item {
  position: relative;
  opacity: 0;
  transition: opacity 1.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (max-width: 349px) {
  .news-home__wrapper .news-home__item {
    width: 280px;
  }
}
@media (min-width: 350px) {
  .news-home__wrapper .news-home__item {
    width: 300px;
  }
}
@media (min-width: 400px) {
  .news-home__wrapper .news-home__item {
    width: 340px;
  }
}
@media (min-width: 576px) {
  .news-home__wrapper .news-home__item {
    width: 600px;
  }
}
@media (min-width: 768px) {
  .news-home__wrapper .news-home__item {
    width: 800px;
  }
}
@media (min-width: 992px) {
  .news-home__wrapper .news-home__item {
    width: 1000px;
  }
}
.news-home__wrapper .news-home__item:not(.active):after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
.news-home__wrapper .news-home__item.active {
  opacity: 1;
}
@media (min-width: 576px) and (max-width: 767px) {
  .news-home__wrapper .news-home__item .news-home__image {
    padding-left: 12.5rem;
    padding-right: 12.5rem;
  }
}
@media (min-width: 768px) {
  .news-home__wrapper .news-home__item .news-home__image {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
@media (max-width: 575px) {
  .news-home__wrapper .news-home__item .news-home__content {
    padding-top: 2.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .news-home__wrapper .news-home__item .news-home__content {
    padding-top: 3.75rem;
    padding-left: 5rem;
    padding-right: 5rem;
    padding-bottom: 1.25rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .news-home__wrapper .news-home__item .news-home__content {
    padding-top: 3.75rem;
    padding-left: 1.25rem;
    padding-right: 2.75rem;
    padding-bottom: 1.25rem;
  }
}
@media (min-width: 992px) {
  .news-home__wrapper .news-home__item .news-home__content {
    padding-top: 5rem;
    padding-left: 5rem;
    padding-right: 6.5rem;
    padding-bottom: 1.25rem;
  }
}
.news-home__wrapper .news-home__item .news-home__content .news-type {
  font-family: "Urbanist", sans-serif;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  color: #212529;
}
.news-home__wrapper .news-home__item .news-home__content h3 {
  font-family: "Playfair Display", serif;
  font-size: 35px;
  text-transform: uppercase;
  text-align: start;
  margin-top: 1.5rem;
}

.reviews-home__wrapper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  width: 8000px;
  transition: all 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.reviews-home__wrapper .reviews-home__item {
  position: relative;
  width: 600px;
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (max-width: 575px) {
  .reviews-home__wrapper .reviews-home__item {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media (min-width: 576px) {
  .reviews-home__wrapper .reviews-home__item {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
.reviews-home__wrapper .reviews-home__item:not(.active):after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
.reviews-home__wrapper .reviews-home__item.active {
  opacity: 1;
}

.prev-button, .next-button {
  display: inline-block;
  width: 65px;
  height: 65px;
  border-radius: 50%;
  border: 1px solid #212529;
  font-size: 1.5em;
  padding-top: 20px;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
}
.prev-button.disabled, .next-button.disabled {
  opacity: 0.1;
  cursor: default;
}
.prev-button.disabled:hover, .next-button.disabled:hover {
  color: #212529;
}
.prev-button:not(.disabled), .next-button:not(.disabled) {
  cursor: pointer;
}
.prev-button:not(.disabled):hover, .next-button:not(.disabled):hover {
  background-color: #212529;
  color: #FFF;
}
.prev-button.prev-button, .next-button.prev-button {
  margin-right: -5px;
}
.prev-button.next-button, .next-button.next-button {
  margin-left: -5px;
}

.wedding-quote {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 1.25rem;
  font-weight: 300;
  text-align: center;
  line-height: 1.7em;
  padding-left: 3.75rem;
  padding-right: 3.75rem;
}

.homepage-studio-background {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}
@media (min-width: 576px) and (max-width: 767px) {
  .homepage-studio-background {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .homepage-studio-background {
    aspect-ratio: 1/1;
  }
}

.homepage-studio {
  margin: auto;
  width: 500px;
  background-color: #FFF;
  padding: 3rem;
}

.homepage-reviews-element {
  background-color: #f8f6f6;
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .homepage-reviews-element {
    aspect-ratio: 1/1;
  }
}

.homepage-reviews {
  margin: auto;
  text-align: center;
  overflow: hidden;
  position: relative;
  max-width: 700px;
}
.homepage-reviews h2 {
  font-family: "Playfair Display", serif;
  font-size: 24px;
  text-transform: uppercase;
}
.homepage-reviews img {
  width: 90px;
  border-radius: 50%;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
@media (max-width: 767px) {
  .wedding-info {
    margin-bottom: 1.75rem;
  }
}
@media (min-width: 768px) {
  .wedding-info {
    display: none;
  }
  .wedding-reportage {
    position: relative;
  }
  .wedding-reportage .wedding-info {
    display: flex;
    position: absolute;
    top: 10px;
    right: 10px;
    bottom: 16px;
    left: 10px;
    background-color: #FFF;
    opacity: 0;
  }
  .wedding-reportage .wedding-info p {
    transform: translateY(15px);
    color: #212529;
    opacity: 0;
    transition: all 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .wedding-reportage .wedding-info img {
    width: 100px;
    margin-top: 1.25rem;
  }
  .wedding-reportage:hover .wedding-info {
    opacity: 1;
  }
  .wedding-reportage:hover .wedding-info p {
    opacity: 1;
    transform: translateY(0);
  }
  .wedding-reportage-v2 {
    position: relative;
    padding: 10px;
    opacity: 0.9;
  }
  .wedding-reportage-v2 .wedding-info {
    display: flex;
    position: absolute;
    top: 20px;
    right: 20px;
    bottom: 26px;
    left: 20px;
    background-color: #FFF;
    opacity: 0;
  }
  .wedding-reportage-v2 .wedding-info p {
    transform: translateY(15px);
    color: #212529;
    opacity: 0;
    transition: all 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .wedding-reportage-v2 .wedding-info img {
    width: 100px;
    margin-top: 1.25rem;
  }
  .wedding-reportage-v2:hover .wedding-info {
    opacity: 1;
  }
  .wedding-reportage-v2:hover .wedding-info p {
    opacity: 1;
    transform: translateY(0);
  }
}
.wedding-reportage-navigation {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #212529;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.reportage-laurel-leaf {
  width: 100px;
}

.wedding-photographer-title {
  font-family: Playfair Display, serif;
  text-transform: uppercase;
}
@media (max-width: 575px) {
  .wedding-photographer-title {
    font-size: 21px;
  }
}
@media (min-width: 576px) {
  .wedding-photographer-title {
    font-size: 25px;
  }
}
.wedding-photographer-title span {
  font-family: "Urbanist", sans-serif;
  text-transform: uppercase;
  color: #212529;
  letter-spacing: 0.1rem;
}
@media (max-width: 575px) {
  .wedding-photographer-title span {
    font-size: 12px;
  }
}
@media (min-width: 576px) {
  .wedding-photographer-title span {
    font-size: 15px;
  }
}

.wedding-style-paragraph {
  position: relative;
  margin-top: 170px;
}
.wedding-style-paragraph:before {
  content: "";
  position: absolute;
  top: -100px;
  height: 80px;
  right: 50%;
  border-left: 1px solid #212529;
}

.small-wedding-quote {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 300;
  text-align: center;
  line-height: 1.5em;
}

.wedding-menu {
  background: #242321;
  color: #FFF;
  position: sticky;
  top: 0;
  z-index: 2000;
  overflow: hidden;
  width: 100%;
  border-bottom: 4px solid #242321;
  /*@media (max-width: $screen_sm_max) {
    width: 100%;
  }

  @media (min-width: $screen_md_min) {
    text-align: center;
    width: 100%;
  }*/
}
.wedding-menu ul {
  display: flex;
}
@media (max-width: 767px) {
  .wedding-menu ul {
    width: 800px;
    flex-wrap: nowrap;
  }
}
@media (min-width: 768px) {
  .wedding-menu ul {
    justify-content: center;
  }
}
.wedding-menu ul li {
  font-size: 15px;
  font-weight: 400;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  position: relative;
  /*@media (max-width: $screen_sm_max) {
    &:not(.active) {
      display: none;
    }
  }*/
}
.wedding-menu ul li a {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}
.wedding-menu ul li.active a {
  border-bottom: 1px solid #FFF;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.training-first-title {
  font-family: "Playfair Display", serif;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.7em;
  font-style: italic;
}

.training-theme-title {
  font-family: "Urbanist", sans-serif;
  text-transform: uppercase;
  color: #CCC;
  font-size: 15px;
  letter-spacing: 0.2rem;
  margin-top: 2.5rem;
  margin-bottom: 0.5rem;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.pro-second-image-presentation {
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(40px, 40px);
  border: 15px solid #FFF;
}
@media (max-width: 767px) {
  .pro-second-image-presentation {
    width: 250px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .pro-second-image-presentation {
    width: 200px;
  }
}
@media (min-width: 1200px) {
  .pro-second-image-presentation {
    width: 250px;
  }
}

@media (max-width: 575px) {
  .pro-project {
    width: 155px;
  }
}
@media (min-width: 576px) {
  .pro-project {
    width: 125px;
  }
}
.pro-project__image {
  width: 90px;
  border-radius: 50%;
}
.pro-project__text {
  font-size: 0.9em;
  font-style: italic;
  transition: all 0.6s cubic-bezier(0.39, 0.575, 0.565, 1);
  color: #212529;
}

.references-title {
  padding-top: 130px;
}
.references-title:before {
  content: "";
  position: absolute;
  top: 10px;
  height: 100px;
  right: 50%;
  border-left: 1px solid #212529;
}

.references {
  margin-top: 2.5rem;
  text-align: center;
}
.references img {
  width: 100px;
  filter: grayscale(1) contrast(110%);
  transition: all 0.2s ease-in-out;
}
@media (max-width: 575px) {
  .references img {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}
@media (min-width: 576px) {
  .references img {
    margin-left: 2.5rem;
    margin-right: 2.5rem;
  }
}
.references img:hover {
  filter: none;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.portrait-price__wrapper {
  background: #FFF;
  text-align: center;
  padding: 1rem;
}
@media (max-width: 1199px) {
  .portrait-price__wrapper {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
  }
}
@media (min-width: 1200px) {
  .portrait-price__wrapper {
    margin: 1rem;
  }
}
.portrait-price__wrapper h3 {
  font-size: 20px;
  margin-top: 1rem;
  padding-bottom: 1rem;
}
.portrait-price__wrapper .portrait-price__description {
  color: #a0a0a0;
  font-size: 0.9em;
  font-style: italic;
  height: 50px;
  margin-bottom: 1.75rem;
}
.portrait-price__wrapper .portrait-price__feature {
  border-bottom: 1px dotted #DDD;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.portrait-price__wrapper .portrait-price__amount {
  font-size: 24px;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}
@media (min-width: 992px) {
  .portrait-price__wrapper .portrait-price__amount.equal-lg-padding-top {
    padding-top: 56px !important;
  }
}
.portrait-price__wrapper .portrait-price__amount .including-tax {
  font-size: 0.6em;
}

.price-amount {
  font-size: 24px;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}
.price-amount .including-tax {
  font-size: 0.6em;
}

.wedding-price-amount {
  font-size: 20px;
  line-height: 27px;
  text-align: center;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}
@media (min-width: 1400px) {
  .wedding-price-amount {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
.wedding-price-amount .including-tax {
  font-size: 0.6em;
}

.pregnant-price-background {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}
@media (max-width: 767px) {
  .pregnant-price-background {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .pregnant-price-background {
    aspect-ratio: 1/1;
  }
}

.pregnant-price-element {
  background-color: #FFF;
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .pregnant-price-element {
    aspect-ratio: 1/1;
  }
}

.pregnant-price {
  margin: auto;
  text-align: center;
  overflow: hidden;
  position: relative;
  max-width: 700px;
}

.photoshoot-title {
  font-family: "Urbanist", sans-serif;
  text-transform: uppercase;
  color: #CCC;
  font-size: 15px;
  letter-spacing: 0.2rem;
  text-align: center;
  margin-top: 1rem;
  margin-bottom: 1.5rem;
}

.additional-price {
  margin-top: -11px;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.studio-top-image {
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat;
}
@media (max-width: 575px) {
  .studio-top-image {
    height: 250px;
  }
}
@media (min-width: 576px) {
  .studio-top-image {
    height: 300px;
  }
}
@media (min-width: 768px) {
  .studio-top-image {
    height: 400px;
  }
}
@media (min-width: 992px) {
  .studio-top-image {
    height: 500px;
  }
}

@media (min-width: 992px) {
  .studio-container {
    background: #FFF;
    padding-top: 3rem;
    transform: translateY(-100px);
    margin-bottom: -50px;
  }
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.article-photographer-portrait {
  text-align: center;
  padding-top: 3.75rem;
}
.article-photographer-portrait img {
  width: 120px;
  border-radius: 50%;
}

article p {
  font-size: 1.1em;
  line-height: 1.8em;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.slideshow-contact {
  position: relative;
  transition: opacity 1s ease;
  width: 100%;
}
@media (max-width: 575px) {
  .slideshow-contact {
    height: 250px;
  }
}
@media (min-width: 576px) {
  .slideshow-contact {
    height: 300px;
  }
}
@media (min-width: 768px) {
  .slideshow-contact {
    height: 400px;
  }
}
@media (min-width: 1600px) {
  .slideshow-contact {
    height: 500px;
  }
}
.slideshow-contact .contact-slide {
  position: absolute;
  transition: opacity 0.5s ease-in;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media (max-width: 991px) {
  .contact-mobile-call {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
    padding: 1.25rem;
    background: #fafafa;
    text-align: center;
  }
}
@media (min-width: 992px) {
  .contact-mobile-call {
    display: none;
  }
}

.contact-telephone-number {
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #212529;
}
.contact-telephone-number:hover {
  color: #212529;
}
.contact-telephone-number i {
  transform: rotate(90deg);
}

gmp-map {
  height: 100%;
}

.contact-studio-background {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: grayscale(1) contrast(1);
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}
@media (min-width: 576px) and (max-width: 767px) {
  .contact-studio-background {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .contact-studio-background {
    aspect-ratio: 1/1;
  }
}

.contact-studio {
  margin: auto;
  width: 500px;
  background-color: #FFF;
  padding: 3rem;
}

.contact-maps-element {
  background-color: #f8f6f6;
}
@media (max-width: 767px) {
  .contact-maps-element {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  .contact-maps-element {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 1600px) {
  .contact-maps-element {
    aspect-ratio: 3/2;
  }
}

@media (min-width: 768px) {
  .contact-access-border-left {
    border-left: 1px solid #212529;
  }
}

.recaptcha-no-valid-message {
  display: none;
}

.grecaptcha-badge {
  visibility: hidden !important;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
a:hover .gift-coupon-choice__wrapper {
  background-color: #ede8e8;
  color: #212529;
}

.gift-coupon-choice__wrapper {
  cursor: pointer;
  transition: all 0.4s ease-in-out;
  background-color: #f8f6f6;
  text-align: center;
  padding: 1rem;
}
@media (max-width: 1199px) {
  .gift-coupon-choice__wrapper {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
  }
}
@media (min-width: 1200px) {
  .gift-coupon-choice__wrapper {
    margin: 1rem;
  }
}
.gift-coupon-choice__wrapper h3 {
  font-size: 20px;
  margin-top: 1rem;
}
.gift-coupon-choice__wrapper .gift-coupon-choice__information {
  font-family: "Urbanist", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 0.8em;
  padding-bottom: 1rem;
}
.gift-coupon-choice__wrapper .gift-coupon-choice__amount {
  font-size: 24px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.gift-coupon-choice__wrapper .gift-coupon-choice__amount .including-tax, .gift-coupon-choice__wrapper .gift-coupon-choice__amount .real-price {
  font-size: 0.6em;
}

.gift-coupon-information, .gift-coupons-information {
  text-align: center;
}
.gift-coupon-information img, .gift-coupons-information img {
  width: 40px;
  height: 40px;
  margin-bottom: 0.75rem;
}

.gift-coupon-top__wrapper {
  position: relative;
  transition: opacity 1s ease;
  width: 100%;
}
@media (max-width: 575px) {
  .gift-coupon-top__wrapper {
    height: 250px;
  }
}
@media (min-width: 576px) {
  .gift-coupon-top__wrapper {
    height: 300px;
  }
}
@media (min-width: 768px) {
  .gift-coupon-top__wrapper {
    height: 400px;
  }
}
@media (min-width: 1600px) {
  .gift-coupon-top__wrapper {
    height: 500px;
  }
}
.gift-coupon-top__wrapper .image {
  position: absolute;
  transition: opacity 0.5s ease-in;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

ul.order-navigation {
  width: 100%;
  display: inline-block;
  padding: 0;
  text-align: center;
}
@media (max-width: 575px) {
  ul.order-navigation {
    display: none;
  }
}
@media (min-width: 576px) {
  ul.order-navigation li {
    display: inline-block;
    padding: 15px;
    position: relative;
  }
  ul.order-navigation li.selected {
    font-weight: bold;
  }
  ul.order-navigation li.disabled {
    color: #CCC;
  }
  ul.order-navigation li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -5px;
    height: 25px;
    border-right: 1px solid #CCC;
    transform: rotate(20deg);
  }
}

.gift-information__wrapper {
  position: relative;
}
@media (min-width: 768px) {
  .gift-information__wrapper {
    padding-left: 2.5rem;
    padding-bottom: 0.5rem;
  }
  .gift-information__wrapper:before {
    display: block;
    content: "";
    background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='3' height='7' viewBox='0 0 3 7'%3E%3Ccircle fill='black' cx='1.5' cy='3.5' r='1.5' /%3E%3C/svg%3E");
    background-size: auto;
    background-repeat: repeat;
    background-position: top left;
    width: 3px;
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    bottom: 10%;
    height: 100%;
    opacity: 0.5;
  }
}
@media (min-width: 992px) {
  .gift-information__wrapper {
    padding-right: 1.25rem;
  }
}
.gift-information__wrapper .gift-information__feature {
  text-align: center;
  font-weight: bold;
  margin-top: 1.5rem;
  padding-top: 1rem;
}
.gift-information__wrapper .gift-information__question {
  text-align: center;
  background-color: #f8f6f6;
  margin-top: 1.5rem;
  padding: 1rem;
}
@media (max-width: 767px) {
  .gift-information__wrapper {
    margin-bottom: 2.5rem;
    padding-bottom: 3.25rem;
    border-bottom: 1px solid #212529;
  }
}

.gift-edit__wrapper {
  position: relative;
  width: 100%;
}
@media (max-width: 767px) {
  .gift-edit__wrapper {
    margin-top: 1.25rem;
  }
}
@media (min-width: 768px) {
  .gift-edit__wrapper {
    margin-top: -36px;
    border: 1px solid #212529;
    padding: 2.5rem;
  }
}
.gift-edit__wrapper .gift-edit__amount {
  font-style: italic;
  font-size: 24px;
  padding-top: 0.75rem;
}
.gift-edit__wrapper .gift-edit__amount .before-price {
  font-size: 0.7em;
}
.gift-edit__wrapper .gift-edit__amount .including-tax, .gift-edit__wrapper .gift-edit__amount .real-price {
  font-size: 0.6em;
}
.gift-edit__wrapper .label-price {
  background-color: #f8f6f6;
  font-weight: bold;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.gift-edit__wrapper .image-presentation {
  width: 70px;
}

.gift-step__wrapper {
  text-align: center;
  padding: 1.5rem;
}
.gift-step__wrapper .gift-step__number {
  position: relative;
  display: inline-block;
  font-size: 20px;
  height: 38px;
  width: 38px;
  padding-top: 6px;
  border: 1px solid #212529;
  border-radius: 100%;
  color: #212529;
}
.gift-step__wrapper .gift-step__number:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  border-right: 1px solid #212529;
  height: 30px;
  width: 1px;
}
.gift-step__wrapper h2 {
  font-size: 18px;
}

.gift-price-right {
  width: 70px;
  text-align: right;
}

.credit-cards {
  position: absolute;
  top: 0;
  right: 0;
}
.credit-cards img {
  width: 36px;
}

.e-transaction img {
  width: 200px;
}

.gift-complete-info {
  padding-top: 1.25rem;
  font-size: 1.7em;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.questionnaire-top__wrapper {
  display: flex;
  background-color: #f8f6f6;
  margin-top: 2.5rem;
  margin-bottom: 3.75rem;
}
.questionnaire-top__wrapper .questionnaire-top__heading {
  margin: 1.25rem;
  padding: 1.25rem;
  margin-left: auto;
  margin-right: auto;
  width: 600px;
  max-width: 100%;
}
.questionnaire-top__wrapper .questionnaire-top__heading > div {
  padding: 1.25rem;
  background-color: #FFF;
  width: 100%;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
section.customer-access-form {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
section.customer-access-form .container {
  display: flex;
  justify-content: center;
}
@media (max-width: 575px) {
  section.customer-access-form .container {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
}
section.customer-access-form .form__wrapper {
  margin: auto;
  max-width: 550px;
  margin-top: 3.75rem;
  margin-bottom: 3.75rem;
  background-color: #FFF;
}
@media (max-width: 575px) {
  section.customer-access-form .form__wrapper {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 3.75rem;
    padding-bottom: 3.75rem;
  }
}
@media (min-width: 576px) {
  section.customer-access-form .form__wrapper {
    padding: 3.75rem;
  }
}
section.customer-access-form .auth-form__wrapper {
  display: flex;
  justify-content: center;
  margin-top: 0.75rem;
}
section.customer-access-form .auth-form__wrapper .auth-form {
  width: 100%;
  max-width: 320px;
}
section.customer-access-form .separator-text {
  font-family: Montserrat, Arial, Helvetica, sans-serif;
  font-size: 15px;
  font-weight: normal !important;
  font-style: normal;
  text-decoration: none;
  letter-spacing: 0.21em;
  word-spacing: 0;
  text-transform: uppercase;
  font-variant: normal;
  text-align: center;
}
section.customer-access-form .code-reset-input {
  width: 35px;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
section.customer-access-form .code-reset-input input {
  font-size: 2em;
  text-align: center;
  border-bottom-color: #212529;
}
section.customer-access-form .code-reset-input .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.gallery__card {
  position: relative;
  background-color: #f8f6f6;
  text-align: center;
  padding-top: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 2rem;
  margin-left: 0.75rem;
  margin-right: 0.75rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.gallery__card .badge {
  position: absolute;
  top: 25px;
  left: 25px;
}
.gallery__card .card-cover {
  aspect-ratio: 3/2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #fafafa;
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .user-logged-info {
    display: flex;
    background-color: #f8f6f6;
    padding: 0.5rem;
    border-radius: 50px;
  }
  .user-logged-info > div {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .user-logged-info .logout-button {
    border-left: 1px solid #212529;
  }
}
@media (max-width: 575px) {
  .user-logged-info {
    text-align: center;
  }
  .user-logged-info .logout-button {
    margin-top: 0.75rem;
  }
  .user-logged-info .logout-button a {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    background-color: transparent;
    color: #212529;
    border: 1px solid #212529;
    border-radius: 0;
    font-size: 1em;
    padding: 6px 10px !important;
  }
}

.shooting__wrapper {
  background-color: #f8f6f6;
  padding: 2.5rem;
  margin-top: 2.5rem;
}
.shooting__wrapper .shooting__logo {
  width: 40px;
}
.shooting__wrapper .shooting__informations {
  margin-left: 1.25rem;
}
.shooting__wrapper .shooting__informations h2 {
  position: relative;
  text-transform: uppercase;
  font-size: 1.4em;
  letter-spacing: 2.5px;
}
.shooting__wrapper .shooting__informations h2::after {
  content: "";
  position: absolute;
  left: 26px;
  bottom: -15px;
  transform: translate(-25px, -1px);
  border-bottom: 1px solid #212529;
  height: 1px;
  width: 50px;
}
@media (max-width: 991px) {
  .shooting__wrapper .shooting__actions {
    align-content: center;
    text-align: center;
  }
}
@media (min-width: 992px) {
  .shooting__wrapper .shooting__actions {
    align-content: flex-end;
    text-align: right;
  }
}
.shooting__wrapper .shooting__actions .btn-disabled {
  background-color: #e2d9d9;
  cursor: not-allowed !important;
}
.shooting__wrapper .shooting__orders {
  background-image: linear-gradient(to right, #333 10%, #f8f6f6 0%);
  background-position: top;
  background-size: 10px 1px;
  background-repeat: repeat-x;
  margin-top: 30px;
  padding-top: 1.25rem;
}
.shooting__wrapper .shooting__orders h2 {
  font-size: 1.2em;
}
.shooting__wrapper .shooting__orders > div {
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  position: relative;
}
.shooting__wrapper .shooting__orders > div:not(:last-child):after {
  content: "";
  position: absolute;
  left: 26px;
  bottom: -15px;
  transform: translate(-25px, -1px);
  border-bottom: 1px solid #212529;
  height: 1px;
  width: 50px;
}

.badge {
  border-radius: 30px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
.badge.badge-success {
  background-color: #2a9d8f;
}
.badge.badge-danger {
  background-color: #b14147;
}

/*
 * Bootstrap responsive
 */
/*
 * Colors
 */
/*
 * Margins and paddings
 */
.preregistration-card {
  position: relative;
  text-align: center;
}
@media (min-width: 576px) {
  .preregistration-card {
    padding: 1.25rem;
  }
}
.preregistration-card img {
  height: auto;
  width: 100%;
}
.preregistration-card .gallery-name {
  font-size: 1.2em;
  font-weight: bold;
  padding-top: 0.75rem;
}

.preregistration-wrapper {
  position: relative;
  width: 100%;
  text-align: center;
  padding-top: 2.5rem;
}
.preregistration-wrapper .preregistration-inner .preregistration-container {
  width: 100%;
  max-width: 620px;
}
@media (min-width: 576px) {
  .preregistration-wrapper .preregistration-inner .preregistration-container {
    padding: 2.5rem;
  }
}
.preregistration-wrapper .preregistration-inner .preregistration-container h3, .preregistration-wrapper .preregistration-inner .preregistration-container h4 {
  line-height: 1.6em;
}
.preregistration-wrapper .preregistration-inner .preregistration-container .preregistration-form__wrapper {
  display: flex;
  justify-content: center;
  margin-top: 1.5rem;
}
.preregistration-wrapper .preregistration-inner .preregistration-container .preregistration-form__wrapper .preregistration-form {
  width: 100%;
  max-width: 380px;
}
.preregistration-wrapper .preregistration-inner .preregistration-container .separator-text {
  font-family: Montserrat, Arial, Helvetica, sans-serif;
  font-size: 15px;
  font-weight: normal !important;
  font-style: normal;
  text-decoration: none;
  letter-spacing: 0.21em;
  word-spacing: 0;
  text-transform: uppercase;
  font-variant: normal;
  text-align: center;
}
.preregistration-wrapper .preregistration-inner .preregistration-container .preregistration-time {
  width: 40px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUNBO0FSNG1CTjtBUXptQkk7RUFDRTtBUjJtQk47QVF4bUJJO0VBQ0U7QVIwbUJOOztBUXBtQkE7O0VBQUE7QUFHQTtFQUNFO0VBQ0E7QVJ1bUJGOztBUXBtQkE7O0VBQUE7QUFLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FScW1CSjtBUWxtQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUm9tQko7QVFsbUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JMaFJlO0VLaVJmO0VBQ0E7QVJvbUJKO0FRam1CRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CTDlSUztFSytSVDtFQUNBO0VBQ0E7RUFDQTtBUm1tQko7QVFobUJFO0VBQ0U7QVJrbUJKO0FRL2xCRTtFQUNFO0FSaW1CSjtBUTlsQkU7RUFDRSxtQkw5U1M7RUsrU1Q7RUFDQTtBUmdtQko7QVE3bEJFO0VBQ0U7RUFDQTtFQUNBO0FSK2xCSjtBUTVsQkU7RUFDRTtFQUNBO0FSOGxCSjs7QUc5NkJBOztFQUFBO0FBa0JBOztFQUFBO0FBY0E7O0VBQUE7QU05QkE7RUFDRTtFQUNBO0VBQ0E7QVR3N0JGO0FTdDdCRTtFQUNFO0VBQ0E7QVR3N0JKO0FTcjdCRTtFQUNFO0FUdTdCSjtBU3A3QkU7RUFDRTtBVHM3Qko7QVNuN0JFO0VBQ0UseUJOSVk7RU1IWjtFQUNBO0FUcTdCSjtBU243Qkk7RUFDRTtBVHE3Qk47QVNqN0JFO0VBQ0UseUJOVlM7RU1XVDtFQUNBO0FUbTdCSjtBU2o3Qkk7RUFDRTtBVG03Qk47QVNoN0JJO0VBQ0UseUJObkJPO0VNb0JQLGNOcEJPO0VNcUJQO0VBQ0E7QVRrN0JOO0FTaDdCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVGs3QlI7QVM5NkJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVRnN0JSO0FTNzZCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUKzZCUjtBUzE2QkU7RUFDRTtFQUNBLGNOcERT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Q0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RVpxekNkO0VZbnpDYztJQUNFO0lBQ0E7SUFDQTtFWnF6Q2hCO0VZbnpDZ0I7SUFDRSxjVDNSUDtFSGdsRFg7RVk5eUNZO0lBQ0U7RVpnekNkO0VZbnlDRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VacXlDSjtFWW55Q0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFWnF5Q047RVlueUNNO0lBQ0UsY1RqVUc7RUhzbURYO0VZbHlDTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0Vab3lDUjtFWWp5Q007SUFDRTtFWm15Q1I7RVlqeUNRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFWm15Q1Y7RVlqeUNVO0lBQ0U7RVpteUNaO0VZaHlDVTtJVHRVWTtJU3dVVjtJQUNBO0lBQ0E7SUFDQTtFWmt5Q1o7RVl4eENFO0lBQ0U7SUFDQTtJQUNBO0VaMHhDSjtFWXh4Q0k7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VaMHhDTjtFWXh4Q007SUFDRSxjVHhYRztFSGtwRFg7QUFDRjs7QUd4cURBOztFQUFBO0FBa0JBOztFQUFBO0FBY0E7O0VBQUE7QVU1QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBYmdyREo7QWE3cURFO0VBQ0U7QWIrcURKO0FhN3FESTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIrcUROO0FhNXFESTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWI4cUROO0FhenFERTtFQUNFO0FiMnFESjtBYXZxRE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYnlxRFI7QWF2cURRO0VBQ0U7RUFDQSxjVmpDRztBSDBzRGI7QWFscURJO0VBRUU7SUFDRTtFYm1xRE47RWFqcURNO0lBQ0U7RWJtcURSO0VhanFEUTtJQUNFO0lBQ0EsY1ZsREM7RUhxdERYO0FBQ0Y7QWEzcERJO0VBRUU7SUFDRTtFYjRwRE47QUFDRjtBYXRwREU7RUFD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RWpCdzJFRjtBQUNGO0FpQnYyRUU7RUFiRjtJQWNJO0VqQjAyRUY7QUFDRjs7QWlCdDJFRTtFQURGO0lBRUk7RWpCMDJFRjtBQUNGO0FpQnoyRUU7RUFKRjtJQUtJO0VqQjQyRUY7QUFDRjtBaUIxMkVFO0VBQ0U7RUFDQTtBakI0MkVKO0FpQnoyRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjZGhCUztBSDIzRWI7O0FpQnQyRUE7RUFDRTtBakJ5MkVGO0FpQnYyRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCeTJFSjs7QWlCcjJFQTtFZGZ1QjtFY2lCckI7QWpCdzJFRjtBaUJ0MkVFO0VBQ0U7RUFDQTtFQUNBO0FqQncyRUo7QWlCdjJFSTtFQUpGO0lkckI4QjtJQUEwQjtFSHE0RXhEO0FBQ0Y7QWlCMTJFSTtFQVBGO0lkckI4QjtJQUEwQjtFSDI0RXhEO0FBQ0Y7QWlCNTJFSTtFQUNFO0FqQjgyRU47O0FHcjdFQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWNBOztFQUFBO0FlOUJBO0VBQ0U7RUFDQTtFZndDbUI7QUh3NUVyQjtBa0I3N0VFO0VBTEY7SWZxQ2dDO0lBQXlCO0VIazZFdkQ7QUFDRjtBa0IvN0VFO0VBVEY7SWZtQ29CO0VIeTZFbEI7QUFDRjtBa0JoOEVFO0VBQ0U7RWZ3Qm1CO0VBU0k7QUhtNkUzQjtBa0IvN0VFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWZpQnNCO0FIaTdFMUI7QWtCOTdFRTtFQUNFO0VmZ0I2QjtFQUEwQjtBSGs3RTNEO0FrQjk3RUU7RUFDRTtFZlc2QjtFQUEwQjtBSHU3RTNEO0FrQi83RUk7RUFDRTtJQUNFO0VsQmk4RU47QUFDRjtBa0I5N0VJO0VBQ0U7QWxCZzhFTjs7QWtCMTdFQTtFQUNFO0VmTitCO0VBQTBCO0FIcThFM0Q7QWtCNTdFRTtFQUNFO0FsQjg3RUo7O0FrQjE3RUE7RUFDRTtFQUNBO0VBQ0E7RWZqQitCO0VBQTBCO0FIZzlFM0Q7QWtCNzdFRTtFQUxGO0lmZmlDO0lBQTJCO0VIczlFMUQ7QUFDRjtBa0IvN0VFO0VBQ0U7QWxCaThFSjs7QWtCNzdFQTtFQUNFO0VBQ0E7RUFDQTtFZi9CK0I7RUFBMEI7QUhpK0UzRDtBa0IvN0VFO0VBTkY7SUFPSTtFbEJrOEVGO0FBQ0Y7QWtCaDhFRTtFQVZGO0lBV0k7RWxCbThFRjtBQUNGOztBa0IvN0VBO0VBQ0U7QWxCazhFRjtBa0JoOEVFO0VBSEY7SUFJSTtFbEJtOEVGO0FBQ0Y7O0FrQmg4RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQm04RUY7O0FrQmg4RUE7RUFDRTtFQUNBO0VBQ0EsV2Z0RmlCO0VldUZqQjtFQUNBO0VBQ0E7RWZ4RXFCO0VBRUc7QUgyZ0YxQjs7QWtCaDhFQTtFQUNFO0FsQm04RUY7O0FHempGQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWNBOztFQUFBO0FnQjlCQTtFQWtCRTtFQUNBO0VBQ0E7QW5Ca2pGRjtBbUJwa0ZFO0VBRkY7SUFHSTtFbkJ1a0ZGO0FBQ0Y7QW1CcmtGRTtFQU5GO0lBT0k7RW5Cd2tGRjtBQUNGO0FtQnRrRkU7RUFWRjtJQVdJO0VuQnlrRkY7QUFDRjtBbUJ2a0ZFO0VBZEY7SUFlSTtFbkIwa0ZGO0FBQ0Y7O0FtQmprRkU7RUFGRjtJQUdJO0lBQ0E7SUFDQTtJQUNBO0VuQnFrRkY7QUFDRjs7QUdybUZBOztFQUFBO0FBa0JBOztFQUFBO0FBY0E7O0VBQUE7QWlCOUJBO0VBQ0U7RWpCNENzQjtBSG9rRnhCO0FvQjdtRkU7RUFDRTtFQUNBO0FwQittRko7O0FvQjNtRkE7RUFDRTtFQUNBO0FwQjhtRkY7O0FHNW5GQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWNBOztFQUFBO0FrQjlCQTtFQUNFO0VBQ0E7RUFDQTtBckJzb0ZGO0FxQnBvRkU7RUFMRjtJQU1JO0VyQnVvRkY7QUFDRjtBcUJyb0ZFO0VBVEY7SUFVSTtFckJ3b0ZGO0FBQ0Y7QXFCdG9GRTtFQWJGO0lBY0k7RXJCeW9GRjtBQUNGO0FxQnZvRkU7RUFqQkY7SUFrQkk7RXJCMG9GRjtBQUNGO0FxQnhvRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckIwb0ZKOztBcUJub0ZFO0VBRkY7SWxCSWdDO0lBQXlCO0lBS3BDO0lrQkpqQjtJQUNBO0VyQndvRkY7QUFDRjtBcUJ0b0ZFO0VBVEY7SUFVSTtFckJ5b0ZGO0FBQ0Y7O0FxQnJvRkE7RWxCRDJCO0VrQkd6QjtBckJ3b0ZGO0FxQnRvRkU7RUFDRSxjbEJsQ1M7QUgwcUZiO0FxQnJvRkU7RUFDRTtBckJ1b0ZKOztBcUJub0ZBO0VBQ0U7QXJCc29GRjs7QXFCbm9GQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VsQnpCK0I7RUFBMEI7QUhpcUYzRDtBcUJyb0ZFO0VBUEY7SUFRSTtFckJ3b0ZGO0FBQ0Y7QXFCdG9GRTtFQVhGO0lBWUk7RXJCeW9GRjtBQUNGOztBcUJyb0ZBO0VBQ0U7RUFDQTtFQUNBO0VsQjNDbUI7QUhvckZyQjs7QXFCcm9GQTtFQUNFO0FyQndvRkY7QXFCdG9GRTtFQUhGO0lBSUk7RXJCeW9GRjtBQUNGO0FxQnZvRkU7RUFQRjtJQVFJO0VyQjBvRkY7QUFDRjtBcUJ4b0ZFO0VBWEY7SUFZSTtFckIyb0ZGO0FBQ0Y7O0FxQnRvRkU7RUFERjtJQUVJO0VyQjBvRkY7QUFDRjs7QXFCdm9GQTtFQUNFO0FyQjBvRkY7O0FxQnZvRkE7RUFDRTtBckIwb0ZGOztBR2p3RkE7O0VBQUE7QUFrQkE7O0VBQUE7QUFjQTs7RUFBQTtBbUI5QkE7RUFDRTtFQUNBLGNuQmlCVztBSDB2RmI7O0FzQnh3RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFbkJpQ21CO0FIMnVGckI7QXNCendGRTtFQVBGO0luQmdDZ0M7SUFBeUI7RUhxdkZ2RDtBQUNGO0FzQjN3RkU7RUFYRjtJbkI4Qm9CO0VINHZGbEI7QUFDRjtBc0I1d0ZFO0VBQ0U7RW5CaUJtQjtBSDh2RnZCO0FzQjN3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFbkJrQnVCO0FINHZGM0I7QXNCMXdGRTtFQUNFO0VuQlU2QjtFQUEwQjtBSG93RjNEO0FzQjN3Rkk7RUFDRTtBdEI2d0ZOOztBc0J2d0ZBO0VBQ0U7QXRCMHdGRjtBc0J4d0ZFO0VBQ0U7RUFDQTtFbkJUc0I7QUhveEYxQjs7QXNCcndGQTtFQUNFO0VBQ0E7RUFDQTtBdEJ3d0ZGO0FzQnR3RkU7RUFMRjtJQU1JO0V0Qnl3RkY7QUFDRjtBc0J2d0ZFO0VBVEY7SUFVSTtFdEIwd0ZGO0FBQ0Y7QXNCeHdGRTtFQWJGO0lBY0k7RXRCMndGRjtBQUNGO0FzQnp3RkU7RUFqQkY7SUFrQkk7RXRCNHdGRjtBQUNGO0FzQjF3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI0d0ZKOztBc0J2d0ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCMHdGRjtBc0J4d0ZFO0VBTkY7SUFPSTtFdEIyd0ZGO0FBQ0Y7QXNCendGRTtFQUVFO0lBQ0U7SUFDQTtJQUNBO0V0QjB3Rko7RXNCeHdGSTtJQUNFO0V0QjB3Rk47RXNCdndGSTtJQUNFLFduQnpGVztFSGsyRmpCO0VzQnR3Rkk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCd3dGTjtBQUNGOztBc0Jod0ZBO0VBQ0U7QXRCbXdGRjtBc0Jqd0ZFO0VBSEY7SW5CaEZ5QjtJQURFO0VIMDFGekI7RXNCbHdGRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCb3dGSjtBQUNGO0FzQmp3RkU7RUF6QkY7SW5CbEYwQjtFSGczRnhCO0FBQ0Y7QXNCbHdGRTtFQUNFO0VBQ0E7RW5CekhtQjtFQU9DO0FIdzNGeEI7QXNCandGRTtFQUNFO0VBQ0E7RW5CaEltQjtFQUlGO0FIaTRGckI7QXNCaHdGRTtFQTNDRjtJbkJ4RjBCO0lBT0M7SW1CK0h2QjtFdEJtd0ZGO0FBQ0Y7O0FzQi92RkE7RUFDRTtFQUNBO0F0Qmt3RkY7QXNCaHdGRTtFQUpGO0luQjdJdUI7RUhxNUZyQjtBQUNGO0FzQmp3RkU7RUFSRjtJQVNJO0lBQ0E7SW5CbkppQjtFSHc1Rm5CO0FBQ0Y7QXNCbHdGRTtFQUNFO0VBQ0E7RW5CdEpvQjtBSDI1RnhCO0FzQmx3Rkk7RUFDRTtBdEJvd0ZOO0FzQmp3Rkk7RUFDRTtBdEJtd0ZOO0FzQi92RkU7RUFDRTtFQUNBO0VuQnJLNkI7RUFBMEI7RUFEMUI7RUFBMkI7QUgyNkY1RDtBc0Jod0ZFO0VBQ0U7QXRCa3dGSjs7QXNCN3ZGQTtFQUNFO0VuQm5MbUI7QUhvN0ZyQjtBc0I5dkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNuQnROUztBSHM5RmI7QXNCOXZGSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Qmd3Rk47QXNCM3ZGRTtFQUNFO0F0QjZ2Rko7O0FzQnh2RkE7RUFDRTtFQUNBO0F0QjJ2RkY7O0FzQnh2RkE7RUFDRTtFQUNBO0VBQ0E7QXRCMnZGRjtBc0J6dkZFO0VBQ0U7QXRCMnZGSjs7QXNCdHZGQTtFQUNFO0F0Qnl2RkY7O0FzQnR2RkE7RW5CcE93QjtFbUJzT3RCO0F0Qnl2RkY7O0FHOWdHQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWNBOztFQUFBO0FvQjlCQTtFQUNFO0VBQ0E7RXBCb0NxQjtFQUVHO0FIby9GMUI7QXVCdGhHRTtFcEI2QmtCO0VBT0M7RW9CakNqQjtFQUNBO0VBQ0E7RUFDQTtBdkJ3aEdKO0F1QnRoR0k7RXBCNEJpQjtFb0IxQmY7RUFDQTtBdkJ3aEdOOztBRzNpR0E7O0VBQUE7QUFrQkE7O0VBQUE7QUFjQTs7RUFBQTtBcUI5QkE7RUFDRTtFQUNBO0VBQ0E7QXhCcWpHRjtBd0JuakdFO0VBQ0U7RUFDQTtBeEJxakdKO0F3Qm5qR0k7RUFKRjtJckJzQytCO0lBQTJCO0VIc2hHMUQ7QUFDRjtBd0JwakdFO0VBQ0U7RUFDQTtFckJxQjRCO0VBQXlCO0VxQlpyRDtBeEJnakdKO0F3QnZqR0k7RUFKRjtJckI2QitCO0lBQTJCO0lBQzNCO0lBQTBCO0VIb2lHekQ7QUFDRjtBd0IzakdJO0VBUkY7SXJCNEJtQjtFSDJpR25CO0FBQ0Y7QXdCMWpHRTtFQUNFO0VBQ0E7RXJCUW1CO0FIcWpHdkI7QXdCMWpHSTtFQUNFO0VBQ0E7QXhCNGpHTjtBd0J4akdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCMGpHSjtBd0J2akdFO0VBQ0U7RXJCakI0QjtFQUEwQjtBSDRrRzFEO0F3QnhqR0k7RUFDRTtFQUNBO0VBQ0EsNEJyQnhDTztBSGttR2I7QXdCdmpHSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJ5akdOOztBd0JsakdBO0VBQ0U7RUFDQTtFQUNBO0VyQnBDc0I7RUFGUztFQUEyQjtFQUlqQztFQVhLO0VBQTBCO0VBQzFCO0VBQXlCO0FIeW1HekQ7QXdCdGpHRTtFQUNFO0VBQ0E7RUFDQTtBeEJ3akdKO0F3QnJqR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VyQjNEc0I7QUhtbkcxQjs7QXdCampHRTtFQUZGO0lBR0k7SUFDQTtJckJsRWlCO0lxQm9FakI7RXhCcWpHRjtFd0JuakdFO0lyQnJFNkI7SUFBMkI7RUg0bkcxRDtFd0JuakdFO0lBQ0U7RXhCcWpHSjtBQUNGO0F3Qm5qR0U7RUFoQkY7SUFpQkk7RXhCc2pHRjtFd0JwakdFO0lyQnJGbUI7RUg0b0dyQjtFd0JwakdJO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxjckJuSEs7SXFCb0hMO0lBQ0E7SUFDQTtJQUNBO0V4QnNqR047QUFDRjs7QXdCaGpHQTtFQUNFO0VyQnhHbUI7RUFKRTtBSGlxR3ZCO0F3QmpqR0U7RUFDRTtBeEJtakdKO0F3QmhqR0U7RXJCakhzQjtBSG9xR3hCO0F3QmhqR0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEJrakdOO0F3QmhqR007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QmtqR1I7QXdCNWlHSTtFQURGO0lBRUk7SUFDQTtFeEIraUdKO0FBQ0Y7QXdCOWlHSTtFQUxGO0lBTUk7SUFDQTtFeEJpakdKO0FBQ0Y7QXdCL2lHSTtFQUNFO0VBQ0E7QXhCaWpHTjtBd0I3aUdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFckJ4Sm9CO0FId3NHeEI7QXdCN2lHSTtFQUNFO0F4QitpR047QXdCNWlHSTtFckJ0S21CO0VBTVU7RUFBMEI7RXFCbUtyRDtBeEIraUdOO0F3QjdpR007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QitpR1I7O0F3QnZpR0E7RUFDRTtFckJ0TCtCO0VBQTBCO0VBRDFCO0VBQTJCO0FIcXVHNUQ7QXdCMWlHRTtFQUNFLHlCckIvTVk7QUgydkdoQjtBd0J6aUdFO0VBQ0UseUJyQmxOVztBSDZ2R2Y7O0FHeHhHQTs7RUFBQTtBQWtCQTs7RUFBQTtBQWNBOztFQUFBO0FzQjlCQTtFQUNFO0VBQ0E7QXpCa3lHRjtBeUJqeUdFO0VBSEY7SXRCMENxQjtFSDh2R25CO0FBQ0Y7QXlCbHlHRTtFQUNFO0VBQ0E7QXpCb3lHSjtBeUJqeUdFO0VBQ0U7RUFDQTtFdEIrQm9CO0FIcXdHeEI7O0F5Qi94R0E7RUFDRTtFQUNBO0VBQ0E7RXRCdUJzQjtBSDR3R3hCO0F5Qjl4R0k7RUFJRTtFQUNBO0F6QjZ4R047QXlCanlHTTtFQURGO0l0QmVpQjtFSHV4R25CO0FBQ0Y7QXlCaHlHTTtFQUNFO0F6Qmt5R1I7QXlCL3hHTTtFQUNFO0VBQ0E7RXRCRmU7QUhveUd2QjtBeUIveEdRO0VBQ0U7RUFDQTtBekJpeUdWO0F5Qjd4R007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekIreEdSO0F5QjV4R007RUFDRTtBekI4eEdSLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL19yZXNldC5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2VsZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19hcnJvd3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX3BvcnRmb2xpby5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fZm9ybS5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fY29va2llcy5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL2xheW91dC9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvX2hvbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fd2VkZGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fcGhvdG9ncmFwaHktdHJhaW5pbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fcHJvZmVzc2lvbmFscy5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL19wcmljZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fc3R1ZGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvX2Jsb2cuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fY29udGFjdC5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL19naWZ0LWNvdXBvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fcXVlc3Rpb25uYWlyZS5zY3NzIiwid2VicGFjazovLy8uL3BhZ2VzL19jdXN0b21lci1hY2Nlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9wYWdlcy9fZ2FsbGVyeS1wcmVyZWdpc3RyYXRpb24uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogSW1wb3J0IHJlc2V0XG4gKi9cbkBpbXBvcnQgXCJyZXNldFwiO1xuXG4vKlxuICogSW1wb3J0IGJhc2UgYW5kIGxheW91dFxuICovXG5AaW1wb3J0IFwibGF5b3V0L2FuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJsYXlvdXQvYmFzZVwiO1xuQGltcG9ydCBcImxheW91dC9lbGVtZW50c1wiO1xuQGltcG9ydCBcImxheW91dC9hcnJvd3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvcG9ydGZvbGlvXCI7XG5AaW1wb3J0IFwibGF5b3V0L2Zvcm1cIjtcbkBpbXBvcnQgXCJsYXlvdXQvYnV0dG9uc1wiO1xuQGltcG9ydCBcImxheW91dC9jb29raWVzXCI7XG5AaW1wb3J0IFwibGF5b3V0L21vZGFsXCI7XG5AaW1wb3J0IFwibGF5b3V0L2hlYWRlclwiO1xuQGltcG9ydCBcImxheW91dC9mb290ZXJcIjtcblxuLypcbiAqIEltcG9ydCBwYWdlc1xuICovXG5AaW1wb3J0IFwicGFnZXMvaG9tZVwiO1xuQGltcG9ydCBcInBhZ2VzL3dlZGRpbmdzXCI7XG5AaW1wb3J0IFwicGFnZXMvcGhvdG9ncmFwaHktdHJhaW5pbmdcIjtcbkBpbXBvcnQgXCJwYWdlcy9wcm9mZXNzaW9uYWxzXCI7XG5AaW1wb3J0IFwicGFnZXMvcHJpY2VzXCI7XG5AaW1wb3J0IFwicGFnZXMvc3R1ZGlvXCI7XG5AaW1wb3J0IFwicGFnZXMvYmxvZ1wiO1xuQGltcG9ydCBcInBhZ2VzL2NvbnRhY3RcIjtcbkBpbXBvcnQgXCJwYWdlcy9naWZ0LWNvdXBvbnNcIjtcbkBpbXBvcnQgXCJwYWdlcy9xdWVzdGlvbm5haXJlXCI7XG5AaW1wb3J0IFwicGFnZXMvY3VzdG9tZXItYWNjZXNzXCI7XG5AaW1wb3J0IFwicGFnZXMvZ2FsbGVyeS1wcmVyZWdpc3RyYXRpb25cIjsiLCJodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxub2wsIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmJsb2NrcXVvdGUsIHEge1xuICBxdW90ZXM6IG5vbmU7XG59XG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLCBxOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuYSwgYTpsaW5rLCBhOnZpc2l0ZWQsIGE6aG92ZXIsIGE6YWN0aXZlLCBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg1IHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7XG59IiwiLnNjcm9sbC1hbmltYXRpb24sIC5jdXN0b20tYW5pbWF0aW9uIHtcblxuICAvKlxuICAgKiBTY3JvbGwgQW5pbWF0aW9ucyBGYWRlSW5cbiAgICovXG4gIEBrZXlmcmFtZXMgb3BhY2l0eUFuaW1hdGlvbiB7XG4gICAgMCUgICB7IG9wYWNpdHk6IDA7IH1cbiAgICAxNSUgIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG4gIH1cblxuICAmLmFuaW1hdGlvbi1mYWRlaW4ge1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmLmFjdGl2ZS1lbGVtZW50IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBhbmltYXRpb246IG9wYWNpdHlBbmltYXRpb24gM3M7XG4gICAgfVxuXG4gIH1cblxuICAmLmFuaW1hdGlvbi1mYWRlaW4tc2xvdyB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgICYuYWN0aXZlLWVsZW1lbnQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGFuaW1hdGlvbjogb3BhY2l0eUFuaW1hdGlvbiA0cztcbiAgICB9XG5cbiAgfVxuXG4gICYuYW5pbWF0aW9uLWZhZGVpbi1mYXN0IHtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgJi5hY3RpdmUtZWxlbWVudCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyLjVzIGVhc2U7XG4gICAgfVxuXG4gIH1cblxuICAvKlxuICAgKiBEw6lwbGFjZW1lbnQgdmVuYW50IGR1IGJhc1xuICAgKi9cbiAgJi5hbmltYXRpb24tY29tZS1pbi1ib3R0b20ge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTYwcHgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA5MDBtcyBlYXNlLCBvcGFjaXR5IDEuOXMgZWFzZTtcblxuICAgICYuYWN0aXZlLWVsZW1lbnQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgfVxuXG4gICYuYW5pbWF0aW9uLWNvbWUtaW4tYm90dG9tLWZhZGVpbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTYwcHgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA5MDBtcyBlYXNlLCBvcGFjaXR5IDEuOXMgZWFzZTtcblxuICAgICYuYWN0aXZlLWVsZW1lbnQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgfVxuXG4gICYuYW5pbWF0aW9uLWNvbWUtaW4tYm90dG9tLW5vLWZhZGVpbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2MHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gOTAwbXMgZWFzZSwgb3BhY2l0eSAxLjlzIGVhc2U7XG5cbiAgICAmLmFjdGl2ZS1lbGVtZW50IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgfVxuXG4gICYuYW5pbWF0aW9uLWNvbWUtaW4tYm90dG9tLWFsdCB7XG4gICAgb3BhY2l0eTogMC4yO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDcwMG1zIGVhc2UsIG9wYWNpdHkgMS45cyBlYXNlO1xuXG4gICAgJi5hY3RpdmUtZWxlbWVudCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICB9XG5cbiAgLypcbiAgICogRWZmZXQgc2NhbGVcbiAgICovXG4gICYuYW5pbWF0aW9uLXNjYWxlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSg1MCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlLCBvcGFjaXR5IDEuN3MgZWFzZTtcblxuICAgICYuYWN0aXZlLWVsZW1lbnQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gICAgfVxuXG4gIH1cblxuICAmLmNoaWxkLWltYWdlcy1zY2FsZSB7XG5cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSg1MCUpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGVhc2UsIG9wYWNpdHkgMS43cyBlYXNlO1xuICAgIH1cblxuICAgICYuYWN0aXZlLWVsZW1lbnQgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEwMCUpO1xuICAgIH1cblxuICB9XG5cbn0iLCIvKlxuICogQm9vdHN0cmFwIHJlc3BvbnNpdmVcbiAqL1xuJHNjcmVlbl8zeGxfbWluOiAxNjAwcHg7XG4kc2NyZWVuXzJ4bF9tYXg6IDE1OTlweDtcbiRzY3JlZW5fMnhsX21pbjogMTQwMHB4O1xuJHNjcmVlbl94bF9tYXg6IDEzOTlweDtcbiRzY3JlZW5feGxfbWluOiAxMjAwcHg7XG4kc2NyZWVuX2xnX21heDogMTE5OXB4O1xuJHNjcmVlbl9sZ19taW46IDk5MnB4O1xuJHNjcmVlbl9tZF9tYXg6IDk5MXB4O1xuJHNjcmVlbl9tZF9taW46IDc2OHB4O1xuJHNjcmVlbl9zbV9tYXg6IDc2N3B4O1xuJHNjcmVlbl9zbV9taW46IDU3NnB4O1xuJHNjcmVlbl94c19tYXg6IDU3NXB4O1xuJHNjcmVlbl94c19taW46IDM4MHB4O1xuJHNjcmVlbl8yeHNfbWF4OiAzNzlweDtcblxuLypcbiAqIENvbG9yc1xuICovXG4kY29sb3JfYmFzZTogIzIxMjUyOTtcbiRjb2xvcl9ncmV5OiAjYTBhMGEwO1xuJGNvbG9yX2xpZ2h0X2dyZXk6ICNDQ0M7XG5cbiRjb2xvcl9wcmltYXJ5OiAjY2ViNTg4O1xuJGNvbG9yX3N1Y2Nlc3M6ICMyYTlkOGY7XG4kY29sb3JfZGFuZ2VyOiAjYjE0MTQ3O1xuJGNvbG9yX2Rhbmdlcl9hbHQ6ICNkYzM1NDU7XG5cbiRjb2xvcl9ibGFja19iYWNrZ3JvdW5kOiAjMjQyMzIxO1xuXG4vKlxuICogTWFyZ2lucyBhbmQgcGFkZGluZ3NcbiAqL1xuJHNwYWNpbmc6IDAuMjVyZW07XG5cbkBtaXhpbiBtYXJnaW4oJGkpIHsgbWFyZ2luOiAkc3BhY2luZyokaTsgfVxuQG1peGluIG1hcmdpbkxlZnRBbmRSaWdodCgkaSkgeyBtYXJnaW4tbGVmdDogJHNwYWNpbmcqJGk7IG1hcmdpbi1yaWdodDogJHNwYWNpbmcqJGk7IH1cbkBtaXhpbiBtYXJnaW5Ub3BBbmRCb3R0b20oJGkpIHsgbWFyZ2luLXRvcDogJHNwYWNpbmcqJGk7IG1hcmdpbi1ib3R0b206ICRzcGFjaW5nKiRpOyB9XG5AbWl4aW4gbWFyZ2luVG9wKCRpKSB7IG1hcmdpbi10b3A6ICRzcGFjaW5nKiRpOyB9XG5AbWl4aW4gbWFyZ2luUmlnaHQoJGkpIHsgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZyokaTsgfVxuQG1peGluIG1hcmdpbkJvdHRvbSgkaSkgeyBtYXJnaW4tYm90dG9tOiAkc3BhY2luZyokaTsgfVxuQG1peGluIG1hcmdpbkxlZnQoJGkpIHsgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nKiRpOyB9XG5AbWl4aW4gcGFkZGluZygkaSkgeyBwYWRkaW5nOiAkc3BhY2luZyokaTsgfVxuQG1peGluIHBhZGRpbmdMZWZ0QW5kUmlnaHQoJGkpIHsgcGFkZGluZy1sZWZ0OiAkc3BhY2luZyokaTsgcGFkZGluZy1yaWdodDogJHNwYWNpbmcqJGk7IH1cbkBtaXhpbiBwYWRkaW5nVG9wQW5kQm90dG9tKCRpKSB7IHBhZGRpbmctdG9wOiAkc3BhY2luZyokaTsgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nKiRpOyB9XG5AbWl4aW4gcGFkZGluZ1RvcCgkaSkgeyBwYWRkaW5nLXRvcDogJHNwYWNpbmcqJGk7IH1cbkBtaXhpbiBwYWRkaW5nUmlnaHQoJGkpIHsgcGFkZGluZy1yaWdodDogJHNwYWNpbmcqJGk7IH1cbkBtaXhpbiBwYWRkaW5nQm90dG9tKCRpKSB7IHBhZGRpbmctYm90dG9tOiAkc3BhY2luZyokaTsgfVxuQG1peGluIHBhZGRpbmdMZWZ0KCRpKSB7IHBhZGRpbmctbGVmdDogJHNwYWNpbmcqJGk7IH0iLCJAaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogXCJVcmJhbmlzdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDE0LjNweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG59XG5cbmEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yX2dyZXk7XG4gIH1cbn1cblxucCB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjRweDtcbn1cblxuLmZvbnQtcGxheWZhaXItZGlzcGxheSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG59XG5cbi5ib2xkLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLml0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnVuZGVybGluZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAkY29sb3JfZGFuZ2VyO1xufVxuXG4uY29sb3ItZ3JleSB7XG4gIGNvbG9yOiAkY29sb3JfZ3JleTtcbn1cblxuLmNvbG9yLWxpZ2h0LWdyZXkge1xuICBjb2xvcjogJGNvbG9yX2xpZ2h0X2dyZXk7XG59XG5cbi5jdXJzb3ItcG9pbnRlciB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xufVxuXG4uY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAkc2NyZWVuX3hsX21heCArIDUwcHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fMnhzX21heCkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hzX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuaDEubWFpbi10aXRsZSwgaDIubWFpbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5oMS5zZWNvbmQtdGl0bGUsIGgyLnNlY29uZC10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjdweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5oMi5zdWJ0aXRsZSwgaDMuc3VidGl0bGUsIGg0LnN1YnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS43ZW07XG59XG5cbmgyLnN1YnRpdGxlLWFsdCwgaDMuc3VidGl0bGUtYWx0LCBoNC5zdWJ0aXRsZS1hbHQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbn1cblxuLmJhY2tncm91bmQtbGlnaHQtZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWY4Zjg7XG59XG5cbi5iYWNrZ3JvdW5kLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmY2O1xufVxuXG4uYmFja2dyb3VuZC1ibGFjayB7XG4gIGJhY2tncm91bmQ6ICRjb2xvcl9ibGFja19iYWNrZ3JvdW5kO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuLnNlcGFyYXRvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xufVxuXG4uc2VwYXJhdG9yLWlubGluZSB7XG4gIHdpZHRoOiAxMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgLnNtYWxsLWRpbWVuc2lvbi1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5zbWFsbC1kaW1lbnNpb24tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fbWRfbWF4KSB7XG4gIC5tZWRpdW0tZGltZW5zaW9uLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgLm1lZGl1bS1kaW1lbnNpb24tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLypcbiAqIE5vdGlmaWNhdGlvblxuICovXG4ubm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDMwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB6LWluZGV4OiAyMDAwO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5ub3RpZmljYXRpb24tc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ByaW1hcnk7XG4gICAgY29sb3I6ICNGRkY7XG4gIH1cblxuICAmLm5vdGlmaWNhdGlvbi1lcnJvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2IxNTI1NztcbiAgICBjb2xvcjogI0ZGRjtcbiAgfVxuXG59XG5cbi5iYWNrLXRvLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfYmFzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzBweCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgZWFzZTtcblxuICAmLmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgJi5hY3RpdmU6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgfVxuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgID4gLnNoYWZ0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLnByaW5jaXBhbC1tZXNzYWdlX193cmFwcGVyIHtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjZmNjtcbiAgQGluY2x1ZGUgbWFyZ2luQm90dG9tKDE1KTtcblxuICA+IGRpdiB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uY29weS1wcm90ZWN0aW9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHotaW5kZXg6IDEwMDA7XG5cbiAgPiBkaXYge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG59XG5cbi8vIEN1c3RvbSBhaXIgZGF0ZXBpY2tlclxuLmFpci1kYXRlcGlja2VyLWdsb2JhbC1jb250YWluZXIge1xuICAuYWlyLWRhdGVwaWNrZXItYm9keS0tZGF5LW5hbWUge1xuICAgIGNvbG9yOiAkY29sb3JfYmFzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5haXItZGF0ZXBpY2tlci1jZWxsLi1jdXJyZW50LSB7XG4gICAgY29sb3I6ICRjb2xvcl9iYXNlICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmFpci1kYXRlcGlja2VyLWNlbGwuLXNlbGVjdGVkLSB7XG4gICAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfYmFzZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIE5hdmlnYXRpb25cbi50b3AtbmF2aWdhdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMzBweDtcblxuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjQ0cHgpIHtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQ1cHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBsaWdodGVuKCRjb2xvcl9saWdodF9ncmV5LCAxMCUpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4uYXJyb3ctbGVmdCwgLmFycm93LXJpZ2h0IHtcbiAgcGFkZGluZzogN3B4IDA7XG4gIGhlaWdodDogMXB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGVhc2U7XG5cbiAgPiAuc2hhZnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG4uYXJyb3ctbGVmdCB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1cHgpO1xuICAgIH1cbiAgfVxuXG4gID4gLnNoYWZ0OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5zaGFmdDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbn1cblxuLmFycm93LXJpZ2h0IHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNXB4KTtcbiAgICB9XG4gIH1cblxuICA+IC5zaGFmdDpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICA+IC5zaGFmdDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNwbGlkZSB7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fc21fbWF4KSB7XG5cbiAgICAuc3BsaWRlX19hcnJvd3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoMTUpO1xuXG4gICAgICAuc3BsaWRlX19hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xuICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc3BsaWRlX19hcnJvdy0tcHJldiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luQm90dG9tKDIwKTtcblxuICAgIC5zcGxpZGVfX2Fycm93cyB7XG5cbiAgICAgIC5zcGxpZGVfX2Fycm93IHtcbiAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgICZfX3NsaWRlIGltZyB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjRkZGO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgI0ZGRjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgICZfX3NsaWRlIGltZyB7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAjRkZGO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA4cHggc29saWQgI0ZGRjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuX2xnX21heCkge1xuICAgICZfX3NsaWRlIGltZyB7XG4gICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgI0ZGRjtcbiAgICAgIGJvcmRlci1yaWdodDogMTVweCBzb2xpZCAjRkZGO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hsX21pbikge1xuICAgICZfX3NsaWRlIGltZyB7XG4gICAgICBoZWlnaHQ6IDUzMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgI0ZGRjtcbiAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCAjRkZGO1xuICAgIH1cbiAgfVxuXG4gIC5yYXRpby0tMy0yIHtcbiAgICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgfVxuXG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5pbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX2xpZ2h0X2dyZXk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHJlc2l6ZTogbm9uZTtcblxuICAmOmlzKHNlbGVjdCkge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7ICAgICAgICAgLyogRMOpc2FjdGl2ZXIgbGUgc3R5bGUgcGFyIGTDqWZhdXQgc3VyIHRvdXMgbGVzIG5hdmlnYXRldXJzICovXG4gICAgcGFkZGluZy10b3A6IDEwcHg7ICAgICAgICAvKiBBanVzdGVyIGxlIHBhZGRpbmcgcG91ciBhbGlnbmVyIGF2ZWMgbGVzIGF1dHJlcyBjaGFtcHMgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9saWdodF9ncmV5O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gICYuaXMtaW52YWxpZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JfZGFuZ2VyX2FsdDtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkY29sb3JfYmFzZSwgMjAlKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbn1cblxuLmZvcm0taW5wdXQ6aGFzKHNlbGVjdCk6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLypcbiAqIEZvcm0gaW5wdXQgc3R5bGVcbiAqL1xuLmZvcm0taW5wdXQge1xuICBAaW5jbHVkZSBtYXJnaW5Ub3AoNik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBSZWluaXRpdGlhbGl6ZSBzdHlsZVxuICBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCB7XG4gICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmlnaHQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoMCk7XG4gIH1cblxuICBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQsIGZvbnQtc2l6ZSAwLjNzIGVhc2Utb3V0O1xuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiBsYWJlbCwgaW5wdXQuZmlsbCB+IGxhYmVsLCB0ZXh0YXJlYTpmb2N1cyB+IGxhYmVsLCB0ZXh0YXJlYS5maWxsIH4gbGFiZWwsIHNlbGVjdCB+IGxhYmVsIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjouMDAxZHBjbSkge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgfVxuXG4gIGlucHV0OmZvY3VzIH4gbGFiZWwsIHRleHRhcmVhOmZvY3VzIH4gbGFiZWwsIHNlbGVjdDpmb2N1cyB+IGxhYmVsLCAuZGF0ZXBpY2tlci1vcGVuIH4gbGFiZWwge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1vcGVuIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcl9iYXNlO1xuICB9XG5cbiAgLy8gQnV0dG9uIGNoYW5nZSBwYXNzd29yZCB0byB0ZXh0XG4gIC5mb3JtLWV5ZS1wYXNzd29yZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cblxuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG5cbn1cblxuLypcbiAqIEJhc2ljIHJhZGlvIHN0eWxlXG4gKi9cbi5yYWRpby1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnJhZGlvLXN0eWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xuICAgIGhlaWdodDogMTVweDtcbiAgICB3aWR0aDogMTVweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIC5yYWRpby1zdHlsZSB7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDdweDtcbiAgICAgIGhlaWdodDogN3B4O1xuICAgICAgdG9wOiAzcHg7XG4gICAgICBsZWZ0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cblxufVxuXG4vKlxuICogQmFzaWMgY2hlY2tib3ggc3R5bGVcbiAqL1xuLmNoZWNrYm94LWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5jaGVja2JveC1zdHlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgKyAuY2hlY2tib3gtc3R5bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iYXNlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBoZWlnaHQ6IDlweDtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbGVmdDogNHB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAjRkZGO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cblxuICBpbnB1dC5pcy1pbnZhbGlkIH4gLmNoZWNrYm94LXN0eWxlIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcl9kYW5nZXJfYWx0O1xuICB9XG5cbiAgaW5wdXQuaXMtaW52YWxpZCB+ICoge1xuICAgIGNvbG9yOiAkY29sb3JfZGFuZ2VyX2FsdDtcbiAgfVxuXG59XG5cbi8qXG4gKiBDdXN0b21pemUgY2hlY2tib3ggYW5kIGxhYmVsIHN0eWxlIGZvciBjaG9pY2VcbiAqL1xuLmZvcm0tY2hvaWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBtYXJnaW5Ub3BBbmRCb3R0b20oMyk7XG5cbiAgbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS43ZW07XG5cbiAgICAuY2hlY2tib3gtc3R5bGUsIC5yYWRpby1zdHlsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xOHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNXB4KTtcbiAgICB9XG5cbiAgICAuc2hvdy1pZi1jaGVja2VkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zaG93LWlmLWNoZWNrZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gIH1cbn1cblxuLypcbiAqIElucHV0IHN1Ym1pdCBzdHlsZVxuICovXG5pbnB1dFt0eXBlPSdzdWJtaXQnXS5idG4ge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qXG4gKiBTbGlkZXJcbiAqL1xuLnNsaWRlci1sYWJlbCB7XG5cbiAgLmNoZWNrYm94LXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLmNoZWNrYm94LXNsaWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogM3B4O1xuICAgIGxlZnQ6IDNweDtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3JfbGlnaHRfZ3JleSwgNyUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZTtcbiAgfVxuICAuY2hlY2tib3gtc2xpZGVyIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX2xpZ2h0X2dyZXk7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICB9XG5cbiAgLmNoZWNrYm94LXNsaWRlciBzcGFuOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAtMThweDtcbiAgICB3aWR0aDogNTZweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX2Jhc2U7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkICsgLmNoZWNrYm94LXNsaWRlcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yX2Jhc2UsIDEwJSk7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkICsgLmNoZWNrYm94LXNsaWRlciBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfYmFzZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuOCwgMC40LCAwLjMsIDEuMjUpLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkICsgLmNoZWNrYm94LXNsaWRlciBzcGFuOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7XG4gIH1cblxuICBpbnB1dDpkaXNhYmxlZCArIC5jaGVja2JveC1zbGlkZXIge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gIH1cblxufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDFlbSAyZW07XG4gIGZvbnQtc2l6ZTogMS4yZW07XG5cbiAgJi5idG4teHMge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgfVxuXG4gICYuYnRuLXNtIHtcbiAgICBwYWRkaW5nOiA2cHggMTBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5idG4tcmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLmJ0bi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfcHJpbWFyeTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3JfcHJpbWFyeSwgMTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmJ0bi1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3JfYmFzZSwgMTAlKTtcbiAgICB9XG5cbiAgICAmLmxvYWRpbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lci1idWxxZzEgMC44cyBpbmZpbml0ZSBsaW5lYXIgYWx0ZXJuYXRlLFxuICAgICAgICBzcGlubmVyLW9hYTN3ayAxLjZzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmJ0bi1zbSk6YmVmb3JlIHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAmLmJ0bi1zbTpiZWZvcmUge1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5idG4tb3V0bGluZS1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgfVxuXG4gICAgJi5sb2FkaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGlubmVyLWJ1bHFnMSAwLjhzIGluZmluaXRlIGxpbmVhciBhbHRlcm5hdGUsXG4gICAgICAgIHNwaW5uZXItb2FhM3drIDEuNnMgaW5maW5pdGUgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCguYnRuLXNtKTpiZWZvcmUge1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB9XG5cbiAgICAgICYuYnRuLXNtOmJlZm9yZSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi1vdXRsaW5lLWRhcmstZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcbiAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG4gIH1cblxuICAmLmJ0bi1vdXRsaW5lLWRhcmstZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMC4zO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgICAgLy9jb2xvcjogI0ZGRjtcbiAgICB9XG4gIH1cblxufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYnVscWcxIHtcbiAgMCUge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgNTAlLCAwIDAsIDUwJSAwJSwgNTAlIDAlLCA1MCUgMCUsIDUwJSAwJSwgNTAlIDAlKTtcbiAgfVxuXG4gIDEyLjUlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDUwJSwgMCAwLCA1MCUgMCUsIDEwMCUgMCUsIDEwMCUgMCUsIDEwMCUgMCUsIDEwMCUgMCUpO1xuICB9XG5cbiAgMjUlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDUwJSwgMCAwLCA1MCUgMCUsIDEwMCUgMCUsIDEwMCUgMTAwJSwgMTAwJSAxMDAlLCAxMDAlIDEwMCUpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDUwJSwgMCAwLCA1MCUgMCUsIDEwMCUgMCUsIDEwMCUgMTAwJSwgNTAlIDEwMCUsIDAlIDEwMCUpO1xuICB9XG5cbiAgNjIuNSUge1xuICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgNTAlLCAxMDAlIDAsIDEwMCUgMCUsIDEwMCUgMCUsIDEwMCUgMTAwJSwgNTAlIDEwMCUsIDAlIDEwMCUpO1xuICB9XG5cbiAgNzUlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDUwJSwgMTAwJSAxMDAlLCAxMDAlIDEwMCUsIDEwMCUgMTAwJSwgMTAwJSAxMDAlLCA1MCUgMTAwJSwgMCUgMTAwJSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDUwJSwgNTAlIDEwMCUsIDUwJSAxMDAlLCA1MCUgMTAwJSwgNTAlIDEwMCUsIDUwJSAxMDAlLCAwJSAxMDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItb2FhM3drIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDQ5Ljk5JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKSByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSkgcm90YXRlKC0xMzVkZWcpO1xuICB9XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5oZWFkZXIubWVudS1vcGVuIH4gLmdkcHItY29va2llc19fd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nZHByLWNvb2tpZXNfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDI0cHggcmdiYSgwLDAsMCwwLjE1KSwwIDJweCA2cHggcmdiYSgwLDAsMCwwLjA1KTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBAaW5jbHVkZSBwYWRkaW5nKDUpO1xuICB6LWluZGV4OiAxMDUwO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTIwJSk7XG4gIEBrZXlmcmFtZXMgc2hvd0Nvb2tpZUNvbnNlbnRBbmltYXRpb24ge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTIwJSk7XG4gICAgfVxuICAgIDQwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gICAgfVxuICAgIDYwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIGhpZGVDb29raWVDb25zZW50QW5pbWF0aW9uIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMjAlKTtcbiAgICB9XG4gIH1cblxuICAmLmNsb3NlIHtcbiAgICBhbmltYXRpb246IGhpZGVDb29raWVDb25zZW50QW5pbWF0aW9uIDAuM3MgMTtcbiAgfVxuXG4gICYudmlzaWJsZSB7XG4gICAgYW5pbWF0aW9uOiBzaG93Q29va2llQ29uc2VudEFuaW1hdGlvbiAxcyAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgYm90dG9tOiA4MHB4O1xuICB9XG5cbiAgLmdkcHItY29va2llc19faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgICAgdG9wOiAyMHB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMTBweDtcbiAgICB9XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB6LWluZGV4OiAtMTtcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgfVxuXG4gIC5nZHByLWNvb2tpZXNfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gIH1cblxuICAuZ2Rwci1jb29raWVzX19idXR0b25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICB9XG5cbiAgLmdkcHItY29va2llc19fcHJpbmNpcGFsLXBhZ2Uge1xuXG4gICAgLmJ1dHRvbiB7XG5cbiAgICAgICYuZ2Rwci1yZWplY3Qge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX2xpZ2h0X2dyZXk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDdweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ2Rwci1jaG9pY2Uge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX2xpZ2h0X2dyZXk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yX2xpZ2h0X2dyZXk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmdkcHItYWNjZXB0IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yX2Jhc2U7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDdweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yX2Jhc2UsIDUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuZ2Rwci1jb29raWVzX19jaG9pY2UtcGFnZSB7XG5cbiAgICAudG9vbF9fd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgICAgLnRvb2xfX2ltYWdlIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRvb2xfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnQoNSlcbiAgICAgIH1cblxuICAgICAgLnRvb2xfX2NvbnNlbnQge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcblxuICAgICAgJi5nZHByLWJhY2sge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX2xpZ2h0X2dyZXk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDdweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ2Rwci1hY2NlcHQtYWxsOm5vdCguYmxhY2spIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcl9saWdodF9ncmV5O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xvcl9saWdodF9ncmV5O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5nZHByLWFjY2VwdC1hbGwuYmxhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JfYmFzZTtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3JfYmFzZSwgNSUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ2Rwci1jb25maXJtLWNob2ljZTpub3QoLmJsYWNrKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3JfbGlnaHRfZ3JleTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDdweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ2Rwci1jb25maXJtLWNob2ljZS5ibGFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcl9iYXNlO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA3cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvcl9iYXNlLCA1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn0iLCJAaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5jLW1vZGFsIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgfVxuXG4gIC5jLW1vZGFsLWNsaWNrLW91dHNpZGUtbW9kYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuYy1tb2RhbC13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IGF1dG87XG5cbiAgICAuYy1tb2RhbC1kaWFsb2cge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDcwMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblxuICAgICAgLmMtbW9kYWwtY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS45ZW07XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOm5vdCgmLS1taW4pIHtcbiAgICAgICAgd2lkdGg6IDcwMHB4O1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW1pbiB7XG4gICAgICAgIHdpZHRoOiA1NTBweDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl94c19tYXgpIHtcbiAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3OTlweCkge1xuXG4gICAgLmhlYWRlcl9fbGF5b3V0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuaGVhZGVyX19sb2dvLWhvbWUge1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGhlaWdodDogOTNweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IGF1dG8gMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW5Cb3R0b20oNSk7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIH1cblxuICAgICAgLmhlYWRlcl9fbWFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXG4gICAgICAgIC5oZWFkZXJfX21lbnUtaGFtYnVyZ2VyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgei1pbmRleDogMTEwO1xuXG4gICAgICAgICAgLmxpbmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm5vdCguY2xvc2UpIC5saW5lIHtcblxuICAgICAgICAgICAgJi5maXJzdC1saW5lIHtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNlY29uZC1saW5lIHtcbiAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5jbG9zZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAgICAgICAgIC5maXJzdC1saW5lIHtcbiAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWNvbmQtbGluZSB7XG4gICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5hY3Rpb24tY2xpY2sge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg3KTtcblxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuXG4gICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMmVtO1xuXG4gICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGtleWZyYW1lcyBtZW51TGlBbmltYXRpb24ge1xuICAgICAgICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAyNSUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnZpc2libGUge1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbWVudUxpQW5pbWF0aW9uIDJzIDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYWRlcl9fc3VibWVudTpub3QoLm9wZW4pIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYWRlcl9fc3VibWVudS5vcGVuIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuaGVhZGVyX19zZWNvbmRhcnktbWVudSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICZfX2l0ZW0ge1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgIHotaW5kZXg6IDE1MDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjY2Vzcy1waG90b3Mge1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgICAgICBwYWRkaW5nOiAxMXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWdpZnQtY291cG9ucyB7XG4gICAgICAgICAgcGFkZGluZzogMTFweCAxOHB4O1xuICAgICAgICAgIG9wYWNpdHk6IDAuODtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmhlYWRlcl9fc29jaWFsLW1lZGlhIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcblxuICAgICYuZml4ZWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgICAgLmhlYWRlcl9fbWFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXJfX2xheW91dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLmhlYWRlcl9fbG9nby1ob21lIHtcbiAgICAgICAgd2lkdGg6IDE3NnB4O1xuICAgICAgICBoZWlnaHQ6IDEzN3B4O1xuICAgICAgICBtYXJnaW46IDE1cHggYXV0byAwO1xuICAgICAgfVxuXG4gICAgICAuaGVhZGVyX19tYWluIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmhlYWRlcl9fbWVudS1oYW1idXJnZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcblxuICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgPiBhLCA+IHNwYW5bZGF0YS1zdWJtZW51XSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE4cHggMCAxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB1bC5oZWFkZXJfX3N1Ym1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogNnB4IDZweCAyMHB4IC0yMHB4IHJnYmEoMCwwLDAsLjE1KTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX2dyZXk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuaG92ZXIgdWwuaGVhZGVyX19zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuaGVhZGVyX19zZWNvbmRhcnktbWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICZfX2l0ZW0ge1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgIHotaW5kZXg6IDE1MDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjY2Vzcy1waG90b3Mge1xuICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xuICAgICAgICAgIHBhZGRpbmc6IDExcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tZ2lmdC1jb3Vwb25zIHtcbiAgICAgICAgICBwYWRkaW5nOiA5cHggMThweDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luTGVmdCgyKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5oZWFkZXJfX3NvY2lhbC1tZWRpYSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEzcHg7XG4gICAgICBsZWZ0OiAxM3B4O1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgY29sb3I6ICNjNGM0YzQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5mb290ZXIge1xuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5mb2xsb3ctaW5zdGFncmFtIHtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTBweCwgLTFweCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAyMnB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg3MXB4LCAtMXB4KTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDIycHg7XG4gICAgfVxuXG4gIH1cblxuICAuZm9vdGVyX19tZW51IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIG1hcmdpbjogMCAxOHB4IDAgMThweDtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fc21fbWF4KSB7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMThweCAwIDE4cHg7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuZm9vdGVyX19wYXJ0bmVycyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpblRvcEFuZEJvdHRvbSg1KTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbkxlZnRBbmRSaWdodCg1KTtcbiAgICAgIGhlaWdodDogOTBweDtcbiAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvb3Rlcl9fc29jaWFsLW1lZGlhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNsaWRlc2hvdy1ob21lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2U7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYtLW1vYmlsZSB7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzE7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi0tZGVza3RvcCB7XG4gICAgYXNwZWN0LXJhdGlvOiAyNTAwIC8gMTA0MjtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmhpZGRlbi1pbnRybyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG59XG5cbmltZy5zbGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZS1pbjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICBwYWRkaW5nOiAyMHB4IDUwcHggNTBweDtcbiAgfVxuXG59XG5cbmltZy5zbGlkZSArIGltZy5zbGlkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5maXJzdC10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlVyYmFuaXN0XCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkY29sb3JfYmFzZTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl94c19tYXgpIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgfVxuXG59XG5cbi5waG90b2dyYXBoZXItdGl0bGUge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDI1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5ob21lX19tb2JpbGUtYWN0aW9uIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIHBhZGRpbmdUb3AoNSk7XG4gICAgQGluY2x1ZGUgcGFkZGluZ0JvdHRvbSgxMCk7XG5cbiAgICBpIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBob3RvZ3JhcGhlci1wb3J0cmFpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC45cmVtO1xuICBtYXJnaW4tbGVmdDogMy4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAzLjI1cmVtO1xuXG4gIC5wb3J0cmFpdC1mcmFtZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gN3B4KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IC0wLjhyZW07XG4gICAgbGVmdDogLTFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX2dyZXk7XG4gIH1cblxufVxuXG4ubmV3cy1ob21lX193cmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgd2lkdGg6IDgwMDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDEuMXMgY3ViaWMtYmV6aWVyKC4zOSwuNTc1LC41NjUsMSk7XG5cbiAgLm5ld3MtaG9tZV9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNDlweCkge1xuICAgICAgd2lkdGg6IDI4MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzUwcHgpIHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwMHB4KSB7XG4gICAgICB3aWR0aDogMzQwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIHtcbiAgICAgIHdpZHRoOiA4MDBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbGdfbWluKSB7XG4gICAgICB3aWR0aDogMTAwMHB4O1xuICAgIH1cbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMS4zcyBjdWJpYy1iZXppZXIoLjM5LC41NzUsLjU2NSwxKTtcblxuICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5uZXdzLWhvbWVfX2ltYWdlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5fc21fbWF4KSB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoNTApXG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnRBbmRSaWdodCgyMClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmV3cy1ob21lX19jb250ZW50IHtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdUb3AoMTApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nTGVmdEFuZFJpZ2h0KDUpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nVG9wKDE1KTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnQoMjApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUmlnaHQoMjApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nQm90dG9tKDUpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuX21kX21heCkge1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nVG9wKDE1KTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnQoNSk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdSaWdodCgxMSk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdCb3R0b20oNSk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX2xnX21pbikge1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nVG9wKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnQoMjApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUmlnaHQoMjYpO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nQm90dG9tKDUpO1xuICAgICAgfVxuXG4gICAgICAubmV3cy10eXBlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiVXJiYW5pc3RcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luVG9wKDYpXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5yZXZpZXdzLWhvbWVfX3dyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICB3aWR0aDogODAwMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjZzIGN1YmljLWJlemllciguMzksLjU3NSwuNTY1LDEpO1xuXG4gIC5yZXZpZXdzLWhvbWVfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC44cyBjdWJpYy1iZXppZXIoLjM5LC41NzUsLjU2NSwxKTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZ0xlZnRBbmRSaWdodCgxMCk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nTGVmdEFuZFJpZ2h0KDIwKTtcbiAgICB9XG5cbiAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi5wcmV2LWJ1dHRvbiwgLm5leHQtYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjVweDtcbiAgaGVpZ2h0OiA2NXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9iYXNlO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICB9XG4gIH1cblxuICAmLnByZXYtYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIH1cblxuICAmLm5leHQtYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgfVxuXG59XG5cbi53ZWRkaW5nLXF1b3RlIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuN2VtO1xuICBAaW5jbHVkZSBwYWRkaW5nTGVmdEFuZFJpZ2h0KDE1KTtcbn1cblxuLmhvbWVwYWdlLXN0dWRpby1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBAaW5jbHVkZSBwYWRkaW5nVG9wQW5kQm90dG9tKDMuNSk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hsX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5fMnhsX21heCkge1xuICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICB9XG5cbn1cblxuLmhvbWVwYWdlLXN0dWRpbyB7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDUwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBAaW5jbHVkZSBwYWRkaW5nKDEyKVxufVxuXG4uaG9tZXBhZ2UtcmV2aWV3cy1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjZmNjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl94bF9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuXzJ4bF9tYXgpIHtcbiAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgfVxufVxuXG4uaG9tZXBhZ2UtcmV2aWV3cyB7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNzAwcHg7XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgLndlZGRpbmctaW5mbyB7XG4gICAgQGluY2x1ZGUgbWFyZ2luQm90dG9tKDcpO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX21kX21pbikge1xuICAud2VkZGluZy1pbmZvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLndlZGRpbmctcmVwb3J0YWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAud2VkZGluZy1pbmZvIHAge1xuXG4gICAgfVxuXG4gICAgLndlZGRpbmctaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICBib3R0b206IDE2cHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgIHAge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC42cyBjdWJpYy1iZXppZXIoLjM5LC41NzUsLjU2NSwxKTtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoNSk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmhvdmVyIC53ZWRkaW5nLWluZm8ge1xuICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgcCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud2VkZGluZy1yZXBvcnRhZ2UtdjIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG9wYWNpdHk6IDAuOTtcblxuICAgIC53ZWRkaW5nLWluZm8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgYm90dG9tOiAyNnB4O1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICBwIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1cHgpO1xuICAgICAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNnMgY3ViaWMtYmV6aWVyKC4zOSwuNTc1LC41NjUsMSk7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luVG9wKDUpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjpob3ZlciAud2VkZGluZy1pbmZvIHtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIHAge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLndlZGRpbmctcmVwb3J0YWdlLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSgzKVxufVxuXG4ucmVwb3J0YWdlLWxhdXJlbC1sZWFmIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4ud2VkZGluZy1waG90b2dyYXBoZXItdGl0bGUge1xuICBmb250LWZhbWlseTogUGxheWZhaXIgRGlzcGxheSxzZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl94c19tYXgpIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gIH1cblxuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogJ1VyYmFuaXN0Jywgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl94c19tYXgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLndlZGRpbmctc3R5bGUtcGFyYWdyYXBoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxNzBweDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEwMHB4O1xuICAgIGhlaWdodDogODBweDtcbiAgICByaWdodDogNTAlO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gIH1cblxufVxuXG4uc21hbGwtd2VkZGluZy1xdW90ZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5cbi53ZWRkaW5nLW1lbnUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JfYmxhY2tfYmFja2dyb3VuZDtcbiAgY29sb3I6ICNGRkY7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMjAwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3JfYmxhY2tfYmFja2dyb3VuZDtcblxuICAvKkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9Ki9cblxuICB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg1KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbkxlZnRBbmRSaWdodCg1KTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUgYSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGO1xuICAgICAgfVxuXG4gICAgICAvKkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfSovXG4gICAgfVxuICB9XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4udHJhaW5pbmctZmlyc3QtdGl0bGUge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuN2VtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi50cmFpbmluZy10aGVtZS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlVyYmFuaXN0XCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkY29sb3JfbGlnaHRfZ3JleTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICBAaW5jbHVkZSBtYXJnaW5Ub3AoMTApO1xuICBAaW5jbHVkZSBtYXJnaW5Cb3R0b20oMik7XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ucHJvLXNlY29uZC1pbWFnZS1wcmVzZW50YXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwcHgsIDQwcHgpO1xuICBib3JkZXI6IDE1cHggc29saWQgI0ZGRjtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbl9sZ19tYXgpIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5feGxfbWluKSB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICB9XG59XG5cbi5wcm8tcHJvamVjdCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgIHdpZHRoOiAxNTVweDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICB3aWR0aDogMTI1cHg7XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgdHJhbnNpdGlvbjogYWxsIC42cyBjdWJpYy1iZXppZXIoLjM5LC41NzUsLjU2NSwxKTtcbiAgICBjb2xvcjogJGNvbG9yX2Jhc2U7XG4gIH1cblxufVxuXG4ucmVmZXJlbmNlcy10aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxMzBweDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgfVxufVxuXG4ucmVmZXJlbmNlcyB7XG4gIEBpbmNsdWRlIG1hcmdpblRvcCgxMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKSBjb250cmFzdCgxMTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgICAgQGluY2x1ZGUgbWFyZ2luTGVmdEFuZFJpZ2h0KDUpO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbkxlZnRBbmRSaWdodCgxMCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgfVxuICB9XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ucG9ydHJhaXQtcHJpY2VfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIHBhZGRpbmcoNCk7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fbGdfbWF4KSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luVG9wQW5kQm90dG9tKDMpO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5feGxfbWluKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDQpO1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoNCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZ0JvdHRvbSg0KTtcbiAgfVxuXG4gIC5wb3J0cmFpdC1wcmljZV9fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAkY29sb3JfZ3JleTtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgQGluY2x1ZGUgbWFyZ2luQm90dG9tKDcpO1xuICB9XG5cbiAgLnBvcnRyYWl0LXByaWNlX19mZWF0dXJlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNEREQ7XG4gICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg0KTtcbiAgfVxuXG4gIC5wb3J0cmFpdC1wcmljZV9fYW1vdW50IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg5KTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX2xnX21pbikge1xuICAgICAgJi5lcXVhbC1sZy1wYWRkaW5nLXRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1NnB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmluY2x1ZGluZy10YXgge1xuICAgICAgZm9udC1zaXplOiAwLjZlbTtcbiAgICB9XG4gIH1cblxufVxuXG4ucHJpY2UtYW1vdW50IHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBAaW5jbHVkZSBwYWRkaW5nVG9wQW5kQm90dG9tKDkpO1xuXG4gIC5pbmNsdWRpbmctdGF4IHtcbiAgICBmb250LXNpemU6IDAuNmVtO1xuICB9XG59XG5cbi53ZWRkaW5nLXByaWNlLWFtb3VudCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg5KTtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fMnhsX21pbikge1xuICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoMjApO1xuICB9XG5cbiAgLmluY2x1ZGluZy10YXgge1xuICAgIGZvbnQtc2l6ZTogMC42ZW07XG4gIH1cbn1cblxuLnByZWduYW50LXByaWNlLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIEBpbmNsdWRlIHBhZGRpbmdUb3BBbmRCb3R0b20oMy41KTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hsX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5fMnhsX21heCkge1xuICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICB9XG5cbn1cblxuLnByZWduYW50LXByaWNlLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hsX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5fMnhsX21heCkge1xuICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICB9XG59XG5cbi5wcmVnbmFudC1wcmljZSB7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNzAwcHg7XG59XG5cbi5waG90b3Nob290LXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiVXJiYW5pc3RcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICRjb2xvcl9saWdodF9ncmV5O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgbWFyZ2luVG9wKDQpO1xuICBAaW5jbHVkZSBtYXJnaW5Cb3R0b20oNik7XG59XG5cbi5hZGRpdGlvbmFsLXByaWNlIHtcbiAgbWFyZ2luLXRvcDogLTExcHg7XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4uc3R1ZGlvLXRvcC1pbWFnZSB7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbGdfbWluKSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnN0dWRpby1jb250YWluZXIge1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX2xnX21pbikge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogLTUwcHg7XG4gIH1cblxufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLmFydGljbGUtcGhvdG9ncmFwaGVyLXBvcnRyYWl0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBwYWRkaW5nVG9wKDE1KTtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cbn1cblxuYXJ0aWNsZSBwIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuOGVtO1xufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNsaWRlc2hvdy1jb250YWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2U7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgIGhlaWdodDogMjUwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuXzN4bF9taW4pIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLmNvbnRhY3Qtc2xpZGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlLWluO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG5cbn1cblxuLmNvbnRhY3QtbW9iaWxlLWNhbGwge1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX21kX21heCkge1xuICAgIEBpbmNsdWRlIG1hcmdpblRvcEFuZEJvdHRvbSgxMCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZyg1KTtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX2xnX21pbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufVxuXG4uY29udGFjdC10ZWxlcGhvbmUtbnVtYmVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZ0JvdHRvbSgyKTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb2xvcl9iYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcbiAgfVxuXG4gIGkge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxufVxuXG5nbXAtbWFwIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29udGFjdC1zdHVkaW8tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMSkgY29udHJhc3QoMSk7XG4gIEBpbmNsdWRlIHBhZGRpbmdUb3BBbmRCb3R0b20oMy41KTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuX3NtX21heCkge1xuICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5feGxfbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbl8yeGxfbWF4KSB7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIH1cblxufVxuXG4uY29udGFjdC1zdHVkaW8ge1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiA1MDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgQGluY2x1ZGUgcGFkZGluZygxMilcbn1cblxuLmNvbnRhY3QtbWFwcy1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjZmNjtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3hsX21pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW5fMnhsX21heCkge1xuICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fM3hsX21pbikge1xuICAgIGFzcGVjdC1yYXRpbzogMy8yO1xuICB9XG5cbn1cblxuLmNvbnRhY3QtYWNjZXNzLWJvcmRlci1sZWZ0IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgfVxufVxuXG4ucmVjYXB0Y2hhLW5vLXZhbGlkLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufSIsIkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuYTpob3ZlciAuZ2lmdC1jb3Vwb24tY2hvaWNlX193cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCNmOGY2ZjYsIDUlKTtcbiAgY29sb3I6ICRjb2xvcl9iYXNlO1xufVxuXG4uZ2lmdC1jb3Vwb24tY2hvaWNlX193cmFwcGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmY2O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIHBhZGRpbmcoNCk7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fbGdfbWF4KSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luVG9wQW5kQm90dG9tKDMpO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5feGxfbWluKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDQpO1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoNCk7XG4gIH1cblxuICAuZ2lmdC1jb3Vwb24tY2hvaWNlX19pbmZvcm1hdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiVXJiYW5pc3RcIiwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nQm90dG9tKDQpO1xuICB9XG5cbiAgLmdpZnQtY291cG9uLWNob2ljZV9fYW1vdW50IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg1KTtcblxuICAgIC5pbmNsdWRpbmctdGF4LCAucmVhbC1wcmljZSB7XG4gICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgIH1cbiAgfVxuXG59XG5cbi5naWZ0LWNvdXBvbi1pbmZvcm1hdGlvbiwgLmdpZnQtY291cG9ucy1pbmZvcm1hdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBAaW5jbHVkZSBtYXJnaW5Cb3R0b20oMyk7XG4gIH1cblxufVxuXG4uZ2lmdC1jb3Vwb24tdG9wX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2U7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX3hzX21heCkge1xuICAgIGhlaWdodDogMjUwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fbWRfbWluKSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuXzN4bF9taW4pIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLmltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZS1pbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG59XG5cbnVsLm9yZGVyLW5hdmlnYXRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikge1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9saWdodF9ncmV5O1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sb3JfbGlnaHRfZ3JleTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4uZ2lmdC1pbmZvcm1hdGlvbl9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nTGVmdCgxMCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZ0JvdHRvbSgyKTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczJyBoZWlnaHQ9JzcnIHZpZXdCb3g9JzAgMCAzIDcnJTNFJTNDY2lyY2xlIGZpbGw9J2JsYWNrJyBjeD0nMS41JyBjeT0nMy41JyByPScxLjUnIC8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0O1xuICAgICAgd2lkdGg6IDNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGJvdHRvbTogMTAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX2xnX21pbikge1xuICAgIEBpbmNsdWRlIHBhZGRpbmdSaWdodCg1KTtcbiAgfVxuXG4gIC5naWZ0LWluZm9ybWF0aW9uX19mZWF0dXJlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgQGluY2x1ZGUgbWFyZ2luVG9wKDYpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmdUb3AoNCk7XG4gIH1cblxuICAuZ2lmdC1pbmZvcm1hdGlvbl9fcXVlc3Rpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmY2O1xuICAgIEBpbmNsdWRlIG1hcmdpblRvcCg2KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDQpO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5fc21fbWF4KSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luQm90dG9tKDEwKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nQm90dG9tKDEzKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gIH1cblxufVxuXG4uZ2lmdC1lZGl0X193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl9zbV9tYXgpIHtcbiAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoNSk7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9tZF9taW4pIHtcbiAgICBtYXJnaW4tdG9wOiAtMzZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDEwKTtcbiAgfVxuXG4gIC5naWZ0LWVkaXRfX2Ftb3VudCB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nVG9wKDMpO1xuXG4gICAgLmJlZm9yZS1wcmljZSB7XG4gICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIH1cblxuICAgIC5pbmNsdWRpbmctdGF4LCAucmVhbC1wcmljZSB7XG4gICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgIH1cbiAgfVxuXG4gIC5sYWJlbC1wcmljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjZmNjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nVG9wQW5kQm90dG9tKDEpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoMik7XG4gIH1cblxuICAuaW1hZ2UtcHJlc2VudGF0aW9uIHtcbiAgICB3aWR0aDogNzBweDtcbiAgfVxuXG59XG5cbi5naWZ0LXN0ZXBfX3dyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIHBhZGRpbmcoNik7XG5cbiAgLmdpZnQtc3RlcF9fbnVtYmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgcGFkZGluZy10b3A6IDZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGNvbG9yOiAkY29sb3JfYmFzZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgfVxuXG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG5cbn1cblxuLmdpZnQtcHJpY2UtcmlnaHQge1xuICB3aWR0aDogNzBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jcmVkaXQtY2FyZHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMzZweDtcbiAgfVxuXG59XG5cbi5lLXRyYW5zYWN0aW9uIGltZyB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLmdpZnQtY29tcGxldGUtaW5mbyB7XG4gIEBpbmNsdWRlIHBhZGRpbmdUb3AoNSk7XG4gIGZvbnQtc2l6ZTogMS43ZW07XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ucXVlc3Rpb25uYWlyZS10b3BfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmY2O1xuICBAaW5jbHVkZSBtYXJnaW5Ub3AoMTApO1xuICBAaW5jbHVkZSBtYXJnaW5Cb3R0b20oMTUpO1xuXG4gIC5xdWVzdGlvbm5haXJlLXRvcF9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDUpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoNSk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICA+IGRpdiB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKDUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG5zZWN0aW9uLmN1c3RvbWVyLWFjY2Vzcy1mb3JtIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbl94c19tYXgpIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoMyk7XG4gICAgfVxuICB9XG5cbiAgLmZvcm1fX3dyYXBwZXIge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIEBpbmNsdWRlIG1hcmdpblRvcEFuZEJvdHRvbSgxNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nTGVmdEFuZFJpZ2h0KDgpO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSgxNSk7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuX3NtX21pbikge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygxNSk7XG4gICAgfVxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIH1cblxuICAuYXV0aC1mb3JtX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1hcmdpblRvcCgzKTtcblxuICAgIC5hdXRoLWZvcm0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zZXBhcmF0b3ItdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjIxZW07XG4gICAgd29yZC1zcGFjaW5nOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNvZGUtcmVzZXQtaW5wdXQge1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIEBpbmNsdWRlIG1hcmdpbkxlZnRBbmRSaWdodCgxKTtcblxuICAgIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yX2Jhc2U7XG4gICAgfVxuXG4gICAgLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAtMXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICB9XG5cbn1cblxuLmdhbGxlcnlfX2NhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY2ZjY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgcGFkZGluZ1RvcCg0KTtcbiAgQGluY2x1ZGUgcGFkZGluZ0xlZnRBbmRSaWdodCg0KTtcbiAgQGluY2x1ZGUgcGFkZGluZ0JvdHRvbSg4KTtcbiAgQGluY2x1ZGUgbWFyZ2luTGVmdEFuZFJpZ2h0KDMpO1xuICBAaW5jbHVkZSBtYXJnaW5Ub3BBbmRCb3R0b20oNik7XG5cbiAgLmJhZGdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNXB4O1xuICAgIGxlZnQ6IDI1cHg7XG4gIH1cblxuICAuY2FyZC1jb3ZlciB7XG4gICAgYXNwZWN0LXJhdGlvOiAzLzI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICAgIEBpbmNsdWRlIG1hcmdpbkJvdHRvbSgzKTtcbiAgfVxufVxuXG4udXNlci1sb2dnZWQtaW5mbyB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmNmY2O1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMik7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcblxuICAgID4gZGl2IHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoMyk7XG4gICAgfVxuXG4gICAgLmxvZ291dC1idXR0b24ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW5feHNfbWF4KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmxvZ291dC1idXR0b257XG4gICAgICBAaW5jbHVkZSBtYXJnaW5Ub3AoMyk7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRjb2xvcl9iYXNlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfYmFzZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLnNob290aW5nX193cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjZmNjtcbiAgQGluY2x1ZGUgcGFkZGluZygxMCk7XG4gIEBpbmNsdWRlIG1hcmdpblRvcCgxMCk7XG5cbiAgLnNob290aW5nX19sb2dvIHtcbiAgICB3aWR0aDogNDBweDtcbiAgfVxuXG4gIC5zaG9vdGluZ19faW5mb3JtYXRpb25zIHtcbiAgICBAaW5jbHVkZSBtYXJnaW5MZWZ0KDUpO1xuXG4gICAgaDIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMi41cHg7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMjZweDtcbiAgICAgICAgYm90dG9tOiAtMTVweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTI1cHgsIC0xcHgpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2hvb3RpbmdfX2FjdGlvbnMge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuX21kX21heCkge1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9sZ19taW4pIHtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmJ0bi1kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2Y4ZjZmNiwgMTAlKTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuc2hvb3RpbmdfX29yZGVycyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMzMzIDEwJSwgI2Y4ZjZmNiAwJSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCAxcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZ1RvcCg1KTtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgfVxuXG4gICAgPiBkaXYge1xuICAgICAgQGluY2x1ZGUgbWFyZ2luVG9wKDUpO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZ1RvcEFuZEJvdHRvbSg1KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMjZweDtcbiAgICAgICAgYm90dG9tOiAtMTVweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTI1cHgsIC0xcHgpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yX2Jhc2U7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5iYWRnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIEBpbmNsdWRlIHBhZGRpbmdUb3BBbmRCb3R0b20oMik7XG4gIEBpbmNsdWRlIHBhZGRpbmdMZWZ0QW5kUmlnaHQoNCk7XG5cbiAgJi5iYWRnZS1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Jfc3VjY2VzcztcbiAgfVxuXG4gICYuYmFkZ2UtZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfZGFuZ2VyO1xuICB9XG59IiwiQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ucHJlcmVnaXN0cmF0aW9uLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW5fc21fbWluKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyg1KTtcbiAgfVxuXG4gIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmdhbGxlcnktbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nVG9wKDMpO1xuICB9XG59XG5cbi5wcmVyZWdpc3RyYXRpb24td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgcGFkZGluZ1RvcCgxMCk7XG5cbiAgLnByZXJlZ2lzdHJhdGlvbi1pbm5lciB7XG5cbiAgICAucHJlcmVnaXN0cmF0aW9uLWNvbnRhaW5lciB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbl9zbV9taW4pIHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygxMCk7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogNjIwcHg7XG5cbiAgICAgIGgzLCBoNCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgICAgIH1cblxuICAgICAgLnByZXJlZ2lzdHJhdGlvbi1mb3JtX193cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblRvcCg2KTtcblxuICAgICAgICAucHJlcmVnaXN0cmF0aW9uLWZvcm0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMzgwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNlcGFyYXRvci10ZXh0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjFlbTtcbiAgICAgICAgd29yZC1zcGFjaW5nOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAucHJlcmVnaXN0cmF0aW9uLXRpbWUge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/