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;
  font-size: 100%;
  font: inherit;
  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;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.6rem;
}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

@font-face {
  font-family: "Helvetica Neue";
  font-weight: 700;
  src: url("/site/fonts/3A9C25_0_0.eot");
  src: url("/site/fonts/3A9C25_0_0.eot?#iefix") format("embedded-opentype"), url("/site/fonts/3A9C25_0_0.woff2") format("woff2"), url("/site/fonts/3A9C25_0_0.woff") format("woff"), url("/site/fonts/3A9C25_0_0.ttf") format("truetype");
}
@font-face {
  font-family: "Helvetica Neue";
  font-weight: 400;
  src: url("/site/fonts/3A9C25_1_0.eot");
  src: url("/site/fonts/3A9C25_1_0.eot?#iefix") format("embedded-opentype"), url("/site/fonts/3A9C25_1_0.woff2") format("woff2"), url("/site/fonts/3A9C25_1_0.woff") format("woff"), url("/site/fonts/3A9C25_1_0.ttf") format("truetype");
}
@font-face {
  font-family: "Helvetica Neue";
  font-weight: 600;
  src: url("/site/fonts/3A9C25_2_0.eot");
  src: url("/site/fonts/3A9C25_2_0.eot?#iefix") format("embedded-opentype"), url("/site/fonts/3A9C25_2_0.woff2") format("woff2"), url("/site/fonts/3A9C25_2_0.woff") format("woff"), url("/site/fonts/3A9C25_2_0.ttf") format("truetype");
}
.bg-lighter-black {
  background: #140F06;
  color: #FFFFFF;
}

.bg-lighter-black-5 {
  background: #F3F3F2;
}

.bg-lightgrey {
  background: #E3E6E9;
}

.bg-lightgrey-50 {
  background: rgba(227, 230, 233, 0.5);
}

.bg-lightgrey-60 {
  background: #EEF0F2;
}

.bg-dark-blue {
  background: #395180;
  color: #FFFFFF;
}
.bg-dark-blue > h1, .bg-dark-blue > h2, .bg-dark-blue > h3, .bg-dark-blue > h4, .bg-dark-blue > h5, .bg-dark-blue > h6, .bg-dark-blue > p, .bg-dark-blue > ul li {
  color: inherit;
}
.external-block .bg-dark-blue .external-content > * {
  color: #FFFFFF;
}

.bg-darker-blue {
  background: #0C294A;
  color: #FFFFFF;
}
.bg-darker-blue > h1, .bg-darker-blue > h2, .bg-darker-blue > h3, .bg-darker-blue > h4, .bg-darker-blue > h5, .bg-darker-blue > h6, .bg-darker-blue > p, .bg-darker-blue > ul li {
  color: inherit;
}

.bg-yellow {
  background: #FFEE00;
  color: #140F06;
}
.bg-yellow.button:hover, .bg-yellow.icon-button:hover {
  color: #FFEE00;
  background: #140F06;
}

.bg-black {
  background: #140F06;
  color: #FFEE00;
}
.bg-black.button:hover, .bg-black.icon-button:hover {
  color: #140F06;
  background: #FFEE00;
}

.lighter-black-text {
  color: #140F06;
}

.mt-0 {
  margin-top: 0rem;
}

.pt-0 {
  padding-top: 0rem;
}

.mb-0 {
  margin-bottom: 0rem;
}

.pb-0 {
  padding-bottom: 0rem;
}

.ml-0 {
  margin-left: 0rem;
}

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

.mr-0 {
  margin-right: 0rem;
}

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

.mt-1 {
  margin-top: 1rem;
}

.pt-1 {
  padding-top: 1rem;
}

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

.pb-1 {
  padding-bottom: 1rem;
}

.ml-1 {
  margin-left: 1rem;
}

.pl-1 {
  padding-left: 1rem;
}

.mr-1 {
  margin-right: 1rem;
}

.pr-1 {
  padding-right: 1rem;
}

.mt-2 {
  margin-top: 2rem;
}

.pt-2 {
  padding-top: 2rem;
}

.mb-2 {
  margin-bottom: 2rem;
}

.pb-2 {
  padding-bottom: 2rem;
}

.ml-2 {
  margin-left: 2rem;
}

.pl-2 {
  padding-left: 2rem;
}

.mr-2 {
  margin-right: 2rem;
}

.pr-2 {
  padding-right: 2rem;
}

.mt-3 {
  margin-top: 3rem;
}

.pt-3 {
  padding-top: 3rem;
}

.mb-3 {
  margin-bottom: 3rem;
}

.pb-3 {
  padding-bottom: 3rem;
}

.ml-3 {
  margin-left: 3rem;
}

.pl-3 {
  padding-left: 3rem;
}

.mr-3 {
  margin-right: 3rem;
}

.pr-3 {
  padding-right: 3rem;
}

.mt-4 {
  margin-top: 4rem;
}

.pt-4 {
  padding-top: 4rem;
}

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

.pb-4 {
  padding-bottom: 4rem;
}

.ml-4 {
  margin-left: 4rem;
}

.pl-4 {
  padding-left: 4rem;
}

.mr-4 {
  margin-right: 4rem;
}

.pr-4 {
  padding-right: 4rem;
}

.mt-5 {
  margin-top: 5rem;
}

.pt-5 {
  padding-top: 5rem;
}

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

.pb-5 {
  padding-bottom: 5rem;
}

.ml-5 {
  margin-left: 5rem;
}

.pl-5 {
  padding-left: 5rem;
}

.mr-5 {
  margin-right: 5rem;
}

.pr-5 {
  padding-right: 5rem;
}

.mt-6 {
  margin-top: 6rem;
}

.pt-6 {
  padding-top: 6rem;
}

.mb-6 {
  margin-bottom: 6rem;
}

.pb-6 {
  padding-bottom: 6rem;
}

.ml-6 {
  margin-left: 6rem;
}

.pl-6 {
  padding-left: 6rem;
}

.mr-6 {
  margin-right: 6rem;
}

.pr-6 {
  padding-right: 6rem;
}
html, body {
  width: 100%;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  -ms-overflow-style: auto;
  overflow: auto;
  padding: 0;
  margin: 0;
  overscroll-behavior: none;
  min-height: 100vh;
  overflow-x: hidden;
}

html {
  font-size: 10px;
  font-size: 62.5%;
}

body {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
  color: rgba(20, 15, 6, 0.7);
}

.flex {
  display: flex;
}

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

.tcentre {
  text-align: center;
}
@media (max-width: 840px) {
  .tcentre.tleft-tablet {
    text-align: left;
  }
}

strong {
  font-weight: 700;
}

a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.2s linear;
}
a.underlined {
  text-decoration: underline;
}
a:focus {
  outline: 2px solid -webkit-focus-ring-color;
}
a:focus, a:hover {
  opacity: 0.75;
}

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

.nodisplay {
  display: none;
}

h1, .h1 {
  font-size: 5rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  margin-bottom: 2rem;
  color: #140F06;
}
h1.larger, .h1.larger {
  font-size: 6rem;
}
h1.smaller, .h1.smaller {
  font-size: 5.2rem;
  font-weight: 400;
  letter-spacing: -0.01em;
}
h1.smallest, .h1.smallest {
  font-size: 4.6rem;
  font-weight: 300;
  letter-spacing: -0.01em;
}
h1.thick, .h1.thick {
  font-weight: 900;
}
@media (max-width: 840px) {
  h1, .h1 {
    font-size: 4.8rem;
  }
  h1.larger, .h1.larger {
    font-size: 5rem;
  }
  h1.smaller, .h1.smaller {
    font-size: 4rem;
  }
}
@media (max-width: 540px) {
  h1, .h1 {
    font-size: 3.4rem;
    margin-bottom: 1rem;
  }
  h1.larger, .h1.larger {
    font-size: 3.4rem;
  }
  h1.smaller, .h1.smaller {
    font-size: 3.4rem;
  }
}

h2 {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  margin-bottom: 1.6rem;
  color: #140F06;
}
h2.smaller {
  font-size: 3rem;
}
.main-side .main-content h2, .content-col h2 {
  margin-bottom: 2rem;
}
@media (max-width: 840px) {
  h2 {
    font-size: 3.6rem;
  }
  h2.smaller {
    font-size: 2.8rem;
  }
}
@media (max-width: 540px) {
  h2 {
    font-size: 3rem;
    margin-bottom: 1rem;
  }
  h2.smaller {
    font-size: 2.4rem;
  }
}

h3, .h3 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  margin-bottom: 1.2rem;
  color: #140F06;
}
@media (max-width: 540px) {
  h3, .h3 {
    font-size: 2rem;
  }
}
h3.smaller, .h3.smaller {
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: -0.01em;
}
h3.smallest, .h3.smallest {
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: -0.01em;
}

h4, .h4 {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
  letter-spacing: -0.02em;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  margin-bottom: 1rem;
  color: #140F06;
}
@media (max-width: 540px) {
  h4, .h4 {
    font-size: 1.6rem;
  }
}

h5 {
  font-size: 1.8rem;
  font-weight: 700;
  color: #140F06;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin-bottom: 2rem;
}

p {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02em;
}
p a {
  color: #395180;
  text-decoration: underline;
}
p strong {
  color: #140F06;
}
p.large {
  font-size: 2.4rem;
}
p.smaller {
  font-size: 1.4rem;
  line-height: 1.21429;
  letter-spacing: 0;
}
p.medium-weight {
  font-weight: 600;
}
p + p {
  margin-top: 1.6rem;
}
@media (max-width: 540px) {
  p.large {
    font-size: 1.8rem;
  }
  p + p {
    margin-top: 1rem;
  }
}

ul {
  margin: 0;
  padding: 0;
}
ul li {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 400;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  letter-spacing: -0.02em;
  padding-left: 3rem;
}
ul li::before {
  content: "";
  position: absolute;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: #140F06;
  top: 0.8rem;
  left: 0;
}
ul li + li {
  margin-top: 1.6rem;
}
ul li > ul {
  margin-top: 1rem;
}
ul li > ul li::before {
  border: 2px solid #140F06;
  background: #FFFFFF;
}
ul li > ul li span {
  display: block;
}
ul li > ul li span.cate-text {
  font-weight: 700;
  margin-bottom: 0.3rem;
}
@media (max-width: 540px) {
  ul li {
    padding-left: 2.5rem;
  }
  ul li + li {
    margin-top: 1rem;
  }
}

ol {
  margin: 0;
  padding: 0;
  counter-reset: list-counter;
}
ol li {
  counter-increment: list-counter;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 400;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  letter-spacing: -0.02em;
  padding-left: 2rem;
}
ol li::before {
  content: counter(list-counter);
  position: absolute;
  width: 2rem;
  height: 2rem;
  top: 0;
  left: 0;
  font: inherit;
  font-weight: 600;
  color: #140F06;
}
ol li + li {
  margin-top: 0.5rem;
}

p + h2, p + .quote-block, ul + h2, ul + .quote-block, ol + h2, ol + .quote-block, .quote-block + h2, .quote-block + .quote-block, .image-container + h2, .image-container + .quote-block, .toll-card + h2, .toll-card + .quote-block, .content-rich + h2, .content-rich + .quote-block, .cta.button + h2, .cta.icon-button + h2, .cta.button + .quote-block, .cta.icon-button + .quote-block {
  margin-top: 4rem;
}
p + h3, p + .image-container, ul + h3, ul + .image-container, ol + h3, ol + .image-container, .quote-block + h3, .quote-block + .image-container, .image-container + h3, .image-container + .image-container, .toll-card + h3, .toll-card + .image-container, .content-rich + h3, .content-rich + .image-container, .cta.button + h3, .cta.icon-button + h3, .cta.button + .image-container, .cta.icon-button + .image-container {
  margin-top: 2.4rem;
}
p + h4, p + .cta.button, p + .cta.icon-button, ul + h4, ul + .cta.button, ul + .cta.icon-button, ol + h4, ol + .cta.button, ol + .cta.icon-button, .quote-block + h4, .quote-block + .cta.button, .quote-block + .cta.icon-button, .image-container + h4, .image-container + .cta.button, .image-container + .cta.icon-button, .toll-card + h4, .toll-card + .cta.button, .toll-card + .cta.icon-button, .content-rich + h4, .content-rich + .cta.button, .content-rich + .cta.icon-button, .cta.button + h4, .cta.icon-button + h4, .cta.button + .cta.button, .cta.icon-button + .cta.button, .cta.button + .cta.icon-button, .cta.icon-button + .cta.icon-button {
  margin-top: 2rem;
}
p + h5, p + p, p + ul, p + ol, ul + h5, ul + p, ul + ul, ul + ol, ol + h5, ol + p, ol + ul, ol + ol, .quote-block + h5, .quote-block + p, .quote-block + ul, .quote-block + ol, .image-container + h5, .image-container + p, .image-container + ul, .image-container + ol, .toll-card + h5, .toll-card + p, .toll-card + ul, .toll-card + ol, .content-rich + h5, .content-rich + p, .content-rich + ul, .content-rich + ol, .cta.button + h5, .cta.icon-button + h5, .cta.button + p, .cta.icon-button + p, .cta.button + ul, .cta.icon-button + ul, .cta.button + ol, .cta.icon-button + ol {
  margin-top: 1.6rem;
}
@media (max-width: 1200px) {
  p + h2, p + .quote-block, ul + h2, ul + .quote-block, ol + h2, ol + .quote-block, .quote-block + h2, .quote-block + .quote-block, .image-container + h2, .image-container + .quote-block, .toll-card + h2, .toll-card + .quote-block, .content-rich + h2, .content-rich + .quote-block, .cta.button + h2, .cta.icon-button + h2, .cta.button + .quote-block, .cta.icon-button + .quote-block {
    margin-top: 3rem;
  }
}
@media (max-width: 540px) {
  p + h3, p + .image-container, ul + h3, ul + .image-container, ol + h3, ol + .image-container, .quote-block + h3, .quote-block + .image-container, .image-container + h3, .image-container + .image-container, .toll-card + h3, .toll-card + .image-container, .content-rich + h3, .content-rich + .image-container, .cta.button + h3, .cta.icon-button + h3, .cta.button + .image-container, .cta.icon-button + .image-container {
    margin-top: 2rem;
  }
  p + h4, ul + h4, ol + h4, .quote-block + h4, .image-container + h4, .toll-card + h4, .content-rich + h4, .cta.button + h4, .cta.icon-button + h4 {
    margin-top: 1.6rem;
  }
  p + h5, p + p, p + ul, p + ol, ul + h5, ul + p, ul + ul, ul + ol, ol + h5, ol + p, ol + ul, ol + ol, .quote-block + h5, .quote-block + p, .quote-block + ul, .quote-block + ol, .image-container + h5, .image-container + p, .image-container + ul, .image-container + ol, .toll-card + h5, .toll-card + p, .toll-card + ul, .toll-card + ol, .content-rich + h5, .content-rich + p, .content-rich + ul, .content-rich + ol, .cta.button + h5, .cta.icon-button + h5, .cta.button + p, .cta.icon-button + p, .cta.button + ul, .cta.icon-button + ul, .cta.button + ol, .cta.icon-button + ol {
    margin-top: 1rem;
  }
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.centre {
  text-align: center;
}

.aspect-ratio-image, .banner-bgs.images-carousel .carousel-item, .simple-banner .banner-bg, .banner-image .banner-image-bg, .text-thumbnail {
  min-height: 0;
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
  overflow: hidden;
  display: block;
  text-decoration: none;
}
.aspect-ratio-image::before, .banner-bgs.images-carousel .carousel-item::before, .simple-banner .banner-bg::before, .banner-image .banner-image-bg::before, .text-thumbnail::before {
  content: "";
  display: block;
  height: 0;
  min-height: 0;
  width: 100%;
  z-index: 0;
}
.aspect-ratio-image::after, .banner-bgs.images-carousel .carousel-item::after, .simple-banner .banner-bg::after, .banner-image .banner-image-bg::after, .text-thumbnail::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.aspect-ratio-image.no-gradient::after, .banner-bgs.images-carousel .no-gradient.carousel-item::after, .simple-banner .no-gradient.banner-bg::after, .banner-image .no-gradient.banner-image-bg::after, .no-gradient.text-thumbnail::after {
  content: none;
}

.tag-label {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.25;
  color: #FFFFFF;
  background: #140F06;
  border-radius: 3px;
  padding: 1.2rem 2rem;
}
.tag-label.disruption {
  background: #DC2385;
}
@media (max-width: 840px) {
  .tag-label {
    padding: 1rem;
  }
}
@media (max-width: 540px) {
  .tag-label {
    padding: 0.5rem 1rem;
  }
}

.prov-label {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  background: #140F06;
  border-radius: 2px;
  padding: 0.3rem 0.8rem;
  text-transform: uppercase;
  margin-right: 1rem;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  border: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}

body:hover .sr-only a,
body:hover .sr-only input,
body:hover .sr-only button {
  display: none !important;
}

.date-label-text {
  position: relative;
  color: #140F06;
  font-size: 1.8rem;
  font-weight: 700;
  display: inline-block;
  padding-top: 1.8rem;
}
.date-label-text::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: #140F06;
}
.date-label-text + p {
  font-size: 1.6rem;
  margin-top: 0;
}

ul.row {
  display: flex;
  flex-direction: row;
  align-items: center;
}
@media (max-width: 540px) {
  ul.row {
    flex-direction: column;
  }
}

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

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

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

.map-container::before {
  padding-bottom: 78rem;
}
.map-container::after {
  content: none;
}
.map-container .map-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.map-container .map-wrapper .lf-map, .map-container .map-wrapper .timetable-map {
  height: 100%;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 5rem;
}
.pagination li {
  width: 4.4rem;
  height: 4.4rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
.pagination li a {
  position: relative;
  color: #140F06;
  font-weight: bold;
}
.pagination li.active a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.5rem;
  width: 100%;
  height: 2px;
  background: #140F06;
}
.pagination li.disabled {
  opacity: 0.3;
}
.pagination li:first-child, .pagination li:last-child {
  display: none;
}
.pagination li:nth-child(2) a, .pagination li:nth-last-child(2) a {
  font-size: 0;
  width: 0.8rem;
  height: 1.2rem;
}
.pagination li:nth-child(2) a::before, .pagination li:nth-last-child(2) a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik03IDExTDIgNkw3IDEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-size: contain;
  font-size: 0;
}
.pagination li:nth-last-child(2) a::before {
  transform: rotate(180deg);
  transform-origin: center center;
}
.pagination li + li {
  margin-top: 0;
}
.pagination > li::before {
  content: none;
}
@media (max-width: 1200px) {
  .pagination {
    margin-top: 4rem;
  }
}
@media (max-width: 540px) {
  .pagination {
    margin-top: 3rem;
  }
  .pagination > li:first-child {
    margin-right: auto;
  }
  .pagination > li:last-child {
    margin-left: auto;
  }
}

.atlwdg-trigger.atlwdg-RIGHT {
  z-index: 9999999;
}

html {
  scroll-behavior: smooth;
}

a {
  scroll-margin-top: 4em;
}

.header + .content-block-layout,
.header ~ .ticket-finder-block,
.content-block-layout + .content-block-layout:not(.top-margin-0),
.content-block-layout:not(.tf-block):not(.tfs-block):not(.bg-dark-blue):not(.main-side):not(.bg-lightgrey-60):not(.bg-lighter-black-5) + .footer,
.timetable-block ~ .footer,
.simple-banner + .content-block-layout:not(.top-margin-0),
.content-banner + .content-block-layout:not(.top-margin-0),
.banner-image + .content-block-layout:not(.top-margin-0),
.content-block-layout > *.large-wrap > * + *:not(.top-margin-0) {
  margin-top: 5rem;
}
@media (max-width: 1200px) {
  .header + .content-block-layout,
.header ~ .ticket-finder-block,
.content-block-layout + .content-block-layout:not(.top-margin-0),
.content-block-layout:not(.tf-block):not(.tfs-block):not(.bg-dark-blue):not(.main-side):not(.bg-lightgrey-60):not(.bg-lighter-black-5) + .footer,
.timetable-block ~ .footer,
.simple-banner + .content-block-layout:not(.top-margin-0),
.content-banner + .content-block-layout:not(.top-margin-0),
.banner-image + .content-block-layout:not(.top-margin-0),
.content-block-layout > *.large-wrap > * + *:not(.top-margin-0) {
    margin-top: 4rem;
  }
}
@media (max-width: 540px) {
  .header + .content-block-layout,
.header ~ .ticket-finder-block,
.content-block-layout + .content-block-layout:not(.top-margin-0),
.content-block-layout:not(.tf-block):not(.tfs-block):not(.bg-dark-blue):not(.main-side):not(.bg-lightgrey-60):not(.bg-lighter-black-5) + .footer,
.timetable-block ~ .footer,
.simple-banner + .content-block-layout:not(.top-margin-0),
.content-banner + .content-block-layout:not(.top-margin-0),
.banner-image + .content-block-layout:not(.top-margin-0),
.content-block-layout > *.large-wrap > * + *:not(.top-margin-0) {
    margin-top: 3rem;
  }
}

.header + .content-block-layout.top-margin-0 {
  margin-top: 0;
}

@media (max-width: 1024px) {
  .header + .content-block-layout {
    margin-top: 10rem;
  }
}
@media (max-width: 540px) {
  .header + .content-block-layout {
    margin-top: 9rem;
  }
}

@media (max-width: 840px) {
  .header + .content-block-layout.tfs-block {
    margin-top: 6rem;
  }
}

.large-wrap {
  max-width: 132rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1320px) {
  .large-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .content-block-layout .large-wrap .content-block-layout .large-wrap, .content-block-layout .middle-wrap .content-block-layout .large-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

.middle-wrap {
  max-width: 120rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1200px) {
  .middle-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .content-block-layout .large-wrap .content-block-layout .middle-wrap, .content-block-layout .middle-wrap .content-block-layout .middle-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

.small-wrap {
  max-width: 80rem;
  width: 100%;
  margin-left: 0;
  margin-right: auto;
}

.smaller-wrap {
  max-width: 72rem;
  width: 100%;
  margin-left: 0;
  margin-right: auto;
}

.main-side .main-content {
  flex-basis: 68.75%;
  padding-bottom: 5rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .main-side .main-content {
    max-width: 68.75%;
  }
}
.main-side .main-content .smaller-wrap > *:last-child {
  margin-bottom: 0;
}
.main-side .side-content {
  position: relative;
  flex-basis: 31.25%;
  padding-left: 6rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .main-side .side-content {
    max-width: 31.25%;
  }
}
.main-side .side-content::before {
  content: "";
  position: absolute;
  top: -5rem;
  left: 0;
  width: calc(100% + (100vw - 120rem) * 0.5);
  height: calc(100% + 5rem);
  background: rgba(227, 230, 233, 0.5);
  z-index: -1;
}
@media (max-width: 1320px) {
  .main-side {
    padding-left: 0;
    padding-right: 0;
  }
  .main-side .main-content .smaller-wrap {
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
  }
}
@media (max-width: 1200px) {
  .main-side .main-content {
    padding-bottom: 4rem;
  }
  .main-side .main-content .smaller-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .main-side .main-content .smaller-wrap .middle-wrap, .main-side .main-content .smaller-wrap .large-wrap {
    padding-left: 0;
    padding-right: 0;
  }
  .main-side .side-content {
    padding-left: 4rem;
    padding-right: 1rem;
  }
  .main-side .side-content:before {
    top: -4rem;
    width: 100%;
  }
}
@media (max-width: 840px) {
  .main-side .main-content {
    padding-bottom: 0;
  }
  .main-side .main-content, .main-side .side-content {
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .main-side .main-content, .main-side .side-content {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .main-side .side-content {
    padding: 4rem 3rem;
  }
  .main-side .side-content:before {
    content: none;
  }
}
@media (max-width: 540px) {
  .main-side .side-content {
    padding: 3rem;
  }
}

.bg-lighter-black-5, .bg-lightgrey-60 {
  padding: 5rem 0;
}
@media (max-width: 1200px) {
  .bg-lighter-black-5, .bg-lightgrey-60 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .bg-lighter-black-5 .two-cols, .bg-lightgrey-60 .two-cols {
    margin-top: -4rem;
  }
}
@media (max-width: 540px) {
  .bg-lighter-black-5, .bg-lightgrey-60 {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .bg-lighter-black-5 .two-cols, .bg-lightgrey-60 .two-cols {
    margin-top: -3rem;
  }
}

.bg-lighter-black-5 + .bg-lighter-black-5,
.bg-lightgrey-60 + .bg-lightgrey-60,
.bg-dark-blue + .bg-dark-blue {
  padding-top: 0;
}

.middle-wrap .small-wrap.bg-lighter-black-5, .middle-wrap .small-wrap.bg-lightgrey-60, .middle-wrap .small-wrap.bg-dark-blue {
  position: relative;
  padding: 5rem 0;
}
.middle-wrap .small-wrap.bg-lighter-black-5::before, .middle-wrap .small-wrap.bg-lightgrey-60::before, .middle-wrap .small-wrap.bg-dark-blue::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc((100vw - 120rem) * -0.5);
  width: calc((100vw - 120rem) * 0.5);
  height: 100%;
  background: inherit;
  z-index: -1;
}
@media (max-width: 1200px) {
  .middle-wrap .small-wrap.bg-lighter-black-5, .middle-wrap .small-wrap.bg-lightgrey-60, .middle-wrap .small-wrap.bg-dark-blue {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .middle-wrap .small-wrap.bg-lighter-black-5::before, .middle-wrap .small-wrap.bg-lightgrey-60::before, .middle-wrap .small-wrap.bg-dark-blue::before {
    left: -3rem;
    width: 3rem;
  }
}
@media (max-width: 840px) {
  .middle-wrap .small-wrap.bg-lighter-black-5::after, .middle-wrap .small-wrap.bg-lightgrey-60::after, .middle-wrap .small-wrap.bg-dark-blue::after {
    content: "";
    position: absolute;
    top: 0;
    right: -3rem;
    width: 3rem;
    height: 100%;
    background: inherit;
    z-index: -1;
  }
}
@media (max-width: 540px) {
  .middle-wrap .small-wrap.bg-lighter-black-5, .middle-wrap .small-wrap.bg-lightgrey-60, .middle-wrap .small-wrap.bg-dark-blue {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.middle-wrap.top-dividedline {
  position: relative;
  padding-top: 5rem;
  border-top: 1px solid #D4D7D9;
}
@media (max-width: 840px) {
  .middle-wrap.top-dividedline {
    padding-top: 0;
    border-top: 0;
  }
}

.content-block-layout.border-top-bottom > .middle-wrap {
  position: relative;
  margin-top: 5rem;
  padding-top: 5rem;
}
.content-block-layout.border-top-bottom > .middle-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #140F06;
}
.content-block-layout.border-top-bottom > .middle-wrap:first-child {
  margin-top: 0;
}
@media (max-width: 1200px) {
  .content-block-layout.border-top-bottom > .middle-wrap {
    margin-top: 4rem;
    padding-top: 4rem;
  }
  .content-block-layout.border-top-bottom > .middle-wrap::before {
    left: 3rem;
    right: 3rem;
    width: calc(100% - 6rem);
  }
}
@media (max-width: 840px) {
  .content-block-layout.border-top-bottom > .middle-wrap .two-cols {
    margin-top: -2rem;
  }
}
@media (max-width: 540px) {
  .content-block-layout.border-top-bottom > .middle-wrap {
    margin-top: 3rem;
    padding-top: 3rem;
  }
}

.one-cols > * {
  flex-basis: 100%;
  padding-left: 2rem;
  padding-right: 2rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .one-cols > * {
    max-width: 100%;
  }
}

.two-cols > * {
  flex-basis: 50%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols > * {
    max-width: 50%;
  }
}
.two-cols.col-60-40 > *:first-child {
  flex-basis: 60%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-60-40 > *:first-child {
    max-width: 60%;
  }
}
.two-cols.col-60-40 > *:last-child {
  flex-basis: 40%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-60-40 > *:last-child {
    max-width: 40%;
  }
}
.two-cols.col-40-60 > *:first-child {
  flex-basis: 40%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-40-60 > *:first-child {
    max-width: 40%;
  }
}
.two-cols.col-40-60 > *:last-child {
  flex-basis: 60%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-40-60 > *:last-child {
    max-width: 60%;
  }
}
.two-cols.col-70-30 > *:first-child {
  flex-basis: 70%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-70-30 > *:first-child {
    max-width: 70%;
  }
}
.two-cols.col-70-30 > *:last-child {
  flex-basis: 30%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-70-30 > *:last-child {
    max-width: 30%;
  }
}
.two-cols.col-30-70 > *:first-child {
  flex-basis: 30%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-30-70 > *:first-child {
    max-width: 30%;
  }
}
.two-cols.col-30-70 > *:last-child {
  flex-basis: 70%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .two-cols.col-30-70 > *:last-child {
    max-width: 70%;
  }
}

.three-cols > * {
  flex-basis: 33.33%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .three-cols > * {
    max-width: 33.33%;
  }
}
.three-cols > * > a:only-child {
  display: block;
}

.four-cols > * {
  flex-basis: 25%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .four-cols > * {
    max-width: 25%;
  }
}

.five-cols > * {
  flex-basis: 20%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .five-cols > * {
    max-width: 20%;
  }
}

.main-side .main-col, .side-main .main-col {
  flex-basis: 65%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .main-side .main-col, .side-main .main-col {
    max-width: 65%;
  }
}
.main-side .side-col, .side-main .side-col {
  flex-basis: 35%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .main-side .side-col, .side-main .side-col {
    max-width: 35%;
  }
}

.one-cols, .two-cols, .three-cols, .four-cols, .five-cols:not(.transfer-modes) {
  margin: -3rem;
}
.one-cols > *, .two-cols > *, .three-cols > *, .four-cols > *, .five-cols:not(.transfer-modes) > * {
  padding: 3rem;
}
.one-cols.small-gap, .two-cols.small-gap, .three-cols.small-gap, .four-cols.small-gap, .five-cols:not(.transfer-modes).small-gap {
  margin: -1.5rem;
  padding: 0;
}
.one-cols.small-gap > *, .two-cols.small-gap > *, .three-cols.small-gap > *, .four-cols.small-gap > *, .five-cols:not(.transfer-modes).small-gap > * {
  padding: 1.5rem;
}
@media (max-width: 1200px) {
  .one-cols, .two-cols, .three-cols, .four-cols, .five-cols:not(.transfer-modes) {
    margin: -2rem;
  }
  .one-cols > *, .two-cols > *, .three-cols > *, .four-cols > *, .five-cols:not(.transfer-modes) > * {
    padding: 2rem;
  }
}
@media (max-width: 840px) {
  .one-cols, .two-cols, .three-cols, .four-cols, .five-cols:not(.transfer-modes) {
    margin: -1rem;
  }
  .one-cols > *, .two-cols > *, .three-cols > *, .four-cols > *, .five-cols:not(.transfer-modes) > * {
    padding: 1rem;
  }
}
@media (max-width: 540px) {
  .one-cols.small-gap, .two-cols.small-gap, .three-cols.small-gap, .four-cols.small-gap, .five-cols:not(.transfer-modes).small-gap {
    margin: -1rem;
  }
  .one-cols.small-gap > *, .two-cols.small-gap > *, .three-cols.small-gap > *, .four-cols.small-gap > *, .five-cols:not(.transfer-modes).small-gap > * {
    padding: 1rem;
  }
}

@media (max-width: 540px) {
  .one-cols > *, .two-cols > * {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 840px) {
  .two-cols {
    margin: 0;
    flex-wrap: wrap;
  }
  .two-cols > * {
    padding: 2rem 0 0;
    flex-basis: 100% !important;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .two-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .two-cols > * > iframe, .two-cols > * *:not(.centre) .image-wrap img {
    width: 100%;
  }
}
@media (max-width: 840px) {
  .two-cols > *:first-child > iframe, .two-cols > *:first-child .image-wrap, .two-cols > *:first-child .video-clip, .two-cols > *:first-child .map-container {
    margin-top: -2rem;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .two-cols.col-60-40 > *:first-child, .two-cols.col-60-40 > *:last-child, .two-cols.col-40-60 > *:first-child, .two-cols.col-40-60 > *:last-child, .two-cols.col-70-30 > *:first-child, .two-cols.col-70-30 > *:last-child, .two-cols.col-30-70 > *:first-child, .two-cols.col-30-70 > *:last-child {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .two-cols.mobile-flip {
    flex-direction: row-reverse;
  }
  .two-cols.mobile-flip > *:first-child {
    order: 1;
  }
  .two-cols.mobile-flip > *:last-child {
    order: 0;
  }
  .two-cols.mobile-flip:last-child > iframe {
    width: calc(100% + 6rem);
  }
  .two-cols.mobile-flip:last-child > iframe, .two-cols.mobile-flip:last-child .image-wrap, .two-cols.mobile-flip:last-child .video-clip, .two-cols.mobile-flip:last-child .map-container {
    margin-top: -2rem;
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .two-cols.mobile-flip:last-child > iframe.padding, .two-cols.mobile-flip:last-child .image-wrap.padding, .two-cols.mobile-flip:last-child .video-clip.padding, .two-cols.mobile-flip:last-child .map-container.padding {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 840px) {
  .three-cols {
    flex-wrap: wrap;
  }
  .three-cols > * {
    flex-basis: 50%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .three-cols > * {
    max-width: 50%;
  }
}
@media (max-width: 540px) {
  .three-cols {
    margin: -1rem 0;
  }
  .three-cols > * {
    padding: 1rem 0;
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .three-cols > * {
    max-width: 100%;
  }
}

@media (max-width: 840px) {
  .four-cols {
    flex-wrap: wrap;
  }
  .four-cols > * {
    flex-basis: 50%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .four-cols > * {
    max-width: 50%;
  }
}

@media (max-width: 840px) {
  .five-cols > * {
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .five-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .five-cols:not(.transfer-modes) > * {
    flex-basis: 33%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .five-cols:not(.transfer-modes) > * {
    max-width: 33%;
  }
}
@media (max-width: 540px) {
  .five-cols:not(.transfer-modes) > * {
    flex-basis: 50%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .five-cols:not(.transfer-modes) > * {
    max-width: 50%;
  }
}

/*! Flickity v2.1.2
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: none;
  border: none;
  color: #FFFFFF;
}
.flickity-button:hover {
  background: none;
  cursor: pointer;
}
.flickity-button:active {
  opacity: 0.6;
}
.flickity-button:disabled {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 4.8rem;
  height: 4.8rem;
  z-index: 10;
  transform: translateY(-50%);
  border-radius: 0;
  padding: 0;
}
.flickity-prev-next-button::after {
  content: "";
  background-image: url("data:image/svg+xml;base64,IDxzdmcgd2lkdGg9IjE5IiBoZWlnaHQ9IjMyIiB2aWV3Qm94PSIwIDAgMTkgMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICAgICAgPHBhdGggZD0iTTE3IDMwTDMgMTZMMTcgMiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSI0Ii8+CiAgICAgICAgPC9zdmc+");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 1.9rem;
  height: 3.2rem;
  display: inline-block;
  z-index: 2;
  position: absolute;
  top: 50%;
  transform-origin: top center;
}
.flickity-prev-next-button .flickity-button-icon {
  display: none;
}

.flickity-prev-next-button.previous {
  left: 0;
}
.flickity-prev-next-button.previous::after {
  transform: rotate(0deg) translateY(-50%);
  left: 0;
}

.flickity-prev-next-button.next {
  right: 0;
}
.flickity-prev-next-button.next::after {
  transform: rotate(180deg) translateY(-50%);
  right: 0;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 0;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 0;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 0%;
  top: 0%;
  width: 100%;
  height: 100%;
}

.carousel.fadeSides.flickity-enabled {
  margin: 0 6rem;
}
.carousel.fadeSides.flickity-enabled .flickity-viewport {
  overflow: visible;
  z-index: 5;
}
.carousel.fadeSides.flickity-enabled:before {
  content: "";
  display: block;
  height: calc(100% + 6rem);
  width: 50vw;
  position: absolute;
  right: 100%;
  top: -0.5rem;
  z-index: 6;
  background-image: linear-gradient(-90deg, rgba(247, 244, 243, 0), rgb(247, 244, 243) 4rem);
}
.carousel.fadeSides.flickity-enabled:after {
  content: "";
  display: block;
  height: calc(100% + 6rem);
  width: 50vw;
  position: absolute;
  left: 100%;
  top: -0.5rem;
  z-index: 6;
  background-image: linear-gradient(90deg, rgba(247, 244, 243, 0), rgb(247, 244, 243) 4rem);
}
@media (max-width: 1024px) {
  .carousel.fadeSides.flickity-enabled {
    margin: 0;
  }
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: 5rem;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0 0.8rem 0 0;
  background: transparent;
  border-radius: 50%;
  border: 0.2rem solid #FFFFFF;
  cursor: pointer;
}
@media (max-width: 540px) {
  .flickity-page-dots .dot {
    width: 1rem;
    height: 1rem;
    border-width: 0.1rem;
    margin-right: 0.4rem;
  }
}

.flickity-page-dots .dot.is-selected {
  background: #FFFFFF;
}

/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-container.leaflet-touch-zoom {
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
  will-change: opacity;
}

.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  transform-origin: 0 0;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -webkit-grab;
  cursor: grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive {
  pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline: 0;
}

.leaflet-container a {
  color: #0078A8;
}

.leaflet-container a.leaflet-active {
  outline: 2px solid orange;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a,
.leaflet-bar a:hover {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

.leaflet-control-layers-toggle {
  background-image: url(/images/layers.png);
  width: 36px;
  height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(/images/layers-2x.png);
  background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
  background-image: url(/images/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover {
  text-decoration: underline;
}

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
  font-size: 11px;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  margin: 13px 19px;
  line-height: 1.4;
}

.leaflet-popup-content p {
  margin: 18px 0;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 0 0;
  border: none;
  text-align: center;
  width: 18px;
  height: 14px;
  font: 16px/14px Tahoma, Verdana, sans-serif;
  color: #c3c3c3;
  text-decoration: none;
  font-weight: bold;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover {
  color: #999;
}

.leaflet-popup-scrolled {
  overflow: auto;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-popup-tip-container {
  margin-top: -1px;
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-clickable {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

.leaflet-control-attribution a:first-of-type, .leaflet-control-attribution span {
  display: none !important;
}

@-webkit-keyframes leaflet-gestures-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes leaflet-gestures-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.leaflet-container:after {
  -webkit-animation: leaflet-gestures-fadein 0.8s backwards;
  animation: leaflet-gestures-fadein 0.8s backwards;
  color: #fff;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 22px;
  justify-content: center;
  display: flex;
  align-items: center;
  padding: 15px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 461;
  pointer-events: none;
}

.leaflet-gesture-handling-touch-warning:after,
.leaflet-gesture-handling-scroll-warning:after {
  -webkit-animation: leaflet-gestures-fadein 0.8s forwards;
  animation: leaflet-gestures-fadein 0.8s forwards;
}

.leaflet-gesture-handling-touch-warning:after {
  content: attr(data-gesture-handling-touch-content);
}

.leaflet-gesture-handling-scroll-warning:after {
  content: attr(data-gesture-handling-scroll-content);
}

/*
 * The MIT License
 * Copyright (c) 2012 Matias Meno <m@tias.me>
 */
@-webkit-keyframes passing-through {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  30%, 70% {
    opacity: 1;
    transform: translateY(0px);
  }
  100% {
    opacity: 0;
    transform: translateY(-40px);
  }
}
@keyframes passing-through {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  30%, 70% {
    opacity: 1;
    transform: translateY(0px);
  }
  100% {
    opacity: 0;
    transform: translateY(-40px);
  }
}
@-webkit-keyframes slide-in {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  30% {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes slide-in {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  30% {
    opacity: 1;
    transform: translateY(0px);
  }
}
@-webkit-keyframes pulse {
  0% {
    transform: scale(1);
  }
  10% {
    transform: scale(1.1);
  }
  20% {
    transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  10% {
    transform: scale(1.1);
  }
  20% {
    transform: scale(1);
  }
}
.dropzone, .dropzone * {
  box-sizing: border-box;
}

.dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 250px;
  border: 2px dotted #939BA1;
  background: rgba(20, 15, 6, 0.02);
  padding: 60px;
}
.dropzone.dz-clickable {
  cursor: pointer;
}
.dropzone.dz-clickable * {
  cursor: default;
}
.dropzone.dz-clickable .dz-message, .dropzone.dz-clickable .dz-message * {
  cursor: pointer;
}
.dropzone.dz-started .dz-message {
  order: 1;
  margin-top: 2rem;
  padding-top: 3rem;
  border-top: 3px solid #D4D7D9;
}
.dropzone.dz-drag-hover {
  border-style: solid;
}
.dropzone.dz-drag-hover .dz-message {
  opacity: 0.5;
}
.dropzone .dz-message {
  max-width: 81rem;
  width: 100%;
  text-align: center;
}
.dropzone .dz-message .dz-button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}
.dropzone .dz-message h3, .dropzone .dz-message .button, .dropzone .dz-message .icon-button {
  margin-bottom: 1rem;
}
.dropzone .dz-message .button, .dropzone .dz-message .icon-button {
  padding-left: 3rem;
  padding-right: 3rem;
}
.dropzone .dz-message .medium-weight {
  line-height: 1.3;
  color: #939BA1;
}
.dropzone .dz-preview {
  position: relative;
  max-width: 81rem;
  min-height: 30px;
  width: 100%;
}
.dropzone .dz-preview .flex {
  display: flex;
  align-items: center;
  flex-direction: row;
}
.dropzone .dz-preview:hover {
  z-index: 1000;
}
.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone .dz-preview.dz-file-preview .dz-image {
  border-radius: 10px;
  background: #D4D7D9;
}
.dropzone .dz-preview.dz-file-preview .dz-details {
  opacity: 1;
}
.dropzone .dz-preview.dz-image-preview .dz-image {
  border-radius: 10px;
  background: #D4D7D9;
}
.dropzone .dz-preview.dz-image-preview .dz-details {
  opacity: 1;
}
.dropzone .dz-preview .dz-remove {
  font-size: 14px;
  text-align: center;
  display: block;
  cursor: pointer;
  border: none;
}
.dropzone .dz-preview .dz-remove:hover {
  text-decoration: underline;
}
.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}
.dropzone .dz-preview .dz-details {
  display: flex;
  align-items: center;
  flex-direction: row;
  flex-grow: 1;
  padding-right: 1rem;
  opacity: 0.3;
}
.dropzone .dz-preview .dz-details .dz-image {
  margin-right: 1rem;
}
.dropzone .dz-preview .dz-details .dz-filename p {
  color: #000000;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.dropzone .dz-preview .dz-image {
  position: relative;
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
  z-index: 10;
}
.dropzone .dz-preview .dz-image img {
  display: block;
}
.dropzone .dz-preview.dz-success .dz-details, .dropzone .dz-preview.dz-error .dz-details {
  opacity: 1;
}
.dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark {
  pointer-events: none;
  opacity: 0;
  z-index: 500;
  flex-basis: 100%;
  margin-top: 0.5rem;
}
.dropzone .dz-preview .dz-error-mark .error-text {
  color: #C00;
}
.dropzone .dz-preview.dz-processing .dz-progress {
  opacity: 1;
  transition: all 0.2s linear;
}
.dropzone .dz-preview.dz-complete .dz-progress {
  opacity: 0;
  transition: opacity 0.6s ease-in;
}
.dropzone .dz-preview:not(.dz-processing) .dz-progress {
  -webkit-animation: pulse 6s ease infinite;
  animation: pulse 6s ease infinite;
}
.dropzone .dz-preview .dz-progress {
  position: relative;
  pointer-events: none;
  width: 260px;
  height: 10px;
  margin-right: 1rem;
  -webkit-transform: scale(1);
  background: #E3E6E9;
  border-radius: 10px;
  opacity: 1;
  overflow: hidden;
  z-index: 1000;
}
.dropzone .dz-preview .dz-progress .dz-upload {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  background: #358938;
  transition: width 500ms ease-in-out;
}
.dropzone .dz-preview.dz-error .dz-error-message {
  display: block;
  opacity: 1;
}
.dropzone .dz-preview .dz-error-message {
  pointer-events: none;
  opacity: 0;
  z-index: 500;
  flex-basis: 100%;
  margin-top: 0.5rem;
  transition: opacity 0.3s ease-in;
}
.dropzone .dz-preview .dz-error-message .error-text {
  font-size: 1.4rem;
  color: #C00;
}
.dropzone .dz-preview + .dz-preview {
  margin-top: 1rem;
}
@media (max-width: 840px) {
  .dropzone .dz-preview > .flex {
    flex-wrap: wrap;
  }
  .dropzone .dz-preview .dz-details {
    max-width: calc(100% - 50px);
    overflow: hidden;
  }
  .dropzone .dz-preview .dz-progress {
    flex-basis: 100%;
    margin-top: 1rem;
    margin-right: 0;
    order: 1;
  }
  .dropzone .dz-preview.dz-complete .dz-error-message {
    margin-top: -1rem;
  }
}
@media (max-width: 540px) {
  .dropzone {
    padding: 40px 30px;
    min-height: 170px;
  }
  .dropzone .dz-message h3 {
    display: none;
  }
}

.button, .icon-button, button, input[type=submit] {
  display: inline-block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  text-decoration: none;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  line-height: 1.25;
  font-size: 1.6rem;
  font-weight: 700;
  transition: all 0.2s linear;
  border-radius: 3px;
  text-align: center;
  cursor: pointer;
}
.button > span, .icon-button > span, button > span, input[type=submit] > span {
  display: block;
  z-index: 10;
  position: relative;
}
.button.small, .small.icon-button, button.small, input[type=submit].small {
  padding: 0.7rem 1.5rem;
}
.button.middle, .middle.icon-button, button.middle, input[type=submit].middle {
  padding: 1.2rem 1.5rem;
}
.button.large, .large.icon-button, button.large, input[type=submit].large {
  padding: 1.5rem 4rem;
}
.button.xlarge, .xlarge.icon-button, button.xlarge, input[type=submit].xlarge {
  padding: 2rem 4.87rem;
}
.button.no-round, .no-round.icon-button, button.no-round, input[type=submit].no-round {
  border-radius: 0;
}
.button.cta.bg-yellow, .cta.bg-yellow.icon-button, button.cta.bg-yellow, input[type=submit].cta.bg-yellow {
  max-width: 32rem;
  width: 100%;
}

.link-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  text-decoration: none;
  cursor: pointer;
  font-size: 0;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  border: none;
  position: relative;
  width: 5rem;
  height: 5rem;
}
.link-button::after {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMWw1IDUtNSA1IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.8rem 1.2rem;
  width: 0.8rem;
  height: 1.2rem;
}
@media (max-width: 1200px) {
  .link-button {
    width: 4rem;
    height: 4rem;
  }
}
@media (max-width: 540px) {
  .link-button {
    width: 5rem;
    height: 5rem;
  }
}

.search-button {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  text-decoration: none;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  line-height: 1.3;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  border-radius: 0px 4px 0px 0px;
  background: #395180;
  color: #FFFFFF;
  margin: 0;
  padding: 2rem 3rem;
}
.search-button > svg {
  margin: 0 3rem;
  flex-shrink: 0;
}

.icon-button {
  display: inline-flex;
  align-items: center;
  flex-direction: row;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: -0.02em;
}
.icon-button span {
  margin-left: 1rem;
}
.icon-button.cta.bg-yellow {
  max-width: none;
  width: auto;
}

.outline-button {
  color: #140F06;
  font-weight: 700;
  border: 2px solid #140F06;
}
.outline-button.disruption {
  border-color: #DC2385;
}
.outline-button.changes {
  border-color: #993189;
}

.transfer-modes li {
  padding: 0;
}
.transfer-modes li a.button, .transfer-modes li a.icon-button {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  z-index: 1;
  padding: 2.4rem 0;
}
.transfer-modes li a.button .icon, .transfer-modes li a.icon-button .icon {
  flex-grow: 1;
  margin-bottom: 0.6rem;
}
.transfer-modes li a.button span, .transfer-modes li a.icon-button span {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.transfer-modes li a.button:hover, .transfer-modes li a.icon-button:hover {
  opacity: 1;
}
.transfer-modes li::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  border-radius: 0;
  margin-top: 100%;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.1);
  transition: height, margin 0.2s linear;
  z-index: 0;
}
.transfer-modes li:hover {
  cursor: pointer;
}
.transfer-modes li:hover::before {
  margin-top: 0;
  height: 100%;
}
.transfer-modes li + li {
  margin-top: 0;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}
@media (max-width: 840px) {
  .transfer-modes {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .transfer-modes li a.button, .transfer-modes li a.icon-button {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 1.5rem 3rem;
  }
  .transfer-modes li a.button .icon, .transfer-modes li a.icon-button .icon {
    width: 2rem;
    flex-grow: 0;
    margin-right: 1.2rem;
    margin-bottom: 0;
  }
  .transfer-modes li + li {
    margin-top: 0;
    border-top: 1px solid #FFFFFF;
    border-left: 0;
  }
}
@media (max-width: 540px) {
  .transfer-modes li a.button span, .transfer-modes li a.icon-button span {
    font-size: 1.6rem;
  }
}

.date-icon-container {
  position: relative;
}
.date-icon-container .date-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  background: #FFFFFF;
  border-radius: 2px;
  position: relative;
  z-index: 1;
}
.date-icon-container .date-icon .day-text {
  font-size: 1.8rem;
  letter-spacing: -0.02em;
  font-weight: 700;
  line-height: 1;
  color: #140F06;
}
.date-icon-container .date-icon .month-text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #140F06;
  margin-top: 0.25rem;
}
.date-icon-container::before {
  content: "";
  position: absolute;
  top: 4px;
  left: -4px;
  width: 100%;
  height: 100%;
  border: 1px solid #FFEE00;
  border-radius: 2px;
  z-index: 0;
}

.exclamation-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwIDE4YzQuNDE4MyAwIDgtMy41ODE3IDgtOCAwLTQuNDE4MjgtMy41ODE3LTgtOC04LTQuNDE4MjggMC04IDMuNTgxNzItOCA4IDAgNC40MTgzIDMuNTgxNzIgOCA4IDh6bTAgMmM1LjUyMjggMCAxMC00LjQ3NzIgMTAtMTAgMC01LjUyMjg1LTQuNDc3Mi0xMC0xMC0xMEM0LjQ3NzE1IDAgMCA0LjQ3NzE1IDAgMTBjMCA1LjUyMjggNC40NzcxNSAxMCAxMCAxMHoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMTAuOTA5MSA0Ljg0MzAydjQuMDA0YzAgLjQyNDY2LS4wMjMzLjg0NDY2LS4wNyAxLjI1OTk4LS4wNDIuNDE1NC0uMTAyNy44NDctLjE4MiAxLjI5NUg5LjM1NTEyYy0uMDc5MzQtLjQ0OC0uMTQyMzQtLjg3OTYtLjE4OS0xLjI5NS0uMDQyLS40MTUzMi0uMDYzLS44MzUzMi0uMDYzLTEuMjU5OTh2LTQuMDA0aDEuODA1OTh6TTguODQ0MTIgMTMuOTg1YzAtLjE1NC4wMjgtLjI5ODYuMDg0LS40MzQuMDYwNjYtLjE0LjE0MjMzLS4yNTkuMjQ1LS4zNTcuMTAyNjYtLjEwMjYuMjIxNjYtLjE4Mi4zNTctLjIzOC4xNC0uMDYwNi4yOTE2Ni0uMDkxLjQ1NS0uMDkxLjE1ODY4IDAgLjMwNTY4LjAzMDQuNDQwOTguMDkxLjE0LjA1Ni4yNjEzLjEzNTQuMzY0LjIzOC4xMDI3LjA5OC4xODQzLjIxNy4yNDUuMzU3LjA2MDcuMTM1NC4wOTEuMjguMDkxLjQzNCAwIC4xNTg3LS4wMzAzLjMwNTctLjA5MS40NDEtLjA2MDcuMTM1NC0uMTQyMy4yNTQ0LS4yNDUuMzU3LS4xMDI3LjA5OC0uMjI0LjE3NS0uMzY0LjIzMS0uMTM1My4wNTYtLjI4MjMuMDg0LS40NDA5OC4wODQtLjE2MzM0IDAtLjMxNS0uMDI4LS40NTUtLjA4NC0uMTM1MzQtLjA1Ni0uMjU0MzQtLjEzMy0uMzU3LS4yMzEtLjEwMjY3LS4xMDI2LS4xODQzNC0uMjIxNi0uMjQ1LS4zNTctLjA1Ni0uMTM1My0uMDg0LS4yODIzLS4wODQtLjQ0MXoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem 2rem;
  font-size: 0;
}

.icon {
  display: inline-block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.exclamation-icon-red {
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwIDE4YTggOCAwIDEwMC0xNiA4IDggMCAwMDAgMTZ6bTAgMmM1LjUyMyAwIDEwLTQuNDc3IDEwLTEwUzE1LjUyMyAwIDEwIDAgMCA0LjQ3NyAwIDEwczQuNDc3IDEwIDEwIDEweiIgZmlsbD0iI0QzMjUzMyIvPjxwYXRoIGQ9Ik0xMC45MDkgNC44NDN2NC4wMDRjMCAuNDI0LS4wMjQuODQ0LS4wNyAxLjI2YTE3LjYgMTcuNiAwIDAxLS4xODIgMS4yOTVIOS4zNTVjLS4wOC0uNDQ4LS4xNDMtLjg4LS4xOS0xLjI5NWExMi41MTcgMTIuNTE3IDAgMDEtLjA2Mi0xLjI2VjQuODQzaDEuODA2em0tMi4wNjUgOS4xNDJhMS4wOCAxLjA4IDAgMDEuMzI5LS43OTFjLjEwMi0uMTAzLjIyMS0uMTgyLjM1Ny0uMjM4LjE0LS4wNi4yOTEtLjA5MS40NTUtLjA5MS4xNTggMCAuMzA1LjAzLjQ0LjA5LjE0LjA1Ny4yNjIuMTM2LjM2NS4yMzkuMTAyLjA5OC4xODQuMjE3LjI0NS4zNTcuMDYuMTM1LjA5LjI4LjA5LjQzNCAwIC4xNTgtLjAzLjMwNS0uMDkuNDQtLjA2LjEzNi0uMTQzLjI1NS0uMjQ1LjM1OGExLjEyNyAxLjEyNyAwIDAxLS4zNjQuMjMgMS4xNDMgMS4xNDMgMCAwMS0uNDQxLjA4NSAxLjE0NyAxLjE0NyAwIDAxLS44MTItLjMxNSAxLjE4NyAxLjE4NyAwIDAxLS4yNDUtLjM1NyAxLjE0MyAxLjE0MyAwIDAxLS4wODQtLjQ0MXoiIGZpbGw9IiNEMzI1MzMiLz48L3N2Zz4=");
}

.bus-icon-white {
  display: inline-block;
  width: 2.7rem;
  height: 2.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyNyAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjQuOTE5NCA2Ljg0NjU3Yy0uMjM0Mi0yLjIzNTA4LS42MDczLTMuOTc1MzItMS4xOTc1LTQuNjU5MzQtMi40MzM0LTIuODEyNDg4LTE5LjQ3OTM1LTMuMDE4MzEtMjEuNDE0NzMgMC0uNDczNDMuNzM5NDgtLjgwNTQ2IDIuNDczNTYtMS4wMjgyOCA0LjY2MzA0Qy41NTk5MDcgNi45MzI4NCAwIDcuNTIzODEgMCA4LjI0NzI3djIuNzM3OTNjMCAuNjA4OC4zOTUxNTUgMS4xMjIxLjk0Njg1NiAxLjMyMjRDLjgxNjE5IDE2LjYyLjkyMjIzOCAyMS4xMTkxIDEuMTE3OTIgMjMuMzU2N2MwIDEuNzI3MyAxLjE4ODYyIDEuNDQwNyAxLjE4ODYyIDEuNDQwN2gxLjExNDEzdjEuODY0OGMwIC43Mzk0Ljc4MDg1IDEuMzM3OCAxLjc0Mjg1IDEuMzM3OC45NjMyNyAwIDEuNzQ0MTEtLjU5ODQgMS43NDQxMS0xLjMzNzh2LTEuODY0OEgxOS44Njk1djEuODY0OGMwIC43Mzk0Ljc4MDIgMS4zMzc4IDEuNzQzNCAxLjMzNzguOTYyIDAgMS43NDI5LS41OTg0IDEuNzQyOS0xLjMzNzh2LTEuODY0OGguMzY2MXMxLjM5ODguMTg3NCAxLjQ4ODUtLjYyNjFjMC0yLjIzMTMuMTQzOS03LjE3NjYuMDI1Mi0xMS44NDQ2LjU4NjQtLjE3OTMgMS4wMTQ0LS43MDY4IDEuMDE0NC0xLjM0MTVWOC4yNDcyN2MuMDAwNi0uNzQwNzItLjU4NjQtMS4zNDE1NC0xLjMzMDYtMS40MDA3ek02LjQ3MDE4IDIuNTg4NEgxOS41NTg5djEuOTMzMTJINi40NzAxOFYyLjU4ODR6bS4xODY4NSAyMC4wMDcyYy0xLjAyNzY2IDAtMS44NjAyNi0uODEzNC0xLjg2MDI2LTEuODE2NiAwLTEuMDAyNi44MzI2LTEuODE1NCAxLjg2MDI2LTEuODE1NCAxLjAyNzY1IDAgMS44NjA4OC44MTI4IDEuODYwODggMS44MTU0IDAgMS4wMDMyLS44MzI2IDEuODE2Ni0xLjg2MDg4IDEuODE2NnptMTIuODMxNzcgMGMtMS4wMjcgMC0xLjg2MTUtLjgxMzQtMS44NjE1LTEuODE2NiAwLTEuMDAyNi44MzM5LTEuODE1NCAxLjg2MTUtMS44MTU0IDEuMDI3NyAwIDEuODYwMy44MTI4IDEuODYwMyAxLjgxNTQuMDAwNiAxLjAwMzItLjgzMjYgMS44MTY2LTEuODYwMyAxLjgxNjZ6bTIuMzY1My03Ljk0OTRINC4xNzVWNS41OTM3N2gxNy42NzkxdjkuMDUyNDN6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}
.bus-icon-white.small {
  width: 2rem;
  height: 2.2rem;
}

.bus-icon-dark {
  width: 2.7rem;
  height: 2.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyNyAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjQuOTE5NCA2Ljg0NjU3Yy0uMjM0Mi0yLjIzNTA4LS42MDczLTMuOTc1MzItMS4xOTc1LTQuNjU5MzQtMi40MzM0LTIuODEyNDg4LTE5LjQ3OTM1LTMuMDE4MzEtMjEuNDE0NzMgMC0uNDczNDMuNzM5NDgtLjgwNTQ2IDIuNDczNTYtMS4wMjgyOCA0LjY2MzA0Qy41NTk5MDcgNi45MzI4NCAwIDcuNTIzODEgMCA4LjI0NzI3djIuNzM3OTNjMCAuNjA4OC4zOTUxNTUgMS4xMjIxLjk0Njg1NiAxLjMyMjRDLjgxNjE5IDE2LjYyLjkyMjIzOCAyMS4xMTkxIDEuMTE3OTIgMjMuMzU2N2MwIDEuNzI3MyAxLjE4ODYyIDEuNDQwNyAxLjE4ODYyIDEuNDQwN2gxLjExNDEzdjEuODY0OGMwIC43Mzk0Ljc4MDg1IDEuMzM3OCAxLjc0Mjg1IDEuMzM3OC45NjMyNyAwIDEuNzQ0MTEtLjU5ODQgMS43NDQxMS0xLjMzNzh2LTEuODY0OEgxOS44Njk1djEuODY0OGMwIC43Mzk0Ljc4MDIgMS4zMzc4IDEuNzQzNCAxLjMzNzguOTYyIDAgMS43NDI5LS41OTg0IDEuNzQyOS0xLjMzNzh2LTEuODY0OGguMzY2MXMxLjM5ODguMTg3NCAxLjQ4ODUtLjYyNjFjMC0yLjIzMTMuMTQzOS03LjE3NjYuMDI1Mi0xMS44NDQ2LjU4NjQtLjE3OTMgMS4wMTQ0LS43MDY4IDEuMDE0NC0xLjM0MTVWOC4yNDcyN2MuMDAwNi0uNzQwNzItLjU4NjQtMS4zNDE1NC0xLjMzMDYtMS40MDA3ek02LjQ3MDE4IDIuNTg4NEgxOS41NTg5djEuOTMzMTJINi40NzAxOFYyLjU4ODR6bS4xODY4NSAyMC4wMDcyYy0xLjAyNzY2IDAtMS44NjAyNi0uODEzNC0xLjg2MDI2LTEuODE2NiAwLTEuMDAyNi44MzI2LTEuODE1NCAxLjg2MDI2LTEuODE1NCAxLjAyNzY1IDAgMS44NjA4OC44MTI4IDEuODYwODggMS44MTU0IDAgMS4wMDMyLS44MzI2IDEuODE2Ni0xLjg2MDg4IDEuODE2NnptMTIuODMxNzcgMGMtMS4wMjcgMC0xLjg2MTUtLjgxMzQtMS44NjE1LTEuODE2NiAwLTEuMDAyNi44MzM5LTEuODE1NCAxLjg2MTUtMS44MTU0IDEuMDI3NyAwIDEuODYwMy44MTI4IDEuODYwMyAxLjgxNTQuMDAwNiAxLjAwMzItLjgzMjYgMS44MTY2LTEuODYwMyAxLjgxNjZ6bTIuMzY1My03Ljk0OTRINC4xNzVWNS41OTM3N2gxNy42NzkxdjkuMDUyNDN6IiBmaWxsPSIjMDAwIi8+PC9zdmc+");
}
.bus-icon-dark.small {
  width: 2rem;
  height: 2.2rem;
}

.train-icon-white {
  display: inline-block;
  width: 2.4rem;
  height: 3.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAyNCAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNC4yMzc4MyA2LjM5Mjk5djMuMDM4MThjMCAxLjE2MjYzLjk3MzI3IDIuMTA2NDMgMi4xNzMwNiAyLjEwNjQzSDE2LjcyNDhjMS4xOTk4IDAgMi4xNzE4LS45NDM4IDIuMTcxOC0yLjEwNjQzVjYuMzkyOTljMC0xLjE2NzQyLS45NzItMi4xMTEyNi0yLjE3MTgtMi4xMTEyNkg2LjQxMDg5Yy0xLjE5OTc5IDAtMi4xNzMwNi45NDM4NC0yLjE3MzA2IDIuMTExMjZ6bTQuMzEwMDItNC4zMjA0YzAgLjUwMTUyLjQ4Nzg4LjkwODc5IDEuMDg3NzcuOTA4NzloMy43NjYxOGMuNjAxMSAwIDEuMDg5LS40MDcyNyAxLjA4OS0uOTA4NzkgMC0uNTAxNTMtLjQ4NzktLjkwNzU5LTEuMDg5LS45MDc1OUg5LjYzNTYyYy0uNTk5ODkgMC0xLjA4Nzc3LjQwNjA2LTEuMDg3NzcuOTA3NTl6TTQuMDk0NyAxOS4zNTNjMCAxLjAwNjcuODM2MzcgMS44MTg4IDEuODY2ODkgMS44MTg4IDEuMDM0MjYgMCAxLjg2ODEzLS44MTIxIDEuODY4MTMtMS44MTg4IDAtLjk5OTQtLjgzMzg3LTEuODExNi0xLjg2ODEzLTEuODExNi0xLjAzMDUyIDAtMS44NjY4OS44MTIyLTEuODY2ODkgMS44MTE2em0xMS4wMTcxIDBjMCAxLjAwNjcuODM2NCAxLjgxODggMS44NzA2IDEuODE4OCAxLjAzMDYgMCAxLjg2OTQtLjgxMjEgMS44Njk0LTEuODE4OCAwLS45OTk0LS44Mzg4LTEuODExNi0xLjg2OTQtMS44MTE2LTEuMDM0MiAwLTEuODcwNi44MTIyLTEuODcwNiAxLjgxMTZ6bTMuNTM0NyA0Ljg0MDF2LjgwNDhsLS4wMDI1LjA2MDRMMjMuMzg0NiAzMmgtMS41NTQ1bC0zLjQzNjMtNC44NDYxSDQuOTkyMDVMMS41NzMxNiAzMkgwbDQuNjU5NzUtNi44MTIzdi0uOTk0NmgtLjM4NzA3Yy0xLjUwMjIyIDAtMi43MTY5NC0xLjE4Mi0yLjcxNjk0LTIuNjM3VjIuNjM4MTdDMS41NTU3NCAxLjE4MTkyIDIuNzcwNDYgMCA0LjI3MjY4IDBIMTguOTYyNmMxLjUwMSAwIDIuNzEzMiAxLjE4MTkyIDIuNzEzMiAyLjYzODE3VjIxLjU1NjFjMCAxLjQ1NS0xLjIxMjIgMi42MzctMi43MTMyIDIuNjM3aC0uMzE2MXptLTEuNzEzOCAwSDYuMzczNTV2Ljk1NzFIMTYuOTMyN3YtLjk1NzF6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}
.train-icon-white.small {
  width: 2rem;
  height: 2.8rem;
}

.train-icon-dark {
  width: 2.4rem;
  height: 3.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAyNCAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNC4yMzc4MyA2LjM5Mjk5djMuMDM4MThjMCAxLjE2MjYzLjk3MzI3IDIuMTA2NDMgMi4xNzMwNiAyLjEwNjQzSDE2LjcyNDhjMS4xOTk4IDAgMi4xNzE4LS45NDM4IDIuMTcxOC0yLjEwNjQzVjYuMzkyOTljMC0xLjE2NzQyLS45NzItMi4xMTEyNi0yLjE3MTgtMi4xMTEyNkg2LjQxMDg5Yy0xLjE5OTc5IDAtMi4xNzMwNi45NDM4NC0yLjE3MzA2IDIuMTExMjZ6bTQuMzEwMDItNC4zMjA0YzAgLjUwMTUyLjQ4Nzg4LjkwODc5IDEuMDg3NzcuOTA4NzloMy43NjYxOGMuNjAxMSAwIDEuMDg5LS40MDcyNyAxLjA4OS0uOTA4NzkgMC0uNTAxNTMtLjQ4NzktLjkwNzU5LTEuMDg5LS45MDc1OUg5LjYzNTYyYy0uNTk5ODkgMC0xLjA4Nzc3LjQwNjA2LTEuMDg3NzcuOTA3NTl6TTQuMDk0NyAxOS4zNTNjMCAxLjAwNjcuODM2MzcgMS44MTg4IDEuODY2ODkgMS44MTg4IDEuMDM0MjYgMCAxLjg2ODEzLS44MTIxIDEuODY4MTMtMS44MTg4IDAtLjk5OTQtLjgzMzg3LTEuODExNi0xLjg2ODEzLTEuODExNi0xLjAzMDUyIDAtMS44NjY4OS44MTIyLTEuODY2ODkgMS44MTE2em0xMS4wMTcxIDBjMCAxLjAwNjcuODM2NCAxLjgxODggMS44NzA2IDEuODE4OCAxLjAzMDYgMCAxLjg2OTQtLjgxMjEgMS44Njk0LTEuODE4OCAwLS45OTk0LS44Mzg4LTEuODExNi0xLjg2OTQtMS44MTE2LTEuMDM0MiAwLTEuODcwNi44MTIyLTEuODcwNiAxLjgxMTZ6bTMuNTM0NyA0Ljg0MDF2LjgwNDhsLS4wMDI1LjA2MDRMMjMuMzg0NiAzMmgtMS41NTQ1bC0zLjQzNjMtNC44NDYxSDQuOTkyMDVMMS41NzMxNiAzMkgwbDQuNjU5NzUtNi44MTIzdi0uOTk0NmgtLjM4NzA3Yy0xLjUwMjIyIDAtMi43MTY5NC0xLjE4Mi0yLjcxNjk0LTIuNjM3VjIuNjM4MTdDMS41NTU3NCAxLjE4MTkyIDIuNzcwNDYgMCA0LjI3MjY4IDBIMTguOTYyNmMxLjUwMSAwIDIuNzEzMiAxLjE4MTkyIDIuNzEzMiAyLjYzODE3VjIxLjU1NjFjMCAxLjQ1NS0xLjIxMjIgMi42MzctMi43MTMyIDIuNjM3aC0uMzE2MXptLTEuNzEzOCAwSDYuMzczNTV2Ljk1NzFIMTYuOTMyN3YtLjk1NzF6IiBmaWxsPSIjMDAwIi8+PC9zdmc+");
}
.train-icon-dark.small {
  width: 2rem;
  height: 2.8rem;
}

.tunnel-icon-white {
  display: inline-block;
  width: 3.2rem;
  height: 2.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAzMiAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTIuMjYwODcgMTIuNDczNVYyNkgwVjEyLjQwNTRsLjAwMjAzMzM3LS4wMzM5Qy4wNzkyMjE1IDExLjA4NjMuMzA5NzEyIDcuOTYwOTQgMi40NTc1OSA1LjE2IDQuNjUwODkgMi4yOTk4MyA4LjY2MDk1IDAgMTUuODI2MSAwYzcuMTY1MSAwIDExLjE3NTIgMi4yOTk4MyAxMy4zNjg1IDUuMTYgMi4xNDc5IDIuODAwOTQgMi4zNzg0IDUuOTI2MyAyLjQ1NTUgNy4yMTE1bC4wMDIxLjAzMzlWMjZoLTIuMjYwOVYxMi40NzM1Yy0uMDc0OC0xLjIyNi0uMjk3My0zLjcyOTI1LTEuOTkwOC01LjkzNzcyLTEuNjYzNy0yLjE2OTYtNC45MjY1LTQuMjc0OTEtMTEuNTc0NC00LjI3NDkxLTYuNjQ3OTQgMC05LjkxMDY4IDIuMTA1MzEtMTEuNTc0NDIgNC4yNzQ5MS0xLjY5MzU1IDIuMjA4NDctMS45MTU5OSA0LjcxMTcyLTEuOTkwODEgNS45Mzc3MnoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuODc2OCAxNS4wNzA5Yy0uMTA0OS0uMTMzNC0uMjYxNC0uMjExMy0uNDI1Ni0uMjExM2gtMS41MzgxYy0uNTE1MS0xLjQxNjUtMS4xODYxLTIuODA0NC0xLjk0ODgtMy4zMjgzLTIuNjM4NS0xLjgwOTg4LTkuNjM3LTEuODA5ODgtMTIuMjc1NDkgMC0uNzYzMjcuNTI0NS0xLjQzMTU1IDEuOTE0MS0xLjk0OTM2IDMuMzI4M0g2LjIwMTM3Yy0uMTY1ODMgMC0uMzIxNzguMDc3OS0uNDI1NTYuMjExMy0uMTA0MzQuMTMyOC0uMTQ2MDcuMzA4Ni0uMTEyMDIuNDc3NWwuMzA5MTUgMS41NjJjLjA1MjcxLjI2NjIuMjc3ODUuNDU2My41Mzc1OC40NTYzaC4wNjkxOWMtLjU5Njg5LjcxOC0uODg2MjcgMS42MjIxLS44OTAxMiAyLjUyNjctLjAwMzg0IDEuMTE3Ny40MDMwNiAyLjEyNzcgMS4xNDcxMSAyLjg0MjIuMDA4MjQuMDA3NS4wMTY0Ny4wMTI2LjAyNDE2LjAyMDF2Mi4xODU0YzAgLjQ3MzUuMzY5MDEuODU4OS44MjM2Ny44NTg5aDEuOTI1MjFjLjQ1NDY2IDAgLjgyMzY2LS4zODU0LjgyMzY2LS44NTg5di0uODc4M2gxMC43ODUydi44NzgzYzAgLjQ3MzUuMzY5Ljg1ODkuODIzNy44NTg5aDEuOTI1MmMuNDUzNiAwIC44MjM3LS4zODU0LjgyMzctLjg1ODl2LTIuMTQyNWMuNzg5Ni0uNzU0MSAxLjE2NjgtMS43OTE2IDEuMTcxOC0yLjgyNzMuMDAzMy0uOTM1Ni0uMjk5My0xLjg3MjktLjkzMTMtMi42MDU4aC4xMTAzYy4yNjA5IDAgLjQ4Ni0uMTkuNTM3Ni0uNDU2OWwuMzA5Ny0xLjU2MTNjLjAzMTktLjE2NzgtLjAwODItLjM0MjQtLjExMjUtLjQ3NjR6bS0xNS4yODM2LTIuMTA1M2MyLjEwMzEtMS40NDM1IDguMzYyNS0xLjQ0MzUgMTAuNDY0NSAwIC40MDg2LjI3OTQuOTM0MSAxLjQwOSAxLjQxNTYgMi43OTI0SDkuMTc4NjhjLjQ4MDQ4LTEuMzgyOCAxLjAwNjAyLTIuNTExOSAxLjQxNDUyLTIuNzkyNHptLTMuMDEyNDUgNy4zNDMxYzAtLjkzMzMuNzI1OTMtMS42ODkxIDEuNjIwNDQtMS42ODkxLjg5NTYxIDAgMS42MjA0MS43NTU4IDEuNjIwNDEgMS42ODkxcy0uNzI0OCAxLjY4OTYtMS42MjA0MSAxLjY4OTZjLS44OTQ1MSAwLTEuNjIwNDQtLjc1NjMtMS42MjA0NC0xLjY4OTZ6bTE0Ljg5MTQ1IDEuNjg5NmMtLjg5NDUgMC0xLjYyMDQtLjc1NjMtMS42MjA0LTEuNjg5NnMuNzI1OS0xLjY4OTEgMS42MjA0LTEuNjg5MWMuODk1NiAwIDEuNjIwNS43NTU4IDEuNjIwNSAxLjY4OTFzLS43MjYgMS42ODk2LTEuNjIwNSAxLjY4OTZ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}
.tunnel-icon-white.small {
  width: 3.1rem;
  height: 2.5rem;
}

.tunnel-icon-dark, .tunnel2-icon-dark {
  width: 3.2rem;
  height: 2.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAzMiAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTIuMjYwODcgMTIuNDczNVYyNkgwVjEyLjQwNTRsLjAwMjAzMzM3LS4wMzM5Qy4wNzkyMjE1IDExLjA4NjMuMzA5NzEyIDcuOTYwOTQgMi40NTc1OSA1LjE2IDQuNjUwODkgMi4yOTk4MyA4LjY2MDk1IDAgMTUuODI2MSAwYzcuMTY1MSAwIDExLjE3NTIgMi4yOTk4MyAxMy4zNjg1IDUuMTYgMi4xNDc5IDIuODAwOTQgMi4zNzg0IDUuOTI2MyAyLjQ1NTUgNy4yMTE1bC4wMDIxLjAzMzlWMjZoLTIuMjYwOVYxMi40NzM1Yy0uMDc0OC0xLjIyNi0uMjk3My0zLjcyOTI1LTEuOTkwOC01LjkzNzcyLTEuNjYzNy0yLjE2OTYtNC45MjY1LTQuMjc0OTEtMTEuNTc0NC00LjI3NDkxLTYuNjQ3OTQgMC05LjkxMDY4IDIuMTA1MzEtMTEuNTc0NDIgNC4yNzQ5MS0xLjY5MzU1IDIuMjA4NDctMS45MTU5OSA0LjcxMTcyLTEuOTkwODEgNS45Mzc3MnoiIGZpbGw9IiMwMDAiLz48cGF0aCBkPSJNMjUuODc2OCAxNS4wNzA5Yy0uMTA0OS0uMTMzNC0uMjYxNC0uMjExMy0uNDI1Ni0uMjExM2gtMS41MzgxYy0uNTE1MS0xLjQxNjUtMS4xODYxLTIuODA0NC0xLjk0ODgtMy4zMjgzLTIuNjM4NS0xLjgwOTg4LTkuNjM3LTEuODA5ODgtMTIuMjc1NDkgMC0uNzYzMjcuNTI0NS0xLjQzMTU1IDEuOTE0MS0xLjk0OTM2IDMuMzI4M0g2LjIwMTM3Yy0uMTY1ODMgMC0uMzIxNzguMDc3OS0uNDI1NTYuMjExMy0uMTA0MzQuMTMyOC0uMTQ2MDcuMzA4Ni0uMTEyMDIuNDc3NWwuMzA5MTUgMS41NjJjLjA1MjcxLjI2NjIuMjc3ODUuNDU2My41Mzc1OC40NTYzaC4wNjkxOWMtLjU5Njg5LjcxOC0uODg2MjcgMS42MjIxLS44OTAxMiAyLjUyNjctLjAwMzg0IDEuMTE3Ny40MDMwNiAyLjEyNzcgMS4xNDcxMSAyLjg0MjIuMDA4MjQuMDA3NS4wMTY0Ny4wMTI2LjAyNDE2LjAyMDF2Mi4xODU0YzAgLjQ3MzUuMzY5MDEuODU4OS44MjM2Ny44NTg5aDEuOTI1MjFjLjQ1NDY2IDAgLjgyMzY2LS4zODU0LjgyMzY2LS44NTg5di0uODc4M2gxMC43ODUydi44NzgzYzAgLjQ3MzUuMzY5Ljg1ODkuODIzNy44NTg5aDEuOTI1MmMuNDUzNiAwIC44MjM3LS4zODU0LjgyMzctLjg1ODl2LTIuMTQyNWMuNzg5Ni0uNzU0MSAxLjE2NjgtMS43OTE2IDEuMTcxOC0yLjgyNzMuMDAzMy0uOTM1Ni0uMjk5My0xLjg3MjktLjkzMTMtMi42MDU4aC4xMTAzYy4yNjA5IDAgLjQ4Ni0uMTkuNTM3Ni0uNDU2OWwuMzA5Ny0xLjU2MTNjLjAzMTktLjE2NzgtLjAwODItLjM0MjQtLjExMjUtLjQ3NjR6bS0xNS4yODM2LTIuMTA1M2MyLjEwMzEtMS40NDM1IDguMzYyNS0xLjQ0MzUgMTAuNDY0NSAwIC40MDg2LjI3OTQuOTM0MSAxLjQwOSAxLjQxNTYgMi43OTI0SDkuMTc4NjhjLjQ4MDQ4LTEuMzgyOCAxLjAwNjAyLTIuNTExOSAxLjQxNDUyLTIuNzkyNHptLTMuMDEyNDUgNy4zNDMxYzAtLjkzMzMuNzI1OTMtMS42ODkxIDEuNjIwNDQtMS42ODkxLjg5NTYxIDAgMS42MjA0MS43NTU4IDEuNjIwNDEgMS42ODkxcy0uNzI0OCAxLjY4OTYtMS42MjA0MSAxLjY4OTZjLS44OTQ1MSAwLTEuNjIwNDQtLjc1NjMtMS42MjA0NC0xLjY4OTZ6bTE0Ljg5MTQ1IDEuNjg5NmMtLjg5NDUgMC0xLjYyMDQtLjc1NjMtMS42MjA0LTEuNjg5NnMuNzI1OS0xLjY4OTEgMS42MjA0LTEuNjg5MWMuODk1NiAwIDEuNjIwNS43NTU4IDEuNjIwNSAxLjY4OTFzLS43MjYgMS42ODk2LTEuNjIwNSAxLjY4OTZ6IiBmaWxsPSIjMDAwIi8+PC9zdmc+");
}
.tunnel-icon-dark.small, .tunnel2-icon-dark.small {
  width: 3.1rem;
  height: 2.5rem;
}

.ferry-icon-white {
  display: inline-block;
  width: 2.8rem;
  height: 3rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAyOCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOC40NDcwNCA2LjI4MDlINS40NjA2Yy0uNTIzOTQgMC0uOTQ4NjcuNDI2NTUtLjk0ODY3Ljk1MjczVjExLjkwOGMwIC4zNjgzLjM4NDguNjEwMi43MTY3NS40NTA1bDguMzU0NDItNC4wMTg5NGMuMTM3LS4wNjU5LjI5NjUtLjA2NTkuNDMzNSAwbDguMzU0NyA0LjAxOTA0Yy4zMzIuMTU5Ni43MTY4LS4wODIzLjcxNjgtLjQ1MDZWNy4yMzM2M2MwLS41MjYxOC0uNDI0OC0uOTUyNzMtLjk0ODYtLjk1MjczSDguNDQ3MDR6TTE4LjY1MyA1LjMyODE3Yy4yNzYxIDAgLjUtLjIyMzg2LjUtLjV2LS4wODM4NWMwLS41MjYxOC0uNDI0OC0uOTUyNzMtLjk0ODctLjk1MjczaC0xLjg1NTVjLS4yNTUzIDAtLjQ2OTUtLjE5MjI0LS40OTcxLS40NDU5OUwxNS41MzY2LjQ0NTk4OEMxNS41MDkuMTkyMjQ0IDE1LjI5NDggMCAxNS4wMzk1IDBoLTIuNDc5Yy0uMjU1MiAwLS40Njk1LjE5MjI0OS0uNDk3LjQ0NTk5NkwxMS43NDg0IDMuMzQ1NmMtLjAyNzUuMjUzNzQtLjI0MTguNDQ1OTktLjQ5Ny40NDU5OUg5LjM5NTc4Yy0uNTIzOTUgMC0uOTQ4NjguNDI2NTUtLjk0ODY4Ljk1Mjczdi4wODM4NWMwIC4yNzYxNC4yMjM4Ni41LjUuNWg5LjcwNTl6bS00LjYzNjIgNC45NzcwM2MtLjEzNy0uMDY1OS0uMjk2Ni0uMDY1OS0uNDMzNiAwTC4zOTk3MzIgMTYuNjQ3MmMtLjIyODA3OS4xMDk3LS4zMzgyMDA2LjM3MjUtLjI1NjQ0My42MTIxTDMuOTA2NTEgMjguMjg0NWMuMDk2MDkuMjgxNS40MTQ4Ny40MTcuNjg3NC4yOTc3IDEuODE0NTYtLjc5NCA0LjA0NTE2LTEuNDgyNiA2LjMyNjY5LTEuNDgyNiAzLjk5ODMgMCA3LjIxNTIgMS45MDQxIDExLjQyNzQgMi44ODc0LjAzNjkuMDA4Ny4wNzQ5LjAxMy4xMTI4LjAxM2guMjg5NWMuMjEzOSAwIC40MDQxLS4xMzYxLjQ3MzItLjMzODVsNC4yMzMyLTEyLjQwMjJjLjA4MTgtLjIzOTYtLjAyODQtLjUwMjQtLjI1NjQtLjYxMjFsLTEzLjE4MzUtNi4zNDJ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}
.ferry-icon-white.small {
  width: 2rem;
  height: 2.2rem;
}

.ferry-icon-dark {
  width: 2.8rem;
  height: 3rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAyOCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOC40NDcwNCA2LjI4MDlINS40NjA2Yy0uNTIzOTQgMC0uOTQ4NjcuNDI2NTUtLjk0ODY3Ljk1MjczVjExLjkwOGMwIC4zNjgzLjM4NDguNjEwMi43MTY3NS40NTA1bDguMzU0NDItNC4wMTg5NGMuMTM3LS4wNjU5LjI5NjUtLjA2NTkuNDMzNSAwbDguMzU0NyA0LjAxOTA0Yy4zMzIuMTU5Ni43MTY4LS4wODIzLjcxNjgtLjQ1MDZWNy4yMzM2M2MwLS41MjYxOC0uNDI0OC0uOTUyNzMtLjk0ODYtLjk1MjczSDguNDQ3MDR6TTE4LjY1MyA1LjMyODE3Yy4yNzYxIDAgLjUtLjIyMzg2LjUtLjV2LS4wODM4NWMwLS41MjYxOC0uNDI0OC0uOTUyNzMtLjk0ODctLjk1MjczaC0xLjg1NTVjLS4yNTUzIDAtLjQ2OTUtLjE5MjI0LS40OTcxLS40NDU5OUwxNS41MzY2LjQ0NTk4OEMxNS41MDkuMTkyMjQ0IDE1LjI5NDggMCAxNS4wMzk1IDBoLTIuNDc5Yy0uMjU1MiAwLS40Njk1LjE5MjI0OS0uNDk3LjQ0NTk5NkwxMS43NDg0IDMuMzQ1NmMtLjAyNzUuMjUzNzQtLjI0MTguNDQ1OTktLjQ5Ny40NDU5OUg5LjM5NTc4Yy0uNTIzOTUgMC0uOTQ4NjguNDI2NTUtLjk0ODY4Ljk1Mjczdi4wODM4NWMwIC4yNzYxNC4yMjM4Ni41LjUuNWg5LjcwNTl6bS00LjYzNjIgNC45NzcwM2MtLjEzNy0uMDY1OS0uMjk2Ni0uMDY1OS0uNDMzNiAwTC4zOTk3MzIgMTYuNjQ3MmMtLjIyODA3OS4xMDk3LS4zMzgyMDA2LjM3MjUtLjI1NjQ0My42MTIxTDMuOTA2NTEgMjguMjg0NWMuMDk2MDkuMjgxNS40MTQ4Ny40MTcuNjg3NC4yOTc3IDEuODE0NTYtLjc5NCA0LjA0NTE2LTEuNDgyNiA2LjMyNjY5LTEuNDgyNiAzLjk5ODMgMCA3LjIxNTIgMS45MDQxIDExLjQyNzQgMi44ODc0LjAzNjkuMDA4Ny4wNzQ5LjAxMy4xMTI4LjAxM2guMjg5NWMuMjEzOSAwIC40MDQxLS4xMzYxLjQ3MzItLjMzODVsNC4yMzMyLTEyLjQwMjJjLjA4MTgtLjIzOTYtLjAyODQtLjUwMjQtLjI1NjQtLjYxMjFsLTEzLjE4MzUtNi4zNDJ6IiBmaWxsPSIjMDAwIi8+PC9zdmc+");
}
.ferry-icon-dark.small {
  width: 2rem;
  height: 2.2rem;
}

.bike-icon-white {
  display: inline-block;
  width: 3.4rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAzNCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjcuNTE5MSA3LjE1Mjg0Yy0uMjY1NCAwLS41MjY0LjAxNzcyLS43ODM1LjA0ODY3TDI1LjEyIDEuNzE5OWMuMTU3OS0uMTgyMjguMjUzNy0uNDE4NzUuMjUzNy0uNjc3NzNDMjUuMzczNy40NjY2ODQgMjQuOTAyOSAwIDI0LjMyMjMgMGgtMy43M2MtLjU4MDYgMC0xLjA1MTUuNDY2Njg0LTEuMDUxNSAxLjA0MjE3IDAgLjU3NTQ5LjQ3MDkgMS4wNDIxNyAxLjA1MTUgMS4wNDIxN2gyLjEzOThsLTEuMTE2OSAxLjc2MmMtLjA0OTMtLjAwNjI1LS4wOTk5LS4wMDk3OS0uMTUwNi0uMDA4NDRsLTguNzgyNS4xMzQ5NmMuMjMyNy0uMTkxMTMuMzgwOS0uNDc5ODEuMzgwOS0uODAyNjggMC0uNTc1NDktLjQ3MDctMS4wNDIxNy0xLjA1MTQtMS4wNDIxN0g4Ljg3MTQ1Yy0uNTgwNzIgMC0xLjA1MTQ1LjQ2NjY4LTEuMDUxNDUgMS4wNDIxNyAwIC41NzU0OS40NzA3MyAxLjA0MjE3IDEuMDUxNDUgMS4wNDIxN2guMTg5MTZjLjAyNTIzLjA5MzI4LjA2MzQuMTg0NjguMTE2NjEuMjcxMzhsLjQyMjI2LjY4ODc4LTEuMTY1NDMgMi4yNzkwMmMtLjYxNjY4LS4xOTM2NC0xLjI3Mjc5LS4yOTg3OS0xLjk1MzI5LS4yOTg3OUMyLjkwNzI4IDcuMTUyODQgMCAxMC4wMzQzIDAgMTMuNTc2NCAwIDE3LjExODQgMi45MDcyOCAyMCA2LjQ4MDc2IDIwYzMuMDg2MDIgMCA1LjY3MzM0LTIuMTQ5NyA2LjMyMjQ0LTUuMDE3MWwzLjQ2NzUuMTk4OGMuMDIwNC4wMDEyLjA0MDYuMDAxOC4wNjA4LjAwMTguMzYwMiAwIC42OTcyLS4xODMyLjg5MDItLjQ4NzhsNi41MDY0LTEwLjI2NDkxLjk4ODcgMy4zNTQzM2MtMi4xNzQzIDEuMDM3OC0zLjY3ODUgMy4yNDM2OC0zLjY3ODUgNS43OTEyOCAwIDMuNTQxOSAyLjkwNzMgNi40MjM2IDYuNDgwOCA2LjQyMzZDMzEuMDkyNyAyMCAzNCAxNy4xMTg0IDM0IDEzLjU3NjRjMC0zLjU0MjEtMi45MDc0LTYuNDIzNTYtNi40ODA5LTYuNDIzNTZ6bS0xNi42MzQzLjExNjUxbDMuNTA0NCA1LjcxNjY1LTEuNDYzNi0uMDgzOWMtLjE5NTItMS44NDU3LTEuMTgyNS0zLjQ2MDQ0LTIuNjE3NS00LjUwNTEybC41NzY3LTEuMTI3NjN6TTIuMTAyOTEgMTMuNTc2NGMwLTIuMzkyNyAxLjk2MzkxLTQuMzM5MjIgNC4zNzc4NS00LjMzOTIyLjMzODA0IDAgLjY2NjgzLjAzOTQuOTgzLjExMTcybC0xLjkyMDkgMy43NTY0Yy0uMTYwMzUuMzEzNS0uMTUwNDcuNjg2LjAyNjM5Ljk5MDcuMTc2ODUuMzA0Ny40OTY3MS41MDA1Ljg1MDczLjUyMDlsNC4yNDI5Mi4yNDMzYy0uNTUzNSAxLjc2OC0yLjIxODk3IDMuMDU1NS00LjE4MjE0IDMuMDU1NS0yLjQxMzk0IDAtNC4zNzc4NS0xLjk0NjYtNC4zNzc4NS00LjMzOTN6bTYuMDQxNjctLjk0ODZsMS4xOTM4My0yLjMzNDZjLjczNjY5LjYzMDggMS4yNTkyOSAxLjUgMS40NDQ4OSAyLjQ4NTlsLTIuNjM4NzItLjE1MTN6bTguMTk5OTItLjQ2NjJsLTMuNzQ2Ny02LjExMTY5IDcuNjkwNi0uMTEwNTctMy45NDM5IDYuMjIyMjZ6bTExLjE3NDYgNS43NTQxYy0yLjQxNCAwLTQuMzc3OS0xLjk0NjYtNC4zNzc5LTQuMzM5MyAwLTEuNTk4Ljg3NjYtMi45OTYgMi4xNzc2LTMuNzQ4OTNsMS4xOTEgNC4wNDExM2MuMTYzLjU1MjYuNzQ3Mi44Njk3IDEuMzA0MS43MDgxLjU1NzQtLjE2MTQuODc3My0uNzQwMS43MTQ0LTEuMjkyNWwtMS4xOTE0LTQuMDQyMzNjLjA2MDUtLjAwMjUuMTIxMS0uMDA0NTguMTgyMi0uMDA0NTggMi40MTQxIDAgNC4zNzggMS45NDY2MSA0LjM3OCA0LjMzOTIxcy0xLjk2MzkgNC4zMzkyLTQuMzc4IDQuMzM5MnoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.bike-icon-dark {
  display: inline-block;
  width: 3.4rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAzNCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjcuNTE5MSA3LjE1Mjg0Yy0uMjY1NCAwLS41MjY0LjAxNzcyLS43ODM1LjA0ODY3TDI1LjEyIDEuNzE5OWMuMTU3OS0uMTgyMjguMjUzNy0uNDE4NzUuMjUzNy0uNjc3NzNDMjUuMzczNy40NjY2ODQgMjQuOTAyOSAwIDI0LjMyMjMgMGgtMy43M2MtLjU4MDYgMC0xLjA1MTUuNDY2Njg0LTEuMDUxNSAxLjA0MjE3IDAgLjU3NTQ5LjQ3MDkgMS4wNDIxNyAxLjA1MTUgMS4wNDIxN2gyLjEzOThsLTEuMTE2OSAxLjc2MmMtLjA0OTMtLjAwNjI1LS4wOTk5LS4wMDk3OS0uMTUwNi0uMDA4NDRsLTguNzgyNS4xMzQ5NmMuMjMyNy0uMTkxMTMuMzgwOS0uNDc5ODEuMzgwOS0uODAyNjggMC0uNTc1NDktLjQ3MDctMS4wNDIxNy0xLjA1MTQtMS4wNDIxN0g4Ljg3MTQ1Yy0uNTgwNzIgMC0xLjA1MTQ1LjQ2NjY4LTEuMDUxNDUgMS4wNDIxNyAwIC41NzU0OS40NzA3MyAxLjA0MjE3IDEuMDUxNDUgMS4wNDIxN2guMTg5MTZjLjAyNTIzLjA5MzI4LjA2MzQuMTg0NjguMTE2NjEuMjcxMzhsLjQyMjI2LjY4ODc4LTEuMTY1NDMgMi4yNzkwMmMtLjYxNjY4LS4xOTM2NC0xLjI3Mjc5LS4yOTg3OS0xLjk1MzI5LS4yOTg3OUMyLjkwNzI4IDcuMTUyODQgMCAxMC4wMzQzIDAgMTMuNTc2NCAwIDE3LjExODQgMi45MDcyOCAyMCA2LjQ4MDc2IDIwYzMuMDg2MDIgMCA1LjY3MzM0LTIuMTQ5NyA2LjMyMjQ0LTUuMDE3MWwzLjQ2NzUuMTk4OGMuMDIwNC4wMDEyLjA0MDYuMDAxOC4wNjA4LjAwMTguMzYwMiAwIC42OTcyLS4xODMyLjg5MDItLjQ4NzhsNi41MDY0LTEwLjI2NDkxLjk4ODcgMy4zNTQzM2MtMi4xNzQzIDEuMDM3OC0zLjY3ODUgMy4yNDM2OC0zLjY3ODUgNS43OTEyOCAwIDMuNTQxOSAyLjkwNzMgNi40MjM2IDYuNDgwOCA2LjQyMzZDMzEuMDkyNyAyMCAzNCAxNy4xMTg0IDM0IDEzLjU3NjRjMC0zLjU0MjEtMi45MDc0LTYuNDIzNTYtNi40ODA5LTYuNDIzNTZ6bS0xNi42MzQzLjExNjUxbDMuNTA0NCA1LjcxNjY1LTEuNDYzNi0uMDgzOWMtLjE5NTItMS44NDU3LTEuMTgyNS0zLjQ2MDQ0LTIuNjE3NS00LjUwNTEybC41NzY3LTEuMTI3NjN6TTIuMTAyOTEgMTMuNTc2NGMwLTIuMzkyNyAxLjk2MzkxLTQuMzM5MjIgNC4zNzc4NS00LjMzOTIyLjMzODA0IDAgLjY2NjgzLjAzOTQuOTgzLjExMTcybC0xLjkyMDkgMy43NTY0Yy0uMTYwMzUuMzEzNS0uMTUwNDcuNjg2LjAyNjM5Ljk5MDcuMTc2ODUuMzA0Ny40OTY3MS41MDA1Ljg1MDczLjUyMDlsNC4yNDI5Mi4yNDMzYy0uNTUzNSAxLjc2OC0yLjIxODk3IDMuMDU1NS00LjE4MjE0IDMuMDU1NS0yLjQxMzk0IDAtNC4zNzc4NS0xLjk0NjYtNC4zNzc4NS00LjMzOTN6bTYuMDQxNjctLjk0ODZsMS4xOTM4My0yLjMzNDZjLjczNjY5LjYzMDggMS4yNTkyOSAxLjUgMS40NDQ4OSAyLjQ4NTlsLTIuNjM4NzItLjE1MTN6bTguMTk5OTItLjQ2NjJsLTMuNzQ2Ny02LjExMTY5IDcuNjkwNi0uMTEwNTctMy45NDM5IDYuMjIyMjZ6bTExLjE3NDYgNS43NTQxYy0yLjQxNCAwLTQuMzc3OS0xLjk0NjYtNC4zNzc5LTQuMzM5MyAwLTEuNTk4Ljg3NjYtMi45OTYgMi4xNzc2LTMuNzQ4OTNsMS4xOTEgNC4wNDExM2MuMTYzLjU1MjYuNzQ3Mi44Njk3IDEuMzA0MS43MDgxLjU1NzQtLjE2MTQuODc3My0uNzQwMS43MTQ0LTEuMjkyNWwtMS4xOTE0LTQuMDQyMzNjLjA2MDUtLjAwMjUuMTIxMS0uMDA0NTguMTgyMi0uMDA0NTggMi40MTQxIDAgNC4zNzggMS45NDY2MSA0LjM3OCA0LjMzOTIxcy0xLjk2MzkgNC4zMzkyLTQuMzc4IDQuMzM5MnoiIGZpbGw9IiMwMDAiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.marker-icon-white {
  display: inline-block;
  width: 1.8rem;
  height: 2.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAxOCAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOS4wMDAxOCA0LjU2Mzk2Yy0yLjQwMTk4IDAtNC4zNTYzOCAxLjkzMjMxLTQuMzU2MzggNC4zMDc3MSAwIDIuMzc1NDMgMS45NTQxNCA0LjMwNzczIDQuMzU2MzggNC4zMDc3MyAyLjQwMjIyIDAgNC4zNTY0Mi0xLjkzMjMgNC4zNTY0Mi00LjMwNzczIDAtMi4zNzUxNC0xLjk1NDQtNC4zMDc3MS00LjM1NjQyLTQuMzA3NzF6bTAgNy4wNzY5NGMtMS41NDQxOSAwLTIuODAwNTQtMS4yNDIzLTIuODAwNTQtMi43NjkyNyAwLTEuNTI2OTQgMS4yNTYzNS0yLjc2OTI1IDIuODAwNTQtMi43NjkyNSAxLjU0NDIyIDAgMi44MDA1MiAxLjI0MjMxIDIuODAwNTIgMi43NjkyNSAwIDEuNTI2OTctMS4yNTYzIDIuNzY5MjctMi44MDA1MiAyLjc2OTI3eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xNi4zODUxIDMuODI1MTJDMTQuNjg2NiAxLjM5NDM4IDExLjk5NDcgMCA5LjAwMDI2IDAgNi4wMDU3OCAwIDMuMzEzOTIgMS4zOTQzOCAxLjYxNTQyIDMuODI1MTItLjA3NDczNDUgNi4yNDM1Ny0uNDY0OTk3IDkuMzA1NC41NjkzODkgMTIuMDEwNWMuMjc2NjczLjczODcuNzE2NDcxIDEuNDU2NCAxLjMwNDA2MSAyLjEyOWw2LjUzNDU3IDcuNTg5N2MuMTQ3NzkuMTcxOC4zNjQzMi4yNzA4LjU5MjI0LjI3MDhzLjQ0NDQ1LS4wOTkuNTkyMjQtLjI3MDhsNi41MzI3LTcuNTg3N2MuNTkwMi0uNjc2NCAxLjAyOTUtMS4zOTMzIDEuMzAzOC0yLjEyNjEgMS4wMzY1LTIuNzEuNjQ2My01Ljc3MTgzLTEuMDQzOS04LjE5MDI4em0tLjQxMjggNy42NTE1OGMtLjIxMTYuNTY1My0uNTU3IDEuMTI0My0xLjAyNjEgMS42NjItLjAwMTMuMDAxMy0uMDAyNi4wMDI2LS4wMDM2LjAwNDFsLTUuOTQyMzQgNi45MDE2LTUuOTQ1OTQtNi45MDU5Yy0uNDY4ODMtLjUzNzItLjgxNDI0LTEuMDk2Mi0xLjAyNzkxLTEuNjY3LS44NTU0NC0yLjIzNzEzLS41MzA3OS00Ljc2ODY4Ljg2ODctNi43NzE0OSAxLjQwMzg3LTIuMDA5MjIgMy42MjkyNi0zLjE2MTU2IDYuMTA1MTUtMy4xNjE1NiAyLjQ3NTg0IDAgNC43MDA5NCAxLjE1MjMgNi4xMDQ5NCAzLjE2MTU2IDEuMzk5NyAyLjAwMjgxIDEuNzI0NiA0LjUzNDM2Ljg2NzEgNi43NzY2OXoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .marker-icon-white {
    width: 18px;
    height: 22px;
  }
}

.email-icon-white {
  display: inline-block;
  width: 2.7rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyNyAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMGgyNi4xNTM4djIwSDBWMHptMS4yNDU0MiAxLjg4MzQ0VjE4Ljc1SDI0LjkwODRWMS44ODM0NEwxMy4wNzY5IDEwLjg4OTggMS4yNDU0MiAxLjg4MzQ0ek0yMy42Nzk2IDEuMjVIMi40NzQyNUwxMy4wNzY5IDkuMzIwOTIgMjMuNjc5NiAxLjI1eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.twitter-icon-white {
  display: inline-block;
  width: 2rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi4yODk2IDE2YzcuNTQ3MiAwIDExLjY3NTItNi4xNTYyMSAxMS42NzUyLTExLjQ5NDg1IDAtLjE3NDg1IDAtLjM0ODkyLS4wMTItLjUyMjIuODAzMS0uNTcxOSAxLjQ5NjMtMS4yODAwMiAyLjA0NzItMi4wOTExOS0uNzQ4OS4zMjY3MS0xLjU0MzMuNTQwOTctMi4zNTY4LjYzNTYzLjg1NjYtLjUwNDkgMS40OTc3LTEuMjk5MDEgMS44MDQtMi4yMzQ1NDUtLjgwNTUuNDcwNTgxLTEuNjg2Ny44MDIyMjUtMi42MDU2Ljk4MDYxNUMxNi4yMjI5LjYyNTc3IDE1LjQwNDcuMTk2ODg2IDE0LjUxMzUuMDUzMTc2M2MtLjg5MTItLjE0MzcwOTMtMS44MDU2LjAwNTc2OC0yLjYwMTkuNDI1MzAwNy0uNzk2Mi40MTk1MzMtMS40Mjk3IDEuMDg1NzMzLTEuODAyNiAxLjg5NTUwMy0uMzcyOTUuODA5NzgtLjQ2NDM4IDEuNzE3OTgtLjI2MDIgMi41ODQwNy0xLjYzMTQtLjA4MDUyLTMuMjI3MzYtLjQ5NzkyLTQuNjg0MjktMS4yMjUxMUMzLjcwNzU5IDMuMDA1NzYgMi40MjIyNyAxLjk4NTA1IDEuMzkyLjczNzA3NS44NjcyNzQgMS42MjY0NS43MDY1NiAyLjY3OTI5Ljk0MjU4MyAzLjY4MTIzIDEuMTc4NjEgNC42ODMxNyAxLjc5MzYyIDUuNTU4ODggMi42NjI0IDYuMTMwMDYgMi4wMDkzOSA2LjExMSAxLjM3MDYyIDUuOTM3NTcuOCA1LjYyNDM5di4wNTEyYy4wMDAyNTkuOTMyNzQuMzI4MjEgMS44MzY2OC45MjgyMyAyLjU1ODUuNjAwMDEuNzIxODEgMS40MzUxNSAxLjIxNzA3IDIuMzYzNzcgMS40MDE3Ni0uNjA0MS4xNjIyMS0xLjIzNzk0LjE4NTkyLTEuODUyOC4wNjkzMi4yNjIyMS44MDI3My43NzI2OSAxLjUwNDczIDEuNDYwMDYgMi4wMDc3My42ODczNi41MDMxIDEuNTE3MjMuNzgyIDIuMzczNTQuNzk3OC0xLjQ1MzAxIDEuMTI0NC0zLjI0Nzk1IDEuNzM0Ny01LjA5NiAxLjczMjktLjMyNjQ3Ny0uMDAwNy0uNjUyNjM3LS4wMjAxLS45NzY4LS4wNTgzIDEuODc2NTEgMS4xODU2IDQuMDU5OTMgMS44MTQ1IDYuMjg5NiAxLjgxMTUiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.twitter-icon-dark {
  width: 2.4rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyNCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuNTQ3NTIgMTkuNTAxM0MxNi42MDQyIDE5LjUwMTMgMjEuNTU3OCAxMS45OTc5IDIxLjU1NzggNS40OTEwMUMyMS41NTc4IDUuMjc3ODkgMjEuNTU3OCA1LjA2NTczIDIxLjU0MzQgNC44NTQ1M0MyMi41MDcgNC4xNTc0OCAyMy4zMzg5IDMuMjk0NDEgMjQgMi4zMDU3M0MyMy4xMDEzIDIuNzAzOTQgMjIuMTQ4IDIuOTY1MDggMjEuMTcxOCAzLjA4MDQ1QzIyLjE5OTggMi40NjUwNyAyMi45NjkxIDEuNDk3MTkgMjMuMzM2NiAwLjM1NjkyOEMyMi4zNzAxIDAuOTMwNDg1IDIxLjMxMjYgMS4zMzQ3IDIwLjIwOTkgMS41NTIxM0MxOS40Njc1IDAuNzYyNzA2IDE4LjQ4NTYgMC4yMzk5NyAxNy40MTYyIDAuMDY0ODEyOEMxNi4zNDY4IC0wLjExMDM0NCAxNS4yNDk0IDAuMDcxODQzIDE0LjI5NCAwLjU4MzE4MkMxMy4zMzg1IDEuMDk0NTIgMTIuNTc4MiAxLjkwNjUgMTIuMTMwNyAyLjg5MzQ4QzExLjY4MzMgMy44ODA0NSAxMS41NzM1IDQuOTg3MzkgMTEuODE4NiA2LjA0MzAxQzkuODYwODggNS45NDQ4NyA3Ljk0NTcyIDUuNDM2MTMgNi4xOTc0MSA0LjU0OTgyQzQuNDQ5MSAzLjY2MzUgMi45MDY3MiAyLjQxOTQzIDEuNjcwNCAwLjg5ODM2OEMxLjA0MDczIDEuOTgyMzYgMC44NDc4NzIgMy4yNjU2IDEuMTMxMSA0LjQ4Njc5QzEuNDE0MzMgNS43MDc5OSAyLjE1MjM0IDYuNzc1MzIgMy4xOTQ4OCA3LjQ3MTQ5QzIuNDExMjcgNy40NDgyNiAxLjY0NDc1IDcuMjM2ODggMC45NiA2Ljg1NTE3QzAuOTYgNi44NzUzMyAwLjk2IDYuODk2NDUgMC45NiA2LjkxNzU3QzAuOTYwMzExIDguMDU0NDIgMS4zNTM4NSA5LjE1NjE2IDIuMDczODcgMTAuMDM1OUMyLjc5Mzg5IDEwLjkxNTcgMy43OTYwNiAxMS41MTkzIDQuOTEwNCAxMS43NDQ0QzQuMTg1NDcgMTEuOTQyMiAzLjQyNDg4IDExLjk3MTEgMi42ODcwNCAxMS44Mjg5QzMuMDAxNjkgMTIuODA3MyAzLjYxNDI3IDEzLjY2MjkgNC40MzkxMSAxNC4yNzZDNS4yNjM5NSAxNC44ODkyIDYuMjU5NzkgMTUuMjI5MiA3LjI4NzM2IDE1LjI0ODVDNS41NDM3NSAxNi42MTg4IDMuMzg5ODIgMTcuMzYyNyAxLjE3MjE2IDE3LjM2MDVDMC43ODAzODcgMTcuMzU5NyAwLjM4ODk5NiAxNy4zMzYgMCAxNy4yODk0QzIuMjUxODEgMTguNzM0NSA0Ljg3MTkyIDE5LjUwMSA3LjU0NzUyIDE5LjQ5NzQiIGZpbGw9IiMxNDBGMDYiLz4KPC9zdmc+Cgo=");
}

.search-icon-white {
  width: 1.7rem;
  height: 1.7rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxNyAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTEgMTFsNSA1IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
}

.leftarrow-black {
  display: inline-block;
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik03IDExTDIgNkw3IDEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.rightarrow-black {
  display: inline-block;
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.yellow-check-icon {
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMjAiIGN5PSIyMCIgcj0iMjAiIGZpbGw9IiNGRkVFMDAiLz4KPHBhdGggZD0iTTE0IDIxLjI1TDE3LjQyODYgMjVMMjYgMTUiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .yellow-check-icon {
    width: 40px;
    height: 40px;
  }
}

.grey-uncheck-icon {
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgb3BhY2l0eT0iMC40Ij4KPGNpcmNsZSBjeD0iMjAiIGN5PSIyMCIgcj0iMjAiIGZpbGw9IiM5MzlCQTEiLz4KPHJlY3QgeD0iMTQiIHk9IjI0LjkwOTEiIHdpZHRoPSIxNS40Mjc4IiBoZWlnaHQ9IjEuNTQyNzgiIHJ4PSIwLjc3MTM4OSIgdHJhbnNmb3JtPSJyb3RhdGUoLTQ1IDE0IDI0LjkwOTEpIiBmaWxsPSIjMTQwRjA2IiBzdHJva2U9IiMxNDBGMDYiLz4KPHJlY3QgeD0iMTUuMDkwOCIgeT0iMTQiIHdpZHRoPSIxNS40Mjc4IiBoZWlnaHQ9IjEuNTQyNzgiIHJ4PSIwLjc3MTM4OSIgdHJhbnNmb3JtPSJyb3RhdGUoNDUgMTUuMDkwOCAxNCkiIGZpbGw9IiMxNDBGMDYiIHN0cm9rZT0iIzE0MEYwNiIvPgo8L2c+Cjwvc3ZnPgo=");
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .grey-uncheck-icon {
    width: 40px;
    height: 40px;
  }
}

.rightarrow-dark-blue {
  width: 2.2rem;
  height: 1.4rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyMiAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAgN0gyME0yMCA3TDE0LjI4NTcgMU0yMCA3TDE0LjI4NTcgMTMiIHN0cm9rZT0iIzM5NTE4MCIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}

.ticker-icon-white {
  display: inline-block;
  width: 1.4rem;
  height: 1.3rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAxNCAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEgNy4yNUw0LjQyODU3IDExTDEzIDEiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4K");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

.double-directs-icon {
  width: 2.4rem;
  height: 2.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyNCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIgN0gyMk0yMiA3TDE2LjI4NTcgMU0yMiA3TDE2LjI4NTcgMTMiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIvPgo8cGF0aCBkPSJNMjIgMjFMMiAyMU0yIDIxTDcuNzE0MjkgMjdNMiAyMUw3LjcxNDI5IDE1IiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjIiLz4KPC9zdmc+Cg==");
}

.dropdown-icon {
  width: 1.2rem;
  height: 0.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMSAxTDYgNkwxIDEiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
}

.dropdown-icon-black {
  width: 1.2rem;
  height: 0.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMSAxTDYgNkwxIDEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}

.right-chervon-icon {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4K");
}

.right-chervon-icon-dark {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}

.left-chervon-icon {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik03IDExTDIgNkw3IDEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgoK");
}

.left-chervon-icon-yellow {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iI0ZGRUUwMCIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}

.article-icon-dark {
  width: 1.7rem;
  height: 2.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAxNyAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xIDFIMTIuNTAxNkwxNiA0Ljg0OTk2VjIxSDFWMVpNMS43MDMxMiAxLjc2MDcxVjIwLjIzOTNIMTUuMjk2OVY1LjQxMDEzSDExLjk0NlYxLjc2MDcxSDEuNzAzMTJaTTEyLjY0OTIgMi4yNDc0OFY0LjY0OTQzSDE0LjgzMThMMTIuNjQ5MiAyLjI0NzQ4Wk0xMi45Njc4IDcuODAyNDhINC4wMzIyM1Y3LjA0MTc4SDEyLjk2NzhWNy44MDI0OFpNMTIuOTY3OCAxMC43MDI3SDQuMDMyMjNWOS45NDE5OEgxMi45Njc4VjEwLjcwMjdaTTEyLjk2NzggMTMuNjAyOUg0LjAzMjIzVjEyLjg0MjJIMTIuOTY3OFYxMy42MDI5Wk0xMi45Njc4IDE2LjUwMzFINC4wMzIyM1YxNS43NDI0SDEyLjk2NzhWMTYuNTAzMVoiIGZpbGw9IiMxNDBGMDYiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMC41Ii8+Cjwvc3ZnPgo=");
}

.poi-icon {
  width: 1.3rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxMyAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi41MDAxNiAzLjMxOTI3Yy0xLjczNDc3IDAtMy4xNDYyOCAxLjQwNTMyLTMuMTQ2MjggMy4xMzI4OCAwIDEuNzI3NTYgMS40MTEzMyAzLjEzMjg4IDMuMTQ2MjggMy4xMzI4OHMzLjE0NjI3LTEuNDA1MzIgMy4xNDYyNy0zLjEzMjg4YzAtMS43MjczOC0xLjQxMTUxLTMuMTMyODgtMy4xNDYyNy0zLjEzMjg4em0wIDUuMTQ2ODVjLTEuMTE1MjUgMC0yLjAyMjYyLS45MDM1LTIuMDIyNjItMi4wMTQgMC0xLjExMDUuOTA3MzctMi4wMTQgMi4wMjI2Mi0yLjAxNCAxLjExNTI1IDAgMi4wMjI2MS45MDM1IDIuMDIyNjEgMi4wMTQgMCAxLjExMDUtLjkwNzM2IDIuMDE0LTIuMDIyNjEgMi4wMTR6IiBmaWxsPSIjMTQwRjA2Ii8+PHBhdGggZD0iTTExLjgzMzcgMi43ODE5MUMxMC42MDcgMS4wMTQwOSA4LjY2Mjg3IDAgNi41MDAxOSAwYy0yLjE2MjY4IDAtNC4xMDY4IDEuMDE0MDktNS4zMzM1IDIuNzgxOTEtMS4yMjA2NjQ5IDEuNzU4ODctMS41MDI1MjEgMy45ODU2NS0uNzU1NDY1IDUuOTUzLjE5OTgyLjUzNzI1LjUxNzQ1NCAxLjA1OTIxLjk0MTgyNSAxLjU0ODI5bDQuNzE5NDEgNS41MTk5Yy4xMDY3NC4xMjQ5LjI2MzEyLjE5NjkuNDI3NzMuMTk2OS4xNjQ2MSAwIC4zMjA5OS0uMDcyLjQyNzczLS4xOTY5bDQuNzE4MDgtNS41MTg0Yy40MjYzLS40OTE4OS43NDM1LTEuMDEzMjkuOTQxNi0xLjU0NjIzLjc0ODYtMS45NzA5MS40NjY4LTQuMTk3NjktLjc1MzktNS45NTY1NnptLS4yOTgyIDUuNTY0NzVjLS4xNTI4LjQxMTE4LS40MDIyLjgxNzcyLS43NDEgMS4yMDg3NS0uMDAxLjAwMDkzLS4wMDE5LjAwMTg3LS4wMDI3LjAwM0w2LjUwMDE5IDE0LjU3NzcgMi4yMDU5IDkuNTU1MjVjLS4zMzg2LS4zOTA2OS0uNTg4MDctLjc5NzE5LS43NDIzOC0xLjIxMjMxLS42MTc4MTktMS42MjcwMy0uMzgzMzUtMy40NjgxNi42MjczOS00LjkyNDc1IDEuMDEzOTEtMS40NjEyNSAyLjYyMTEzLTIuMjk5MzEgNC40MDkyOC0yLjI5OTMxIDEuNzg4MTIgMCAzLjM5NTE1LjgzODAzIDQuNDA5MTEgMi4yOTkzMSAxLjAxMDkgMS40NTY1OSAxLjI0NTYgMy4yOTc3Mi42MjYyIDQuOTI4NDd6IiBmaWxsPSIjMTQwRjA2Ii8+PC9zdmc+");
}

.street-icon,
.buildingname-icon {
  width: 1.8rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxOCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAgOC4yNjEyNkMwIDguMjYxMjYgMC41NjQyNDkgOS4zMjc0NyAxLjc5NDY3IDguMjYxMjZMOS4xNDc4OSAxLjg4MzEyTDE2LjA0MjEgOC4yMjE2NEMxNy40NjY0IDkuMjc0ODggMTggOC4yMjE2NCAxOCA4LjIyMTY0TDkuMTQ3ODkgMEwwIDguMjYxMjZaIiBmaWxsPSIjMTQwRjA2Ii8+CjxwYXRoIGQ9Ik0yLjQ0NzQ4IDE1LjU4NzRDMi40NDc0OCAxNS41ODc0IDIuNDMxNDkgMTYgMi44MjQ1MyAxNkMzLjMxMzUgMTYgNy4zNjE4NCAxNS45OTQ1IDcuMzYxODQgMTUuOTk0NUw3LjM2ODUgMTIuMTgyNUM3LjM2ODUgMTIuMTgyNSA3LjMwNDU1IDExLjU1NDEgNy44OTk0NCAxMS41NTQxSDkuNzgyMDRDMTAuNDg1NSAxMS41NTQxIDEwLjQ0MjIgMTIuMTgyNSAxMC40NDIyIDEyLjE4MjVMMTAuNDM0MiAxNS45ODIyQzEwLjQzNDIgMTUuOTgyMiAxNC4yNzI3IDE1Ljk4MjIgMTQuODc1NiAxNS45ODIyQzE1LjM3NDYgMTUuOTgyMiAxNS4zNTE5IDE1LjQ2ODYgMTUuMzUxOSAxNS40Njg2VjguNDQwODlMOS4wOTI1NiAyLjczMjEyTDIuNDQ3NDggOC40NDA4OVYxNS41ODc0WiIgZmlsbD0iIzE0MEYwNiIvPgo8L3N2Zz4K");
}

.loc-icon {
  width: 1.3rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxMyAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi41MDAxNiAzLjMxOTI3Yy0xLjczNDc3IDAtMy4xNDYyOCAxLjQwNTMyLTMuMTQ2MjggMy4xMzI4OCAwIDEuNzI3NTYgMS40MTEzMyAzLjEzMjg4IDMuMTQ2MjggMy4xMzI4OHMzLjE0NjI3LTEuNDA1MzIgMy4xNDYyNy0zLjEzMjg4YzAtMS43MjczOC0xLjQxMTUxLTMuMTMyODgtMy4xNDYyNy0zLjEzMjg4em0wIDUuMTQ2ODVjLTEuMTE1MjUgMC0yLjAyMjYyLS45MDM1LTIuMDIyNjItMi4wMTQgMC0xLjExMDUuOTA3MzctMi4wMTQgMi4wMjI2Mi0yLjAxNCAxLjExNTI1IDAgMi4wMjI2MS45MDM1IDIuMDIyNjEgMi4wMTQgMCAxLjExMDUtLjkwNzM2IDIuMDE0LTIuMDIyNjEgMi4wMTR6IiBmaWxsPSIjMTQwRjA2Ii8+PHBhdGggZD0iTTExLjgzMzcgMi43ODE5MUMxMC42MDcgMS4wMTQwOSA4LjY2Mjg3IDAgNi41MDAxOSAwYy0yLjE2MjY4IDAtNC4xMDY4IDEuMDE0MDktNS4zMzM1IDIuNzgxOTEtMS4yMjA2NjQ5IDEuNzU4ODctMS41MDI1MjEgMy45ODU2NS0uNzU1NDY1IDUuOTUzLjE5OTgyLjUzNzI1LjUxNzQ1NCAxLjA1OTIxLjk0MTgyNSAxLjU0ODI5bDQuNzE5NDEgNS41MTk5Yy4xMDY3NC4xMjQ5LjI2MzEyLjE5NjkuNDI3NzMuMTk2OS4xNjQ2MSAwIC4zMjA5OS0uMDcyLjQyNzczLS4xOTY5bDQuNzE4MDgtNS41MTg0Yy40MjYzLS40OTE4OS43NDM1LTEuMDEzMjkuOTQxNi0xLjU0NjIzLjc0ODYtMS45NzA5MS40NjY4LTQuMTk3NjktLjc1MzktNS45NTY1NnptLS4yOTgyIDUuNTY0NzVjLS4xNTI4LjQxMTE4LS40MDIyLjgxNzcyLS43NDEgMS4yMDg3NS0uMDAxLjAwMDkzLS4wMDE5LjAwMTg3LS4wMDI3LjAwM0w2LjUwMDE5IDE0LjU3NzcgMi4yMDU5IDkuNTU1MjVjLS4zMzg2LS4zOTA2OS0uNTg4MDctLjc5NzE5LS43NDIzOC0xLjIxMjMxLS42MTc4MTktMS42MjcwMy0uMzgzMzUtMy40NjgxNi42MjczOS00LjkyNDc1IDEuMDEzOTEtMS40NjEyNSAyLjYyMTEzLTIuMjk5MzEgNC40MDkyOC0yLjI5OTMxIDEuNzg4MTIgMCAzLjM5NTE1LjgzODAzIDQuNDA5MTEgMi4yOTkzMSAxLjAxMDkgMS40NTY1OSAxLjI0NTYgMy4yOTc3Mi42MjYyIDQuOTI4NDd6IiBmaWxsPSIjMTQwRjA2Ii8+PC9zdmc+");
}

.mark-icon {
  width: 1rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMCAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMS4wMDEwNSA2LjcxOTk5TDUuMTIxMTcgMTEuNTJsNC4xMjAwOS00LjgwMDAxQzEwLjY4MzMgMi4xMTE5OSA3LjIzNTk2LjcxOTk4NSA1LjEyMTE3LjM1OTk4NS4xMTA5NDcuODM5OTg1LjE0MjY5NyA0Ljk1OTk5IDEuMDAxMDUgNi43MTk5OXoiIGZpbGw9IiMxNDBGMDYiLz48cGF0aCBkPSJNNS4wMDAyOSAyLjQ4OTQ0Yy0xLjMzNDQzIDAtMi40MjAyMSAxLjA1Mzk5LTIuNDIwMjEgMi4zNDk2NnMxLjA4NTYzIDIuMzQ5NjUgMi40MjAyMSAyLjM0OTY1YzEuMzM0NTggMCAyLjQyMDIxLTEuMDUzOTggMi40MjAyMS0yLjM0OTY1IDAtMS4yOTU1My0xLjA4NTc4LTIuMzQ5NjYtMi40MjAyMS0yLjM0OTY2em0wIDMuODYwMTRjLS44NTc4OCAwLTEuNTU1ODYtLjY3NzYzLTEuNTU1ODYtMS41MTA1MSAwLS44MzI4Ny42OTc5OC0xLjUxMDUgMS41NTU4Ni0xLjUxMDUuODU3ODkgMCAxLjU1NTg2LjY3NzYzIDEuNTU1ODYgMS41MTA1IDAgLjgzMjg4LS42OTc5NyAxLjUxMDUxLTEuNTU1ODYgMS41MTA1MXoiIGZpbGw9IiMxNDBGMDYiLz48cGF0aCBkPSJNOS4xMDI4MyAyLjA4NjQzQzguMTU5MjIuNzYwNTcgNi42NjM3NSAwIDUuMDAwMTUgMCAzLjMzNjU1IDAgMS44NDEwNy43NjA1Ny44OTc0NTYgMi4wODY0My0uMDQxNTE5MiAzLjQwNTU5LS4yNTgzMzIgNS4wNzU2Ny4zMTYzMjcgNi41NTExOGMuMTUzNzA4LjQwMjk0LjM5ODA0MS43OTQ0MS43MjQ0ODMgMS4xNjEyNmwzLjYzMDMxIDQuMTM5ODZjLjA4MjExLjA5MzcuMjAyNC4xNDc3LjMyOTAzLjE0NzcuMTI2NjIgMCAuMjQ2OTEtLjA1NC4zMjkwMi0uMTQ3N2wzLjYyOTMtNC4xMzg3NGMuMzI3ODktLjM2ODk1LjU3MTkxLS43NjAwMS43MjQzNC0xLjE1OTcxLjU3NTc5LTEuNDc4MTguMzU4OTktMy4xNDgyNi0uNTc5OTgtNC40Njc0MnptLS4yMjkzNCA0LjE3MzU2Yy0uMTE3NTQuMzA4MzktLjMwOTQ0LjYxMzI5LS41NzAwNC45MDY1Ni0uMDAwNzMuMDAwNzEtLjAwMTQ1LjAwMTQxLS4wMDIwMy4wMDIyNWwtMy4zMDEyNyAzLjc2NDUtMy4zMDMzLTMuNzY2ODZjLS4yNjA0Ni0uMjkzMDItLjQ1MjM2LS41OTc4OS0uNTcxMDctLjkwOTI0LS40NzUyNDEtMS4yMjAyNy0uMjk0ODgxLTIuNjAxMTEuNDgyNjEtMy42OTM1NkMyLjM4ODMyIDEuNDY3NyAzLjYyNDY1LjgzOTE1NiA1LjAwMDE1LjgzOTE1NmMxLjM3NTQ3IDAgMi42MTE2NS42Mjg1MjQgMy4zOTE2IDEuNzI0NDg0Ljc3NzY0IDEuMDkyNDUuOTU4MTUgMi40NzMyOS40ODE3NCAzLjY5NjM1eiIgZmlsbD0iIzE0MEYwNiIvPjxwYXRoIGQ9Ik0yLjUgNC44MDAwMmMwLTEuMzIzNDMgMS4xMjE1Ny0yLjQgMi41LTIuNHMyLjUgMS4wNzY3MSAyLjUgMi40YzAgMS4zMjM0NC0xLjEyMTQyIDIuNC0yLjUgMi40cy0yLjUtMS4wNzY1Ni0yLjUtMi40eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
}

.close-icon {
  width: 1.6rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeT0iMTQuMTQyMiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIiIHJ4PSIxIiB0cmFuc2Zvcm09InJvdGF0ZSgtNDUgMCAxNC4xNDIyKSIgZmlsbD0id2hpdGUiLz4KPHJlY3QgeD0iMS40MTQxOCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIiIHJ4PSIxIiB0cmFuc2Zvcm09InJvdGF0ZSg0NSAxLjQxNDE4IDApIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
}

.accessibility-icon {
  width: 3.1rem;
  height: 3.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzEiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMSAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjI3MTIgNi42MjUwMmgxLjI1MTF2NC42ODc0OGg2Ljg4MXYxLjI1aC02Ljg4MXY0LjA2MjZoOS4xMjA2bDQuOTMgOC42MjAxIDMuMjY2OC0xLjA4OC4zOTU2IDEuMTg1OC00LjIzOTggMS40MTIxLTUuMDc4Ni04Ljg4aC05LjY0NTdWNi42MjUwMnoiIGZpbGw9IiMxNDBGMDYiLz48cGF0aCBkPSJNNy4yNTUxNyAxMS43MjY5QzMuNTg3MzQgMTMuMjEwNCAxIDE2LjgwMzMgMSAyMWMwIDUuNTIyOCA0LjQ4MTA0IDEwIDEwLjAwODcgMTAgNC4yMDAzIDAgNy43OTY0LTIuNTg1MiA5LjI4MTEtNi4yNWgtMi4wNjUxYy0xLjM1NjIgMi41OTk5LTQuMDc4NiA0LjM3NS03LjIxNiA0LjM3NS00LjQ5MTIzIDAtOC4xMzIwOC0zLjYzNzctOC4xMzIwOC04LjEyNSAwLTMuMTM0NiAxLjc3NjU3LTUuODU0NiA0LjM3ODU1LTcuMjA5N3YtMi4wNjM0ek0xNC4wMjQ3IDQuMTI1MDJjMCAxLjcyNTg5LTEuNDAwMyAzLjEyNTAxLTMuMTI3NyAzLjEyNTAxLTEuNzI3MzkgMC0zLjEyNzcyLTEuMzk5MTItMy4xMjc3Mi0zLjEyNTAxQzcuNzY5MjggMi4zOTkxMiA5LjE2OTYxIDEgMTAuODk3IDFjMS43Mjc0IDAgMy4xMjc3IDEuMzk5MTIgMy4xMjc3IDMuMTI1MDJ6IiBmaWxsPSIjMTQwRjA2Ii8+PHBhdGggY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTAuMjcxMiA2LjYyNTAyaDEuMjUxMXY0LjY4NzQ4aDYuODgxdjEuMjVoLTYuODgxdjQuMDYyNmg5LjEyMDZsNC45MyA4LjYyMDEgMy4yNjY4LTEuMDg4LjM5NTYgMS4xODU4LTQuMjM5OCAxLjQxMjEtNS4wNzg2LTguODhoLTkuNjQ1N1Y2LjYyNTAyeiIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNNy4yNTUxNyAxMS43MjY5QzMuNTg3MzQgMTMuMjEwNCAxIDE2LjgwMzMgMSAyMWMwIDUuNTIyOCA0LjQ4MTA0IDEwIDEwLjAwODcgMTAgNC4yMDAzIDAgNy43OTY0LTIuNTg1MiA5LjI4MTEtNi4yNWgtMi4wNjUxYy0xLjM1NjIgMi41OTk5LTQuMDc4NiA0LjM3NS03LjIxNiA0LjM3NS00LjQ5MTIzIDAtOC4xMzIwOC0zLjYzNzctOC4xMzIwOC04LjEyNSAwLTMuMTM0NiAxLjc3NjU3LTUuODU0NiA0LjM3ODU1LTcuMjA5N3YtMi4wNjM0ek0xNC4wMjQ3IDQuMTI1MDJjMCAxLjcyNTg5LTEuNDAwMyAzLjEyNTAxLTMuMTI3NyAzLjEyNTAxLTEuNzI3MzkgMC0zLjEyNzcyLTEuMzk5MTItMy4xMjc3Mi0zLjEyNTAxQzcuNzY5MjggMi4zOTkxMiA5LjE2OTYxIDEgMTAuODk3IDFjMS43Mjc0IDAgMy4xMjc3IDEuMzk5MTIgMy4xMjc3IDMuMTI1MDJ6IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPgo=");
}

::-webkit-input-placeholder {
  color: #939BA1;
  opacity: 1;
}

:-moz-placeholder {
  color: #939BA1;
  opacity: 1;
}

::-moz-placeholder {
  color: #939BA1;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #939BA1;
  opacity: 1;
}

form.margin-top, .tabpanel-filter.margin-top {
  margin-top: 2rem;
}
form input,
form select,
form textarea, .tabpanel-filter input,
.tabpanel-filter select,
.tabpanel-filter textarea {
  font-family: "Helvetica Neue", "Arial", sans-serif;
}
form input[type=number],
form input[type=text],
form input[type=search],
form input[type=password],
form input[type=email],
form input[type=tel],
form select,
form textarea,
form input[type=date], .tabpanel-filter input[type=number],
.tabpanel-filter input[type=text],
.tabpanel-filter input[type=search],
.tabpanel-filter input[type=password],
.tabpanel-filter input[type=email],
.tabpanel-filter input[type=tel],
.tabpanel-filter select,
.tabpanel-filter textarea,
.tabpanel-filter input[type=date] {
  background: #FFFFFF;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  box-shadow: 0 0 0 0.2rem #140F06;
  font-size: 1.4rem;
  line-height: 1.615;
  font-weight: 400;
  will-change: box-shadow;
  transition: box-shadow 0.125s linear;
  padding: 1.9rem 1.5rem;
  width: 100%;
  height: 6rem;
  border-radius: 4px;
  color: #000000;
}
form input[type=number]:disabled,
form input[type=text]:disabled,
form input[type=search]:disabled,
form input[type=password]:disabled,
form input[type=email]:disabled,
form input[type=tel]:disabled,
form select:disabled,
form textarea:disabled,
form input[type=date]:disabled, .tabpanel-filter input[type=number]:disabled,
.tabpanel-filter input[type=text]:disabled,
.tabpanel-filter input[type=search]:disabled,
.tabpanel-filter input[type=password]:disabled,
.tabpanel-filter input[type=email]:disabled,
.tabpanel-filter input[type=tel]:disabled,
.tabpanel-filter select:disabled,
.tabpanel-filter textarea:disabled,
.tabpanel-filter input[type=date]:disabled {
  background: #E3E6E9;
}
@media (max-width: 840px) {
  form input[type=number],
form input[type=text],
form input[type=search],
form input[type=password],
form input[type=email],
form input[type=tel],
form select,
form textarea,
form input[type=date], .tabpanel-filter input[type=number],
.tabpanel-filter input[type=text],
.tabpanel-filter input[type=search],
.tabpanel-filter input[type=password],
.tabpanel-filter input[type=email],
.tabpanel-filter input[type=tel],
.tabpanel-filter select,
.tabpanel-filter textarea,
.tabpanel-filter input[type=date] {
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
    height: 5rem;
  }
}
form input[type=number].short,
form input[type=text].short,
form input[type=search].short,
form input[type=password].short,
form input[type=email].short,
form input[type=tel].short,
form select.short,
form textarea.short,
form input[type=date].short, .tabpanel-filter input[type=number].short,
.tabpanel-filter input[type=text].short,
.tabpanel-filter input[type=search].short,
.tabpanel-filter input[type=password].short,
.tabpanel-filter input[type=email].short,
.tabpanel-filter input[type=tel].short,
.tabpanel-filter select.short,
.tabpanel-filter textarea.short,
.tabpanel-filter input[type=date].short {
  width: 50%;
}
form select, .tabpanel-filter select {
  background-size: 1.2rem 0.8rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMSAxTDYgNkwxIDEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-repeat: no-repeat;
  background-position: right 2rem center;
  padding-right: 4rem;
}
form select::-ms-expand, .tabpanel-filter select::-ms-expand {
  display: none;
}
form textarea, .tabpanel-filter textarea {
  resize: none;
}
form .checkbox-standard, .tabpanel-filter .checkbox-standard {
  display: none;
}
form .checkbox-standard + label, .tabpanel-filter .checkbox-standard + label {
  position: relative;
  padding-left: 4.3rem;
}
form .checkbox-standard + label:before, .tabpanel-filter .checkbox-standard + label:before {
  content: "";
  display: block;
  width: 2.8rem;
  height: 2.8rem;
  border: 0.1rem solid rgba(0, 0, 0, 0.75);
  border-radius: 0;
  background: #FFFFFF;
  position: absolute;
  top: 0;
  left: 0;
}
form .checkbox-standard + label:after, .tabpanel-filter .checkbox-standard + label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAxNCAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA3LjI1TDQuMjQzIDExIDEzIDEiIHN0cm9rZT0iIzk0MDAwMCIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.4rem 1.3rem;
  width: 2.8rem;
  height: 2.8rem;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.2s linear;
}
form .checkbox-standard:checked + label:after, .tabpanel-filter .checkbox-standard:checked + label:after {
  opacity: 1;
}
form label, .tabpanel-filter label {
  display: block;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.6rem;
  line-height: 1.5625;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #140F06;
  margin-bottom: 1.85rem;
}
form .req, .tabpanel-filter .req {
  color: #E6272D;
}
form .form-group, .tabpanel-filter .form-group {
  margin-bottom: 2rem;
}
form .form-group.double, .tabpanel-filter .form-group.double {
  margin-bottom: 4rem;
}
form .form-checkbox label, .tabpanel-filter .form-checkbox label {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.3rem;
  line-height: 1.615;
  font-weight: 400;
  text-transform: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  margin-bottom: 0;
}
form .form-checkbox input[type=checkbox], .tabpanel-filter .form-checkbox input[type=checkbox] {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
}
form .form-checkbox input[type=checkbox]:checked + label:after, .tabpanel-filter .form-checkbox input[type=checkbox]:checked + label:after {
  opacity: 1;
}
@media (max-width: 540px) {
  form label, .tabpanel-filter label {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }
}

form .form-group.error input {
  box-shadow: 0 0 0 0.2rem #D32533;
}
form .form-group.error .error-message {
  position: absolute;
  top: 100%;
  left: 1.5rem;
  font-size: 1.4rem;
  line-height: 1.2;
  font-weight: 600;
  color: #D32533;
  padding-top: 1rem;
}
@media (max-width: 1024px) {
  form .form-group.error .error-message {
    position: relative;
    left: 0;
  }
}

.search-form-group {
  position: relative;
  margin: 0;
  max-width: 72rem;
  width: 100%;
}
.search-form-group .search-field {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 6rem;
  border-radius: 4px;
  background-color: #FFFFFF;
  vertical-align: middle;
}
.search-form-group .search-field input {
  height: 100%;
}
.search-form-group .form-search-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxNyAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTEgMTFsNSA1IiBzdHJva2U9IiMxNDBGMDYiIHN0cm9rZS13aWR0aD0iMiIvPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI2IiBzdHJva2U9IiMxNDBGMDYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #FFEE00;
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
  width: 6rem;
  height: 6rem;
  font-size: 0;
  border: none;
  pointer-events: auto;
  z-index: 2;
}
@media (max-width: 840px) {
  .search-form-group .search-field {
    height: 5rem;
  }
  .search-form-group .form-search-button {
    width: 5rem;
    height: 5rem;
  }
}

.input-group > * {
  flex-basis: 50%;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .input-group > * {
    max-width: 50%;
  }
}
.input-group > *:first-child input[type=text] {
  border-radius: 4px 0 0 4px;
}
.input-group > *:last-child {
  border-radius: 0 4px 4px 0;
}

.input-radio-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -1rem -1.5rem;
}
.input-radio-group .input-radio {
  font-size: 1.6rem;
  margin: 0;
  padding: 1rem 1.5rem;
  flex-basis: 33.33%;
  align-self: stretch;
  min-height: 7rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .input-radio-group .input-radio {
    max-width: 33.33%;
  }
}
.input-radio-group .input-radio label {
  position: relative;
  display: block;
  cursor: pointer;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.01em;
  height: 100%;
  padding: 1.05rem 1.5rem 1.05rem 5rem;
  margin-bottom: 0;
  border: 2px solid #140F06;
  border-radius: 4px;
  color: rgba(20, 15, 6, 0.7);
}
.input-radio-group .input-radio label span.bolder {
  font-weight: 700;
  display: block;
  color: #140F06;
}
.input-radio-group .input-radio label span.bolder:only-child {
  display: flex;
  flex-direction: row;
  align-items: top;
  justify-content: flex-start;
  height: 100%;
}
.input-radio-group .input-radio label span {
  display: block;
}
.input-radio-group .input-radio label span + span:not(:empty) {
  margin-top: 0.6rem;
  color: rgba(20, 15, 6, 0.7);
}
.input-radio-group .input-radio label:before {
  content: "";
  display: block;
  border: 1px solid #999999;
  border-radius: 50%;
  background: #FFFFFF;
  position: absolute;
  top: 1.05rem;
  left: 1.05rem;
  width: 2rem;
  height: 2rem;
  border: 2px solid #E3E6E9;
}
.input-radio-group .input-radio label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEwIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDQuNzVMMy4yODU3MSA3TDkgMSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 10px 9px;
  border-radius: 50%;
  position: absolute;
  top: 1.05rem;
  left: 1.05rem;
  width: 2rem;
  height: 2rem;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.input-radio-group .input-radio input[type=radio] {
  display: block;
  margin: 0;
  width: 0;
  height: 0;
  opacity: 0;
  font-size: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-radio-group .input-radio input[type=radio]:focus + label {
  outline: -webkit-focus-ring-color auto 5px;
  outline-color: -webkit-focus-ring-color;
  outline-style: auto;
  outline-width: 5px;
}
.input-radio-group .input-radio input[type=radio]:checked + label {
  background-color: #395180;
  color: #FFFFFF;
}
.input-radio-group .input-radio input[type=radio]:checked + label span.bolder, .input-radio-group .input-radio input[type=radio]:checked + label span + span:not(:empty) {
  color: #FFFFFF;
}
.input-radio-group .input-radio input[type=radio]:checked + label::before {
  border-color: #FFFFFF;
  background: transparent;
}
.input-radio-group .input-radio input[type=radio]:checked + label::after {
  opacity: 1;
}
.input-radio-group.small .input-radio {
  flex-basis: 20%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .input-radio-group.small .input-radio {
    max-width: 20%;
  }
}
@media (max-width: 840px) {
  .input-radio-group .input-radio {
    flex-basis: 50%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .input-radio-group .input-radio {
    max-width: 50%;
  }
}
@media (max-width: 840px) {
  .input-radio-group.small .input-radio {
    flex-basis: 33.33%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .input-radio-group.small .input-radio {
    max-width: 33.33%;
  }
}
@media (max-width: 540px) {
  .input-radio-group {
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
  }
  .input-radio-group .input-radio {
    flex-basis: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .input-radio-group .input-radio {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .input-radio-group.small .input-radio {
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .input-radio-group.small .input-radio {
    max-width: 100%;
  }
}

.input-checkbox-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: -1rem -1.5rem;
}
.input-checkbox-group .input-checkbox {
  font-size: 1.6rem;
  margin: 0;
  padding: 1rem 1.5rem;
  flex-basis: 33.33%;
  align-self: stretch;
  min-height: 7rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .input-checkbox-group .input-checkbox {
    max-width: 33.33%;
  }
}
.input-checkbox-group .input-checkbox label {
  position: relative;
  display: block;
  cursor: pointer;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.01em;
  height: 100%;
  padding: 1.05rem 1.5rem 1.05rem 5rem;
  margin-bottom: 0;
  border: 2px solid #140F06;
  border-radius: 4px;
  color: rgba(20, 15, 6, 0.7);
}
.input-checkbox-group .input-checkbox label span.bolder {
  font-weight: 700;
  display: block;
  color: #140F06;
}
.input-checkbox-group .input-checkbox label span.bolder:only-child {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
}
.input-checkbox-group .input-checkbox label span {
  display: block;
}
.input-checkbox-group .input-checkbox label span + span {
  margin-top: 0.6rem;
}
.input-checkbox-group .input-checkbox label:before {
  content: "";
  display: block;
  border: 1px solid #999999;
  border-radius: 2px;
  background: #FFFFFF;
  position: absolute;
  top: 1.05rem;
  left: 1.05rem;
  width: 2rem;
  height: 2rem;
  border: 2px solid #E3E6E9;
}
.input-checkbox-group .input-checkbox label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEwIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDQuNzVMMy4yODU3MSA3TDkgMSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 10px 9px;
  border-radius: 2px;
  position: absolute;
  top: 1.05rem;
  left: 1.05rem;
  width: 2rem;
  height: 2rem;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.input-checkbox-group .input-checkbox input[type=checkbox] {
  display: block;
  margin: 0;
  width: 0;
  height: 0;
  opacity: 0;
  font-size: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-checkbox-group .input-checkbox input[type=checkbox]:focus + label {
  outline: -webkit-focus-ring-color auto 5px;
  outline-color: -webkit-focus-ring-color;
  outline-style: auto;
  outline-width: 5px;
}
.input-checkbox-group .input-checkbox input[type=checkbox]:checked + label {
  background-color: #395180;
  color: #FFFFFF;
}
.input-checkbox-group .input-checkbox input[type=checkbox]:checked + label span.bolder {
  color: #FFFFFF;
}
.input-checkbox-group .input-checkbox input[type=checkbox]:checked + label::before {
  border-color: #FFFFFF;
  background: transparent;
}
.input-checkbox-group .input-checkbox input[type=checkbox]:checked + label:after {
  opacity: 1;
}
@media (max-width: 540px) {
  .input-checkbox-group {
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
  }
  .input-checkbox-group .input-checkbox {
    flex-basis: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .input-checkbox-group .input-checkbox {
    max-width: 100%;
  }
}

.input-checkbox-simple-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.input-checkbox-simple-group .input-checkbox-simple {
  font-size: 1.6rem;
}
.input-checkbox-simple-group .input-checkbox-simple label {
  position: relative;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -0.02em;
  color: #140F06;
  padding-left: 4rem;
  margin-bottom: 0;
}
.input-checkbox-simple-group .input-checkbox-simple label:before {
  content: "";
  display: block;
  position: absolute;
  top: -0.4rem;
  left: 0;
  width: 3rem;
  height: 3rem;
  border-radius: 4px;
  border: 2px solid #140F06;
  background: #FFFFFF;
}
.input-checkbox-simple-group .input-checkbox-simple label:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxMiAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMSA2LjMzMzMzTDQuMjE0MjkgOSAxMSAxIiBzdHJva2U9IiMyMTM0NjIiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 11px;
  border-radius: 4px;
  position: absolute;
  top: -0.4rem;
  left: 0;
  width: 3rem;
  height: 3rem;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.input-checkbox-simple-group .input-checkbox-simple input[type=checkbox] {
  display: block;
  margin: 0;
  width: 0;
  height: 0;
  opacity: 0;
  font-size: 0;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.input-checkbox-simple-group .input-checkbox-simple input[type=checkbox]:focus + label {
  outline: -webkit-focus-ring-color auto 5px;
  outline-color: -webkit-focus-ring-color;
  outline-style: auto;
  outline-width: 5px;
}
.input-checkbox-simple-group .input-checkbox-simple input[type=checkbox]:checked + label::after {
  opacity: 1;
}

.datepicker-form-group {
  position: relative;
  margin: 0;
  width: 100%;
}
.datepicker-form-group .datepicker-field {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 6rem;
  border-radius: 4px;
  background-color: #FFFFFF;
  vertical-align: middle;
}
.datepicker-form-group .datepicker-field input {
  height: 100%;
}
.datepicker-form-group .datepicker-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAxOSAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTguNjYwNyAxLjMzMzMzaC0yLjM3NVYuMzMzMzMzQzE2LjI4NTcuMTQ5IDE2LjEzNDEgMCAxNS45NDY0IDBoLTIuMzc1Yy0uMTg3NiAwLS4zMzkzLjE0OS0uMzM5My4zMzMzMzN2Ljk5OTk5N0g1Ljc2Nzg2Vi4zMzMzMzNDNS43Njc4Ni4xNDkgNS42MTYyIDAgNS40Mjg1NyAwaC0yLjM3NWMtLjE4NzYyIDAtLjMzOTI4LjE0OS0uMzM5MjguMzMzMzMzdi45OTk5OTdILjMzOTI4NkMuMTUxNjYxIDEuMzMzMzMgMCAxLjQ4MjMzIDAgMS42NjY2N1YxOS42NjY3QzAgMTkuODUxLjE1MTY2MSAyMCAuMzM5Mjg2IDIwSDE4LjY2MDdjLjE4NzYgMCAuMzM5My0uMTQ5LjMzOTMtLjMzMzNWMS42NjY2N2MwLS4xODQzNC0uMTUxNy0uMzMzMzQtLjMzOTMtLjMzMzM0em0tNC43NS0uNjY2NjYzaDEuNjk2NFYyLjY2NjY3aC0xLjY5NjRWLjY2NjY2N3ptLTEwLjUxNzg0IDBoMS42OTY0M1YyLjY2NjY3SDMuMzkyODZWLjY2NjY2N3pNLjY3ODU3MSAySDIuNzE0Mjl2MWMwIC4xODQzMy4xNTE2Ni4zMzMzMy4zMzkyOC4zMzMzM2gyLjM3NWMuMTg3NjMgMCAuMzM5MjktLjE0OS4zMzkyOS0uMzMzMzNWMmg3LjQ2NDI0djFjMCAuMTg0MzMuMTUxNy4zMzMzMy4zMzkzLjMzMzMzaDIuMzc1Yy4xODc3IDAgLjMzOTMtLjE0OS4zMzkzLS4zMzMzM1YyaDIuMDM1N3YzSC42Nzg1NzFWMnptMCAxNy4zMzMzVjUuNjY2NjdIMTguMzIxNFYxOS4zMzMzSC42Nzg1NzF6IiBmaWxsPSIjMTQwRjA2Ii8+PHBhdGggZD0iTTIuMzc1IDdoMTQuMjV2LjY2NjY3SDIuMzc1Vjd6TTIuMzc1IDEwLjMzMzNoMTQuMjVWMTFIMi4zNzV2LS42NjY3ek0yLjM3NSAxMy42NjY3aDE0LjI1di42NjY2SDIuMzc1di0uNjY2NnpNMi4zNzUgMTdoMTQuMjV2LjY2NjdIMi4zNzVWMTd6IiBmaWxsPSIjMTQwRjA2Ii8+PHBhdGggZD0iTTIuMzc1IDdoLjY3ODU3djEwLjY2NjdIMi4zNzVWN3pNMTYuMjg1NyA3aC42Nzg2djEwLjY2NjdoLS42Nzg2Vjd6TTcuMTI1IDdoLjY3ODU3djEwLjY2NjdINy4xMjVWN3pNMTEuNTM1NyA3aC42Nzg2djEwLjY2NjdoLS42Nzg2Vjd6IiBmaWxsPSIjMTQwRjA2Ii8+PC9zdmc+");
  background-size: 19px 20px;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
  width: 6rem;
  height: 6rem;
  font-size: 0;
  border: none;
  pointer-events: auto;
  z-index: 2;
}
@media (max-width: 840px) {
  .datepicker-form-group .datepicker-field {
    height: 5rem;
  }
  .datepicker-form-group .datepicker-button {
    width: 5rem;
    height: 5rem;
  }
}

.journey-plan {
  position: relative;
  z-index: 12;
  margin-top: -3rem;
}
.journey-plan .intro-text {
  color: rgba(20, 15, 6, 0.42);
  margin-bottom: 0.6rem;
}
.journey-plan .intro-text + h2 {
  margin-top: 0;
}
.journey-plan::before {
  content: "";
  position: absolute;
  top: 3rem;
  left: 0;
  width: 100%;
  height: calc(100% - 3rem);
  background: linear-gradient(180deg, #D4D7D9 0%, rgba(212, 215, 217, 0) 100%);
  z-index: 0;
}
.journey-plan .middle-wrap {
  position: relative;
  padding: 0 0 5rem;
  z-index: 1;
}
.journey-plan .middle-wrap::before {
  content: "";
  position: absolute;
  top: -3rem;
  left: -6rem;
  width: calc(100% + 12rem);
  height: calc(100% + 3rem);
  background: #FFFFFF;
  z-index: -1;
}
.journey-plan .journey-plan-form .four-cols {
  margin: -1.5rem -1.5rem -3.5rem;
  align-items: flex-end;
  padding-top: 1.5rem;
}
.journey-plan .journey-plan-form .four-cols > *:nth-child(3) {
  flex-basis: 29.2%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .journey-plan .journey-plan-form .four-cols > *:nth-child(3) {
    max-width: 29.2%;
  }
}
.journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
  flex-basis: 20.8%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
    max-width: 20.8%;
  }
}
.journey-plan .journey-plan-form .four-cols .form-group {
  padding: 0 1.5rem;
  margin-bottom: 3.5rem;
  position: relative;
}
.journey-plan .journey-plan-form .four-cols .form-group > button {
  width: 100%;
}
.journey-plan .journey-plan-form .four-cols .search-results {
  position: absolute;
  top: calc(100% - 4px);
  left: 1.3rem;
  width: calc(100% - 2.6rem);
  background: #FFFFFF;
  display: none;
  border-radius: 0 0 4px 4px;
}
.journey-plan .journey-plan-form .four-cols .search-results ul {
  border: 2px solid #140F06;
  border-top: 0;
  border-radius: 0 0 4px 4px;
  padding: 0.4rem 1.5rem 0;
  position: relative;
  max-height: 40rem;
  overflow-y: auto;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li {
  padding: 1.5rem 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li p {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-weight: 700;
  color: #140F06;
  line-height: 1.6;
  margin-bottom: 0;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li p span.smaller {
  font-size: 1rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #939BA1;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li::before {
  content: none;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li[aria-selected=true] {
  opacity: 0.75;
  background-color: rgba(227, 230, 233, 0.5);
}
.journey-plan .journey-plan-form .four-cols .search-results ul li:first-child {
  border-top: 2px solid #140F06;
}
.journey-plan .journey-plan-form .four-cols .search-results ul li + li {
  margin: 0;
  border-top: 1px solid #E3E6E9;
}
.journey-plan .journey-plan-form .four-cols .search-results.show {
  display: block;
  z-index: 10;
}
@media (max-width: 1320px) {
  .journey-plan {
    margin-top: 0;
  }
  .journey-plan::before {
    content: none;
  }
  .journey-plan .middle-wrap {
    padding-top: 5rem;
  }
  .journey-plan .middle-wrap::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .content-block-layout .large-wrap .journey-plan, .content-block-layout .middle-wrap .journey-plan {
    content: none;
  }
}
@media (max-width: 1200px) {
  .journey-plan .middle-wrap {
    padding: 4rem 3rem;
  }
}
@media (max-width: 1024px) {
  .journey-plan .journey-plan-form .four-cols {
    margin-bottom: -1.5rem;
  }
  .journey-plan .journey-plan-form .four-cols > *, .journey-plan .journey-plan-form .four-cols > *:nth-child(3), .journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
    flex-basis: 50%;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .journey-plan .journey-plan-form .four-cols > *, .journey-plan .journey-plan-form .four-cols > *:nth-child(3), .journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
    max-width: 50%;
  }
}
@media (max-width: 1024px) {
  .journey-plan .journey-plan-form .four-cols .form-group {
    margin-bottom: 2rem;
  }
  .journey-plan .journey-plan-form .four-cols .form-group > button {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
@media (max-width: 540px) {
  .journey-plan .intro-text {
    font-size: 1.6rem;
    margin-bottom: 0.6rem;
  }
  .journey-plan .middle-wrap {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .journey-plan .journey-plan-form .four-cols {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 1rem;
  }
  .journey-plan .journey-plan-form .four-cols > *, .journey-plan .journey-plan-form .four-cols > *:nth-child(3), .journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .journey-plan .journey-plan-form .four-cols > *, .journey-plan .journey-plan-form .four-cols > *:nth-child(3), .journey-plan .journey-plan-form .four-cols > *:nth-child(4) {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .journey-plan .journey-plan-form .four-cols .form-group {
    margin-bottom: 1rem;
  }
  .journey-plan .journey-plan-form .four-cols .form-group label {
    display: none;
  }
  .journey-plan .journey-plan-form .four-cols .form-group:last-child {
    margin-bottom: 0;
  }
}
.content-block-layout .large-wrap .journey-plan::before {
  left: calc((100vw - 132rem) * -0.5);
  width: 100vw;
}
.content-block-layout .middle-wrap .journey-plan::before {
  left: calc((100vw - 120rem) * -0.5);
  width: 100vw;
}

.journey-plan.airport {
  margin-top: -7rem;
}
.journey-plan.airport .airport-tabs {
  height: 7rem;
}
.journey-plan.airport .airport-tabs .tab-button {
  width: 33.3333%;
  height: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  color: #FFFFFF;
  border-radius: 0;
  background: #140F06;
  padding: 0 3rem;
  margin-right: 2rem;
  text-align: left;
}
.journey-plan.airport .airport-tabs .tab-button span {
  display: inline-block;
  font-style: italic;
  text-decoration: underline;
}
.journey-plan.airport .airport-tabs .tab-button:first-child {
  margin-left: -3rem;
}
.journey-plan.airport .airport-tabs .tab-button[aria-selected=true] {
  background: #FFFFFF;
  color: #140F06;
}
.journey-plan.airport .airport-tabs .tab-button[aria-selected=false]:focus, .journey-plan.airport .airport-tabs .tab-button[aria-selected=false]:hover {
  opacity: 0.75;
}
.journey-plan.airport::before {
  content: none;
}
.journey-plan.airport .middle-wrap {
  padding-top: 0;
}
.journey-plan.airport .middle-wrap::before {
  top: auto;
  bottom: 0;
  width: calc(100% + 12rem);
  height: calc(100% - 7rem);
}
.journey-plan.airport .journey-plan-form .four-cols {
  padding-top: 7.5rem;
}
@media (max-width: 1320px) {
  .journey-plan.airport .middle-wrap::before {
    left: 0;
    width: 100%;
  }
}
@media (max-width: 840px) {
  .journey-plan.airport {
    margin-top: 0;
  }
  .journey-plan.airport .airport-tabs {
    margin-left: -3rem;
    margin-right: -3rem;
    border-top: 0.5rem solid #140F06;
  }
  .journey-plan.airport .airport-tabs .tab-button {
    width: 50%;
    margin-right: 0;
    padding-bottom: 0.5rem;
  }
  .journey-plan.airport .airport-tabs .tab-button:first-child {
    margin-left: 0;
  }
  .journey-plan.airport .journey-plan-form .four-cols {
    padding-top: 5.5rem;
  }
}
@media (max-width: 540px) {
  .journey-plan.airport .airport-tabs .tab-button {
    font-size: 1.6rem;
  }
  .journey-plan.airport .journey-plan-form .four-cols {
    padding-top: 3rem;
  }
}

.tf-form {
  padding-top: 4rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.tf-form .form-group > label {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-size: 2.4rem;
  line-height: 1.1;
  margin-bottom: 1.2rem;
}
.tf-form .form-group > label span {
  font-size: 1.6rem;
  font-weight: 500;
  color: #939BA1;
  padding-left: 2rem;
}
.tf-form .form-group {
  margin-bottom: 3rem;
  width: 100%;
}
.tf-form .form-group + p {
  margin-top: -2rem;
  margin-bottom: 2.4rem;
}
.tf-form .submit-group {
  width: 100%;
  padding-top: 3rem;
  border-top: 1px solid #140F06;
}
@media (max-width: 540px) {
  .tf-form {
    padding-top: 3rem;
  }
  .tf-form .form-group > label {
    flex-wrap: wrap;
  }
  .tf-form .form-group > label span {
    width: 100%;
    margin-top: 0.6rem;
    padding-left: 0;
  }
  .tf-form .form-group + p {
    order: 1;
    margin-top: -1rem;
  }
  .tf-form .submit-group {
    order: 2;
  }
}

.concession-form ul li {
  line-height: 1.4;
  padding-left: 2rem;
}
.concession-form ul li::before {
  top: 0.5rem;
}
.concession-form ul li + li {
  margin-top: 0.5rem;
}
.concession-form .tablet-only {
  display: none;
}
.concession-form .form-section {
  padding-top: 4rem;
}
.concession-form .form-section h2 {
  margin-bottom: 1.5rem;
}
.concession-form .form-section p + ul, .concession-form .form-section p + p {
  margin-top: 1rem;
}
.concession-form .form-section.bordered {
  padding-bottom: 4rem;
  border-bottom: 2px solid #140F06;
}
.concession-form .subtitle {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.3;
  color: #939BA1;
  margin-bottom: 2rem;
}
.concession-form input[type=number],
.concession-form input[type=text],
.concession-form input[type=search],
.concession-form input[type=password],
.concession-form input[type=email],
.concession-form input[type=tel],
.concession-form select,
.concession-form textarea,
.concession-form input[type=date] {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  height: 5rem;
}
.concession-form .form-group {
  margin-bottom: 1.5rem;
}
.concession-form .form-group > label {
  margin-bottom: 1rem;
  font-weight: 400;
  line-height: 1.4;
}
.concession-form .form-group > label.with-req {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-between;
}
.concession-form .form-group > label.with-req .req-text {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.3;
  color: #939BA1;
}
.concession-form .form-group.error select {
  box-shadow: 0 0 0 0.2rem #D32533;
}
.concession-form .form-group.error .error-message {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}
.concession-form .form-group:last-child {
  margin-bottom: 0;
}
.concession-form .from-input-group {
  max-width: 54rem;
}
.concession-form .datepicker-form-group .datepicker-field {
  height: 5rem;
}
.concession-form .datepicker-form-group .datepicker-button {
  width: 5rem;
  height: 5rem;
}
.concession-form .half-width {
  width: 50%;
  padding-right: 4rem;
}
.concession-form .half-width p + h3 {
  margin-top: 1.5rem;
  margin-bottom: 0;
}
.concession-form .half-width + .two-cols {
  margin-top: -0.5rem;
}
.concession-form .exclamation-icon-red {
  display: block;
  margin-bottom: 0.5rem;
}
.concession-form .important-text {
  line-height: 1.3;
  color: #D32533;
  margin-bottom: 1.5rem;
}
.concession-form .important-text a {
  color: inherit;
}
.concession-form .two-cols {
  margin: -2rem 2rem -2rem -2rem;
}
.concession-form .two-cols > * {
  padding: 2rem;
}
.concession-form .two-cols p strong {
  line-height: 1.2;
}
.concession-form .two-cols ul + p {
  margin-top: 2rem;
}
.concession-form .two-cols ul li .notice-text {
  font-size: 1.4rem;
  line-height: 1.21429;
  letter-spacing: 0;
}
.concession-form .two-cols ul li p + p {
  margin-top: 0.5rem;
}
.concession-form .form-dropzone {
  margin-top: 2.5rem;
}
.concession-form .form-dropzone.error .dropzone {
  box-shadow: 0 0 0 0.2rem #D32533;
}
.concession-form .form-dropzone.error .error-message {
  position: relative;
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.2;
  font-weight: 600;
  color: #D32533;
  padding-top: 1rem;
}
.concession-form .input-checkbox-simple-group {
  margin-bottom: 2rem;
}
.concession-form .input-checkbox-simple-group label a {
  color: #395180;
  text-decoration: underline;
}
.concession-form p + .input-checkbox-simple-group, .concession-form .input-checkbox-simple-group + p {
  margin-top: 3.5rem;
}
.concession-form .signature-text {
  margin-bottom: 1rem;
}
.concession-form .signature-input-group {
  margin: -0.75rem -2rem;
}
.concession-form .signature-input-group > * {
  padding: 0.75rem 2rem;
}
.concession-form .signature-input-group .form-group > label {
  font-size: 1.4rem;
  line-height: 1.21429;
  color: #939BA1;
}
.concession-form .signature-input-group .from-input-group {
  max-width: none;
  margin-bottom: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .concession-form .signature-input-group .from-input-group:first-child {
    max-width: 60%;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .concession-form .signature-input-group .from-input-group:last-child {
    max-width: 40%;
  }
}
.concession-form .signature-input-group + .signature-notice {
  margin-top: 1.5rem;
}
.concession-form .signature-notice span {
  font-weight: 700;
}
.concession-form .signature-notice + .signature-notice {
  margin-top: 0.6rem;
}
.concession-form .submit-group {
  max-width: 31.5rem;
  width: 100%;
  padding-top: 4rem;
}
.concession-form .submit-group input[type=submit] {
  width: 100%;
}
.concession-form .submit-group input[type=submit]:disabled, .concession-form .submit-group input[type=submit][disabled] {
  color: #FFEE00;
  background: #140F06;
}
@media (max-width: 1200px) {
  .concession-form .form-section h2 {
    margin-bottom: 1rem;
  }
}
@media (max-width: 840px) {
  .concession-form .tablet-only {
    display: block;
    margin-top: 2rem;
  }
  .concession-form .desktop-only {
    display: none;
  }
  .concession-form .form-section h2 {
    font-size: 3.2rem;
  }
  .concession-form .half-width {
    width: 100%;
    padding-right: 0;
  }
  .concession-form .two-cols .important-text {
    margin-bottom: 0;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .concession-form .signature-input-group .from-input-group:first-child, .concession-form .signature-input-group .from-input-group:last-child {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .concession-form .form-section {
    padding-top: 3rem;
  }
  .concession-form .form-section h2 {
    font-size: 2.4rem;
    margin-bottom: 0.5rem;
  }
  .concession-form .form-section h3 {
    margin-bottom: 1rem;
  }
  .concession-form .form-section.bordered {
    padding-bottom: 3rem;
  }
  .concession-form .half-width p + ol {
    margin-top: 1.6rem;
  }
  .concession-form .form-dropzone {
    margin-top: 2rem;
  }
  .concession-form p + .input-checkbox-simple-group, .concession-form .input-checkbox-simple-group + p {
    margin-top: 2rem;
  }
  .concession-form .submit-group {
    padding-top: 3rem;
  }
}

.table-container {
  overflow-x: auto;
}
.table-container table {
  white-space: nowrap;
  border-collapse: collapse;
  width: 100%;
  vertical-align: middle;
}
.table-container table thead th {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  color: #140F06;
  padding: 1.5rem 2.2rem;
  background-color: #FFFFFF;
  vertical-align: middle;
}
.table-container table thead th:first-child {
  text-align: left;
}
.table-container table tbody td, .table-container table tbody th {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  color: #140F06;
  padding: 1.5rem 2.2rem;
  vertical-align: middle;
}
.table-container table tbody th:first-child {
  text-align: left;
}
.table-container table tbody tr:nth-child(odd) td, .table-container table tbody tr:nth-child(odd) th {
  background-color: inherit;
}
.table-container table tbody tr:nth-child(even) td, .table-container table tbody tr:nth-child(even) th {
  background-color: inherit;
}
.table-container table thead th:first-child {
  position: absolute;
  width: 20rem;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table-container table thead th:first-child + * {
  padding-left: 20rem;
}
.table-container table tbody tr > *:first-child {
  position: absolute;
  width: 20rem;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table-container table tbody tr > *:first-child + * {
  padding-left: 20rem;
}
@media (max-width: 840px) {
  .table-container {
    width: calc(100% + 2rem);
    margin-left: -1rem;
    overflow-x: auto;
    padding-top: 1.5rem;
  }
  .table-container table {
    white-space: nowrap;
    width: 100%;
  }
  .table-container table thead th {
    font-size: 1.2rem;
    padding: 0.8rem 1rem;
  }
  .table-container table tbody tr > * {
    font-size: 1.4rem;
    padding: 0.8rem 1rem;
  }
}

.table-container.timetable table {
  width: auto;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.table-container.timetable table th, .table-container.timetable table td {
  text-align: center;
  padding: 0.75rem 0.5rem;
  background-color: #FFFFFF;
  border-left: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
}
.table-container.timetable table thead {
  background: #140F06;
}
.table-container.timetable table thead th {
  text-transform: uppercase;
  width: 5.3rem;
  height: 6.2rem;
}
.table-container.timetable table thead th:first-child {
  height: 6.2rem;
  padding-left: 0;
  padding-right: 2rem;
}
.table-container.timetable table thead th:first-child span.scroll-text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  color: #D4D7D9;
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 2.5rem;
}
.table-container.timetable table thead th:first-child span.scroll-text::after {
  content: "";
  width: 100%;
  height: 1rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTI3IDEyIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNENEQ3RDkiIGQ9Ik0wIDVoMTI0djJIMHoiLz48cGF0aCBkPSJNMTIwIDFsNSA1LTUgNSIgc3Ryb2tlPSIjRDREN0Q5IiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4K");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 1rem;
}
.table-container.timetable table tbody td, .table-container.timetable table tbody th {
  font-size: 1.4rem;
  font-weight: 500;
  color: #140F06;
  border-top: 1px solid rgba(20, 15, 6, 0.7);
  border-bottom: 1px solid rgba(20, 15, 6, 0.7);
}
.table-container.timetable table tbody tr:nth-child(odd) {
  background-color: rgba(20, 15, 6, 0.05);
}
.table-container.timetable table tbody tr:nth-child(odd) td, .table-container.timetable table tbody tr:nth-child(odd) th {
  background-color: inherit;
}
.table-container.timetable table tbody tr:nth-child(even) td, .table-container.timetable table tbody tr:nth-child(even) th {
  background-color: inherit;
}
.table-container.timetable table thead th:first-child {
  width: 30rem;
  background: #FFFFFF !important;
}
.table-container.timetable table thead th:first-child + * {
  width: 36.3rem;
  padding-left: 30.5rem;
}
.table-container.timetable table tbody tr > *:first-child {
  background: #939BA1 !important;
  font-weight: 400;
  color: #FFFFFF;
  padding-left: 2rem;
  padding-right: 2rem;
  border-left: 0;
  text-align: left;
  width: 30rem;
}
.table-container.timetable table tbody tr > *:first-child + * {
  width: 36.3rem;
  padding-left: 30.5rem;
}
.table-container.timetable table tbody tr:nth-child(odd) > *:first-child::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(20, 15, 6, 0.05);
}
@media (max-width: 840px) {
  .table-container.timetable {
    width: 100%;
    padding-top: 0;
  }
  .table-container.timetable table thead th:first-child, .table-container.timetable table tbody tr > *:first-child {
    width: 20rem;
  }
  .table-container.timetable table thead th:first-child + *, .table-container.timetable table tbody tr > *:first-child + * {
    width: 26.3rem;
    padding-left: 20.5rem;
  }
}
@media (max-width: 540px) {
  .table-container.timetable {
    width: calc(100% + 6rem);
  }
  .table-container.timetable table thead th {
    height: 5.6rem;
  }
  .table-container.timetable table thead th:first-child {
    height: 5.6rem;
    padding-left: 2rem;
  }
  .table-container.timetable table tbody > tr:first-child {
    border-top: 3px solid #140F06;
  }
  .table-container.timetable table tbody > tr:first-child > *:first-child {
    border-top: 0;
  }
  .table-container.timetable table tbody > tr:last-child {
    border-bottom: 3px solid #140F06;
  }
}

.table-container.prices .ticket-price-table {
  width: 100%;
}
.table-container.prices .ticket-price-table > * {
  border-top: 1px solid #939BA1;
}
.table-container.prices .ticket-price-table > *:last-child {
  border-bottom: 1px solid #939BA1;
}
.table-container.prices .ticket-price-table .table-row-group + .table-row-group,
.table-container.prices .ticket-price-table .table-row + .table-row {
  border-top: 1px solid #939BA1;
}
.table-container.prices .ticket-price-table .table-row {
  display: flex;
  flex-direction: row;
}
.table-container.prices .ticket-price-table .table-row > * {
  border-left: 1px solid #939BA1;
}
.table-container.prices .ticket-price-table .table-row > *:nth-child(1) {
  flex-basis: 18.31%;
  flex-grow: 0;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .table-container.prices .ticket-price-table .table-row > *:nth-child(1) {
    max-width: 18.31%;
  }
}
.table-container.prices .ticket-price-table .table-row > *:nth-child(n+2) {
  flex-basis: 0;
  flex-grow: 1;
  flex-shrink: 0;
}
.table-container.prices .ticket-price-table .table-row > *:last-child {
  border-right: 1px solid #939BA1;
}
.table-container.prices .ticket-price-table .table-row .col-header, .table-container.prices .ticket-price-table .table-row .table-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1.8rem 2rem;
}
.table-container.prices .ticket-price-table .table-row .col-header:first-child, .table-container.prices .ticket-price-table .table-row .table-cell:first-child {
  align-items: flex-start;
}
.table-container.prices .ticket-price-table .table-row .col-header:nth-child(2n), .table-container.prices .ticket-price-table .table-row .table-cell:nth-child(2n) {
  background: rgba(227, 230, 233, 0.3);
}
.table-container.prices .ticket-price-table.term-prices .table-row .col-header:nth-child(2) {
  background-color: transparent;
}
.table-container.prices .ticket-price-table.term-prices .table-row .table-cell:nth-child(2) {
  background: white;
}
.table-container.prices .ticket-price-table.term-prices .table-row .table-cell:nth-child(2) p {
  font-weight: 700;
}
.table-container.prices .ticket-price-table .header-table-row {
  background: #140F06;
}
.table-container.prices .ticket-price-table .table-row .col-header p {
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
}
.table-container.prices .ticket-price-table .table-row .table-cell p, .table-container.prices .ticket-price-table .table-row .table-cell span {
  color: #140F06;
  font-weight: 400;
}
.table-container.prices .ticket-price-table .table-row .table-cell:first-child p {
  font-weight: 700;
}
.table-container.prices .ticket-price-table [hidden] {
  display: none !important;
}
@media (max-width: 1024px) {
  .table-container.prices .ticket-price-table .table-row > *:nth-child(1), .table-container.prices .ticket-price-table .table-row > *:nth-child(n+2) {
    flex-basis: 0;
    flex-grow: 1;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .table-container.prices .ticket-price-table .table-row > *:nth-child(1), .table-container.prices .ticket-price-table .table-row > *:nth-child(n+2) {
    max-width: none;
  }
}
@media (max-width: 840px) {
  .table-container.prices {
    width: 100%;
    margin-left: 0;
    padding-top: 0;
    padding-bottom: 2rem;
    position: relative;
    overflow: visible;
  }
  .table-container.prices .ticket-price-table > *, .table-container.prices .ticket-price-table > *:last-child, .table-container.prices .ticket-price-table .table-row-group + .table-row-group, .table-container.prices .ticket-price-table .table-row + .table-row {
    border-top: 0;
    border-bottom: 0;
  }
  .table-container.prices .ticket-price-table .table-row-group + .table-row-group {
    margin-top: 2rem;
  }
  .table-container.prices .ticket-price-table .table-row {
    flex-direction: column;
  }
  .table-container.prices .ticket-price-table .table-row > *:nth-child(1), .table-container.prices .ticket-price-table .table-row > *:nth-child(n+2) {
    flex-basis: auto;
    flex-grow: 0;
  }
  .table-container.prices .ticket-price-table .table-row > * {
    border-left: 0;
    border-bottom: 1px solid #D4D7D9;
  }
  .table-container.prices .ticket-price-table .table-row > *:first-child {
    border-bottom: 0;
  }
  .table-container.prices .ticket-price-table .table-row > *:last-child {
    border-right: 0;
    border-bottom: 0;
  }
  .table-container.prices .ticket-price-table .table-row + .table-row {
    margin-top: 1.6rem;
  }
  .table-container.prices .ticket-price-table .table-row .col-header, .table-container.prices .ticket-price-table .table-row .table-cell {
    flex-direction: row;
    justify-content: space-between;
    padding: 1rem 0;
  }
  .table-container.prices .ticket-price-table .table-row .col-header:nth-child(2n), .table-container.prices .ticket-price-table .table-row .table-cell:nth-child(2n) {
    background: transparent;
  }
  .table-container.prices .ticket-price-table .table-row .table-cell span + p {
    font-weight: 700;
  }
  .table-container.prices .ticket-price-table .table-row .table-cell:first-child {
    padding-top: 0;
  }
  .table-container.prices .ticket-price-table .table-row .table-cell:first-child p {
    font-size: 2rem;
  }
  .table-container.prices::before {
    content: "";
    position: absolute;
    left: -3rem;
    bottom: 0;
    width: calc(100% + 6rem);
    height: 1px;
    background: #D4D7D9;
  }
}
@media (max-width: 540px) {
  .table-container.prices .ticket-price-table .table-row .col-header, .table-container.prices .ticket-price-table .table-row .table-cell {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }
  .table-container.prices .ticket-price-table .table-row .table-cell:first-child {
    padding-bottom: 1.35rem;
  }
}

.table-container.airport-info > .heading {
  margin-bottom: 4rem;
}
.table-container.airport-info .airport-info-table {
  width: 100%;
}
.table-container.airport-info .airport-info-table .table-row-group + .table-row-group,
.table-container.airport-info .airport-info-table .table-row + .table-row {
  border-top: 1px solid #939BA1;
}
.table-container.airport-info .airport-info-table .table-row {
  display: flex;
  flex-direction: row;
}
.table-container.airport-info .airport-info-table .table-row > * {
  flex-basis: 25%;
  flex-grow: 0;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .table-container.airport-info .airport-info-table .table-row > * {
    max-width: 25%;
  }
}
.table-container.airport-info .airport-info-table .table-row > *:not(:first-child) {
  border-left: 1px solid #939BA1;
}
.table-container.airport-info .airport-info-table .table-row .col-header, .table-container.airport-info .airport-info-table .table-row .table-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem 3rem 1.6rem;
}
.table-container.airport-info .airport-info-table .table-row .col-header:first-child, .table-container.airport-info .airport-info-table .table-row .table-cell:first-child {
  align-items: flex-start;
}
.table-container.airport-info .airport-info-table .table-row .col-header:nth-child(2n+1), .table-container.airport-info .airport-info-table .table-row .table-cell:nth-child(2n+1) {
  background: rgba(227, 230, 233, 0.5);
}
.table-container.airport-info .airport-info-table .table-row .col-header p {
  font-weight: 700;
  line-height: 1.2;
  color: #140F06;
}
.table-container.airport-info .airport-info-table .table-row .table-cell p + p {
  margin-top: 0;
}
.table-container.airport-info .airport-info-table .table-row .table-cell .grey-uncheck-icon {
  display: block;
  width: 1.9rem;
  height: 1.9rem;
  margin: 0.8rem auto 0;
}
.table-container.airport-info .airport-info-table .table-row .table-cell .route-text, .table-container.airport-info .airport-info-table .table-row .table-cell .time-text {
  font-size: 1.4rem;
  font-style: italic;
  color: #000000;
  line-height: 1.2;
}
.table-container.airport-info .airport-info-table .table-row .table-cell .route-text span, .table-container.airport-info .airport-info-table .table-row .table-cell .time-text span {
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 700;
  color: #395180;
  text-decoration: underline;
}
.table-container.airport-info .airport-info-table .table-row .table-cell .duration-text {
  font-weight: 700;
  line-height: 1.2;
  color: #140F06;
  margin-top: 0.8rem;
}
.table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) {
  flex-direction: row;
  align-items: flex-start;
  text-align: center;
}
.table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) > * {
  flex-basis: 50%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) > * {
    max-width: 50%;
  }
}
.table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) span {
  display: block;
}
.table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) span.time-text {
  font-style: normal;
  font-weight: 500;
  line-height: 1.357;
}
.table-container.airport-info .airport-info-table [hidden] {
  display: none !important;
}
@media (max-width: 1024px) {
  .table-container.airport-info .airport-info-table .table-row .col-header, .table-container.airport-info .airport-info-table .table-row .table-cell {
    padding-left: 0.8rem;
    padding-right: 0.8rem;
  }
}
@media (max-width: 840px) {
  .table-container.airport-info {
    position: relative;
    width: 100%;
    margin-left: 0;
    padding-top: 3rem;
    overflow-x: visible;
  }
  .table-container.airport-info::before {
    content: "";
    position: absolute;
    top: 0;
    left: -3rem;
    width: calc(100% + 6rem);
    height: 0.5rem;
    background: #140F06;
  }
  .table-container.airport-info > .heading {
    margin-bottom: 1rem;
  }
  .table-container.airport-info .airport-info-table .table-row-group:not(:first-child) + .table-row-group,
.table-container.airport-info .airport-info-table .table-row + .table-row {
    border-top-width: 2px;
    border-top-color: #140F06;
  }
  .table-container.airport-info .airport-info-table .table-row-group:first-child + .table-row-group {
    border-top: 0;
  }
  .table-container.airport-info .airport-info-table .table-row {
    flex-direction: column;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .table-container.airport-info .airport-info-table .table-row > * {
    flex-basis: auto;
    flex-grow: 0;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .table-container.airport-info .airport-info-table .table-row > * {
    max-width: none;
  }
}
@media (max-width: 840px) {
  .table-container.airport-info .airport-info-table .table-row > *:not(:first-child) {
    border-top: 2px solid #E3E6E9;
    border-left: 0;
  }
}
@media (max-width: 840px) {
  .table-container.airport-info .airport-info-table .table-row .col-header, .table-container.airport-info .airport-info-table .table-row .table-cell {
    align-items: flex-start;
    padding: 1rem 0;
  }
  .table-container.airport-info .airport-info-table .table-row .col-header:nth-child(2n+1), .table-container.airport-info .airport-info-table .table-row .table-cell:nth-child(2n+1) {
    background: transparent;
  }
}
@media (max-width: 840px) {
  .table-container.airport-info .airport-info-table .table-row .table-cell .grey-uncheck-icon {
    margin-left: 0;
  }
  .table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) {
    flex-wrap: wrap;
    text-align: left;
  }
  .table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) .mobile-only {
    font-weight: 700;
    line-height: 1.2;
    color: #140F06;
    margin-bottom: 0.8rem;
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .table-container.airport-info .airport-info-table .table-row .table-cell:not(:first-child) .mobile-only {
    max-width: 100%;
  }
}

.tickets-table-container .tickets-table {
  width: 100%;
}
.tickets-table-container .tickets-table .table-row-group + .table-row-group,
.tickets-table-container .tickets-table .table-row + .table-row {
  border-top: 1px solid #939BA1;
}
.tickets-table-container .tickets-table .table-row {
  display: flex;
  flex-direction: row;
}
.tickets-table-container .tickets-table .table-row > *:nth-child(1) {
  flex-basis: 33%;
  flex-grow: 0;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(1) {
    max-width: 33%;
  }
}
.tickets-table-container .tickets-table .table-row > *:nth-child(n+2) {
  flex-basis: 16.75%;
  flex-grow: 0;
  flex-shrink: 1;
  border-left: 1px solid #939BA1;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(n+2) {
    max-width: 16.75%;
  }
}
.tickets-table-container .tickets-table .table-row .col-header, .tickets-table-container .tickets-table .table-row .table-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2.5rem 2rem;
}
.tickets-table-container .tickets-table .table-row .col-header:first-child, .tickets-table-container .tickets-table .table-row .table-cell:first-child {
  align-items: flex-start;
  padding-left: 0;
}
.tickets-table-container .tickets-table .table-row .col-header:last-child, .tickets-table-container .tickets-table .table-row .table-cell:last-child {
  padding-right: 0;
}
.tickets-table-container .tickets-table .table-row .col-header {
  padding-top: 0;
}
.tickets-table-container .tickets-table .table-row .col-header h2 {
  margin-bottom: 0;
}
.tickets-table-container .tickets-table .table-row .col-header i.icon {
  display: block;
  margin: 0 auto 1rem;
}
.tickets-table-container .tickets-table .table-row .col-header i.icon + label {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  color: #140F06;
  letter-spacing: -0.02em;
  line-height: 1.1;
}
.tickets-table-container .tickets-table .table-row .table-cell h3 {
  margin-bottom: 0.6rem;
}
.tickets-table-container .tickets-table .table-row .table-cell p {
  color: rgba(20, 15, 6, 0.7);
  line-height: 1.4;
}
.tickets-table-container .tickets-table .table-row .table-cell i.icon {
  display: block;
}
.tickets-table-container .tickets-table .table-row .table-cell .cta.button, .tickets-table-container .tickets-table .table-row .table-cell .cta.icon-button {
  width: 100%;
  display: block;
  max-width: 18.3rem;
}
.tickets-table-container .tickets-table [hidden] {
  display: none !important;
}
@media (max-width: 1024px) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(-n+4):nth-child(n+2) {
    flex-basis: 15%;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(-n+4):nth-child(n+2) {
    max-width: 15%;
  }
}
@media (max-width: 1024px) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(5) {
    flex-basis: 22%;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(5) {
    max-width: 22%;
  }
}
@media (max-width: 1024px) {
  .tickets-table-container .tickets-table .table-row .col-header, .tickets-table-container .tickets-table .table-row .table-cell {
    padding: 1rem 1.5rem;
  }
  .tickets-table-container .tickets-table .table-row .col-header:first-child, .tickets-table-container .tickets-table .table-row .table-cell:first-child {
    padding-left: 0;
  }
  .tickets-table-container .tickets-table .table-row .col-header:last-child, .tickets-table-container .tickets-table .table-row .table-cell:last-child {
    padding-right: 0;
  }
}
@media (max-width: 1024px) {
  .tickets-table-container .tickets-table .table-row .col-header {
    padding-top: 0;
  }
  .tickets-table-container .tickets-table .table-row .col-header i.icon {
    width: 2.2rem;
    margin-bottom: 0.6rem;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row-group + .table-row-group {
    border-top: 0;
  }
  .tickets-table-container .tickets-table .table-row + .table-row {
    border-top-color: rgba(147, 155, 161, 0.3);
  }
  .tickets-table-container .tickets-table .table-row {
    flex-wrap: wrap;
    padding: 2rem 0 1.5rem;
  }
  .tickets-table-container .tickets-table .table-row > *:nth-child(1), .tickets-table-container .tickets-table .table-row > *:last-child {
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(1), .tickets-table-container .tickets-table .table-row > *:last-child {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(-n+4):nth-child(n+2) {
    flex-basis: 33.33%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(-n+4):nth-child(n+2) {
    max-width: 33.33%;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row > *:nth-child(n+2) {
    border-left: 0;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row.header-table-row {
    padding-top: 0;
    padding-bottom: 1rem;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row .col-header, .tickets-table-container .tickets-table .table-row .table-cell {
    align-items: flex-start;
    padding: 0;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-cell.icon-table-cell {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
  }
  .tickets-table-container .tickets-table .table-cell.icon-table-cell i.icon {
    width: 2rem;
    height: 2rem;
    margin-right: 1rem;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tickets-table-container .tickets-table .table-cell.icon-table-cell i.icon {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-cell.icon-table-cell .mobile-only {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
    color: #140F06;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-cell.icon-table-cell.not-available {
    display: none;
  }
}
@media (max-width: 840px) {
  .tickets-table-container .tickets-table .table-row .table-cell h3 {
    margin-bottom: 0;
  }
  .tickets-table-container .tickets-table .table-row .table-cell:first-child {
    margin-bottom: 1rem;
  }
  .tickets-table-container .tickets-table .table-row .table-cell:last-child {
    margin-top: 2rem;
  }
}

.tickets-table-container.full table {
  table-layout: fixed;
  white-space: initial;
  border-collapse: collapse;
  width: 100%;
}
.tickets-table-container.full td, .tickets-table-container.full th {
  padding: 2rem;
  text-align: center;
  border: 1px solid #939BA1;
  vertical-align: middle;
}
.tickets-table-container.full td:first-child, .tickets-table-container.full th:first-child {
  text-align: left;
  border-left: 0;
}
.tickets-table-container.full td:last-child, .tickets-table-container.full th:last-child {
  border-right: 0;
}
.tickets-table-container.full tr > *:first-child {
  padding-left: 0;
}
.tickets-table-container.full thead tr th {
  border-top: 0;
  width: 18.75%;
}
.tickets-table-container.full thead tr th:first-child {
  width: 25%;
}
.tickets-table-container.full thead tr th .h4 {
  color: #395180;
  line-height: 1.25;
  margin-bottom: 0;
}
.tickets-table-container.full thead tr th .h4 a {
  color: inherit;
  text-decoration: none;
}
.tickets-table-container.full tbody .h4 {
  line-height: 1.25;
  margin-bottom: 0;
}
.tickets-table-container.full tbody h5 {
  margin-bottom: 0.6rem;
}
.tickets-table-container.full tbody td, .tickets-table-container.full tbody th {
  color: #140F06;
}
.tickets-table-container.full tbody p {
  color: #140F06;
  line-height: 1.4;
}
.tickets-table-container.full tbody i.icon {
  margin: auto;
  display: block;
}
.tickets-table-container.full tbody .cta.button, .tickets-table-container.full tbody .cta.icon-button {
  margin-left: 0;
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
}
.tickets-table-container.full tbody .cta.button + .cta.button, .tickets-table-container.full tbody .cta.icon-button + .cta.button, .tickets-table-container.full tbody .cta.button + .cta.icon-button, .tickets-table-container.full tbody .cta.icon-button + .cta.icon-button {
  margin-top: 1.5rem;
}
.tickets-table-container.full tbody tr > * {
  vertical-align: top;
}
.tickets-table-container.full tbody tr:last-child {
  background: #939BA1;
  border-bottom: 0;
}
.tickets-table-container.full tbody tr:last-child > *:nth-child(2n) {
  background: rgba(20, 15, 6, 0.2);
}
.tickets-table-container.full [hidden] {
  display: none !important;
}
@media (max-width: 1024px) {
  .tickets-table-container.full thead tr th {
    width: 22.5%;
  }
  .tickets-table-container.full thead tr th:first-child {
    width: 15%;
  }
  .tickets-table-container.full td, .tickets-table-container.full th {
    padding: 2rem 1.5rem;
  }
}
@media (max-width: 840px) {
  .tickets-table-container.full .full-tickets-list .available-types {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .tickets-table-container.full .full-tickets-list .available-types .type-item {
    flex-grow: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .tickets-table-container.full .full-tickets-list .available-types .type-item i.icon {
    width: 2rem;
    height: 2rem;
    margin-right: 1rem;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tickets-table-container.full .full-tickets-list .available-types .type-item i.icon {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 840px) {
  .tickets-table-container.full .full-tickets-list .available-types .type-item i.icon + label {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
    color: #140F06;
  }
}
@media (max-width: 840px) {
  .tickets-table-container.full .full-tickets-list .available-types .type-item.not-available {
    display: none;
  }
}
@media (max-width: 840px) {
  .tickets-table-container.full .full-tickets-list .ticket-item h2 {
    color: #395180;
    margin-bottom: 0;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item .info-item p + p {
    margin-top: 0;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item > * + * {
    margin-top: 2rem;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item + .ticket-item {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(147, 155, 161, 0.3);
  }
  .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.button, .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.icon-button {
    min-width: 20rem;
  }
}
@media (max-width: 540px) {
  .tickets-table-container.full {
    padding-top: 1.4rem;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item > * + * {
    margin-top: 1.6rem;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.button, .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.icon-button {
    width: 100%;
  }
  .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.button + .cta.button, .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.icon-button + .cta.button, .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.button + .cta.icon-button, .tickets-table-container.full .full-tickets-list .ticket-item .actions .cta.icon-button + .cta.icon-button {
    margin-top: 1rem;
  }
}

.content-rich table {
  border-collapse: collapse;
  width: 100%;
  vertical-align: middle;
}
.content-rich table td, .content-rich table th {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  color: #140F06;
  padding: 1.5rem 2.2rem;
  vertical-align: middle;
  text-align: center;
  border: 1px solid #939BA1;
}
.content-rich table tr:first-child td {
  border-top: none;
}
.content-rich table tr:last-child td {
  border-bottom: none;
}
.content-rich table td:first-child {
  border-left: none;
}
.content-rich table td:last-child {
  border-right: none;
}
.content-rich table tr:nth-child(odd) td, .content-rich table tr:nth-child(odd) th {
  background-color: inherit;
}
.content-rich table tr:nth-child(even) td, .content-rich table tr:nth-child(even) th {
  background-color: inherit;
}

.datepicker {
  position: relative;
}
.datepicker input[type=text] {
  width: 100%;
}
.datepicker .datepicker-dialog {
  position: absolute;
  display: none;
  clear: both;
  padding: 0 2.4rem 2.4rem;
  top: 100%;
  left: 0;
  width: 35.4rem;
  border: 6px solid #140F06;
  background: #FFFFFF;
}
.datepicker .datepicker-dialog .datepicker-header {
  cursor: default;
}
.datepicker .datepicker-dialog .datepicker-header .year-group, .datepicker .datepicker-dialog .datepicker-header .month-group {
  display: flex;
  height: 4.2rem;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #140F06;
}
.datepicker .datepicker-dialog .datepicker-header button {
  padding: 0;
  width: 3rem;
  height: 3rem;
  font-size: 0;
  border-width: 2px;
  border-style: solid;
  border-color: transparent;
  background: transparent;
}
.datepicker .datepicker-dialog .datepicker-header button:focus {
  border-color: #140F06;
  outline: 0;
  border-radius: 4px;
}
.datepicker .datepicker-dialog .datepicker-header .date-text {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #140F06;
  padding: 0 2rem;
}
.datepicker .datepicker-dialog table.dates {
  width: 100%;
}
.datepicker .datepicker-dialog table.dates th, .datepicker .datepicker-dialog table.dates td {
  text-align: center;
}
.datepicker .datepicker-dialog table.dates thead tr {
  background: #E3E6E9;
}
.datepicker .datepicker-dialog table.dates thead tr th {
  width: 4.2rem;
  height: 4.2rem;
}
.datepicker .datepicker-dialog table.dates thead tr th span, .datepicker .datepicker-dialog table.dates .date-button {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 1.4rem;
  letter-spacing: -0.02em;
}
.datepicker .datepicker-dialog table.dates thead tr th span {
  color: #140F06;
  font-weight: 700;
}
.datepicker .datepicker-dialog table.dates .date-cell {
  border: 0;
  margin: 0;
  padding: 0;
  outline: 0;
  width: 4.2rem;
  height: 4.2rem;
}
.datepicker .datepicker-dialog table.dates .date-button {
  border-width: 4px;
  border-color: transparent;
  border-style: solid;
  width: 4.2rem;
  height: 4.2rem;
  background: transparent;
}
.datepicker .datepicker-dialog table.dates .date-button:focus, .datepicker .datepicker-dialog table.dates .date-button:hover {
  background: rgba(227, 230, 233, 0.5);
}
.datepicker .datepicker-dialog table.dates .date-button:focus {
  border-color: #FFFFFF;
  outline: 0;
}
.datepicker .datepicker-dialog table.dates .date-button[aria-selected], .datepicker .datepicker-dialog table.dates .date-button[tabindex="0"] {
  background: #E3E6E9;
}
.datepicker .datepicker-dialog table.dates .disabled, .datepicker .datepicker-dialog table.dates:disabled {
  color: rgba(20, 15, 6, 0.2);
}
@media (max-width: 1200px) {
  .right-align .datepicker .datepicker-dialog {
    left: auto;
    right: 0;
  }
}
@media (max-width: 540px) {
  .datepicker .datepicker-dialog {
    padding: 0 1.5rem 1.5rem;
    border-width: 4px;
    width: 29rem;
  }
  .datepicker .datepicker-dialog table.dates thead tr th, .datepicker .datepicker-dialog table.dates .date-cell, .datepicker .datepicker-dialog table.dates .date-button {
    width: 3.6rem;
    height: 3.6rem;
  }
  .right-align .datepicker .datepicker-dialog {
    left: 0;
    right: auto;
  }
}

.quote-block {
  position: relative;
}
.quote-block .quote-content {
  width: 100%;
  padding-left: 7.2rem;
}
.quote-block .quote-content > p {
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  color: #140F06;
}
.quote-block .quote-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5.2rem;
  height: 5.2rem;
  background-color: #140F06;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxOCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNi43OTU5MiAxNlY5LjExNjI4SDMuMTgzNjdjMC0uNzAyODQuMDQwODItMS40MDU2OS4xMjI0NS0yLjEwODUzLjEyMjQ1LS43NDQxOC4zMjY1My0xLjQwNTY4LjYxMjI1LTEuOTg0NDkuMjg1NzEtLjU3ODgxLjY1MzA2LTEuMDMzNTkgMS4xMDIwNC0xLjM2NDM0LjQ0ODk4LS4zNzIxIDEuMDIwNDEtLjU1ODE0IDEuNzE0MjgtLjU1ODE0VjBjLTEuMTQyODUgMC0yLjE0Mjg1LjI0ODA2My0zIC43NDQxODgtLjg1NzE0LjQ5NjEyMi0xLjU3MTQyIDEuMTU3NjIyLTIuMTQyODUgMS45ODQ0OTItLjUzMDYyLjgyNjg4LS45Mzg3NzggMS43OTg0NS0xLjIyNDQ5MyAyLjkxNDczQy4xMjI0NDkgNi43MTgzNSAwIDcuODc1OTcgMCA5LjExNjI4VjE2aDYuNzk1OTJ6TTE4IDE2VjkuMTE2MjhoLTMuNjEyMmMwLS43MDI4NC4wNDA4LTEuNDA1NjkuMTIyNC0yLjEwODUzLjEyMjUtLjc0NDE4LjMyNjUtMS40MDU2OC42MTIzLTEuOTg0NDkuMjg1Ny0uNTc4ODEuNjUzLTEuMDMzNTkgMS4xMDItMS4zNjQzNC40NDktLjM3MjEgMS4wMjA0LS41NTgxNCAxLjcxNDMtLjU1ODE0VjBjLTEuMTQyOSAwLTIuMTQyOS4yNDgwNjMtMyAuNzQ0MTg4LS44NTcyLjQ5NjEyMi0xLjU3MTUgMS4xNTc2MjItMi4xNDI5IDEuOTg0NDkyLS41MzA2LjgyNjg4LS45Mzg4IDEuNzk4NDUtMS4yMjQ1IDIuOTE0NzMtLjI0NDkgMS4wNzQ5NC0uMzY3MyAyLjIzMjU2LS4zNjczIDMuNDcyODdWMTZIMTh6IiBmaWxsPSIjZmZmIi8+PC9zdmc+");
  font-size: 0;
}
.quote-block .quote-content .quote-author {
  display: block;
}
.quote-block .quote-content .quote-author .author-name-text {
  font-size: 1.8rem;
  font-weight: 700;
  color: #140F06;
  display: block;
}
.quote-block .quote-content .quote-author .author-name-text + span, .quote-block .quote-content .quote-author .author-name-text + p {
  display: block;
  font-size: 1.6rem;
  margin-top: 0;
}
.quote-block::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  z-index: -1;
}
.content-col .quote-block::before {
  left: calc((100vw - 120rem) * -0.5);
  width: calc(100% + (100vw - 120rem) * 0.5);
}
.main-content .quote-block::before {
  left: calc((100vw - 120rem) * -0.5);
  width: calc((100vw - 120rem) * 0.5 + 82.5rem);
}
.large-wrap > .quote-block::before {
  left: calc((100vw - 132rem) * -0.5);
  width: 100vw;
}
.middle-wrap > .quote-block::before {
  left: calc((100vw - 120rem) * -0.5);
  width: 100vw;
}
.bg-dark-blue .quote-block .quote-content p, .bg-dark-blue .quote-block .quote-content .quote-author .author-name-text {
  color: #FFFFFF;
}
@media (max-width: 1320px) {
  .content-col .quote-block::before {
    left: calc((100vw - 120rem) * -0.5);
    width: calc(100% + (100vw - 120rem) * 0.5);
  }
  .main-content .quote-block::before {
    left: calc((82.5rem - 100%) * -0.5 + (100vw - 120rem) * -0.5);
  }
  .large-wrap > .quote-block::before {
    left: -3rem;
  }
}
@media (max-width: 1200px) {
  .content-col .quote-block::before {
    left: -3rem;
    width: calc(100% + 3rem);
  }
  .main-content .quote-block::before {
    left: calc((68.75vw - 100%) * -0.5);
    width: 68.75vw;
  }
  .middle-wrap > .quote-block::before {
    left: -3rem;
  }
}
@media (max-width: 840px) {
  .content-col .quote-block::before {
    left: -3rem;
    width: 100vw;
  }
  .main-content .quote-block::before {
    left: calc((100vw - 100%) * -0.5);
    width: 100vw;
  }
}
@media (max-width: 540px) {
  .quote-block .quote-content {
    padding-left: 0;
  }
  .quote-block .quote-content::before {
    position: relative;
    float: left;
    top: 0;
    left: -1rem;
    width: 3rem;
    height: 3rem;
    background-size: 1.2rem auto;
    margin-right: 1rem;
  }
  .quote-block .quote-content::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1rem;
    height: 3rem;
    background-color: #140F06;
  }
  .content-col .quote-block, .main-content .quote-block, .large-wrap > .quote-block, .middle-wrap > .quote-block {
    padding-left: 0;
    padding-right: 0;
  }
  .content-col .quote-block .quote-content::after, .main-content .quote-block .quote-content::after, .large-wrap > .quote-block .quote-content::after, .middle-wrap > .quote-block .quote-content::after {
    left: -3rem;
  }
  .large-wrap .two-cols .quote-block, .middle-wrap .two-cols .quote-block {
    padding-left: 0;
    padding-right: 0;
  }
  .large-wrap .two-cols .quote-block .quote-content::after, .middle-wrap .two-cols .quote-block .quote-content::after {
    left: -3rem;
  }
}

.cookie {
  background-color: #140F06;
  color: #FFFFFF;
  padding: 1rem 2rem;
  transition: height 0.4s linear;
  overflow: hidden;
}
.cookie.hide {
  display: none;
}
.cookie .inner {
  flex-direction: row;
}
.cookie .inner p {
  padding: 1rem;
  flex-grow: 1;
}
.cookie .inner p a {
  color: #FFEE00;
}
.cookie .inner div {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
@media (max-width: 1024px) {
  .cookie {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
  }
}

.header {
  position: relative;
  width: 100%;
  z-index: 99;
}
.header .mobile-only {
  display: none;
}
.header .menu-toggle {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  width: 10rem;
  height: 6rem;
  z-index: 120;
}
.header .menu-toggle > span {
  font-size: 1.4rem;
  font-weight: 500;
  color: #140F06;
  line-height: 1.3;
}
.header .menu-toggle > .menu-icon {
  width: 2rem;
  height: 100%;
  position: relative;
  margin-left: 1.5rem;
}
.header .menu-toggle > .menu-icon > span {
  display: block;
  border-radius: 1px;
  background: #000000;
  position: absolute;
  right: 0;
  width: 2rem;
  height: 0.2rem;
  will-change: top, opacity, transform;
  transition: top 0.125s linear, opacity 0.125s linear, transform 0.125s linear;
}
.header .menu-toggle > .menu-icon > span:nth-child(1) {
  top: 2.3rem;
}
.header .menu-toggle > .menu-icon > span:nth-child(2) {
  top: 3rem;
}
.header .menu-toggle > .menu-icon > span:nth-child(3) {
  top: 3.7rem;
}
.header .top {
  width: 100%;
  padding: 2rem 0;
  background: #FFFFFF;
}
.header .top .middle-wrap {
  align-content: center;
  justify-content: space-between;
}
.header .top .logo {
  height: 6.2rem;
  font-size: 0;
  z-index: 100;
}
.header .top .logo img, .header .top .logo svg {
  height: 100%;
}
.header .top .co-logos {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.header .top .co-logos > * {
  font-size: 0;
}
.header .top .co-logos > *:first-child img {
  width: auto;
  height: 6rem;
}
.header .bottom {
  width: 100%;
  position: relative;
  color: #FFFFFF;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  border-bottom: 1px solid #FFFFFF;
}
.header .bottom .large-wrap {
  position: relative;
}
.header .bottom .navigation {
  background: #E3E6E9;
  border-radius: 4px 0px 0px 0px;
  font-size: 1.6rem;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0 6rem;
  transition: margin-left 0.25s linear;
}
.header .bottom .navigation > ul {
  justify-content: space-between;
  flex-grow: 1;
}
.header .bottom .navigation > ul > li {
  display: block;
  color: #140F06;
  padding: 0;
}
.header .bottom .navigation > ul > li.mega-list-item {
  position: inherit;
}
.header .bottom .navigation > ul > li::before, .header .bottom .navigation > ul > li ul.nav-dropdown li::before, .header .bottom .navigation > ul > li ul.mega-nav-list > li::before {
  content: none;
}
.header .bottom .navigation > ul > li > a {
  position: relative;
  z-index: 101;
}
.header .bottom .navigation > ul > li > a span {
  position: relative;
  z-index: 1;
  display: block;
}
.header .bottom .navigation > ul > li > a span::before {
  content: "";
  position: absolute;
  top: -1rem;
  left: -2rem;
  width: calc(100% + 4rem);
  height: 5rem;
  border-radius: 4px 4px 0px 0px;
  z-index: -1;
  background: #FFFFFF;
  opacity: 0;
}
.header .bottom .navigation > ul > li > a:focus, .header .bottom .navigation > ul > li > a:hover, .header .bottom .navigation > ul > li > a[aria-expanded=true] {
  opacity: 1;
}
.header .bottom .navigation > ul > li > a:focus span::before, .header .bottom .navigation > ul > li > a:hover span::before, .header .bottom .navigation > ul > li > a[aria-expanded=true] span::before {
  opacity: 1;
}
.header .bottom .navigation > ul > li > a:only-child:focus, .header .bottom .navigation > ul > li > a:only-child:hover {
  opacity: 0.5;
}
.header .bottom .navigation > ul > li > a, .header .bottom .navigation > ul > li > span {
  display: block;
  color: inherit;
  text-decoration: none;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.02em;
  padding: 2.05rem 2rem;
  outline: none;
}
@media (max-width: 1300px) {
  .header .bottom .navigation > ul > li > a, .header .bottom .navigation > ul > li > span {
    padding: 2.05rem 1rem;
  }
}
.header .bottom .navigation > ul > li:first-child ul.nav-dropdown {
  left: -2rem;
}
.header .bottom .navigation > ul > li:first-child > a, .header .bottom .navigation > ul > li:first-child > span {
  padding-left: 0;
}
.header .bottom .navigation > ul > li + li {
  margin-top: 0;
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li, .header .bottom .navigation > ul > li ul.mega-nav-list > li {
  padding-left: 0;
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li a:not(.button):not(.icon-button), .header .bottom .navigation > ul > li ul.mega-nav-list > li a:not(.button):not(.icon-button) {
  padding-left: 0;
  height: 5rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li a:not(.button):not(.icon-button) .icon, .header .bottom .navigation > ul > li ul.mega-nav-list > li a:not(.button):not(.icon-button) .icon {
  width: 1.8rem;
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li + li, .header .bottom .navigation > ul > li ul.mega-nav-list > li + li {
  margin-top: 0;
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li:not(.mobile-only) + li a:not(.button):not(.icon-button), .header .bottom .navigation > ul > li ul.mega-nav-list > li:not(.mobile-only) + li a:not(.button):not(.icon-button) {
  border-top: 1px solid rgba(147, 155, 161, 0.2);
}
.header .bottom .navigation > ul > li ul.nav-dropdown > li a:focus, .header .bottom .navigation > ul > li ul.nav-dropdown > li:hover a, .header .bottom .navigation > ul > li ul.mega-nav-list > li a:focus, .header .bottom .navigation > ul > li ul.mega-nav-list > li:hover a {
  opacity: 0.6;
}
.header .bottom .navigation > ul > li ul.nav-dropdown, .header .bottom .navigation > ul > li .mega-menu {
  display: none;
  position: absolute;
  background: #FFFFFF;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  box-shadow: 0px 3px 20px rgba(0, 0, 0, 0.2);
  border-radius: 0px 0px 4px 4px;
}
.header .bottom .navigation > ul > li ul.nav-dropdown {
  min-width: 27rem;
  padding: 1rem 2rem;
}
.header .bottom .navigation > ul > li .mega-menu {
  width: 100%;
}
.header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li .button, .header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li .icon-button {
  text-transform: capitalize;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}
.header .bottom .navigation > ul > li .mega-menu .menu-accordion {
  padding: 4rem 0 3rem;
}
.header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols {
  margin: 0 1rem 0 -1rem;
  padding: 0;
}
.header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols > * {
  padding: 0 1rem;
}
.header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols > li:nth-child(2) a:not(.button):not(.icon-button) {
  border-top: 0;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer {
  height: 8rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 0 6rem;
  border-radius: 0px 0px 4px 4px;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer h4 {
  color: #FFFFFF;
  margin-bottom: 0;
  padding-right: 3rem;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer h4 a {
  text-decoration: underline;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button {
  font-weight: 700;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button .icon {
  display: none;
}
.header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button span {
  margin-left: 0;
}
.header .bottom .search-button {
  transition: none;
}
.header.scrolling {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 6rem;
}
.header.scrolling .top {
  padding: 0;
}
.header.scrolling .top .logo {
  width: 6rem;
  height: 6rem;
  overflow: hidden;
  font-size: 0;
}
.header.scrolling .top .logo img, .header.scrolling .top .logo svg {
  max-width: none;
}
.header.scrolling .top .co-logos {
  display: none;
}
.header.scrolling .bottom {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: 20;
  border-bottom: none;
}
.header.scrolling .bottom > .large-wrap {
  background: #E3E6E9;
  border-radius: 0 0 4px 4px;
}
.header.scrolling .bottom .navigation, .header.scrolling .bottom .search-button {
  background: transparent;
}
.header.scrolling .bottom .navigation {
  margin-left: 10rem;
}
.header.scrolling .bottom .search-button span {
  font-size: 0;
  display: none;
}
.header.scrolling .bottom .search-button svg > * {
  stroke: #395180;
}
@media (max-width: 1320px) {
  .header .bottom .large-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1200px) {
  .header .bottom .navigation {
    padding-left: 3rem;
    padding-right: 0;
  }
  .header .bottom .navigation > ul > li > a {
    z-index: 0;
  }
  .header .bottom .navigation > ul > li > a span::before {
    left: -1rem;
    width: calc(100% + 2rem);
  }
  .header .bottom .navigation > ul > li > a, .header .bottom .navigation > ul > li > span {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .header .bottom .navigation > ul > li .mega-menu .menu-accordion {
    padding: 3rem 3rem 2rem;
  }
}
@media (max-width: 1024px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    padding: 0;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.05);
  }
  .header .mobile-only {
    display: inline-flex;
  }
  .header .mobile-only.parent-copy {
    display: list-item;
  }
  .header .mobile-only.parent-copy a:not(.button):not(.icon-button) {
    border-bottom: 1px solid rgba(147, 155, 161, 0.2);
  }
  .mega-menu .header .mobile-only.parent-copy {
    display: flex;
  }
  .header .menu-toggle {
    display: flex;
    direction: row;
    align-items: center;
  }
  .header .search-button {
    flex-direction: row-reverse;
    position: fixed;
    top: 0;
    background: transparent;
    border-radius: 0;
    color: #140F06;
    font-size: 1.4rem;
    font-weight: 500;
  }
  .header .search-button > svg {
    margin: 0 1.2rem 0 0;
  }
  .header .search-button > svg > * {
    stroke: #140F06;
  }
  .header .top {
    padding-top: 0;
    padding-bottom: 0;
    margin: 0 auto;
  }
  .header .top .middle-wrap {
    justify-content: center;
    padding: 0;
  }
  .header .top .logo {
    width: 6rem;
    height: 6rem;
    overflow: hidden;
  }
  .header .top .logo img, .header .top .logo svg {
    width: auto;
    max-width: none;
  }
  .header .top .co-logos {
    display: none;
  }
  .header .bottom {
    position: fixed;
    background: #FFFFFF;
    color: #000000;
    top: 6rem;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    max-height: 0;
    flex-direction: column;
    justify-content: space-between;
    align-content: center;
    z-index: 12;
    transition: max-height 0.2s linear;
  }
  .header .bottom > .flex {
    flex-direction: column;
    height: 100%;
  }
  .header .bottom .navigation {
    flex-grow: 1;
    background: transparent;
    align-items: flex-start;
    padding-right: 3rem;
    overflow-x: hidden;
    overflow-y: auto;
  }
  .header .bottom .navigation > ul {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    padding: 2rem 0;
  }
  .header .bottom .navigation > ul > li {
    width: 100%;
  }
  .header .bottom .navigation > ul > li > a span::before {
    content: none;
  }
  .header .bottom .navigation > ul > li > a, .header .bottom .navigation > ul > li > span {
    position: relative;
    padding: 1.5rem 0;
    font-size: 2rem;
    font-weight: 500;
  }
  .header .bottom .navigation > ul > li > a::before, .header .bottom .navigation > ul > li > span::before {
    content: "";
    border-radius: 0;
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 0;
    width: 0.8rem;
    height: 1.2rem;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
  }
  .header .bottom .navigation > ul > li + li {
    border-top: 1px solid #D4D7D9;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown, .header .bottom .navigation > ul > li .mega-menu {
    left: 0 !important;
    width: 100vw;
    height: calc(100vh + 6rem);
    height: calc(var(--vh, 1vh) * 100 + 6rem);
    box-shadow: none;
    background: #FFFFFF;
    border-radius: 0;
    padding: 0;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown .back-button, .header .bottom .navigation > ul > li .mega-menu .back-button {
    height: 6rem;
    padding-right: 0;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown .back-button::before, .header .bottom .navigation > ul > li .mega-menu .back-button::before {
    content: "";
    position: absolute;
    top: 6rem;
    left: 0;
    width: 100vw;
    height: 1px;
    background: #D4D7D9;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown .back-button > a, .header .bottom .navigation > ul > li ul.nav-dropdown .back-button > span, .header .bottom .navigation > ul > li .mega-menu .back-button > a, .header .bottom .navigation > ul > li .mega-menu .back-button > span {
    height: 6rem;
    font-size: 1.4rem;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + li, .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + .parent-copy, .header .bottom .navigation > ul > li .mega-menu .back-button + li, .header .bottom .navigation > ul > li .mega-menu .back-button + .parent-copy {
    margin-top: 2rem;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + li > a, .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + li > span, .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + .parent-copy > a, .header .bottom .navigation > ul > li ul.nav-dropdown .back-button + .parent-copy > span, .header .bottom .navigation > ul > li .mega-menu .back-button + li > a, .header .bottom .navigation > ul > li .mega-menu .back-button + li > span, .header .bottom .navigation > ul > li .mega-menu .back-button + .parent-copy > a, .header .bottom .navigation > ul > li .mega-menu .back-button + .parent-copy > span {
    border-top: 0;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown > li, .header .bottom .navigation > ul > li ul.mega-nav-list > li {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .header .bottom .navigation > ul > li ul.nav-dropdown > li a:not(.button):not(.icon-button):not(.back), .header .bottom .navigation > ul > li ul.mega-nav-list > li a:not(.button):not(.icon-button):not(.back) {
    height: 5.4rem;
    font-size: 2rem;
    font-weight: 500;
  }
  .header .bottom .navigation > ul > li .mega-menu .back-button {
    padding-left: 3rem;
  }
  .header .bottom .navigation > ul > li .mega-menu .back-button > a, .header .bottom .navigation > ul > li .mega-menu .back-button > span {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .header .bottom .navigation > ul > li .mega-menu .mobile-only.parent-copy {
    height: 5.4rem;
    font-size: 2rem;
    font-weight: 500;
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .header .bottom .navigation > ul > li .mega-menu .mobile-only.parent-copy > a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
  }
  .header .bottom .navigation > ul > li .mega-menu .menu-accordion {
    padding: 2rem 0;
    height: calc(100vh - 14.5rem);
    height: calc(var(--vh, 1vh) * 100 - 14.5rem);
    overflow-x: hidden;
    overflow-y: auto;
  }
  .header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li > a:not(.button):not(.icon-button), .header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li > span {
    font-size: 1.6rem;
    font-weight: 400;
  }
  .header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li .button, .header .bottom .navigation > ul > li .mega-menu ul.mega-nav-list > li .icon-button {
    right: 3rem;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols {
    margin: 0;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols > * {
    padding-left: 3rem;
    padding-right: 3rem;
    flex-basis: 100%;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .header .bottom .navigation > ul > li .mega-menu .mega-nav-list.two-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 1024px) {
  .header .bottom .navigation > ul > li .mega-menu .mega-footer {
    height: 8.5rem;
    padding: 0 3rem;
    border-radius: 0;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-footer h4 {
    font-size: 1.6rem;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button {
    background: transparent;
    padding-left: 0;
    padding-right: 0;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button .icon {
    display: inline-block;
  }
  .header .bottom .navigation > ul > li .mega-menu .mega-footer .cta.icon-button span {
    display: none;
    font-size: 0;
  }
}

.header.scrolling + div {
  margin-top: 16.3rem;
}
.header.scrolling ~ .ticket-finder-block {
  margin-top: 21.3rem;
}
@media (max-width: 1024px) {
  .header + * {
    margin-top: 6rem;
  }
  .header ~ .ticket-finder-block {
    margin-top: 10rem;
  }
}
@media (max-width: 540px) {
  .header ~ .ticket-finder-block {
    margin-top: 9rem;
  }
}

body.menuopen {
  overflow: hidden;
}
body.menuopen .header .menu-toggle .menu-icon > span {
  position: absolute;
  top: 50%;
}
body.menuopen .header .menu-toggle .menu-icon > span:nth-child(1) {
  transform: rotate(-45deg);
}
body.menuopen .header .menu-toggle .menu-icon > span:nth-child(2) {
  opacity: 0;
}
body.menuopen .header .menu-toggle .menu-icon > span:nth-child(3) {
  transform: rotate(45deg);
}
@media (max-width: 1024px) {
  body.menuopen .header .top .co-logos {
    display: flex;
    position: fixed;
    left: 0;
    bottom: 0;
    padding: 0 3rem;
    width: 100vw;
    height: 8rem;
    background: #FFFFFF;
  }
  body.menuopen .header .bottom {
    max-height: calc(100vh - 14rem);
    max-height: calc(var(--vh, 1vh) * 100 - 14rem);
    border-top: 1px solid #D4D7D9;
  }
}

/* footer */
.footer .mobile-only {
  display: none;
}
.footer .top {
  padding-bottom: 3rem;
  color: #FFFFFF;
  background: #140F06;
}
.footer .top .socials {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 6rem 0;
  border-bottom: 1rem solid #FFFFFF;
}
.footer .top .socials h3 {
  color: #FFFFFF;
  margin-bottom: 0;
}
.footer .top .socials .social-icons li {
  font-size: 0;
  padding-left: 0;
}
.footer .top .socials .social-icons li::before {
  content: none;
}
.footer .top .socials .social-icons li a {
  margin: 0;
  font-size: 0;
  display: inline-block;
}
.footer .top .socials .social-icons li + li {
  margin-top: 0;
  margin-left: 3rem;
}
.footer .top .three-cols {
  margin: 0;
  padding: 6rem 0;
}
.footer .top .three-cols > * {
  padding: 0;
}
.footer .top .list-header {
  padding-bottom: 2.4rem;
  color: #FFFFFF;
}
.footer .top .top-list li {
  color: #FFFFFF;
  padding-left: 0;
}
.footer .top .top-list li::before {
  content: none;
}
.footer .top .top-list li a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -0.02em;
  display: flex;
  align-items: center;
  flex-direction: row;
}
.footer .top .top-list li .date-icon-container {
  flex-shrink: 0;
  margin-right: 1.5rem;
}
.footer .top .top-list li + li {
  margin-top: 1.2rem;
}
.footer .top .top-list li.news-item a:hover, .footer .top .top-list li.news-item a:focus {
  opacity: 1;
}
.footer .top .top-list li.news-item a:hover > *:not(.date-icon-container), .footer .top .top-list li.news-item a:focus > *:not(.date-icon-container) {
  opacity: 0.75;
  transition: opacity 0.2s linear;
}
.footer .top .top-list li.news-item + .news-item {
  margin-top: 2rem;
}
.footer .top .top-list li.see-more {
  margin-top: 3rem;
}
.footer .top .top-list li.copyright {
  margin-top: 8rem;
}
.footer .bottom {
  padding: 4rem 0 6rem;
  background: #FFFFFF;
}
.footer .bottom .flex {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.footer .bottom .co-logos {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-right: 6rem;
}
.footer .bottom .co-logos > a {
  font-size: 0;
}
.footer .bottom .co-logos + a {
  display: flex;
  align-self: stretch;
  flex-basis: 30%;
  flex-shrink: 0;
  flex-direction: row;
  justify-content: flex-end;
}
.footer .bottom .co-logos + a img {
  height: 85%;
}
.alert-shown .footer .bottom {
  padding-bottom: 10rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .footer .bottom .co-logos img, .footer .bottom .co-logos + a img {
    width: 100%;
  }
}
@media (max-width: 1200px) {
  .footer .top .socials, .footer .top .three-cols {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .footer .mobile-only {
    display: block;
  }
  .footer .top {
    padding-bottom: 0;
  }
  .footer .top .socials {
    border-bottom-width: 1px;
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }
  .footer .top .three-cols {
    flex-wrap: wrap;
    padding-bottom: 0;
  }
  .footer .top .three-cols > * {
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .footer .top .three-cols > * {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .footer .top .three-cols .merseytravel-col, .footer .top .three-cols .about-col h3, .footer .top .three-cols .news-col .top-list > *:not(:last-child) {
    display: none;
  }
}
@media (max-width: 840px) {
  .footer .top .three-cols .about-col .top-list + .top-list {
    margin-top: 1.2rem;
  }
  .footer .top .three-cols .about-col + .news-col {
    margin-top: 1.2rem;
  }
}
@media (max-width: 840px) {
  .footer .top .three-cols .news-col h3 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: -0.02em;
    padding-bottom: 0;
  }
}
@media (max-width: 840px) {
  .footer .top .top-list li.copyright {
    position: relative;
    height: 6rem;
    margin-top: 3rem;
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .footer .top .top-list li.copyright::before {
    content: "";
    position: absolute;
    border-radius: 0;
    top: 0;
    left: -3rem;
    width: calc(100% + 6rem);
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
  }
}
@media (max-width: 540px) {
  .footer .top .socials, .footer .top .three-cols {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .footer .top .socials .social-icons {
    flex-direction: row;
  }
  .footer .top .three-cols {
    padding-bottom: 0;
  }
  .footer .top .three-cols .news-col h3 {
    font-size: 1.4rem;
  }
  .footer .top .top-list li a {
    font-size: 1.4rem;
  }
  .footer .bottom {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
  .footer .bottom .co-logos {
    padding-right: 4rem;
    max-width: 70%;
  }
  .alert-shown .footer .bottom {
    padding-bottom: 9rem;
  }
}

/* fixed alert panel */
.alert {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 98;
}
.alert .alert-container {
  border-radius: 4px 4px 0px 0px;
  background: #D32533;
  padding: 1.3rem 6rem;
  flex-direction: row;
  align-items: center;
}
.alert .alert-content {
  flex-direction: row;
  align-items: center;
  flex-grow: 1;
}
.alert .alert-content > a {
  color: #FFFFFF;
  text-decoration: underline;
  margin-left: 1.5rem;
}
.alert .cta.icon-button.bg-lighter-black {
  font-weight: 700;
}
.alert .cta.icon-button.bg-lighter-black .icon {
  display: none;
}
.alert .cta.icon-button.bg-lighter-black span {
  margin-left: 0;
}
.alert .cta.icon-button.bg-lighter-black + .cta.icon-button {
  margin-top: 0;
}
.alert .alert-close-button {
  color: #FFFFFF;
  margin-left: 1.5rem;
}
.alert .alert-close-button span {
  margin-left: 0;
  margin-right: 1rem;
}
.alert.hide {
  height: 0;
  overflow: hidden;
}
@media (max-width: 1320px) {
  .alert .alert-container {
    border-radius: 0;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media (max-width: 540px) {
  .alert .alert-content > a {
    text-decoration: none;
    margin-left: 1rem;
  }
  .alert .cta.icon-button.bg-lighter-black {
    background: transparent;
    padding-left: 0;
    padding-right: 0;
  }
  .alert .cta.icon-button.bg-lighter-black .icon {
    display: inline-block;
  }
  .alert .cta.icon-button.bg-lighter-black span {
    display: none;
    font-size: 0;
  }
  .alert .alert-close-button {
    padding: 1.1rem 0;
    position: relative;
    margin-left: 5rem;
  }
  .alert .alert-close-button::before {
    content: "";
    position: absolute;
    top: -1.3rem;
    right: -3rem;
    width: 6.4rem;
    height: 6.4rem;
    background: rgba(20, 15, 6, 0.2);
  }
  .alert .alert-close-button .icon {
    z-index: 1;
    width: 1rem;
    height: 1rem;
  }
  .alert .alert-close-button span {
    display: none;
    font-size: 0;
  }
}

.social-updating {
  padding: 3rem 0;
}
.social-updating h4 {
  font-weight: 500;
  color: #FFFFFF;
  margin: 0 7rem 0 0;
}
.social-updating .icon-button + .icon-button {
  margin-left: 4rem;
}
@media (max-width: 840px) {
  .social-updating h4 {
    font-size: 2rem;
    flex-basis: 100%;
    font-weight: 400;
    margin: 0 0 1.6rem 0;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .social-updating h4 {
    max-width: 100%;
  }
}

.text-thumbnail .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.event-card {
  display: block;
  padding: 2rem;
  position: relative;
  cursor: pointer;
}
.event-card .text-thumbnail::before {
  padding-bottom: 79.0625%;
}
.event-card .text-thumbnail::after {
  top: auto;
  bottom: 0;
  height: 7rem;
  background: linear-gradient(90deg, #FFFFFF 70px, rgba(255, 255, 255, 0) 70px), linear-gradient(-90deg, #FFFFFF 70px, rgba(255, 255, 255, 0) 70px);
}
.event-card .inner {
  flex-direction: column;
  align-items: flex-start;
  z-index: 2;
  border-color: #140F06;
  border-width: 10px;
  border-style: solid;
  top: 6rem;
  left: 6rem;
  width: calc(100% - 6rem * 2);
  height: calc(100% - 6rem);
}
.event-card .inner::after {
  content: "";
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  position: absolute;
  z-index: 0;
  transition: width 0.15s linear;
  background: #140F06;
}
.event-card .inner h2 {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
  flex-grow: 1;
  color: #FFFFFF;
  padding: 5rem 3rem 0;
  width: 100%;
  z-index: 1;
  margin-bottom: 0;
}
.event-card .inner .bottom-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 6rem;
  padding: 0 3rem;
  position: relative;
  z-index: 1;
}
.event-card .inner .bottom-info::before {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 0;
  opacity: 0.7;
  background: #140F06;
  z-index: -1;
}
.event-card .inner .bottom-info > p {
  color: #FFFFFF;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-right: 3rem;
}
.event-card .inner .extra-link-wrap {
  position: absolute;
  right: -1rem;
  bottom: -1rem;
  width: 7rem;
  height: 7rem;
  background: #FFFFFF;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-end;
  z-index: 2;
}
.event-card .inner .link-button {
  background: #140F06;
}
.event-card:hover {
  opacity: 1;
}
.event-card:hover .inner::after {
  width: 100%;
}
.one-cols .event-card .text-thumbnail::before {
  padding-bottom: 40.61%;
}
.event-card.dark-contrast .inner h2 {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
}
.event-card.dark-contrast .inner .bottom-info p {
  color: #140F06;
}
.event-card.dark-contrast .inner .link-button::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}
@media (max-width: 1200px) {
  .event-card .text-thumbnail::after {
    height: 5rem;
    background: linear-gradient(90deg, #FFFFFF 50px, rgba(255, 255, 255, 0) 50px), linear-gradient(-90deg, #FFFFFF 50px, rgba(255, 255, 255, 0) 50px);
  }
  .event-card .inner {
    top: 4rem;
    left: 4rem;
    width: calc(100% - 4rem * 2);
    height: calc(100% - 4rem);
  }
  .event-card .inner h2 {
    padding-top: 3rem;
  }
  .event-card .inner .bottom-info {
    height: 4rem;
  }
  .event-card .inner .extra-link-wrap {
    width: 5rem;
    height: 5rem;
  }
}
@media (max-width: 1024px) {
  .event-card .inner h2, .event-card .inner .bottom-info {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (max-width: 840px) {
  .event-card .text-thumbnail::before {
    padding-bottom: 73.875%;
  }
  .one-cols .event-card .text-thumbnail::before {
    padding-bottom: 73.875%;
  }
}
@media (max-width: 540px) {
  .event-card {
    padding: 1rem 0;
  }
  .event-card .text-thumbnail::before {
    padding-bottom: 82.667%;
  }
  .event-card .text-thumbnail::after {
    height: 6rem;
    background: linear-gradient(90deg, #FFFFFF 20px, rgba(255, 255, 255, 0) 20px), linear-gradient(-90deg, #FFFFFF 20px, rgba(255, 255, 255, 0) 20px);
  }
  .event-card .inner {
    top: 8rem;
    left: 2rem;
    width: calc(100% - 2rem * 2);
    height: calc(100% - 8rem);
  }
  .event-card .inner h2 {
    padding-top: 3rem;
  }
  .event-card .inner .bottom-info {
    height: 5rem;
  }
  .event-card .inner .extra-link-wrap {
    width: 6rem;
    height: 6rem;
    background: transparent;
  }
  .event-card .inner .extra-link-wrap::before, .event-card .inner .extra-link-wrap::after {
    content: "";
    position: absolute;
    width: 1rem;
    height: 1rem;
    background: #FFFFFF;
  }
  .event-card .inner .extra-link-wrap::before {
    top: 0;
    right: 0;
  }
  .event-card .inner .extra-link-wrap::after {
    left: 0;
    bottom: 0;
  }
  .one-cols .event-card .text-thumbnail::before {
    padding-bottom: 82.667%;
  }
}
@media (max-width: 360px) {
  .event-card .inner h2 {
    padding-top: 2rem;
    font-size: 2rem;
  }
}

.routemap-card {
  display: block;
  padding: 2rem;
  position: relative;
  cursor: pointer;
}
.routemap-card .inner {
  position: relative;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  padding: 2rem;
  background-color: #395180;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #FFFFFF;
  min-height: 16.6rem;
  overflow: hidden;
}
.routemap-card .inner > * {
  z-index: 2;
}
.routemap-card .inner h4 {
  color: #FFFFFF;
  margin-bottom: 0;
}
.routemap-card .inner.bg-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(51.94% 398.34% at 9.31% 59.81%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 99.99%, rgba(0, 0, 0, 0) 100%), linear-gradient(360deg, #000000 -0.06%, rgba(0, 0, 0, 0) 40.19%);
  z-index: 0;
}
.routemap-card .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  border-radius: 0;
  margin-top: 100%;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.1);
  transition: height, margin 0.2s linear;
  z-index: 1;
}
.routemap-card:hover {
  cursor: pointer;
  opacity: 1;
}
.routemap-card:hover .inner::before {
  margin-top: 0;
  height: 100%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .routemap-card .inner {
    height: 100%;
  }
  .routemap-card .inner h4 {
    flex-grow: 1;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
  }
}
@media (max-width: 540px) {
  .routemap-card {
    padding: 1rem;
  }
  .routemap-card .inner {
    min-height: 10.5rem;
    padding-bottom: 1.6rem;
  }
  .routemap-card .inner h4 {
    font-size: 2rem;
  }
}

.station-card {
  display: block;
  padding: 2rem;
  position: relative;
  cursor: pointer;
}
.station-card::before {
  content: none;
}
.station-card .inner {
  flex-direction: column;
  align-items: flex-start;
}
.station-card .inner h3 {
  color: #395180;
}
.station-card .inner p + p {
  margin-top: 0;
}
.station-card .inner .distance-text {
  margin-top: 1.2rem;
  display: none;
  font-weight: 600;
  color: #140F06;
}
.station-card .inner .distance-text .icon {
  margin-right: 1rem;
}
.station-card .inner .distance-text.show {
  display: block;
}
.station-card .inner .distance-text + .underlined {
  margin-top: 1.2rem;
}
.station-card .inner .accessibility-text {
  margin-top: 1.2rem;
  font-weight: 600;
  color: #140F06;
}
.station-card .inner .accessibility-text .icon {
  margin-right: 0.4rem;
  width: 1.6rem;
  height: 1.7rem;
}
.station-card .inner .accessibility-text + .underlined {
  margin-top: 1.2rem;
}
.station-card .inner .underlined {
  margin-top: 1.6rem;
  color: #395180;
  text-decoration: underline;
}
.station-card .inner:hover {
  opacity: 1;
}
.station-card .inner:hover .underlined {
  opacity: 0.75;
}
.station-card + .station-card {
  margin-top: 0;
}
@media (max-width: 540px) {
  .station-card {
    padding: 2rem 0 2.4rem;
  }
  .station-card .inner .distance-text,
.station-card .inner .distance-text + .underlined,
.station-card .inner .accessibility-text,
.station-card .inner .accessibility-text + .underlined,
.station-card .inner .underlined {
    margin-top: 1rem;
  }
  .station-card + .station-card {
    border-top: 1px solid rgba(147, 155, 161, 0.3);
  }
}

.image-text-card {
  position: relative;
}
.image-text-card .text-thumbnail + * {
  margin: 1rem 0 0;
}
.image-text-card .text-thumbnail::before {
  padding-bottom: 65.8%;
}
.image-text-card .text-thumbnail::after {
  content: none;
}
.four-cols .image-text-card .text-thumbnail::before, .five-cols .image-text-card .text-thumbnail::before {
  padding-bottom: 100%;
}
@media (max-width: 540px) {
  .image-text-card h5 {
    font-size: 1.6rem;
  }
}

.events {
  margin: -2rem;
}
.bg-dark-blue + .content-block-layout .events:first-child {
  padding-top: 5rem;
}
.events + .events {
  margin-top: 2rem !important;
}
@media (max-width: 1200px) {
  .bg-dark-blue + .content-block-layout .events:first-child {
    padding-top: 4rem;
  }
}
@media (max-width: 540px) {
  .events {
    margin: -1rem -3rem;
  }
  .events + .events {
    margin-top: 1rem !important;
  }
  .bg-dark-blue + .content-block-layout .events:first-child {
    padding-top: 0;
  }
}

.route-maps-block h2 {
  margin-bottom: 2rem;
}
@media (max-width: 540px) {
  .route-maps-block .four-cols {
    margin: -1rem;
  }
  .route-maps-block .four-cols > * {
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .route-maps-block .four-cols > * {
    max-width: 100%;
  }
}

.toll-card {
  padding: 2rem 3rem;
  background: #FFEE00;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.toll-card .toll-item {
  position: relative;
  z-index: 1;
  flex-basis: 50%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .toll-card .toll-item {
    max-width: 50%;
  }
}
.toll-card .toll-item p + h3 {
  margin-top: 0.3rem;
}
.toll-card .toll-item h3 {
  margin-bottom: 0;
}
.toll-card .toll-item p.bolder {
  color: #140F06;
  font-weight: 700;
}
.toll-card .toll-item:nth-child(2) {
  text-align: right;
}
.toll-card + .toll-card {
  position: relative;
}
.toll-card + .toll-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(20, 15, 6, 0.1);
  z-index: 0;
}
@media (max-width: 1024px) {
  .toll-card {
    flex-wrap: wrap;
  }
  .toll-card .toll-item {
    flex-basis: 100%;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .toll-card .toll-item {
    max-width: 100%;
  }
}
@media (max-width: 1024px) {
  .toll-card .toll-item:nth-child(2) {
    margin-top: 1.2rem;
    text-align: left;
  }
}
@media (max-width: 540px) {
  .toll-card {
    flex-wrap: wrap;
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .toll-card .toll-item {
    flex-basis: 50%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .toll-card .toll-item {
    max-width: 50%;
  }
}
@media (max-width: 540px) {
  .toll-card .toll-item:nth-child(2) {
    margin-top: 0;
    text-align: right;
  }
}

@media (max-width: 540px) {
  .tolls-block .four-cols > * {
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .tolls-block .four-cols > * {
    max-width: 100%;
  }
}

.benefit-card {
  flex-grow: 1;
  position: relative;
  display: flex;
  flex-direction: column;
}
.benefit-card .inner {
  flex-grow: 1;
  position: relative;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  min-height: 49.2rem;
  color: #FFFFFF;
  padding: 4rem;
  background-color: #395180;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
}
.benefit-card .inner > * {
  z-index: 2;
}
.benefit-card .inner h2 {
  width: 100%;
  font-family: "futura-pt-condensed", sans-serif;
  font-size: 3rem;
  font-weight: 800;
  line-height: 0.93;
  letter-spacing: 0;
  color: #FFFFFF;
  text-transform: uppercase;
  margin-bottom: 0;
}
.benefit-card .inner h2 .highlight, .benefit-card .inner h2 b {
  color: #FFEE00;
}
.benefit-card .inner.benefit-bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.65);
  z-index: 0;
}
.benefit-card.small .inner {
  min-height: 38rem;
}
.theme-blue .benefit-card .inner h2 .highlight, .theme-blue .benefit-card .inner h2 b {
  color: #00AED0;
}
.theme-red .benefit-card .inner h2 .highlight, .theme-red .benefit-card .inner h2 b {
  color: #D32C3D;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .benefit-card .inner {
    height: 100%;
  }
}
@media (max-width: 1200px) {
  .benefit-card .inner {
    padding: 3rem;
  }
}
@media (max-width: 540px) {
  .benefit-card .inner {
    height: 37.9rem;
    min-height: 0;
    justify-content: flex-start;
  }
  .benefit-card .inner h2 {
    font-size: 4rem;
  }
}

.activity-card {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.activity-card-bg {
  position: absolute;
  top: 5px;
  right: 0;
  width: 100%;
  max-width: calc(100% - 36rem);
  z-index: 1;
}
.activity-card-content {
  flex-grow: 1;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  padding: 5rem 4rem;
  border-top-width: 5px;
  border-top-style: solid;
  border-top-color: #140F06;
  background: #FFFFFF;
  box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.15);
}
.activity-card-content h2 {
  font-size: 4rem;
}
.activity-card-content p {
  max-width: 30rem;
  width: 100%;
  flex-grow: 1;
}
.activity-card-content .cta.button, .activity-card-content .cta.icon-button {
  margin-bottom: 0 !important;
}
.two-cols > *:first-child .activity-card {
  margin-left: -4rem;
}
.two-cols > *:last-child .activity-card {
  margin-right: -4rem;
}
.activity-card.blue .activity-card-content {
  border-top-color: #00AED0;
}
.activity-card.blue .activity-card-content h2 {
  color: #00AED0;
}
.activity-card.blue .activity-card-content .bg-yellow {
  background: #00AED0;
}
.activity-card.blue .activity-card-content .bg-yellow.button:hover, .activity-card.blue .activity-card-content .bg-yellow.icon-button:hover {
  color: #FFFFFF;
  background: #00AED0;
}
.activity-card.red .activity-card-content {
  border-top-color: #D32C3D;
}
.activity-card.red .activity-card-content h2 {
  color: #D32C3D;
}
.activity-card.red .activity-card-content .bg-yellow {
  background: #D32C3D;
}
.activity-card.red .activity-card-content .bg-yellow.button:hover, .activity-card.red .activity-card-content .bg-yellow.icon-button:hover {
  color: #FFFFFF;
  background: #D32C3D;
}
@media (max-width: 1320px) {
  .two-cols > *:first-child .activity-card {
    margin-left: 0;
  }
  .two-cols > *:last-child .activity-card {
    margin-right: 0;
  }
}
@media (max-width: 1200px) {
  .activity-card-bg {
    max-width: calc(100% - 31rem);
  }
  .activity-card-content {
    padding: 4rem;
  }
  .activity-card-content h2 {
    margin-bottom: 1rem;
  }
  .activity-card-content p {
    max-width: 25rem;
  }
  .two-cols > *:first-child .activity-card {
    margin-left: -3rem;
  }
  .two-cols > *:last-child .activity-card {
    margin-right: -3rem;
  }
}
@media (max-width: 1024px) {
  .activity-card-bg {
    max-width: calc(100% - 26rem);
  }
  .activity-card-content p {
    max-width: 21rem;
  }
}
@media (max-width: 840px) {
  .activity-card {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .activity-card-bg {
    max-width: 17.2rem;
  }
  .activity-card-content {
    padding: 3rem;
  }
  .activity-card-content p {
    max-width: none;
    padding-right: 15rem;
  }
  .two-cols > *:last-child .activity-card {
    margin-top: -2rem;
  }
}
@media (max-width: 540px) {
  .activity-card {
    max-width: 100vw;
    overflow: hidden;
  }
  .activity-card-bg {
    margin-right: -2rem;
  }
  .activity-card-content h2 {
    margin-bottom: 0.5rem;
  }
  .activity-card-content p {
    margin-right: 13rem;
  }
}

.countdown-block {
  padding-top: 5rem;
  padding-bottom: 5rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.countdown-block .title-tag {
  margin-bottom: 0;
  color: #FFEE00;
}
.countdown-block .title-tag + h2 {
  margin-top: 0;
  margin-bottom: 6rem;
  color: #FFFFFF;
}
@media (max-width: 1200px) {
  .countdown-block {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .countdown-block .title-tag + h2 {
    margin-bottom: 4rem;
  }
}
@media (max-width: 540px) {
  .countdown-block {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .countdown-block .title-tag + h2 {
    margin-bottom: 3rem;
  }
}

.countdown-bar {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.countdown-bar li {
  margin-top: 4rem;
  padding-left: 1rem;
  padding-right: 3rem;
  flex: 1 0 0;
}
.countdown-bar li .active-bar {
  position: absolute;
  top: -4rem;
  left: 0;
  width: 0;
  height: 2rem;
  z-index: 2;
}
.countdown-bar li .active-bar::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 2rem;
  height: 2rem;
  background: transparent;
  border-radius: 50%;
  z-index: 1;
}
.countdown-bar li .active-bar::after {
  content: "";
  position: absolute;
  top: 0.8rem;
  left: 0;
  width: 100%;
  height: 0.4rem;
  background: transparent;
  z-index: 0;
}
.countdown-bar li::before {
  top: -4rem;
  width: 2rem;
  height: 2rem;
  z-index: 1;
  background: #E6272D;
}
.countdown-bar li::after {
  content: "";
  position: absolute;
  top: -3.2rem;
  left: 0;
  width: 100%;
  height: 0.4rem;
  background: rgba(227, 230, 233, 0.3);
  z-index: 0;
}
.countdown-bar li.active .active-bar::before, .countdown-bar li.active .active-bar::after {
  background: #CAD52B;
}
.countdown-bar::after {
  content: "";
  position: relative;
  top: 0;
  right: 0;
  width: 0.4rem;
  height: 2rem;
  background: #FFFFFF;
}
@media (max-width: 1024px) {
  .countdown-bar {
    flex-direction: column;
  }
  .countdown-bar li {
    margin-top: 0;
    margin-left: 4rem;
    min-height: 10rem;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 4rem;
  }
  .countdown-bar li .active-bar {
    top: 0;
    left: -4rem;
    height: 0;
  }
  .countdown-bar li .active-bar::after {
    top: 0.4rem;
    left: 0.8rem;
    width: 0.4rem;
    height: 100%;
  }
  .countdown-bar li::before {
    top: 0;
    left: -4rem;
  }
  .countdown-bar li::after {
    top: 0.4rem;
    left: -3.2rem;
    width: 0.4rem;
    height: 100%;
  }
  .countdown-bar::after {
    content: "";
    position: relative;
    top: 0;
    right: 0;
    width: 2rem;
    height: 0.4rem;
    background: #FFFFFF;
  }
}

.countdown-carousel .flickity-prev-next-button {
  top: 8rem;
  width: 3rem;
  height: 3rem;
}
.countdown-carousel .flickity-prev-next-button::after {
  width: 1.5rem;
  height: 2.4rem;
}
.countdown-carousel .flickity-button:disabled {
  opacity: 0.5;
}
.countdown-carousel .flickity-prev-next-button.previous {
  left: calc((100% - 132rem) * 0.5);
}
.countdown-carousel .flickity-prev-next-button.next {
  right: calc((100% - 132rem) * 0.5);
}
.countdown-carousel .carousel-item {
  width: 29.1667%;
}
.countdown-carousel .carousel-item .inner {
  padding-right: 5rem;
}
.countdown-carousel .carousel-item .countdown-item-image {
  max-width: 16rem;
  border-radius: 50%;
  border: 10px solid #FFEE00;
  flex-shrink: 0;
}
.countdown-carousel .carousel-item .countdown-item-image::before {
  padding-bottom: 100%;
}
.countdown-carousel .carousel-item .countdown-item-image::after {
  content: none;
}
.countdown-carousel .carousel-item .countdown-item-tag {
  font-weight: 700;
  line-height: 1.2;
  color: #FFEE00;
  margin-top: 2rem;
}
.countdown-carousel .carousel-item h3 {
  color: #FFFFFF;
  margin-top: 0.5rem;
}
.countdown-carousel .carousel-item h3 + p {
  font-size: 14px;
  line-height: 1.22;
  color: rgba(255, 255, 255, 0.8);
}
.countdown-carousel .carousel-item:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 8rem;
  left: 0;
  width: 100%;
  height: 4px;
  background: rgba(227, 230, 233, 0.3);
  z-index: 0;
}
.countdown-carousel .carousel-item.milestone .countdown-item-image {
  border-color: #FFFFFF;
}
.countdown-carousel .carousel-item.milestone .countdown-item-tag {
  color: rgba(255, 255, 255, 0.5);
}
.countdown-carousel::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 10%;
  height: 100%;
  background: linear-gradient(270deg, #0C294A 0%, rgba(12, 41, 74, 0) 100%);
}
@media (max-width: 1320px) {
  .countdown-carousel .flickity-prev-next-button {
    display: none;
  }
}
@media (max-width: 1200px) {
  .countdown-carousel .carousel-item .inner {
    padding-right: 4rem;
  }
}
@media (max-width: 1024px) {
  .countdown-carousel .carousel-item {
    width: 35.27%;
  }
}
@media (max-width: 840px) {
  .countdown-carousel .carousel-item {
    width: 43.59%;
  }
}
@media (max-width: 540px) {
  .countdown-carousel .carousel-item {
    width: 68.75%;
  }
  .countdown-carousel .carousel-item .inner {
    padding-right: 3rem;
  }
  .countdown-carousel .carousel-item .countdown-item-image {
    max-width: 14rem;
  }
  .countdown-carousel .carousel-item:not(:last-child)::before {
    top: 7rem;
  }
}

.video-clip {
  position: relative;
  height: 0;
  padding-bottom: 66.67%;
}
.video-clip iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-embed {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.video-embed iframe,
.video-embed object,
.video-embed embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 840px) {
  .image-wrap {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .three-cols .image-wrap, .four-cols .image-wrap {
    margin-left: 0;
    margin-right: 0;
  }
}

.map-container.timetable::before {
  padding-bottom: 31.94%;
}
@media (max-width: 1200px) {
  .map-container.timetable::before {
    padding-bottom: 37.5%;
  }
}
@media (max-width: 1024px) {
  .map-container.timetable::before {
    padding-bottom: 42.75%;
  }
}
@media (max-width: 840px) {
  .map-container.timetable::before {
    padding-bottom: 66.667%;
  }
}
@media (max-width: 540px) {
  .map-container.timetable::before {
    padding-bottom: 80%;
  }
}

/* list ------ list item styles */
.timetable-list, .travelupdates-list {
  margin: 2rem 0;
}
.timetable-list li.show, .travelupdates-list li.show {
  display: list-item;
}
@media (max-width: 540px) {
  .timetable-list, .travelupdates-list {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}

.timetable-list li, .travelupdates-list li {
  padding: 0;
}
.timetable-list li::before, .travelupdates-list li::before {
  content: none;
}
.timetable-list li.show ~ li.show, .travelupdates-list li.show ~ li.show {
  margin: 0;
  border-top: 1px solid rgba(147, 155, 161, 0.3);
}

.timetable-accordion .accordion-panel .travelupdates-list li + li {
  margin: 0;
  border-top: 1px solid rgba(147, 155, 161, 0.3);
}

.timetable-list li + li {
  margin: 0;
  border-top: 1px solid rgba(147, 155, 161, 0.3);
}

.travel-update-item {
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  padding: 2rem 0;
}
.travel-update-item .item-tag-text {
  display: inline-block;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #993189;
  margin-bottom: 0.6rem;
}
.travel-update-item .item-tag-text .pink {
  color: #DC2385;
}
.travel-update-item .item-tag-text.live-text {
  position: relative;
  color: #DC2385;
  padding-left: 2rem;
}
.travel-update-item .item-tag-text.live-text::before {
  content: "";
  position: absolute;
  top: calc(50% - 4px);
  left: 0;
  width: 8px;
  height: 8px;
  background: #DC2385;
  border-radius: 50%;
}
.travel-update-item .item-tag-text.upcoming {
  color: #DC2385;
}
.travel-update-item .level-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.1428;
  color: #E6272D;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  text-align: center;
  text-transform: capitalize;
}
.travel-update-item .level-text svg {
  margin-left: 1rem;
  fill: #E6272D;
}
.travel-update-item .left-content {
  max-width: 72rem;
  width: 100%;
  padding-right: 2rem;
}
.travel-update-item .left-content h3 {
  color: #395180;
  margin: 0 0 0.3rem;
}
.travel-update-item .right-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.travel-update-item .right-content .cta.button, .travel-update-item .right-content .cta.icon-button {
  min-width: 24rem;
  width: auto;
  text-align: center;
}
.travel-update-item .right-content .icon {
  margin: 0 3.6rem 0 3rem;
  width: 2.4rem;
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .travel-update-item .right-content .cta.button, .travel-update-item .right-content .cta.icon-button {
    min-width: 0;
  }
}
@media (max-width: 840px) {
  .travel-update-item {
    flex-wrap: wrap;
  }
  .travel-update-item .level-text {
    position: absolute;
    top: 2.3rem;
    right: 0;
    font-size: 1.4rem;
  }
  .travel-update-item .level-text svg {
    width: 1.6rem;
    height: 1.6rem;
  }
  .travel-update-item .left-content {
    padding-right: 0;
    max-width: none;
  }
  .travel-update-item .left-content .item-tag-text:not(.no-icon) {
    margin-left: 2.5rem;
  }
  .travel-update-item .left-content > *:first-child:not(.item-tag-text) {
    margin-top: 2.5rem;
  }
  .travel-update-item .right-content .cta.button, .travel-update-item .right-content .cta.icon-button {
    display: none;
  }
  .travel-update-item .right-content .icon {
    position: absolute;
    top: 2rem;
    left: 0;
    margin: 0;
    width: 1.4rem;
    height: 2rem;
  }
}

.travel-update-item.tunnel {
  align-items: flex-start;
}
.travel-update-item.tunnel h3 {
  margin-bottom: 0;
}
.travel-update-item.tunnel h3 .icon {
  margin: 0 1.6rem;
}
.travel-update-item.tunnel .item-tag-text.label-text {
  color: #140F06;
}
.travel-update-item.tunnel .left-content {
  max-width: none;
  width: auto;
  display: flex;
  flex-direction: column;
}
.travel-update-item.tunnel .right-content {
  align-items: flex-start;
  justify-content: space-between;
  text-align: right;
  margin: 0 -2rem;
}
.travel-update-item.tunnel .right-content .updated-time {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0 2rem;
}
.travel-update-item.tunnel .right-content .updated-time p {
  font-weight: 700;
  color: #939BA1;
}
.travel-update-item.tunnel .right-content .journey-length {
  display: flex;
  flex-direction: column;
  padding: 0 2rem;
}
.travel-update-item.tunnel .right-content .journey-length h3 {
  color: #395180;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
}
.travel-update-item.tunnel .right-content .journey-length h3::before {
  content: "";
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background-color: #E6272D;
  margin-right: 1rem;
}
.travel-update-item.tunnel .right-content .journey-length h3.moderate::before {
  background-color: #F59B24;
}
.travel-update-item.tunnel .right-content .journey-length h3.low::before {
  background-color: #09A550;
}
@media (max-width: 840px) {
  .travel-update-item.tunnel .left-content {
    width: 100%;
  }
  .travel-update-item.tunnel .left-content .item-tag-text {
    margin-left: 0;
  }
  .travel-update-item.tunnel .right-content {
    padding-top: 1rem;
  }
  .travel-update-item.tunnel .right-content .updated-time, .travel-update-item.tunnel .right-content .journey-length {
    align-items: flex-start;
  }
}
@media (max-width: 540px) {
  .travel-update-item.tunnel h3 .icon {
    margin-left: 0.8rem;
    margin-right: 0.8rem;
  }
  .travel-update-item.tunnel .right-content {
    width: 100%;
    flex-wrap: wrap;
  }
  .travel-update-item.tunnel .right-content .updated-time, .travel-update-item.tunnel .right-content .journey-length {
    flex-basis: 100%;
    align-self: auto;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .travel-update-item.tunnel .right-content .updated-time, .travel-update-item.tunnel .right-content .journey-length {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .travel-update-item.tunnel .right-content .journey-length .item-tag-text {
    font-weight: 400;
  }
}
@media (max-width: 540px) {
  .travel-update-item.tunnel .right-content .updated-time {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    order: 1;
    padding-top: 1rem;
  }
  .travel-update-item.tunnel .right-content .updated-time .item-tag-text, .travel-update-item.tunnel .right-content .updated-time p {
    font-size: 1.4rem;
    font-weight: 400;
    color: #939BA1;
  }
  .travel-update-item.tunnel .right-content .updated-time .item-tag-text {
    margin-bottom: 0;
    margin-right: 0.4rem;
  }
}

.timetable-list-item {
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  padding: 2rem 0;
}
.timetable-list-item .left-content h2.smaller {
  margin-bottom: 1rem;
  color: #395180;
}
.timetable-list-item .left-content p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.2;
  color: #140F06;
}
.timetable-list-item .right-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  padding-top: 1rem;
}
.timetable-list-item .right-content .cta.button, .timetable-list-item .right-content .cta.icon-button {
  min-width: 24rem;
  width: auto;
}
.timetable-list-item .right-content .updates-count {
  margin: 0 -2rem;
}
.timetable-list-item .right-content .updates-count + .cta.button, .timetable-list-item .right-content .updates-count + .cta.icon-button {
  margin-left: 4rem;
}
.timetable-list-item .updates-count-text {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.1428;
  color: #993189;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  text-align: center;
  padding: 0 2rem;
}
.timetable-list-item .updates-count-text span {
  font-size: 1rem;
  font-weight: 700;
  width: 2rem;
  height: 2rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-width: 2px;
  border-style: solid;
  border-color: #993189;
  border-radius: 50%;
  margin-right: 0.6rem;
  line-height: 1.6;
  text-align: center;
}
.timetable-list-item .updates-count-text.disruption {
  color: #DC2385;
}
.timetable-list-item .updates-count-text.disruption span {
  border-color: #DC2385;
}
@media (max-width: 1024px) {
  .timetable-list-item .right-content .cta.button, .timetable-list-item .right-content .cta.icon-button {
    min-width: 0;
  }
}
@media (max-width: 840px) {
  .timetable-list-item {
    flex-wrap: wrap;
  }
  .timetable-list-item .right-content .cta.button, .timetable-list-item .right-content .cta.icon-button {
    display: none;
  }
}

/* list ------ list item styles */
.tfs-block .two-cols {
  margin: -3rem 0;
  padding: 0;
}
.tfs-block .two-cols .left-content {
  display: flex;
  flex-direction: column;
  padding-left: 0;
}
.tfs-block .two-cols .left-content h1 {
  max-width: 48rem;
}
.tfs-block .two-cols .left-content .station-card {
  padding-left: 0;
  padding-right: 0;
  flex-grow: 1;
}
.tfs-block .two-cols .left-content .station-card .inner h3 {
  color: #140F06;
}
.tfs-block .two-cols .right-content {
  padding-right: 0;
}
.tfs-block .two-cols .right-content .map-container {
  height: 100%;
}
.tfs-block .two-cols .right-content .map-container::before {
  padding-bottom: 100%;
}
@media (max-width: 1200px) {
  .tfs-block .two-cols {
    margin-top: -2rem;
    margin-bottom: -2rem;
  }
}
@media (max-width: 840px) {
  .tfs-block .two-cols {
    margin-top: 0;
    margin-bottom: 0;
  }
  .tfs-block .two-cols .left-content h1 {
    margin-bottom: 0;
  }
  .tfs-block .two-cols .right-content .map-container {
    width: auto;
  }
  .tfs-block .two-cols .right-content .map-container::before {
    padding-bottom: 66.67%;
  }
}

.news-list li {
  padding-left: 0;
}
.news-list li::before {
  content: none;
}
.news-list li a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: -0.02em;
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  color: #395180;
}
.news-list li .date-icon-container {
  flex-shrink: 0;
  margin-right: 1.5rem;
}
.news-list li .date-icon-container .date-icon {
  background: #395180;
}
.news-list li .date-icon-container .date-icon .day-text, .news-list li .date-icon-container .date-icon .month-text {
  color: #FFFFFF;
}
.news-list li + li {
  margin-top: 1.2rem;
}
.news-list li.news-item a:hover, .news-list li.news-item a:focus {
  opacity: 1;
}
.news-list li.news-item a:hover > *:not(.date-icon-container), .news-list li.news-item a:focus > *:not(.date-icon-container) {
  opacity: 0.75;
  transition: opacity 0.2s linear;
}
.news-list li.news-item + .news-item {
  margin-top: 2rem;
}
.news-list li.see-more {
  margin-top: 3rem;
}

.operator-list {
  margin: 1.1rem -1.5rem -0.5rem;
}
.operator-list > a {
  padding: 0.5rem 1.5rem;
}
@media (max-width: 540px) {
  .operator-list {
    margin-top: 0.5rem;
  }
  .operator-list > a {
    width: 100%;
  }
}

.accessibility-block h3 {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.4rem;
}
.accessibility-block .two-cols {
  margin-top: 0;
  margin-bottom: 0;
}
.accessibility-block .two-cols .accessibility-item {
  padding-top: 0;
  padding-bottom: 0;
}
.accessibility-block .two-cols .accessibility-item p {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.accessibility-block .two-cols .accessibility-item span {
  color: #140F06;
  font-weight: 400;
}
.accessibility-block .two-cols .accessibility-item span:first-child {
  text-align: left;
  font-weight: 700;
}
.accessibility-block .two-cols .accessibility-item span:last-child {
  text-align: right;
}
.accessibility-block .two-cols .accessibility-item:not(:nth-child(1)) + .accessibility-item p {
  border-top: 1px solid #E3E6E9;
}
@media (max-width: 840px) {
  .accessibility-block h3 {
    margin-bottom: 1.6rem;
  }
  .accessibility-block h3 .accessibility-icon {
    width: 2rem;
    height: 2.1rem;
  }
  .accessibility-block .two-cols .accessibility-item:nth-child(1) + .accessibility-item p {
    border-top: 1px solid #E3E6E9;
  }
}

/* tabpanel filter */
.tabpanel-filter {
  padding: 2rem 0;
  border-bottom: 1px solid #939BA1;
}
.tabpanel-filter .flex {
  flex-direction: row;
  align-items: center;
}
.tabpanel-filter .flex > * + * {
  margin-left: 2rem;
}
.tabpanel-filter .flex .filter-text {
  padding-right: 1rem;
  font-weight: 700;
  color: #140F06;
}
.tabpanel-filter .flex .outline-button {
  background: #FFFFFF;
}
.tabpanel-filter .flex .outline-button .filter-ticker {
  width: 0;
  height: 0;
}
.tabpanel-filter .flex .outline-button span {
  margin-left: 0;
}
.tabpanel-filter .flex .outline-button[aria-selected=true] {
  color: #FFFFFF;
  background: #140F06;
}
.tabpanel-filter .flex .outline-button[aria-selected=true] .filter-ticker {
  width: 1.4rem;
  height: 1.3rem;
}
.tabpanel-filter .flex .outline-button[aria-selected=true] span {
  margin-left: 1rem;
}
.tabpanel-filter .flex .outline-button.disruption[aria-selected=true] {
  background: #DC2385;
}
.tabpanel-filter .flex .outline-button.changes[aria-selected=true] {
  background: #993189;
}
.tabpanel-filter .flex .desktop-only {
  flex-direction: row;
  align-items: center;
}
.tabpanel-filter .flex .desktop-only > * + * {
  margin-left: 2rem;
}
.tabpanel-filter .flex .desktop-only[hidden] {
  display: none;
}
.tabpanel-filter .flex .mobile-only[hidden] {
  display: none;
}
@media (max-width: 840px) {
  .tabpanel-filter {
    padding: 1rem 0;
  }
  .tabpanel-filter .flex > * + * {
    margin-left: 1rem;
  }
}
@media (max-width: 540px) {
  .tabpanel-filter .mobile-only {
    width: 100%;
  }
}

/* general blocks */
.route-search {
  flex-direction: row;
  align-items: center;
  padding: 5rem 0 4rem;
  position: relative;
}
.route-search::before {
  content: "";
  position: absolute;
  top: 0;
  left: -6rem;
  width: calc(100% + 12rem);
  height: 1rem;
  background: #140F06;
}
.route-search h3 {
  flex-shrink: 0;
  margin-bottom: 0;
  padding-right: 3rem;
}
.route-search form {
  flex-grow: 1;
}
.route-search form .search-form-group {
  margin-left: auto;
}
@media (max-width: 1320px) {
  .route-search::before {
    left: calc((100vw - 120rem) * -0.5);
    width: 100vw;
  }
}
@media (max-width: 1200px) {
  .route-search::before {
    left: 0;
    width: 100%;
  }
}
@media (max-width: 540px) {
  .route-search {
    flex-wrap: wrap;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .route-search::before {
    height: 0.5rem;
  }
  .route-search h3 {
    width: 100%;
    margin-bottom: 1.5rem;
    padding-right: 0;
  }
}

.external-block {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  position: relative;
  padding: 1.6rem 0;
}
.external-block .external-content {
  max-width: 48rem;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  z-index: 1;
  position: relative;
  margin-right: auto;
}
.external-block .external-content p {
  color: rgba(20, 15, 6, 0.7);
}
.external-block .external-content h3, .external-block .external-content h5 {
  margin-bottom: 0;
}
.external-block .external-content h3 + p, .external-block .external-content h5 + p {
  margin-top: 1rem;
}
.external-block .button-group {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  z-index: 1;
  position: relative;
}
.external-block .button-group .social-icon {
  font-size: 0;
}
.external-block .button-group .social-icon + .social-icon {
  margin-left: 4rem;
}
.external-block .button-group .cta.button, .external-block .button-group .cta.icon-button {
  min-width: 21.5rem;
  text-align: center;
}
.external-block .button-group .cta.button + .cta.button, .external-block .button-group .cta.icon-button + .cta.button, .external-block .button-group .cta.button + .cta.icon-button, .external-block .button-group .cta.icon-button + .cta.icon-button {
  margin-left: 2rem;
}
.external-block::before {
  content: "";
  position: absolute;
  top: 0;
  left: -6rem;
  width: calc(100% + 12rem);
  height: 100%;
  background: inherit;
  z-index: 0;
}
.external-block.vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 4rem 0;
}
.external-block.vertical.center .external-content {
  max-width: 72rem;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.external-block.vertical.center .button-group {
  width: 100%;
}
.external-block.vertical h5 {
  margin-bottom: 0;
}
.external-block.vertical::before {
  left: calc((100vw - 120rem) * -0.5 - 2rem);
  width: calc(100% + (100vw - 120rem) * 0.5);
}
.station-card + .external-block .external-content {
  text-align: left;
  margin-left: 0;
}
.station-card + .external-block .button-group {
  justify-content: flex-start;
}
.station-card + .external-block::before {
  left: calc((100vw - 120rem) * -0.5);
  width: 100vw;
}
.external-block.center {
  align-items: center;
  justify-content: center;
}
.bg-lightgrey-60 .external-block {
  padding-top: 0;
  padding-bottom: 0;
}
.bg-dark-blue .external-block {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.bg-dark-blue .external-block .external-content h3, .bg-dark-blue .external-block .external-content h4, .bg-dark-blue .external-block .external-content h5, .bg-dark-blue .external-block .external-content p {
  color: #FFFFFF;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .external-block .external-content {
    flex-grow: 1;
    margin-right: auto;
  }
}
@media (max-width: 1320px) {
  .external-block::before {
    left: calc((100vw - 120rem) * -0.5);
    width: calc(100% + 100vw - 120rem);
  }
  .external-block.vertical::before {
    left: -3rem;
    width: 100vw;
  }
}
@media (max-width: 1200px) {
  .external-block::before {
    left: -3rem;
    width: 100vw;
  }
  .bg-dark-blue .external-block {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .external-block {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .external-block .external-content {
    max-width: none;
    text-align: center;
  }
  .external-block .button-group {
    width: 100%;
  }
}
@media (max-width: 540px) {
  .external-block {
    flex-wrap: wrap;
  }
  .external-block .external-content {
    text-align: left;
  }
  .external-block .button-group {
    justify-content: flex-start;
  }
  .external-block .button-group .cta.button, .external-block .button-group .cta.icon-button {
    width: 100%;
    min-width: auto;
  }
  .external-block.vertical {
    padding: 2rem 0 3rem;
  }
  .external-block.vertical .external-content {
    text-align: left;
  }
  .external-block.vertical .external-content h3, .external-block.vertical .external-content h5 {
    font-size: 2rem;
  }
  .external-block.vertical .button-group {
    flex-wrap: wrap;
  }
  .external-block.vertical .button-group .cta.button + .cta.button, .external-block.vertical .button-group .cta.icon-button + .cta.button, .external-block.vertical .button-group .cta.button + .cta.icon-button, .external-block.vertical .button-group .cta.icon-button + .cta.icon-button {
    margin-top: 1rem;
    margin-left: 0;
  }
  .external-block.vertical.center .external-content {
    text-align: left;
  }
  .bg-dark-blue .external-block {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.content-col > * + .cta.button, .content-col > * + .cta.icon-button {
  margin-top: 1.6rem;
}
.content-col > .cta.button + *, .content-col > .cta.icon-button + * {
  margin-top: 4rem;
}
.content-col .external-block {
  padding-right: 3.5rem;
}
.content-col .external-block.vertical {
  padding-top: 2rem;
  padding-bottom: 3rem;
}
.content-col .external-block.vertical .external-content {
  margin-left: 0;
  text-align: left;
}
.content-col .external-block.vertical h5 {
  margin-bottom: 1rem;
}
.content-col .external-block.vertical .button-group {
  justify-content: flex-start;
  margin-top: 0;
}
.content-col .external-block::before {
  left: calc((100vw - 120rem) * -0.5);
  width: calc(100% + (100vw - 120rem) * 0.5);
}
.content-col.bg-dark-blue .external-block {
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 1200px) {
  .content-col .external-block::before {
    left: -3rem;
    width: calc(100% + 3rem);
  }
}
@media (max-width: 840px) {
  .content-col .external-block {
    padding-right: 0;
  }
  .content-col .external-block::before {
    left: -3rem;
    width: 100vw;
  }
}
@media (max-width: 540px) {
  .content-col > .cta.button + *, .content-col > .cta.icon-button + * {
    margin-top: 3rem;
  }
}

.two-cols p + .cta.button, .two-cols p + .cta.icon-button {
  margin: 1.6rem 0 4rem;
  min-width: 21.5rem;
}
.two-cols > * > *.cta.button:last-child, .two-cols > * > *.cta.icon-button:last-child {
  margin-bottom: 0;
}

.timetable-block .provs {
  color: #140F06;
  margin: -2.5rem -1.5rem 2.5rem;
}
.timetable-block .provs .prov-item {
  padding: 0.5rem 1.5rem;
}
.timetable-block h2 + p {
  color: #993189;
}
.timetable-block .table-container.timetable {
  margin: 3rem 0 4rem;
}
@media (max-width: 1200px) {
  .timetable-block .provs {
    margin-top: -2rem;
    margin-bottom: 2rem;
  }
  .timetable-block .table-container.timetable {
    margin: 2rem 0 3rem;
  }
}
@media (max-width: 540px) {
  .timetable-block .provs {
    margin-top: -1.5rem;
    margin-bottom: 1.5rem;
  }
  .timetable-block .table-container.timetable {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .timetable-block .table-container.timetable + .cta.button, .timetable-block .table-container.timetable + .cta.icon-button {
    width: 100%;
  }
}

.ticket-finder-result-block p.ticket-price-text {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.ticket-finder-result-block p.ticket-price-text + p.ticket-price-text {
  margin-top: 1.2rem;
}
.ticket-finder-result-block p.ticket-price-text + *:not(.ticket-price-text) {
  margin-top: 3rem;
}
.ticket-finder-result-block p + h2 {
  margin-top: 4rem;
}
.ticket-finder-result-block p + h3 {
  margin-top: 2.4rem;
}
.ticket-finder-result-block p + h4 {
  margin-top: 1.6rem;
}
.ticket-finder-result-block p + .cta.button, .ticket-finder-result-block p + .cta.icon-button {
  margin-bottom: 3rem;
}
@media (max-width: 1200px) {
  .ticket-finder-result-block + h2 {
    margin-top: 3rem;
  }
}
@media (max-width: 840px) {
  .ticket-finder-result-block p.ticket-price-text .price {
    color: #140F06;
    font-weight: 500;
  }
  .ticket-finder-result-block p.ticket-price-text + p.ticket-price-text {
    margin-top: 0.8rem;
  }
  .ticket-finder-result-block p.ticket-price-text + *:not(.ticket-price-text) {
    margin-top: 2rem;
  }
  .ticket-finder-result-block p + .cta.button, .ticket-finder-result-block p + .cta.icon-button {
    margin-bottom: 2rem;
  }
}

.concession-header .middle-wrap {
  position: relative;
  margin-top: -0.6rem;
  margin-bottom: -0.6rem;
  padding-bottom: 5rem;
}
.concession-header .middle-wrap::before {
  content: "";
  position: absolute;
  left: -6rem;
  bottom: 0;
  width: calc(100% + 12rem);
  height: 1rem;
  background: #140F06;
}
.concession-header h2 {
  margin-bottom: 0;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}
.concession-header ul {
  margin: -0.25rem -2.5rem;
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}
.concession-header ul li {
  padding: 0.25rem 2.5rem;
}
.concession-header ul li::before {
  content: none;
}
.concession-header ul li a {
  color: #395180;
  text-decoration: underline;
}
.concession-header ul li + li {
  margin-top: 0;
}
@media (max-width: 1320px) {
  .concession-header .middle-wrap::before {
    left: calc((100vw - 120rem) * -0.5);
    width: 100vw;
  }
}
@media (max-width: 1200px) {
  .concession-header .middle-wrap {
    padding-bottom: 4rem;
  }
  .concession-header .middle-wrap::before {
    left: 0;
    width: 100%;
  }
}
@media (max-width: 840px) {
  .concession-header .middle-wrap ul {
    align-items: flex-start;
    flex-direction: column;
  }
}
@media (max-width: 540px) {
  .concession-header {
    margin-top: 0 !important;
  }
  .concession-header .middle-wrap {
    padding-bottom: 0;
  }
  .concession-header .middle-wrap::before {
    content: none;
  }
}

.concession-form-return-text + h1 {
  margin-top: 1rem;
  margin-bottom: 2.4rem;
}
@media (max-width: 1200px) {
  .concession-form-return-text + h1 {
    margin-bottom: 1rem;
  }
}

/* news content layout */
@media (max-width: 540px) {
  .news-layout .main-content .news-layout-title {
    margin-bottom: 3rem;
  }
  .news-layout .side-content h3 {
    font-size: 3rem;
  }
}

/* news list page */
@media (max-width: 540px) {
  .news-list-title {
    margin-bottom: 3rem;
  }
}

.OTH {
  display: none;
}

@media (max-width: 1024px) {
  select, textarea, input {
    font-size: 1.6rem !important;
  }
}
/* skipping to content/menu */
.skipping-container {
  position: absolute;
  top: auto;
  left: -999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999;
}
.skipping-container .underlined {
  color: #000000;
  margin-left: 1rem;
  margin-right: 1rem;
}
.skipping-container.show {
  top: 0;
  left: auto;
  width: 48rem;
  height: auto;
  margin: 0 calc((100vw - 48rem) * 0.5) 1rem;
  padding: 1rem 0.5rem 0.8rem;
  text-align: center;
  border: 2px solid #140F06;
  background-color: #E3E6E9;
  border-radius: 30px;
  z-index: 1000;
  overflow: auto;
}
@media (max-width: 840px) {
  .skipping-container.show {
    width: 80%;
    margin-left: 10%;
    margin-right: 10%;
  }
}

.alert-success, .alert-warning, .alert-error {
  border-style: solid;
  border-width: 1px;
  margin: 1em;
  padding: 10px;
  text-align: center;
}
.alert-success a, .alert-warning a, .alert-error a {
  text-decoration: underline;
}
.alert-success a:hover, .alert-warning a:hover, .alert-error a:hover {
  text-decoration: none;
}

.alert-error {
  background-color: #f6ced1;
  border-color: #D32533;
  color: #D32533;
}
.alert-error a {
  color: #D32533;
}

.alert-warning {
  background-color: #FFE;
  border-color: #F59B24;
  color: #F59B24;
}
.alert-warning a {
  color: #F59B24;
}

.alert-success {
  background-color: #EFE;
  border-color: #09A550;
  color: #09A550;
}
.alert-success a {
  color: #09A550;
}

.banner-image {
  position: relative;
}
.banner-image .banner-image-bg::before {
  padding-bottom: 46.39%;
}
.banner-image .banner-image-bg .banner-image-inner {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
.banner-image > .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.banner-image > .inner .wrap {
  height: 100%;
}

.carousel-banner-image {
  position: relative;
}
.carousel-banner-image .flickity-prev-next-button {
  width: 3.6rem;
  height: 3.6rem;
}
.carousel-banner-image .flickity-prev-next-button.previous {
  left: calc((100% - 132rem) * 0.5);
}
.carousel-banner-image .flickity-prev-next-button.next {
  right: calc((100% - 132rem) * 0.5);
}
.carousel-banner-image .inner .middle-wrap {
  padding-top: 6rem;
  padding-bottom: 6rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.carousel-banner-image .inner .middle-wrap > *:not(.button):not(.icon-button) {
  position: relative;
  max-width: 85rem;
  width: 100%;
  z-index: 3;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  color: #FFFFFF;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}
.carousel-banner-image .inner .middle-wrap > *:not(.button):not(.icon-button) + .cta.button, .carousel-banner-image .inner .middle-wrap > *:not(.button):not(.icon-button) + .cta.icon-button {
  margin-top: 2rem;
}
.carousel-banner-image .inner .middle-wrap .cta.button, .carousel-banner-image .inner .middle-wrap .cta.icon-button {
  position: relative;
  z-index: 3;
  min-width: 16rem;
  width: auto;
  text-align: center;
}
.carousel-banner-image .inner .middle-wrap h3 {
  display: inline-block;
  max-width: 60rem;
  font-weight: 400;
  margin-bottom: 0;
}
@media (max-width: 1320px) {
  .carousel-banner-image .flickity-prev-next-button {
    top: auto;
    bottom: 5rem;
    transform: translateY(0);
    width: 4rem;
    height: 4rem;
    background: #140F06;
  }
  .carousel-banner-image .flickity-prev-next-button::after {
    height: 1rem;
  }
  .carousel-banner-image .flickity-prev-next-button.previous {
    left: auto;
    right: 8rem;
  }
  .carousel-banner-image .flickity-prev-next-button.previous::after {
    left: 50%;
    transform: rotate(0deg) translate(-50%, -50%);
  }
  .carousel-banner-image .flickity-prev-next-button.next {
    right: 4rem;
  }
  .carousel-banner-image .flickity-prev-next-button.next::after {
    right: 50%;
    transform: rotate(180deg) translate(-50%, -50%);
  }
}
@media (max-width: 1200px) {
  .carousel-banner-image .inner .middle-wrap {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .carousel-banner-image .flickity-prev-next-button {
    bottom: 0;
  }
}
@media (max-width: 540px) {
  .carousel-banner-image .flickity-prev-next-button.previous {
    right: 7rem;
  }
  .carousel-banner-image .flickity-prev-next-button.next {
    right: 3rem;
  }
  .carousel-banner-image .inner {
    justify-content: flex-end;
  }
  .carousel-banner-image .inner .middle-wrap {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
  .carousel-banner-image .inner .middle-wrap h3 {
    font-size: 1.8rem;
  }
}

.travel-update-banner .banner-image-bg::before {
  padding-bottom: 25.69%;
}
.travel-update-banner .banner-image-bg::after {
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.5) -0.06%, rgba(0, 0, 0, 0) 40.19%);
}
.travel-update-banner .banner-image-bg + .banner-content {
  padding-top: 0;
}
.travel-update-banner .banner-image-bg + .banner-content .tag-label {
  transform: translateY(-50%);
}
.travel-update-banner .banner-content {
  padding-top: 5rem;
}
.travel-update-banner .banner-content .tag-label {
  position: relative;
  z-index: 2;
}
.travel-update-banner .banner-content h1 {
  margin: 0;
  padding: 2rem 0 4rem;
}
.travel-update-banner .banner-content .tu-date {
  flex-direction: row;
  align-items: flex-start;
}
.travel-update-banner .banner-content .tu-date > * {
  flex-grow: 1;
}
@media (max-width: 1200px) {
  .travel-update-banner .banner-image-bg::before {
    padding-bottom: 37.5%;
  }
  .travel-update-banner .banner-content {
    padding-top: 4rem;
  }
}
@media (max-width: 1024px) {
  .travel-update-banner .banner-image-bg::before {
    padding-bottom: 42.75%;
  }
}
@media (max-width: 840px) {
  .travel-update-banner .banner-image-bg::before {
    padding-bottom: 66.667%;
  }
  .travel-update-banner .banner-image-bg::after {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  }
  .travel-update-banner .banner-image-bg + .banner-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    padding-top: 4rem;
    padding-bottom: 4rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
  }
  .travel-update-banner .banner-image-bg + .banner-content h1, .travel-update-banner .banner-image-bg + .banner-content .tu-date p {
    color: #FFFFFF;
  }
  .travel-update-banner .banner-image-bg + .banner-content .tu-date .date-label-text::before {
    background: #FFFFFF;
  }
  .travel-update-banner .banner-image-bg + .banner-content .tag-label {
    transform: translateY(0);
  }
}
@media (max-width: 540px) {
  .travel-update-banner .banner-image-bg::before {
    padding-bottom: 100%;
  }
  .travel-update-banner .banner-image-bg + .banner-content {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .travel-update-banner .banner-content {
    padding-top: 3rem;
  }
  .travel-update-banner .banner-content h1 {
    padding-bottom: 3rem;
  }
}

.search-banner {
  background: #395180;
  padding: 5rem 0;
}
.search-banner h1, .search-banner h3, .search-banner p, .search-banner span {
  color: #FFFFFF;
}
@media (max-width: 1200px) {
  .search-banner {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 540px) {
  .search-banner {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.tps-search-banner .two-cols {
  margin: 0;
}
.tps-search-banner .left-content {
  padding: 0 3rem 0 0;
  flex-basis: auto;
  flex-grow: 1;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .tps-search-banner .left-content {
    max-width: none;
  }
}
.tps-search-banner .right-content {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 0 0 2rem 3rem;
  flex-basis: auto;
  flex-shrink: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .tps-search-banner .right-content {
    max-width: none;
  }
}
.tps-search-banner .right-content p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.2;
}
.tps-search-banner .right-content p + .button-group {
  margin-left: 4rem;
}
.tps-search-banner .right-content .button-group {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.tps-search-banner .right-content .button-group > * + * {
  margin-left: 4rem;
}
.tps-search-banner .right-content.vertical {
  flex-direction: column;
  padding-bottom: 0;
}
.tps-search-banner .right-content.vertical p, .tps-search-banner .right-content.vertical a {
  font-size: 1.6rem;
  font-weight: 400;
  color: #FFFFFF;
}
.tps-search-banner .right-content.vertical a {
  text-decoration: underline;
}
.tps-search-banner .right-content.vertical > * + * {
  margin-left: 0;
}
@media (max-width: 1200px) {
  .tps-search-banner .left-content {
    padding-right: 2rem;
  }
  .tps-search-banner .right-content {
    padding-left: 2rem;
  }
}
@media (max-width: 1024px) {
  .tps-search-banner .right-content {
    padding-bottom: 0;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .tps-search-banner .right-content p + .button-group {
    margin-top: 1rem;
    margin-left: 0;
  }
}
@media (max-width: 840px) {
  .tps-search-banner .left-content {
    order: 1;
    padding-right: 0;
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tps-search-banner .left-content {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .tps-search-banner .right-content {
    order: 0;
    align-items: flex-start;
    justify-content: flex-start;
    padding-left: 0;
    margin-bottom: 2rem;
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .tps-search-banner .right-content {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .tps-search-banner {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
}

.timetable-content-banner {
  background: #395180;
  padding: 5rem 0 6rem;
  position: relative;
  z-index: 3;
}
.timetable-content-banner h1, .timetable-content-banner label {
  color: #FFFFFF;
}
.timetable-content-banner form .flex {
  align-items: flex-end;
  margin: -1rem -1.5rem;
}
.timetable-content-banner form .flex > * {
  padding: 1rem 1.5rem;
}
.timetable-content-banner form .flex .flip-button {
  font-size: 0;
}
.timetable-content-banner form .flex .flip-button .double-directs-icon {
  height: 6rem;
}
.timetable-content-banner form .flex .form-group {
  margin-bottom: 0;
  flex-grow: 1;
  flex-basis: 31%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .timetable-content-banner form .flex .form-group {
    max-width: 31%;
  }
}
@media (max-width: 1200px) {
  .timetable-content-banner {
    padding-top: 4rem;
    padding-bottom: 5rem;
  }
}
@media (max-width: 840px) {
  .timetable-content-banner form .flex {
    margin-left: -0.6rem;
    margin-right: -0.6rem;
  }
  .timetable-content-banner form .flex > * {
    padding-left: 0.6rem;
    padding-right: 0.6rem;
  }
  .timetable-content-banner form .flex .flip-button .double-directs-icon {
    width: 1.6rem;
    height: 5rem;
  }
}
@media (max-width: 540px) {
  .timetable-content-banner {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
  .timetable-content-banner form .flex .form-group {
    flex-basis: 45%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .timetable-content-banner form .flex .form-group {
    max-width: 45%;
  }
}
@media (max-width: 540px) {
  .timetable-content-banner form .flex .form-group.date-input-group {
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .timetable-content-banner form .flex .form-group.date-input-group {
    max-width: 100%;
  }
}

.ticket-finder-result-banner {
  background: #395180;
  padding: 6rem 0;
}
.ticket-finder-result-banner .left-content h1 {
  margin-bottom: 0;
}
.ticket-finder-result-banner .right-content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}
.ticket-finder-result-banner .right-content .small-text {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ticket-finder-result-banner .right-content .small-text + p {
  margin-top: 0;
}
@media (max-width: 1200px) {
  .ticket-finder-result-banner {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .ticket-finder-result-banner .left-content {
    padding-top: 0;
  }
  .ticket-finder-result-banner .right-content {
    align-items: flex-start;
  }
  .ticket-finder-result-banner .right-content .small-text + p {
    margin-top: 1rem;
  }
}
@media (max-width: 540px) {
  .ticket-finder-result-banner {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

.simple-banner {
  position: relative;
}
.simple-banner .banner-bg {
  background-color: #395180;
  background-position: center center, center center;
  background-repeat: no-repeat, no-repeat;
  background-size: cover, 0px 0px;
}
.simple-banner .banner-bg::before {
  padding-bottom: 25.69%;
}
.simple-banner .banner-bg::after {
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.8) -0.06%, rgba(0, 0, 0, 0) 40.19%), radial-gradient(51.94% 398.34% at 9.31% 59.81%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 99.99%, rgba(0, 0, 0, 0) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
}
.simple-banner .banner-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: 5rem;
  padding-bottom: 5rem;
  z-index: 2;
}
.simple-banner .banner-content h1 {
  color: #FFFFFF;
  margin-bottom: 0;
}
.simple-banner.banner-case-study .banner-bg {
  max-height: 72rem;
}
.simple-banner.banner-case-study .banner-bg::before {
  padding-bottom: 50%;
}
.simple-banner.banner-case-study .banner-bg::after {
  background: linear-gradient(69.52deg, rgba(0, 0, 0, 0.6) 6.17%, rgba(0, 0, 0, 0) 56.58%);
}
.simple-banner.banner-case-study .banner-content {
  padding-bottom: 10rem;
}
.simple-banner.banner-case-study .banner-content h1 span {
  display: block;
}
@media (max-width: 1200px) {
  .simple-banner .banner-bg::before {
    padding-bottom: 37.5%;
  }
  .simple-banner .banner-content {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .simple-banner.banner-case-study .banner-bg::before {
    padding-bottom: 62.5%;
  }
  .simple-banner.banner-case-study .banner-content {
    padding-bottom: 6rem;
  }
}
@media (max-width: 1024px) {
  .simple-banner .banner-bg::before {
    padding-bottom: 42.75%;
  }
}
@media (max-width: 840px) {
  .simple-banner .banner-bg::before {
    padding-bottom: 66.667%;
  }
  .simple-banner.banner-case-study .banner-bg::before {
    padding-bottom: 74.9333%;
  }
  .simple-banner.banner-case-study .banner-content {
    padding-bottom: 4rem;
  }
}
@media (max-width: 540px) {
  .simple-banner .banner-bg::after {
    content: none;
  }
  .simple-banner .banner-content {
    position: relative;
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
  .simple-banner .banner-content h1 {
    color: #140F06;
  }
  .simple-banner.banner-case-study .banner-bg::before {
    padding-bottom: 100%;
  }
  .simple-banner.banner-case-study .banner-bg::after {
    background: linear-gradient(80.72deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
  }
  .simple-banner.banner-case-study .banner-content {
    position: absolute;
    padding-bottom: 3rem;
  }
  .simple-banner.banner-case-study .banner-content h1 {
    color: #FFFFFF;
  }
}
@media (max-width: 360px) {
  .simple-banner .banner-bg::before {
    padding-bottom: 100%;
  }
}

.banner-active .banner-content {
  display: flex;
  align-items: stretch;
  flex-direction: row;
}
.banner-active .banner-content h1 {
  color: #395180;
}
.banner-active .banner-content .left-content {
  flex-basis: 41.6667%;
  padding-top: 10rem;
  padding-bottom: 10rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .banner-active .banner-content .left-content {
    max-width: 41.6667%;
  }
}
.banner-active .banner-content .right-content {
  position: relative;
  flex-basis: 58.3333%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .banner-active .banner-content .right-content {
    max-width: 58.3333%;
  }
}
.banner-active .banner-content .right-content .active-image {
  position: absolute;
  right: calc(60rem - 100%);
}
.banner-active .banner-content .right-content .active-image::before {
  padding-bottom: 79.9431%;
}
.banner-active .banner-content .right-content .active-image::after {
  content: none;
}
.theme-blue .banner-active .banner-content h1 .highlight, .theme-blue .banner-active .banner-content h1 strong {
  color: #00AED0;
}
.theme-red .banner-active .banner-content h1 .highlight, .theme-red .banner-active .banner-content h1 strong {
  color: #D32C3D;
}
@media (max-width: 1440px) {
  .banner-active .banner-content .right-content .active-image {
    right: calc((100vw - 120rem) * -0.5);
  }
}
@media (max-width: 1200px) {
  .banner-active .banner-content .left-content, .banner-active .banner-content .right-content {
    flex-basis: 50%;
  }
}
@media (max-width: 1200px) and (-ms-high-contrast: none), (max-width: 1200px) and (-ms-high-contrast: active) {
  .banner-active .banner-content .left-content, .banner-active .banner-content .right-content {
    max-width: 50%;
  }
}
@media (max-width: 1200px) {
  .banner-active .banner-content .left-content {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
@media (max-width: 1200px) {
  .banner-active .banner-content .right-content .active-image {
    right: -3rem;
  }
}
@media (max-width: 1024px) {
  .banner-active .banner-content .left-content {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .banner-active .banner-content {
    flex-wrap: wrap;
  }
  .banner-active .banner-content .left-content {
    flex-basis: 100%;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .banner-active .banner-content .left-content {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .banner-active .banner-content .right-content {
    order: -1;
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .banner-active .banner-content .right-content {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .banner-active .banner-content .right-content .active-image {
    position: relative;
    right: auto;
    width: calc(100% + 6rem);
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .banner-active .banner-content .right-content .active-image::before {
    padding-bottom: 60%;
  }
}
@media (max-width: 540px) {
  .banner-active .banner-content h1 {
    font-size: 5.8rem;
  }
  .banner-active .banner-content .right-content .active-image::before {
    padding-bottom: 80%;
  }
}

.banner-active-home {
  position: relative;
  display: block;
  margin-bottom: 5rem;
}
.banner-active-home .banner-bg {
  max-height: 80rem;
}
.banner-active-home .banner-bg::before {
  padding-bottom: 43.75%;
}
.banner-active-home .banner-bg::after {
  content: none;
}
.banner-active-home .banner-video-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  max-width: 100%;
  min-height: 100%;
}
.banner-active-home .banner-video-container iframe {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100vw;
  height: 56.4971751412vw;
  transform: translateY(-50%);
  border: 0;
}
.banner-active-home .banner-content {
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  margin-left: auto;
  padding: 10rem 3rem;
}
.banner-active-home .banner-content h1 {
  width: 100%;
  color: #395180;
}
.banner-active-home .banner-content h1 span {
  display: block;
}
.banner-active-home .banner-content p {
  max-width: 50rem;
  width: 100%;
}
.banner-active-home .banner-content .highlight {
  color: #FF8B42;
}
.banner-active-home .banner-content .activity-container {
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  padding-top: 2rem;
}
.banner-active-home .banner-content .activity-container .activity-item h2 {
  font-size: 6rem;
  margin-bottom: 0.5rem;
}
.banner-active-home .banner-content .activity-container .activity-item h5 {
  color: #395180;
  margin-bottom: 0;
}
.banner-active-home .banner-content .activity-container .activity-item + .activity-item {
  margin-left: 7rem;
}
.banner-active-home.with-video .banner-bg::after {
  content: "";
  background: rgba(0, 0, 0, 0.65);
}
.banner-active-home.with-video .banner-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
.banner-active-home.with-video .banner-content h1:only-child {
  margin-bottom: 0;
}
.banner-active-home.with-video .banner-content h1, .banner-active-home.with-video .banner-content p, .banner-active-home.with-video .banner-content p strong,
.banner-active-home.with-video .banner-content .activity-container .activity-item h5 {
  color: #FFFFFF;
}
.banner-active-home.without-video {
  position: relative;
  max-width: 120rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.banner-active-home.without-video .banner-bg {
  position: absolute;
  top: 0;
  right: 0;
  max-width: 51.9167%;
  max-height: calc(100% - 5rem);
}
.banner-active-home.without-video .banner-bg::before {
  padding-bottom: 81.22%;
}
.banner-active-home.without-video .banner-content {
  position: relative;
  align-items: flex-start;
  text-align: left;
  margin-left: 0;
  padding-left: 0;
  padding-right: 0;
  z-index: 3;
}
@media (max-width: 1200px) {
  .banner-active-home .banner-bg::before {
    padding-bottom: 54.6875%;
  }
  .banner-active-home .banner-content {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .banner-active-home.without-video .banner-content {
    padding-left: 3rem;
    padding-right: 3rem;
    max-width: 50%;
  }
}
@media (max-width: 1024px) {
  .banner-active-home .banner-content {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .banner-active-home .banner-bg::before {
    padding-bottom: 65.625%;
  }
  .banner-active-home .banner-video-container iframe {
    width: 100%;
    height: 100%;
    transform: scale(2.1);
    top: 7%;
  }
  .banner-active-home .banner-content {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .banner-active-home .banner-content h1 {
    font-size: 5.8rem;
  }
  .banner-active-home .banner-content .activity-container .activity-item h2 {
    font-size: 5rem;
  }
  .banner-active-home .banner-content .activity-container .activity-item + .activity-item {
    margin-left: 4rem;
  }
  .banner-active-home.with-video .banner-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .banner-active-home.with-video .banner-content {
    position: relative;
    top: auto;
    left: auto;
    padding-top: 16rem;
    padding-bottom: 4rem;
    transform: none;
  }
  .banner-active-home.without-video .banner-bg {
    position: relative;
    max-width: none;
    width: calc(100% - 7rem);
    margin-left: 7rem;
  }
  .banner-active-home.without-video .banner-bg::before {
    padding-bottom: 60.915%;
  }
  .banner-active-home.without-video .banner-content {
    max-width: none;
    margin-top: -3rem;
    padding-top: 0;
  }
  .banner-active-home.without-video .banner-content p {
    max-width: none;
  }
}
@media (max-width: 540px) {
  .banner-active-home .banner-bg::before {
    padding-bottom: 100%;
  }
  .banner-active-home .banner-content {
    align-items: flex-start;
    text-align: left;
  }
  .banner-active-home .banner-content .activity-container .activity-item h2 {
    font-size: 4rem;
  }
  .banner-active-home .banner-content .activity-container .activity-item h5 {
    font-size: 1.6rem;
  }
  .banner-active-home.without-video .banner-bg::before {
    padding-bottom: 73.443%;
  }
}

.tabs {
  width: 100%;
}

.tabs.tf-tabs {
  position: relative;
  overflow: hidden;
}
.tabs.tf-tabs .tf-tablist {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  padding-top: 4rem;
}
.tabs.tf-tabs .tf-tablist[data-view=map]::before {
  content: "";
  position: absolute;
  left: -15rem;
  bottom: 100%;
  width: calc(100% + 30rem);
  height: 500px;
  box-shadow: 0px 150px 150px 0px rgba(20, 15, 6, 0.42);
  z-index: 0;
}
.tabs.tf-tabs .tf-tablist[data-view=map] .count-text {
  color: #FFFFFF;
}
.tabs.tf-tabs .tabs-header {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 1;
}
.tabs.tf-tabs .tabs-header .tab-toggle {
  display: flex;
  flex-direction: row;
}
.tabs.tf-tabs .tabs-header .tab-toggle .tab-button {
  background: #140F06;
  color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: 700;
  width: 16rem;
  height: 4.4rem;
  border: 2px solid #140F06;
  text-align: left;
  padding: 0 2rem;
}
.tabs.tf-tabs .tabs-header .tab-toggle .tab-button:first-child {
  border-radius: 4px 0 0 4px;
}
.tabs.tf-tabs .tabs-header .tab-toggle .tab-button:last-child {
  border-radius: 0 4px 4px 0;
}
.tabs.tf-tabs .tabs-header .tab-toggle .tab-button[aria-selected=true] {
  background: #FFFFFF;
  color: #140F06;
}
.tabs.tf-tabs #listview-tab {
  padding-top: 8.4rem;
}
.tabs.tf-tabs #listview-tab .three-cols {
  margin: -2rem;
}
.tabs.tf-tabs .map-container::before {
  padding-bottom: 58.33%;
}
.tabs.tf-tabs .map-container .leaflet-control-zoom-in,
.tabs.tf-tabs .map-container .leaflet-control-zoom-out {
  display: none !important;
}
@media (max-width: 1200px) {
  .tabs.tf-tabs .map-container::before {
    padding-bottom: 66.67%;
  }
}
@media (max-width: 1024px) {
  .tabs.tf-tabs .map-container::before {
    padding-bottom: 75%;
  }
}
@media (max-width: 840px) {
  .tabs.tf-tabs .tf-tablist {
    padding-top: 3rem;
  }
  .tabs.tf-tabs .tabs-header {
    justify-content: center;
  }
  .tabs.tf-tabs .tabs-header .count-text {
    display: none;
  }
  .tabs.tf-tabs #listview-tab {
    padding-top: 7.4rem;
  }
  .tabs.tf-tabs .map-container::before {
    padding-bottom: 100%;
  }
}
@media (max-width: 540px) {
  .tabs.tf-tabs .tf-tablist {
    padding-top: 2rem;
  }
  .tabs.tf-tabs .tabs-header .tab-toggle {
    justify-content: center;
    width: 100%;
  }
  .tabs.tf-tabs .tabs-header .tab-toggle .tab-button {
    max-width: 16rem;
    width: 100%;
    flex-grow: 1;
  }
  .tabs.tf-tabs #listview-tab {
    padding-top: 6.4rem;
  }
  .tabs.tf-tabs #listview-tab .pt-4 {
    padding-top: 1rem;
  }
  .tabs.tf-tabs #listview-tab .pb-4 {
    padding-bottom: 1rem;
  }
  .tabs.tf-tabs #listview-tab .three-cols {
    margin: 0;
  }
  .tabs.tf-tabs .map-container::before {
    padding-bottom: 115%;
  }
}

.tabs.tps-tabs .tps-tab-list {
  background: #395180;
  height: 7rem;
  overflow: visible;
  padding-top: 1rem;
  border-top: 1px solid #FFFFFF;
}
.tabs.tps-tabs .tps-tab-list .large-wrap {
  height: 100%;
}
.tabs.tps-tabs .tab-button {
  border-radius: 0;
  background: transparent;
  color: #FFFFFF;
  font-weight: 500;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 6rem 1rem;
}
.tabs.tps-tabs .tab-button svg {
  fill: #FFFFFF;
  margin-right: 1rem;
}
.tabs.tps-tabs .tab-button[aria-selected=true] {
  border-radius: 0;
  background: #FFFFFF;
  color: #140F06;
}
.tabs.tps-tabs .tab-button[aria-selected=true] svg {
  fill: #140F06;
}
.tabs.tps-tabs .tab-button:hover,
.tabs.tps-tabs .tab-button:focus,
.tabs.tps-tabs .tab-button:active {
  border-radius: 0;
}
.tabs.tps-tabs .tab-button[aria-selected=false]:focus,
.tabs.tps-tabs .tab-button[aria-selected=false]:hover {
  opacity: 0.75;
}
.tabs.tps-tabs .tps-tab-content {
  position: relative;
  z-index: 2;
}
.tabs.tps-tabs .tps-tab-content .dark-blue-tabpanel-text {
  color: #395180;
  margin: 5rem 0 1rem;
}
.tabs.tps-tabs .tps-tab-content .ferry-timetable-link {
  margin-top: 2rem;
}
.tabs.tps-tabs .tps-tab-content:focus {
  outline: 0;
}
@media (max-width: 1320px) {
  .tabs.tps-tabs .tps-tab-list .large-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1200px) {
  .tabs.tps-tabs .tps-tab-list .large-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .tabs.tps-tabs .tps-tab-content .dark-blue-tabpanel-text {
    margin-top: 4rem;
  }
}
@media (max-width: 1024px) {
  .tabs.tps-tabs .tab-button {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media (max-width: 840px) {
  .tabs.tps-tabs .tps-tab-list {
    height: 6rem;
    padding-top: 0;
  }
  .tabs.tps-tabs .tps-tab-list .large-wrap {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .tabs.tps-tabs .tab-button {
    padding: 1rem 1.5rem;
  }
  .tabs.tps-tabs .tab-button svg {
    display: none;
    font-size: 0;
  }
}
@media (max-width: 540px) {
  .tabs.tps-tabs .tps-tab-content .dark-blue-tabpanel-text {
    margin-top: 3rem;
  }
}

.tabs.routes-tabs [role=tablist] {
  background: #395180;
  height: 7rem;
  overflow: visible;
  padding-top: 1rem;
  border-top: 1px solid #FFFFFF;
}
.tabs.routes-tabs [role=tablist] .large-wrap {
  height: 100%;
}
.tabs.routes-tabs [role=tab] {
  border-radius: 0;
  background: transparent;
  color: #FFFFFF;
  font-weight: 500;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 6rem 1rem;
}
.tabs.routes-tabs [role=tab] svg {
  fill: #FFFFFF;
  margin-right: 1rem;
}
.tabs.routes-tabs [role=tab][aria-selected=true] {
  border-radius: 0;
  background: #FFFFFF;
  color: #140F06;
}
.tabs.routes-tabs [role=tab][aria-selected=true] svg {
  fill: #140F06;
}
.tabs.routes-tabs [role=tab]:hover,
.tabs.routes-tabs [role=tab]:focus,
.tabs.routes-tabs [role=tab]:active {
  border-radius: 0;
}
.tabs.routes-tabs [role=tab][aria-selected=false]:focus,
.tabs.routes-tabs [role=tab][aria-selected=false]:hover {
  opacity: 0.75;
}
.tabs.routes-tabs [role=tabpanel] {
  position: relative;
  z-index: 2;
}
.tabs.routes-tabs [role=tabpanel] .dark-blue-tabpanel-text {
  color: #395180;
  margin: 5rem 0 1rem;
}
.tabs.routes-tabs [role=tabpanel] .ferry-timetable-link {
  margin-top: 2rem;
}
.tabs.routes-tabs [role=tabpanel]:focus {
  outline: 0;
}
@media (max-width: 1320px) {
  .tabs.routes-tabs [role=tablist] .large-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1200px) {
  .tabs.routes-tabs [role=tablist] .large-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .tabs.routes-tabs [role=tabpanel] .dark-blue-tabpanel-text {
    margin-top: 4rem;
  }
}
@media (max-width: 1024px) {
  .tabs.routes-tabs [role=tab] {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media (max-width: 840px) {
  .tabs.routes-tabs [role=tablist] {
    height: 6rem;
    padding-top: 0;
  }
  .tabs.routes-tabs [role=tablist] .large-wrap {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .tabs.routes-tabs [role=tab] {
    padding: 1rem 1.5rem;
  }
  .tabs.routes-tabs [role=tab] svg {
    display: none;
    font-size: 0;
  }
}
@media (max-width: 540px) {
  .tabs.routes-tabs [role=tabpanel] .dark-blue-tabpanel-text {
    margin-top: 3rem;
  }
}

.accordion-container .accordion {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.accordion-container .accordion-trigger {
  position: relative;
  height: 8rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  background: transparent;
  flex-basis: 50%;
  padding: 0 3rem;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .accordion-container .accordion-trigger {
    max-width: 50%;
  }
}
.accordion-container .accordion-trigger h4 {
  display: flex;
  flex-direction: row;
  align-items: center;
  color: #FFFFFF;
  margin-bottom: 0;
  z-index: 1;
}
.accordion-container .accordion-trigger h4 .count-number {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  width: 2rem;
  height: 2rem;
  color: #FFFFFF;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 2px solid #FFFFFF;
  border-radius: 50%;
  margin-right: 2rem;
  line-height: 1.6;
  text-align: center;
}
.accordion-container .accordion-trigger:hover, .accordion-container .accordion-trigger:hover {
  cursor: pointer;
}
.accordion-container .accordion-trigger .dropdown-icon {
  z-index: 1;
  transform-origin: center center;
  transition: transform 0.25s linear;
}
.accordion-container .accordion-trigger[aria-expanded=true] .dropdown-icon {
  transform: rotate(180deg);
}
.accordion-container .accordion-trigger::before {
  content: "";
  position: absolute;
  top: 0;
  width: 50vw;
  height: 100%;
  z-index: 0;
}
.accordion-container .accordion-trigger.disruption {
  padding-left: 0;
}
.accordion-container .accordion-trigger.disruption::before {
  right: 0;
  background: #DC2385;
}
.accordion-container .accordion-trigger.change {
  padding-right: 0;
}
.accordion-container .accordion-trigger.change::before {
  left: 0;
  background: #993189;
}
.accordion-container .accordion-trigger:only-of-type {
  flex-basis: 100%;
  padding-left: 0;
  padding-right: 0;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .accordion-container .accordion-trigger:only-of-type {
    max-width: 100%;
  }
}
.accordion-container .accordion-trigger:only-of-type::before {
  width: 100vw;
  left: calc((100vw - 120rem) * -0.5);
  right: auto;
}
.accordion-container .accordion-panel {
  width: 100%;
  transition: height 0.35s linear;
  overflow: hidden;
  visibility: visible;
}
.accordion-container .accordion-panel.hidden {
  height: 0;
}
.accordion-container .accordion-panel[hidden] {
  display: block;
  visibility: hidden;
}
@media (max-width: 1200px) {
  .accordion-container .accordion-trigger:only-of-type::before {
    left: -3rem;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .accordion-container .accordion-trigger h4 {
    flex-grow: 1;
  }
  .accordion-container .accordion-trigger:only-of-type {
    overflow: visible;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger {
    height: 6rem;
    flex-basis: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .accordion-container .accordion-trigger {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger h4 {
    font-size: 1.6rem;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger::before {
    width: 100vw;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger.disruption::before, .accordion-container .accordion-trigger.change::before {
    left: -3rem;
    right: auto;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger.disruption {
    order: 0;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-panel.disruption-panel {
    order: 1;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-trigger.change {
    order: 2;
  }
}
@media (max-width: 840px) {
  .accordion-container .accordion-panel.change-panel {
    order: 3;
  }
}
@media (max-width: 540px) {
  .accordion-container .accordion-trigger {
    height: 5rem;
  }
}

.menu-accordion {
  display: flex;
  flex-direction: row;
}
.menu-accordion .accordion-item {
  flex-basis: 20%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .menu-accordion .accordion-item {
    max-width: 20%;
  }
}
.menu-accordion .accordion-item .accordion-trigger {
  background: transparent;
  padding: 0;
  margin-bottom: 1.5rem;
}
.menu-accordion .accordion-item .accordion-trigger .h3 {
  margin-bottom: 0;
}
.menu-accordion .accordion-item .accordion-trigger:hover, .menu-accordion .accordion-item .accordion-trigger:hover {
  opacity: 0.75;
}
.menu-accordion .accordion-item:not(:first-child) {
  padding-right: 1rem;
}
.menu-accordion .accordion-item:not(:first-child) + .accordion-item {
  padding-left: 1rem;
  padding-right: 0;
}
.menu-accordion .accordion-item:first-child {
  flex-basis: 40%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .menu-accordion .accordion-item:first-child {
    max-width: 40%;
  }
}
.menu-accordion .accordion-item:first-child button {
  text-align: left;
}
.menu-accordion .accordion-item:first-child button .p {
  font-weight: normal;
  margin-top: 1rem;
  width: 90%;
}
.menu-accordion .accordion-panel[hidden] {
  display: none;
}
@media (max-width: 1024px) {
  .menu-accordion {
    flex-direction: column;
  }
  .menu-accordion .accordion-item .accordion-trigger {
    height: 5.4rem;
    padding-left: 3rem;
    margin-bottom: 0;
  }
  .menu-accordion .accordion-item .accordion-trigger .h3 {
    font-size: 2rem;
    font-weight: 500;
  }
  .menu-accordion .accordion-item, .menu-accordion .accordion-item:first-child {
    flex-basis: auto;
    padding-right: 0;
  }
}
@media (max-width: 1024px) and (-ms-high-contrast: none), (max-width: 1024px) and (-ms-high-contrast: active) {
  .menu-accordion .accordion-item, .menu-accordion .accordion-item:first-child {
    max-width: none;
  }
}
@media (max-width: 1024px) {
  .menu-accordion .accordion-item:not(:first-child) {
    padding-right: 0;
  }
  .menu-accordion .accordion-item:not(:first-child) + .accordion-item {
    padding-left: 0;
  }
}

.tc-accordion .accordion-trigger {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  height: 6rem;
  padding: 0;
  width: 100%;
  border-radius: 0;
  position: relative;
  background: transparent;
  white-space: normal;
  text-align: left;
  border-bottom: 1px solid white;
  color: black;
}
.tc-accordion .accordion-trigger::before {
  content: "";
  position: absolute;
  top: 0;
  width: calc(100% + 4rem);
  height: 100%;
  z-index: 0;
  background: #D4D7D9;
}
.tc-accordion .accordion-trigger span {
  font-size: 1.7rem;
  z-index: 1;
  padding: 0 2rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: black;
}
.tc-accordion .accordion-trigger .dropdown-icon-black {
  z-index: 1;
  flex-shrink: 0;
  transform-origin: center center;
  transition: transform 0.25s linear;
}
.tc-accordion .accordion-trigger[aria-expanded=true] .dropdown-icon-black {
  transform: rotate(180deg);
}
.tc-accordion .accordion-panel {
  padding: 3rem 0;
}
.tc-accordion .accordion-panel[hidden] {
  display: none;
}
.tc-accordion + .tc-accordion {
  margin-top: 1px;
}
.tc-accordion + h4 {
  margin-top: 4rem;
}
.image-container + .tc-accordion .accordion-trigger::before {
  width: 100%;
}
.image-container + .tc-accordion .dropdown-icon-black {
  margin-right: 2rem;
}
@media (max-width: 1200px) {
  .tc-accordion .accordion-trigger::before {
    left: -3rem;
    width: calc(100% + 3rem);
  }
  .image-container + .tc-accordion .accordion-trigger::before {
    left: 0;
    width: 100%;
  }
}
@media (max-width: 840px) {
  .tc-accordion .accordion-trigger {
    padding-right: 0;
  }
  .tc-accordion .accordion-trigger::before {
    width: calc(100% + 6rem);
  }
  .image-container + .tc-accordion .accordion-trigger {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .image-container + .tc-accordion .accordion-trigger::before {
    left: 0;
    width: calc(100% + 6rem);
  }
  .image-container + .tc-accordion .accordion-trigger .dropdown-icon-black {
    margin-right: 0;
  }
}
@media (max-width: 540px) {
  .tc-accordion .accordion-trigger {
    height: auto;
    min-height: 5rem;
    padding: 1rem 0;
  }
  .tc-accordion .accordion-trigger span {
    font-size: 1.6rem;
    white-space: normal;
    padding-left: 0;
  }
  .tc-accordion .accordion-panel {
    padding: 2rem 0;
  }
  .image-container + .tc-accordion {
    margin-top: 0;
  }
}

.banner-bgs.images-carousel {
  z-index: 2;
}
.banner-bgs.images-carousel .carousel-item {
  background-color: #395180;
  background-position: center center, center center;
  background-repeat: no-repeat, no-repeat;
  background-size: cover, 0px 0px;
}
.banner-bgs.images-carousel .carousel-item:not(.no-fade)::after {
  background: radial-gradient(51.94% 398.34% at 9.31% 59.81%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 99.99%, rgba(0, 0, 0, 0) 100%), linear-gradient(360deg, #000000 -0.06%, rgba(0, 0, 0, 0) 40.19%);
}
.banner-bgs.images-carousel .carousel-item::before {
  padding-bottom: 25.69%;
}
.banner-bgs.images-carousel .carousel-item .inner {
  position: absolute;
  top: 100px;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s linear, top 0.25s linear 0.25s;
  will-change: opacity, top;
  z-index: 2;
}
.banner-bgs.images-carousel .carousel-item.is-selected .inner {
  top: 0;
  opacity: 1;
  visibility: visible;
}
.banner-bgs.images-carousel .carousel-item:empty::after {
  content: none;
}
.banner-bgs.images-carousel .carousel-item.desktop-black .inner h1, .banner-bgs.images-carousel .carousel-item.desktop-black .inner h3 {
  color: black;
}
@media (max-width: 1200px) {
  .banner-bgs.images-carousel .carousel-item {
    background-position: right;
  }
  .banner-bgs.images-carousel .carousel-item::before {
    padding-bottom: 37.5%;
  }
}
@media (max-width: 1024px) {
  .banner-bgs.images-carousel .carousel-item {
    background-position: right;
  }
  .banner-bgs.images-carousel .carousel-item::before {
    padding-bottom: 42.75%;
  }
}
@media (max-width: 840px) {
  .banner-bgs.images-carousel .carousel-item {
    background-position: center center, center center;
  }
  .banner-bgs.images-carousel .carousel-item::before {
    padding-bottom: 66.667%;
  }
}
@media (max-width: 540px) {
  .banner-bgs.images-carousel .carousel-item {
    background-size: 0px 0px, cover;
  }
  .banner-bgs.images-carousel .carousel-item::before {
    padding-bottom: 100%;
  }
  .banner-bgs.images-carousel .carousel-item:not(.no-fade)::after {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  }
  .banner-bgs.images-carousel .carousel-item .inner.top {
    align-items: flex-start;
  }
  .banner-bgs.images-carousel .carousel-item .inner.end {
    align-items: flex-end;
  }
  .banner-bgs.images-carousel .carousel-item.mobile-black .inner h1, .banner-bgs.images-carousel .carousel-item.mobile-black .inner h3 {
    color: black;
  }
  .banner-bgs.images-carousel .carousel-item.mobile-white .inner h1, .banner-bgs.images-carousel .carousel-item.mobile-white .inner h3 {
    color: white;
  }
}
@media (max-width: 360px) {
  .banner-bgs.images-carousel .carousel-item::before {
    padding-bottom: 100%;
  }
}

.benefit-carousel-container {
  margin-left: -4rem;
  margin-right: -4rem;
}
.benefit-carousel-container .benefit-carousel .carousel-item {
  display: flex;
  align-items: stretch;
  flex-direction: column;
}
.benefit-carousel-container .four-cols {
  margin: -2.65rem;
}
.benefit-carousel-container .four-cols > * {
  padding: 2.65rem;
}
.benefit-carousel-container .flickity-prev-next-button.previous {
  display: none;
}
.benefit-carousel-container .flickity-prev-next-button.next {
  top: auto;
  left: 3rem;
  right: auto;
  bottom: 3rem;
  width: auto;
  height: 2rem;
  display: flex;
  align-items: center;
  flex-direction: row;
  transform: none;
}
.benefit-carousel-container .flickity-prev-next-button.next::before {
  content: "next";
  position: relative;
  font-family: "futura-pt-condensed", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.93;
  text-transform: uppercase;
  color: #FFFFFF;
  margin-right: 2rem;
}
.benefit-carousel-container .flickity-prev-next-button.next::after {
  position: relative;
  top: auto;
  left: 0;
  right: auto;
  width: 0.8rem;
  height: 2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDggMTMiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMS41bDUgNS01IDUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+Cg==");
  transform: none;
}
@media (max-width: 1320px) {
  .benefit-carousel-container {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 1200px) {
  .benefit-carousel-container .four-cols {
    margin: -2rem;
    flex-wrap: wrap;
  }
  .benefit-carousel-container .four-cols > * {
    padding: 2rem;
    flex-basis: 50%;
  }
}
@media (max-width: 1200px) and (-ms-high-contrast: none), (max-width: 1200px) and (-ms-high-contrast: active) {
  .benefit-carousel-container .four-cols > * {
    max-width: 50%;
  }
}
@media (max-width: 1024px) {
  .benefit-carousel-container .four-cols {
    margin: -1rem;
  }
  .benefit-carousel-container .four-cols > * {
    padding: 1rem;
  }
}
@media (max-width: 540px) {
  .benefit-carousel-container .benefit-carousel {
    display: block;
    margin: 0 -3rem;
  }
  .benefit-carousel-container .benefit-carousel > * {
    padding: 0;
    flex-basis: 100%;
  }
}
@media (max-width: 540px) and (-ms-high-contrast: none), (max-width: 540px) and (-ms-high-contrast: active) {
  .benefit-carousel-container .benefit-carousel > * {
    max-width: 100%;
  }
}
@media (max-width: 540px) {
  .benefit-carousel-container .benefit-carousel:after {
    content: "flickity";
    display: none;
  }
}
@media (max-width: 540px) {
  .benefit-carousel-container .benefit-carousel .carousel-item {
    display: flex;
    align-items: stretch;
    flex-direction: column;
    width: 32.5rem;
    padding-right: 1rem;
  }
}
@media (max-width: 540px) {
  .benefit-carousel-container .benefit-carousel.flickity-resize .carousel-item {
    min-height: 100%;
  }
}

.testimonial-carousel-container {
  position: relative;
}
.testimonial-carousel-container .carousel-item {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  background-color: transparent;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
}
.testimonial-carousel-container .carousel-item .aspect-ratio-image, .testimonial-carousel-container .carousel-item .text-thumbnail, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item {
  max-height: 72rem;
}
.testimonial-carousel-container .carousel-item .aspect-ratio-image::before, .testimonial-carousel-container .carousel-item .text-thumbnail::before, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg::before, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg::before, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg::before, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg::before, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item::before {
  padding-bottom: 50%;
}
.testimonial-carousel-container .carousel-item .aspect-ratio-image::after, .testimonial-carousel-container .carousel-item .text-thumbnail::after, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg::after, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg::after, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg::after, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg::after, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item::after, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item::after {
  content: none;
}
.testimonial-carousel-container .carousel-item .testimonial-content {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
}
.testimonial-carousel-container .carousel-item .testimonial-content .inner {
  position: absolute;
  top: 0;
  left: -4rem;
  max-width: 44rem;
  padding: 10rem 4rem 6rem;
  background-color: #7FCCE0;
}
.testimonial-carousel-container .carousel-item .testimonial-content h3 {
  width: 100%;
  font-weight: 500;
  line-height: 1.4;
  color: rgba(20, 15, 6, 0.9);
  margin-bottom: 0;
}
.testimonial-carousel-container .carousel-item .testimonial-content .author {
  color: #140F06;
  margin-bottom: 0.5rem;
}
.testimonial-carousel-container .carousel-item .testimonial-content .author-info {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.testimonial-carousel-container .carousel-item .testimonial-content .cta.button, .testimonial-carousel-container .carousel-item .testimonial-content .cta.icon-button {
  width: auto;
  max-width: none;
  padding-left: 3rem;
  padding-right: 3rem;
}
.testimonial-carousel-container .flickity-prev-next-button {
  top: auto;
  bottom: 0;
  width: 22rem;
  height: 6rem;
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: flex-end;
  transform: none;
  padding-left: 4rem;
  padding-right: 4rem;
  background-color: #140F06;
  z-index: 4;
}
.testimonial-carousel-container .flickity-prev-next-button::before {
  position: relative;
  font-family: "futura-pt-condensed", sans-serif;
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.93;
  text-transform: uppercase;
  color: #FFFFFF;
}
.testimonial-carousel-container .flickity-prev-next-button::after {
  position: relative;
  top: auto;
  left: 0;
  right: auto;
  width: 0.8rem;
  height: 2rem;
  transform: none;
}
.testimonial-carousel-container .flickity-button:disabled {
  opacity: 1;
}
.testimonial-carousel-container .flickity-prev-next-button.previous {
  left: calc((100vw - 120rem) * 0.5 - 4rem);
  flex-direction: row-reverse;
}
.testimonial-carousel-container .flickity-prev-next-button.previous::before {
  content: "prev";
  margin-left: 2rem;
}
.testimonial-carousel-container .flickity-prev-next-button.previous::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDggMTMiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcgMTEuNWwtNS01IDUtNSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4K");
}
.testimonial-carousel-container .flickity-prev-next-button.next {
  left: calc((100vw - 120rem) * 0.5 + 18rem);
  right: auto;
}
.testimonial-carousel-container .flickity-prev-next-button.next::before {
  content: "next";
  margin-right: 2rem;
}
.testimonial-carousel-container .flickity-prev-next-button.next::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDggMTMiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEgMS41bDUgNS01IDUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+Cg==");
}
.testimonial-carousel-container .flickity-resize .carousel-item {
  min-height: 100%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .testimonial-carousel-container .flickity-resize .carousel-item {
    height: 100%;
  }
  .testimonial-carousel-container .flickity-resize .carousel-item .testimonial-content {
    flex: 1 1 auto;
  }
}
@media (max-width: 1320px) {
  .testimonial-carousel-container .carousel-item .testimonial-content .inner {
    left: 0;
    padding-top: 6rem;
  }
  .testimonial-carousel-container .flickity-prev-next-button.previous {
    left: calc((100vw - 120rem) * 0.5);
  }
  .testimonial-carousel-container .flickity-prev-next-button.next {
    left: calc((100vw - 120rem) * 0.5 + 22rem);
  }
}
@media (max-width: 1200px) {
  .testimonial-carousel-container .carousel-item .aspect-ratio-image::before, .testimonial-carousel-container .carousel-item .text-thumbnail::before, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg::before, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg::before, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg::before, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg::before, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item::before {
    padding-bottom: 62.5%;
  }
  .testimonial-carousel-container .carousel-item .testimonial-content .inner {
    padding: 4rem;
  }
  .testimonial-carousel-container .flickity-prev-next-button.previous {
    left: 0;
  }
  .testimonial-carousel-container .flickity-prev-next-button.next {
    left: 22rem;
  }
}
@media (max-width: 840px) {
  .testimonial-carousel-container .testimonial-carousel {
    padding-bottom: 6rem;
  }
  .testimonial-carousel-container .carousel-item .aspect-ratio-image::before, .testimonial-carousel-container .carousel-item .text-thumbnail::before, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg::before, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg::before, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg::before, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg::before, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item::before {
    padding-bottom: 50%;
  }
  .testimonial-carousel-container .carousel-item .testimonial-content {
    position: relative;
    left: auto;
    transform: none;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }
  .testimonial-carousel-container .carousel-item .testimonial-content .inner {
    flex-grow: 1;
    position: relative;
    left: auto;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    max-width: none;
    padding: 3rem;
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .testimonial-carousel-container .carousel-item .testimonial-content .author-info {
    flex-grow: 1;
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
  .testimonial-carousel-container .flickity-prev-next-button {
    width: 50vw;
  }
  .testimonial-carousel-container .flickity-prev-next-button.previous {
    left: 0;
  }
  .testimonial-carousel-container .flickity-prev-next-button.next {
    left: auto;
    right: 0;
  }
}
@media (max-width: 540px) {
  .testimonial-carousel-container .carousel-item .aspect-ratio-image::before, .testimonial-carousel-container .carousel-item .text-thumbnail::before, .testimonial-carousel-container .carousel-item .banner-image .banner-image-bg::before, .banner-image .testimonial-carousel-container .carousel-item .banner-image-bg::before, .testimonial-carousel-container .carousel-item .simple-banner .banner-bg::before, .simple-banner .testimonial-carousel-container .carousel-item .banner-bg::before, .testimonial-carousel-container .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .testimonial-carousel-container .carousel-item .carousel-item::before {
    padding-bottom: 100%;
  }
  .testimonial-carousel-container .carousel-item .testimonial-content h3 {
    font-size: 1.8rem;
    line-height: 1.2;
  }
}

body.modal-open {
  overflow: hidden;
}

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

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  opacity: 0;
  transform: translateX(100%);
  transition: all 0.35s linear;
  z-index: -100;
}
.modal-overlay.is-visible {
  z-index: 320;
  opacity: 1;
  transform: translateX(0);
}
.modal-overlay .modal-container {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  background: #FFFFFF;
}
.modal-overlay .modal-header {
  padding: 6rem 0 3rem;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.modal-overlay .modal-header .modal-close {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5625;
  text-transform: capitalize;
  text-decoration: none;
  display: flex;
  flex-direction: row;
  align-items: center;
  color: #140F06;
}
.modal-overlay .modal-header .modal-close .close-icon {
  height: 2.5rem;
  width: 2.5rem;
  z-index: 210;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0);
  transition: transform 0.2s ease-in-out;
  margin-left: 1rem;
}
.modal-overlay .modal-header .modal-close .close-icon::before, .modal-overlay .modal-header .modal-close .close-icon::after {
  content: "";
  height: 2rem;
  width: 0.2rem;
  background-color: #000000;
  position: absolute;
  bottom: 50%;
  transform-origin: center;
}
.modal-overlay .modal-header .modal-close .close-icon::before {
  transform: translateY(50%) rotate(45deg);
}
.modal-overlay .modal-header .modal-close .close-icon::after {
  transform: translateY(50%) rotate(-45deg);
}
.modal-overlay .modal-header .modal-close:hover, .modal-overlay .modal-header .modal-close:active {
  outline: none;
  opacity: 0.75;
}
.modal-overlay .modal-header h2 {
  margin-bottom: 0;
}
.modal-overlay .modal-content {
  width: 100%;
  height: 100%;
  overflow-y: hidden;
  overflow-x: hidden;
  flex-grow: 1;
  display: flex;
  flex-direction: row;
  padding: 1rem 0 6rem;
}
.modal-overlay .modal-content .inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex-grow: 1;
  width: 100%;
}
.modal-overlay .modal-content form {
  width: 100%;
}
.modal-overlay .modal-content form .search-form-group {
  max-width: none;
}
.modal-overlay .modal-content form .search-form-group .form-search-button {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  text-transform: capitalize;
  width: 13.6rem;
  padding-left: 2rem;
  padding-right: 2rem;
  background-position: right 2rem center;
}
.modal-overlay .modal-content .search-results {
  width: 100%;
  flex-grow: 1;
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-overlay .modal-content .search-results ul {
  display: none;
  height: 100%;
  padding: 3rem 0;
}
.modal-overlay .modal-content .search-results ul li {
  height: 5rem;
  padding-left: 0;
  color: #140F06;
}
.modal-overlay .modal-content .search-results ul li > a {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  height: 100%;
  color: inherit;
}
.modal-overlay .modal-content .search-results ul li::before {
  content: none;
}
.modal-overlay .modal-content .search-results ul li span {
  flex-grow: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  color: #140F06;
}
.modal-overlay .modal-content .search-results ul li .icon {
  width: 2.3rem;
  margin-right: 1.6rem;
  background-position: center left;
  flex-shrink: 0;
}
.modal-overlay .modal-content .search-results ul li + li {
  margin-top: 1rem;
}
.modal-overlay .modal-content .search-results ul li[aria-selected=true] {
  opacity: 0.75;
  background-color: rgba(227, 230, 233, 0.3);
}
.modal-overlay .modal-content .search-results ul.show {
  display: block;
}
@media (max-width: 1200px) {
  .modal-overlay .modal-header {
    padding: 4rem 3rem 2rem;
  }
  .modal-overlay .modal-content {
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .modal-overlay .modal-content {
    padding-bottom: 3rem;
  }
}
@media (max-width: 540px) {
  .modal-overlay .modal-header {
    padding-top: 3rem;
  }
  .modal-overlay .modal-content {
    padding-bottom: 3rem;
  }
  .modal-overlay .modal-content form .search-form-group .form-search-button {
    width: 5rem;
    font-size: 0;
    padding-left: 1rem;
    padding-right: 1rem;
    background-position: center center;
  }
  .modal-overlay .modal-content .search-results ul {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .modal-overlay .modal-content .search-results ul li > a {
    flex-direction: row-reverse;
  }
  .modal-overlay .modal-content .search-results ul li .icon {
    margin-left: 1.6rem;
    margin-right: 0;
    background-position: center right;
  }
  .modal-overlay .modal-content .search-results ul li + li {
    margin-top: 0;
    border-top: 1px solid #140F06;
  }
}

.modal-overlay.alert-modal .modal-container {
  background: rgba(20, 15, 6, 0.75);
  align-items: center;
  justify-content: center;
}
.modal-overlay.alert-modal .modal-container .modal-inner {
  max-width: 92rem;
  width: 100%;
  background: #FFFFFF;
  border-top: 1rem solid #DC2385;
}
.modal-overlay.alert-modal .modal-header {
  justify-content: flex-end;
  padding: 2rem;
}
.modal-overlay.alert-modal .modal-content {
  height: auto;
  padding-top: 0;
  padding-bottom: 4rem;
}
.modal-overlay.alert-modal .modal-content .small-wrap {
  margin-left: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.modal-overlay.alert-modal .modal-content .type-text {
  font-weight: 700;
  color: #DC2385;
  margin-bottom: 0.6rem;
}
.modal-overlay.alert-modal .modal-content .h1 {
  color: #DC2385;
  margin-bottom: 1rem;
}
.modal-overlay.alert-modal .modal-content .update-time-text {
  font-size: 1.4rem;
  color: rgba(20, 15, 6, 0.5);
}
.modal-overlay.alert-modal .modal-content .update-time-text + p {
  margin-top: 2rem;
}
.modal-overlay.alert-modal .modal-content .update-time-text + p strong {
  font-weight: 500;
}
.modal-overlay.alert-modal .modal-content .icon-button {
  font-weight: 700;
  color: #140F06;
  margin-top: 1.5rem;
  padding-left: 0;
  padding-right: 0;
}
.modal-overlay.alert-modal .modal-content .icon-button span {
  margin-left: 2rem;
}
.modal-overlay.alert-modal.change .modal-container .modal-inner {
  border-top-color: #993189;
}
.modal-overlay.alert-modal.change .modal-content .type-text, .modal-overlay.alert-modal.change .modal-content .h1 {
  color: #993189;
}
@media (max-width: 840px) {
  .modal-overlay.alert-modal .modal-inner {
    max-width: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }
  .modal-overlay.alert-modal .modal-header {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .modal-overlay.alert-modal .modal-content {
    height: 100%;
    padding-bottom: 2rem;
  }
  .modal-overlay.alert-modal .modal-content .small-wrap {
    max-width: none;
    padding: 0 3rem;
  }
  .modal-overlay.alert-modal .modal-content .update-time-text + p {
    flex-grow: 1;
  }
  .modal-overlay.alert-modal .modal-content .icon-button {
    flex-direction: row-reverse;
    justify-content: space-between;
    width: 100%;
  }
  .modal-overlay.alert-modal .modal-content .icon-button span {
    margin-left: 0;
  }
}

/* leaflet map popup */
.leaflet-popup {
  margin-bottom: 1.8rem;
}

.leaflet-popup-content-wrapper {
  border-radius: 0;
  border: 2px solid #140F06;
}

.leaflet-popup-tip-container {
  bottom: 0;
  transform: translateY(56%);
}

.leaflet-popup-tip {
  border-right: 2px solid #140F06;
  border-bottom: 2px solid #140F06;
  margin-top: 0;
  box-shadow: none;
  color: #140F06;
}

.leaflet-container a.leaflet-popup-close-button {
  padding: 0;
  width: 4rem;
  height: 100%;
  color: #FFFFFF;
  font-size: 2.4rem;
  font-weight: 400;
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: center;
  background: #140F06;
}

.leaflet-popup-content {
  margin: 1.5rem 5.5rem 1.5rem 1.5rem;
}
.leaflet-popup-content .inner.flex {
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
.leaflet-popup-content .inner.flex > *:not(h3) {
  display: none;
}
.leaflet-popup-content .inner.flex > h3 {
  font-size: 1.6rem;
  color: #395180;
  margin-bottom: 0;
}

.gallery.popup-gallery {
  margin-bottom: -3rem;
}
.gallery.popup-gallery .images-carousel {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.gallery.popup-gallery .carousel-item {
  flex-basis: calc(25% - 2.25rem);
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-bottom: 3rem;
}
.gallery.popup-gallery .carousel-item + .carousel-item {
  margin-left: 3rem;
}
.gallery.popup-gallery .carousel-item:nth-child(4n+1) {
  margin-left: 0;
}
.gallery.popup-gallery .carousel-item .aspect-ratio-image::before, .gallery.popup-gallery .carousel-item .text-thumbnail::before, .gallery.popup-gallery .carousel-item .banner-image .banner-image-bg::before, .banner-image .gallery.popup-gallery .carousel-item .banner-image-bg::before, .gallery.popup-gallery .carousel-item .simple-banner .banner-bg::before, .simple-banner .gallery.popup-gallery .carousel-item .banner-bg::before, .gallery.popup-gallery .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .gallery.popup-gallery .carousel-item .carousel-item::before {
  padding-bottom: 100%;
}
@media (max-width: 840px) {
  .gallery.popup-gallery {
    margin-bottom: -2rem;
  }
  .gallery.popup-gallery .carousel-item {
    flex-basis: calc(25% - 1.5rem);
    margin-bottom: 2rem;
  }
  .gallery.popup-gallery .carousel-item + .carousel-item {
    margin-left: 2rem;
  }
  .gallery.popup-gallery .carousel-item:nth-child(4n+1) {
    margin-left: 0;
  }
}
@media (max-width: 540px) {
  .gallery.popup-gallery {
    margin-bottom: 0;
  }
  .gallery.popup-gallery .images-carousel {
    display: block;
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .gallery.popup-gallery .images-carousel:after {
    content: "flickity";
    display: none;
  }
  .gallery.popup-gallery .images-carousel .flickity-page-dots {
    width: auto;
    bottom: 0;
    padding: 1.5rem 2rem;
    background: #140F06;
  }
  .gallery.popup-gallery .images-carousel .flickity-page-dots .dot {
    width: 0.6rem;
    height: 0.6rem;
    margin-right: 0;
    border: 0;
    background: rgba(255, 255, 255, 0.4);
  }
  .gallery.popup-gallery .images-carousel .flickity-page-dots .dot + .dot {
    margin-left: 1rem;
  }
  .gallery.popup-gallery .images-carousel .flickity-page-dots .dot.is-selected {
    background: #FFFFFF;
  }
  .gallery.popup-gallery .carousel-item {
    width: 100%;
    pointer-events: none;
    margin-bottom: 0;
  }
  .gallery.popup-gallery .carousel-item + .carousel-item {
    margin-left: 0;
  }
  .gallery.popup-gallery .carousel-item .aspect-ratio-image::before, .gallery.popup-gallery .carousel-item .text-thumbnail::before, .gallery.popup-gallery .carousel-item .banner-image .banner-image-bg::before, .banner-image .gallery.popup-gallery .carousel-item .banner-image-bg::before, .gallery.popup-gallery .carousel-item .simple-banner .banner-bg::before, .simple-banner .gallery.popup-gallery .carousel-item .banner-bg::before, .gallery.popup-gallery .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .gallery.popup-gallery .carousel-item .carousel-item::before {
    padding-bottom: 66.667%;
  }
}

.gallery.embed-gallery .gallery-display-carousel {
  margin-bottom: 1.8rem;
}
.gallery.embed-gallery .gallery-display-carousel .carousel-item {
  width: 100%;
  overflow: hidden;
}
.gallery.embed-gallery .gallery-display-carousel .carousel-item-inner {
  position: relative;
  width: 100%;
  height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding-bottom: 56.25%;
}
.gallery.embed-gallery .gallery-display-carousel .carousel-item-inner > img {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100%;
  max-width: none;
  min-width: 100%;
  transform: translate(-50%, -50%);
  margin: auto;
}
.gallery.embed-gallery .gallery-display-carousel .carousel-item-inner .video-clip {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding-bottom: 56.25%;
  z-index: 1;
}
.gallery.embed-gallery .gallery-display-carousel .flickity-prev-next-button {
  width: 6rem;
  height: 6rem;
  background: #FFFFFF;
}
.gallery.embed-gallery .gallery-display-carousel .flickity-prev-next-button::after {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcgMUwyIDZsNSA1IiBzdHJva2U9IiMxNDBGMDYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
}
.gallery.embed-gallery .gallery-display-carousel .flickity-prev-next-button.previous::after {
  transform: rotate(0deg) translate(-50%, -50%);
  left: 50%;
}
.gallery.embed-gallery .gallery-display-carousel .flickity-prev-next-button.next::after {
  transform: rotate(180deg) translate(-50%, -50%);
  right: 50%;
}
.gallery.embed-gallery .gallery-thumbnails {
  overflow: hidden;
}
.gallery.embed-gallery .gallery-thumbnails .thumbnails-carousel .carousel-item {
  position: relative;
  display: block;
  width: 8rem;
  height: 8rem;
  overflow: hidden;
  background-color: #E3E6E9;
  margin-right: 1rem;
}
.gallery.embed-gallery .gallery-thumbnails .thumbnails-carousel .carousel-item-inner {
  position: relative;
  width: 8rem;
  height: 8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.gallery.embed-gallery .gallery-thumbnails .thumbnails-carousel .carousel-item-inner > img {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100%;
  max-width: none;
  min-width: 100%;
  transform: translate(-50%, -50%);
  margin: auto;
}
.gallery.embed-gallery .gallery-thumbnails .thumbnails-carousel .carousel-item-inner .video-clip {
  pointer-events: none;
  width: 100%;
  height: 100%;
  padding-bottom: 0;
  overflow: hidden;
}
.gallery.embed-gallery .gallery-thumbnails .thumbnails-carousel .carousel-item.is-nav-selected::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background: rgba(57, 81, 128, 0.25);
  border: 10px solid #FFEE00;
}
.gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button {
  width: 7rem;
  height: 8rem;
}
.gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button::after {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcgMUwyIDZsNSA1IiBzdHJva2U9IiMxNDBGMDYiIHN0cm9rZS13aWR0aD0iMiIvPjwvc3ZnPg==");
}
.gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button.previous {
  background: linear-gradient(90deg, #FFFFFF 20px, #FFFFFF 20px, rgba(255, 255, 255, 0) 100%);
}
.gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button.next {
  background: linear-gradient(-90deg, #FFFFFF 20px, #FFFFFF 20px, rgba(255, 255, 255, 0) 100%);
}
@media (max-width: 540px) {
  .gallery.embed-gallery .gallery-display-carousel .flickity-prev-next-button {
    width: 4rem;
    height: 4rem;
  }
  .gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button {
    width: 4rem;
  }
  .gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button.previous {
    background: linear-gradient(90deg, #FFFFFF 5px, #FFFFFF 5px, rgba(255, 255, 255, 0) 100%);
  }
  .gallery.embed-gallery .gallery-thumbnails .flickity-prev-next-button.next {
    background: linear-gradient(-90deg, #FFFFFF 5px, #FFFFFF 5px, rgba(255, 255, 255, 0) 100%);
  }
}

body.lightbox-open {
  overflow: hidden;
}

.lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.9);
  opacity: 0;
  transition: all 0.75s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  z-index: -100;
  padding: 10rem 6rem;
}
.lightbox.is-visible {
  z-index: 320;
  opacity: 1;
}
.lightbox.is-visible .middle-wrap {
  transform: scale(1);
}
.lightbox .middle-wrap {
  transform: scale(0.5);
  transition: all 0.75s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.lightbox .lightbox-header {
  color: #FFFFFF;
  height: 6rem;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.lightbox .lightbox-header .gallery-count {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.5625;
}
.lightbox .lightbox-header .lightbox-close {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.5625;
  text-decoration: none;
  text-transform: capitalize;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.lightbox .lightbox-header .lightbox-close .close-icon {
  height: 2.5rem;
  width: 2.5rem;
  z-index: 210;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0);
  transition: transform 0.2s ease-in-out;
  margin-left: 1rem;
}
.lightbox .lightbox-header .lightbox-close .close-icon::before, .lightbox .lightbox-header .lightbox-close .close-icon::after {
  content: "";
  height: 2rem;
  width: 0.2rem;
  background-color: #FFFFFF;
  position: absolute;
  bottom: 50%;
  transform-origin: center;
}
.lightbox .lightbox-header .lightbox-close .close-icon::before {
  transform: translateY(50%) rotate(45deg);
}
.lightbox .lightbox-header .lightbox-close .close-icon::after {
  transform: translateY(50%) rotate(-45deg);
}
.lightbox .lightbox-content {
  box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5);
}
.lightbox .lightbox-content .lightbox-carousel .flickity-prev-next-button.previous {
  left: -4.8rem;
}
.lightbox .lightbox-content .lightbox-carousel .flickity-prev-next-button.next {
  right: -4.8rem;
}
.lightbox .lightbox-content .carousel-item {
  width: 100%;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.lightbox .lightbox-content .carousel-item .aspect-ratio-image::before, .lightbox .lightbox-content .carousel-item .text-thumbnail::before, .lightbox .lightbox-content .carousel-item .banner-image .banner-image-bg::before, .banner-image .lightbox .lightbox-content .carousel-item .banner-image-bg::before, .lightbox .lightbox-content .carousel-item .simple-banner .banner-bg::before, .simple-banner .lightbox .lightbox-content .carousel-item .banner-bg::before, .lightbox .lightbox-content .carousel-item .banner-bgs.images-carousel .carousel-item::before, .banner-bgs.images-carousel .lightbox .lightbox-content .carousel-item .carousel-item::before {
  padding-bottom: 66.6667%;
}
@media (max-width: 1200px) {
  .lightbox .lightbox-content .lightbox-carousel .flickity-prev-next-button.previous,
.lightbox .lightbox-content .lightbox-carousel .flickity-prev-next-button.next {
    display: none;
  }
}
@media screen and (max-height: 900px) {
  .lightbox.is-visible {
    overflow-y: scroll;
    justify-content: flex-start;
  }
}

.fslightbox-container {
  background: rgba(20, 15, 6, 0.9) !important;
}

.fslightbox-source-outer.fslightbox-full-dimension {
  max-width: 120rem;
  left: calc((100vw - 120rem) * 0.5);
}
@media (max-width: 1200px) {
  .fslightbox-source-outer.fslightbox-full-dimension {
    left: 0;
  }
}

.fslightbox-slide-btn-container .fslightbox-slide-btn {
  position: relative;
  width: 4.8rem;
  height: 4.8rem;
  padding: 0;
}
.fslightbox-slide-btn-container .fslightbox-slide-btn svg {
  display: none;
}
.fslightbox-slide-btn-container .fslightbox-slide-btn::after {
  content: "";
  background-image: url("data:image/svg+xml;base64,IDxzdmcgd2lkdGg9IjE5IiBoZWlnaHQ9IjMyIiB2aWV3Qm94PSIwIDAgMTkgMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICAgICAgPHBhdGggZD0iTTE3IDMwTDMgMTZMMTcgMiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSI0Ii8+CiAgICAgICAgPC9zdmc+");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 1.9rem;
  height: 3.2rem;
  display: inline-block;
  z-index: 2;
  position: absolute;
  top: 50%;
  transform-origin: top center;
}

.fslightbox-slide-btn-container.fslightbox-slide-btn-container-previous {
  left: calc((100vw - 120rem) * 0.5 - 8rem);
}
.fslightbox-slide-btn-container.fslightbox-slide-btn-container-previous .fslightbox-slide-btn::after {
  transform: rotate(0deg) translateY(-50%);
}
@media (max-width: 1320px) {
  .fslightbox-slide-btn-container.fslightbox-slide-btn-container-previous {
    left: 0;
  }
}
@media (max-width: 1200px) {
  .fslightbox-slide-btn-container.fslightbox-slide-btn-container-previous {
    display: none !important;
  }
}

.fslightbox-slide-btn-container.fslightbox-slide-btn-container-next {
  right: calc((100vw - 120rem) * 0.5 - 8rem);
}
.fslightbox-slide-btn-container.fslightbox-slide-btn-container-next .fslightbox-slide-btn::after {
  transform: rotate(180deg) translateY(-50%);
}
@media (max-width: 1320px) {
  .fslightbox-slide-btn-container.fslightbox-slide-btn-container-next {
    right: 0;
  }
}
@media (max-width: 1200px) {
  .fslightbox-slide-btn-container.fslightbox-slide-btn-container-next {
    display: none !important;
  }
}

.fslightbox-slide-number-container {
  color: #FFFFFF !important;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.4rem !important;
  font-weight: 600;
}

.activetravel .bg-yellow {
  background: #140F06;
  color: #FFFFFF;
}
.activetravel .bg-yellow.button:hover, .activetravel .bg-yellow.icon-button:hover {
  color: #FFEE00;
  background: #140F06;
}
.activetravel h1, .activetravel .h1 {
  font-family: "futura-pt-condensed", sans-serif;
  font-size: 8rem;
  font-weight: 800;
  line-height: 0.93;
  letter-spacing: 0;
  color: #0C294A;
  text-transform: uppercase;
}
.activetravel h1.smaller, .activetravel .h1.smaller {
  font-size: 7rem;
}
@media (max-width: 1200px) {
  .activetravel h1, .activetravel .h1 {
    font-size: 6.5rem;
  }
  .activetravel h1.smaller, .activetravel .h1.smaller {
    font-size: 6rem;
  }
}
@media (max-width: 840px) {
  .activetravel h1, .activetravel .h1 {
    font-size: 5.6rem;
  }
  .activetravel h1.smaller, .activetravel .h1.smaller {
    font-size: 5.2rem;
  }
}
@media (max-width: 540px) {
  .activetravel h1, .activetravel .h1 {
    font-size: 4.8rem;
  }
  .activetravel h1.smaller, .activetravel .h1.smaller {
    font-size: 4.8rem;
  }
}
.activetravel h2 {
  font-family: "futura-pt-condensed", sans-serif;
  font-weight: 900;
  line-height: 0.93;
  letter-spacing: 0;
  color: #0C294A;
  text-transform: uppercase;
}
@media (max-width: 840px) {
  .activetravel .video-embed {
    margin-left: -3rem;
    margin-right: -3rem;
  }
}
.activetravel .small-wrap {
  max-width: 92rem;
  margin-left: auto;
}
.activetravel .smaller-wrap {
  margin-left: auto;
}
@media (max-width: 720px) {
  .activetravel .smaller-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media (max-width: 840px) {
  .activetravel .two-cols > *:first-child {
    padding-top: 0;
  }
}
.activetravel .tc-accordion .accordion-trigger {
  height: 6.6rem;
  border-top-width: 1px;
  border-top-style: solid;
}
.activetravel .tc-accordion .accordion-trigger::before {
  content: none;
}
.activetravel .tc-accordion .accordion-trigger span {
  font-size: 1.8rem;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #395180;
  padding-left: 0;
}
.activetravel .tc-accordion .accordion-trigger .dropdown-icon-black {
  width: 0.8rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDggMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xIDFMNiA2TDEgMTEiIHN0cm9rZT0iIzE0MEYwNiIgc3Ryb2tlLXdpZHRoPSIyIi8+Cjwvc3ZnPgo=");
}
.activetravel .tc-accordion .accordion-trigger[aria-expanded=true] .dropdown-icon-black {
  transform: rotate(90deg);
}
.activetravel .tc-accordion .accordion-panel {
  padding-top: 0;
}
.activetravel .two-cols .tc-accordion .accordion-panel > *.cta.button, .activetravel .two-cols .tc-accordion .accordion-panel > *.cta.icon-button {
  margin-bottom: 0;
}
.activetravel .tips-block .block-title {
  text-align: center;
  margin-bottom: 5rem;
}
.activetravel .tips-block .block-title h2 span, .activetravel .tips-block .block-title h2 b {
  color: #0C294A;
}
.activetravel .tips-block .block-title p {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
}
.activetravel .tips-block .tip-item {
  display: flex;
  align-items: stretch;
  flex-direction: row;
}
.activetravel .tips-block .tip-item > * {
  flex-basis: 50%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .activetravel .tips-block .tip-item > * {
    max-width: 50%;
  }
}
.activetravel .tips-block .tip-item .tip-image {
  height: 100%;
}
.activetravel .tips-block .tip-item .tip-image::before {
  padding-bottom: 75%;
}
.activetravel .tips-block .tip-item .tip-image::after {
  content: none;
}
.activetravel .tips-block .tip-item .right-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3rem 0 3rem 5rem;
}
.activetravel .tips-block .tip-item .right-content h2 {
  font-size: 4rem;
  margin-bottom: 2rem;
}
.activetravel .tips-block .tip-item .right-content .highlight {
  color: #FF8B42;
}
.activetravel .tips-block .tip-item .right-content p {
  line-height: 1.4;
}
.activetravel .tips-block .tip-item:nth-child(2n) {
  flex-direction: row-reverse;
}
.activetravel .tips-block .tip-item:nth-child(2n) .right-content {
  padding-left: 0;
  padding-right: 5rem;
}
.activetravel .tips-block.smaller .tip-item .tip-image::before {
  padding-bottom: 66.6667%;
}
.activetravel .tips-block.reversed .tip-item {
  flex-direction: row-reverse;
}
.activetravel .tips-block.reversed .tip-item .right-content {
  padding-left: 0;
  padding-right: 5rem;
}
.activetravel .tips-block.reversed .tip-item:nth-child(2n) {
  flex-direction: row;
}
.activetravel .tips-block.reversed .tip-item:nth-child(2n) .right-content {
  padding-left: 5rem;
  padding-right: 0;
}
@media (max-width: 1200px) {
  .activetravel .tips-block .block-title {
    margin-bottom: 4rem;
  }
  .activetravel .tips-block .tip-item .right-content {
    padding-left: 4rem;
  }
  .activetravel .tips-block .tip-item:nth-child(2n) .right-content {
    padding-right: 4rem;
  }
  .activetravel .tips-block.reversed .tip-item .right-content {
    padding-right: 4rem;
  }
  .activetravel .tips-block.reversed .tip-item:nth-child(2n) .right-content {
    padding-left: 4rem;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block .block-title {
    margin-bottom: 3rem;
  }
  .activetravel .tips-block .tip-item {
    flex-wrap: wrap;
  }
  .activetravel .tips-block .tip-item > * {
    flex-basis: 100%;
  }
}
@media (max-width: 840px) and (-ms-high-contrast: none), (max-width: 840px) and (-ms-high-contrast: active) {
  .activetravel .tips-block .tip-item > * {
    max-width: 100%;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block .tip-item .tip-image::before {
    padding-bottom: 56.25%;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block .tip-item .right-content {
    padding-left: 0;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block .tip-item:nth-child(2n) .right-content {
    padding-right: 0;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block .tip-item:last-child .right-content {
    padding-bottom: 0;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block.smaller .tip-item .tip-image::before {
    padding-bottom: 50%;
  }
}
@media (max-width: 840px) {
  .activetravel .tips-block.reversed .tip-item .tip-image {
    width: calc(100% + 6rem);
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .activetravel .tips-block.reversed .tip-item .right-content, .activetravel .tips-block.reversed .tip-item:nth-child(2n) .right-content {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 540px) {
  .activetravel .tips-block .block-title {
    text-align: left;
  }
  .activetravel .tips-block .block-title h2 span, .activetravel .tips-block .block-title h2 b {
    display: block;
  }
  .activetravel .tips-block .tip-item .tip-image::before {
    padding-bottom: 75%;
  }
  .activetravel .tips-block.smaller .tip-item .tip-image::before {
    padding-bottom: 66.6667%;
  }
  .activetravel .tips-block.reversed .tip-item:last-child .tip-image::after {
    content: "";
    background: linear-gradient(0deg, #FFFFFF -0.15%, rgba(255, 255, 255, 0) 50.11%);
  }
}
.activetravel .external-block.vertical {
  padding-top: 0;
  padding-bottom: 0;
}
.activetravel .external-block.vertical .external-content h3 {
  font-family: "futura-pt-condensed", sans-serif;
  font-size: 4rem;
  font-weight: 900;
  line-height: 0.93;
  letter-spacing: 0;
  color: #0C294A;
  text-transform: uppercase;
}
@media (max-width: 1320px) {
  .activetravel .external-block.vertical::before {
    left: calc((100vw - 120rem) * -0.5);
  }
}
@media (max-width: 1200px) {
  .activetravel .external-block.vertical::before {
    left: -3rem;
  }
}
.activetravel.theme-blue .tips-block, .activetravel.theme-red .tips-block {
  padding-top: 6rem;
  padding-bottom: 6rem;
  color: #FFFFFF;
}
.activetravel.theme-blue .tips-block h2, .activetravel.theme-blue .tips-block .h1, .activetravel.theme-red .tips-block h2, .activetravel.theme-red .tips-block .h1 {
  color: #FFFFFF;
  margin-bottom: 1.2rem;
}
.activetravel.theme-blue .tips-block p strong, .activetravel.theme-red .tips-block p strong {
  color: inherit;
}
.activetravel.theme-blue .tips-block .tip-item .right-content h2, .activetravel.theme-red .tips-block .tip-item .right-content h2 {
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  text-transform: none;
  margin-bottom: 0.5rem;
}
@media (max-width: 1200px) {
  .activetravel.theme-blue .tips-block, .activetravel.theme-red .tips-block {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width: 840px) {
  .activetravel.theme-blue .tips-block, .activetravel.theme-red .tips-block {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .activetravel.theme-blue .tips-block .tip-item .right-content h2, .activetravel.theme-red .tips-block .tip-item .right-content h2 {
    font-size: 2.4rem;
  }
}
@media (max-width: 540px) {
  .activetravel.theme-blue .tips-block .tip-item .right-content h2, .activetravel.theme-red .tips-block .tip-item .right-content h2 {
    font-size: 1.8rem;
  }
}
.activetravel.theme-blue .tc-accordion .accordion-trigger {
  border-top-color: #7FCCE0;
}
.activetravel.theme-blue .tips-block {
  background-color: #00AED0;
}
.activetravel.theme-blue .external-block .bg-yellow {
  background: #00AED0;
}
.activetravel.theme-blue .external-block .bg-yellow.button:hover, .activetravel.theme-blue .external-block .bg-yellow.icon-button:hover {
  color: #FFFFFF;
  background: #00AED0;
}
.activetravel.theme-blue .testimonial-carousel-container .carousel-item .testimonial-content .inner {
  background-color: #7FCCE0;
}
.activetravel.theme-red .tc-accordion .accordion-trigger {
  border-top-color: #E84261;
}
.activetravel.theme-red .tips-block {
  background-color: #D32C3D;
}
.activetravel.theme-red .external-block .bg-yellow {
  background: #D32C3D;
}
.activetravel.theme-red .external-block .bg-yellow.button:hover, .activetravel.theme-red .external-block .bg-yellow.icon-button:hover {
  color: #FFFFFF;
  background: #D32C3D;
}
.activetravel.theme-red .testimonial-carousel-container .carousel-item .testimonial-content .inner {
  background-color: #E84261;
}
.activetravel.theme-red .testimonial-carousel-container .carousel-item .testimonial-content .inner h2, .activetravel.theme-red .testimonial-carousel-container .carousel-item .testimonial-content .inner h3 {
  color: #FFFFFF;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc2V0LnNjc3MiLCJiYXNlcy9mb250LnNjc3MiLCJiYXNlcy9jb2xvci5zY3NzIiwiYmFzZXMvZnVuYy5zY3NzIiwiYmFzZXMvdHlwby5zY3NzIiwiYmFzZXMvbGF5b3V0LnNjc3MiLCJiYXNlcy9jb2xzLnNjc3MiLCJsaWIvZmxpY2tpdHkuc2NzcyIsImxpYi9sZWFmbGV0LnNjc3MiLCJsaWIvbGVhZmxldC1nZXN0dXJlLnNjc3MiLCJsaWIvZHJvcHpvbmUuc2NzcyIsImNvbXBvbmVudHMvYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9pY29ucy5zY3NzIiwiY29tcG9uZW50cy9mb3JtLnNjc3MiLCJjb21wb25lbnRzL3RhYmxlLnNjc3MiLCJjb21wb25lbnRzL2RhdGVwaWNrZXIuc2NzcyIsImNvbXBvbmVudHMvcXVvdGUuc2NzcyIsImNvbXBvbmVudHMvaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9jYXJkLnNjc3MiLCJjb21wb25lbnRzL3Byb2dyZXNzYmFyLnNjc3MiLCJjb21wb25lbnRzL21haW4uc2NzcyIsImNvbXBvbmVudHMvYWxlcnRzLnNjc3MiLCJtb2R1bGVzL21fYmFubmVyLnNjc3MiLCJtb2R1bGVzL21fdGFicy5zY3NzIiwibW9kdWxlcy9tX2FjY29yZGlvbi5zY3NzIiwibW9kdWxlcy9tX2Nhcm91c2VsLnNjc3MiLCJtb2R1bGVzL21fbW9kYWwuc2NzcyIsIm1vZHVsZXMvbV9wb3B1cC5zY3NzIiwibW9kdWxlcy9tX2dhbGxlcnkuc2NzcyIsIm1vZHVsZXMvbV9saWdodGJveC5zY3NzIiwiYWN0aXZldHJhdmVsLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFhQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7OztBQUVKO0FBQUE7RUFFQzs7O0FBRUQ7RUFDQzs7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QTtJQUNBOzs7O0FBSVI7RUFDSSxZTHJOSTs7O0FNRFI7QUFFQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVVDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7QUFBQTtBQUFBO0VBR0M7RUFDRztFQUNLO0VBQ047OztBQUVIO0FBQ0E7RUFDQzs7O0FBRUQ7QUFDQTtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDOzs7QUFFRDtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBTUM7RUFDQTs7O0FBR0Q7RUFDQztFQUNBOzs7QUFFRDtFQUNDO0FBQ0E7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDSztFQUNMOzs7QUFFRDtBQUNBO0VBQ0M7OztBQUdEO0VBQXdCOzs7QUFFeEI7RUFBd0I7OztBQUN4QjtFQUF3Qjs7O0FBQ3hCO0VBQXdCOzs7QUFDeEI7RUFBd0I7OztBQUN4QjtFQUEwQjs7O0FBQzFCO0VBQXdCOzs7QUFFeEI7RUFBMkI7OztBQUMzQjtFQUEyQjs7O0FBRTNCO0VBQ0M7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUlEO0FBRUE7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDOzs7QUFJRDtBQUVBO0VBQ0M7OztBQUVEO0VBQ0M7RUFDQTtFQUNHO0VBQ0s7OztBQUVUO0VBQ0M7OztBQUVEO0VBQ0M7RUFDSTtFQUNJOzs7QUFFVDtFQUNDOzs7QUFFRDtFQUNDO0VBQ0c7RUFDSzs7O0FBRVQ7QUFBQTtFQUVDO0VBQ0c7RUFDSzs7O0FBR1Q7RUFDQzs7O0FBSUQ7QUFFQTtFQUNDOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDOzs7QUFFRDtBQUFBO0VBRUM7OztBQUVEO0FBQUE7QUFBQTtFQUdDO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLQzs7O0FBR0Q7QUFBQTtBQUFBO0VBR0M7RUFDQTs7O0FBR0Q7QUFFQTtFQUNDO0VBQ0E7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7RUFDQTs7O0FBSUQ7QUFDQTtFQUNDOzs7QUFJRDtBQUVBO0VBQ0M7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBR0Q7QUFFQTtBQUFBO0VBRUM7RUFDQTs7O0FBR0Q7RUFDQzs7O0FBSUQ7QUFFQTtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBRUQ7RUFDQztFQUNBOzs7QUFFRDtBQUFBO0VBRUM7OztBQUVEO0VBQ0M7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7OztBQUdEO0FBQ0E7RUFDQzs7O0FBSUQ7QUFFQTtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7OztBQUVEO0FBQUE7RUFFQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0s7RUFFTDtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBR0Q7QUFBQTtBQUFBO0VBR0M7OztBQUVEO0FBQUE7RUFFQztFQUNBOzs7QUFJRDtBQUVBO0VBQ0M7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQztFQUNBOzs7QUFFRDtFQUNDOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDRztFQUNDO0VBQ0k7OztBQUVUO0FBQUE7RUFFQztFQUNBO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVEO0VBQ0M7OztBQUVEO0VBQ0M7RUFDQTtFQUNBOzs7QUFHRDtFQUNDOzs7QUFFRDtFQUNDO0VBQ0E7RUFFQTtFQUNBOzs7QUFFRDtFQUNDOzs7QUFHRDtBQUFBO0FBQUE7QUFBQTtFQUlDOzs7QUFJRDtBQUVBO0VBQ0M7RUFDQTs7O0FBSUQ7QUFDQTtBQUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBRUQ7QUFBQTtBQUFBO0FBQUE7RUFJQztFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRDtBQUVBO0VBQ0M7OztBQUVEO0VBQ0M7OztBQUVEO0FBQUE7RUFFQztFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQztFQUNBO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTtFQUNBOzs7QUFFRDtFQUNDO0VBQ0E7RUFDQTs7O0FBR0E7RUFDQzs7O0FDN25CRjtFQUNF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RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBVko7SUFXUTtJQUNBOzs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBTEo7SUFNUTtJQUNBOzs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFMSjtJQU1RO0lBQ0E7Ozs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtF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QTZCaVlMO0VBQ0ksTzdCbmFaO0U2Qm9hWSxZN0JuWUM7O0E2QnlZakI7RUFDSSxrQjdCellrQjs7QTZCOFl0QjtFQUNJLGtCN0JsWmlCOztBNkJxWnJCO0VBQ0ksa0I3QnZaWTs7QTZCMlpaO0VBQ0ksWTdCNVpROztBNkIrWko7RUFDSSxPN0I5Ylo7RTZCK2JZLFk3QmphQTs7QTZCdWFoQjtFQUNJLGtCN0J2YWlCOztBNkJ5YWpCO0VBQ0ksTzdCemNKIiwiZmlsZSI6InN0eWxlcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCwgXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRmb250OiBpbmhlcml0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuYmxvY2txdW90ZSwgcSB7XG5cdHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59XG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgICBmb250LXNpemU6IDYyLjUlO1xufVxuYm9keSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG59XG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufSIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgc3JjOiB1cmwoJy9zaXRlL2ZvbnRzLzNBOUMyNV8wXzAuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy9zaXRlL2ZvbnRzLzNBOUMyNV8wXzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgIHVybCgnL3NpdGUvZm9udHMvM0E5QzI1XzBfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnL3NpdGUvZm9udHMvM0E5QzI1XzBfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJy9zaXRlL2ZvbnRzLzNBOUMyNV8wXzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHNyYzogdXJsKCcvc2l0ZS9mb250cy8zQTlDMjVfMV8wLmVvdCcpO1xuICAgIHNyYzogdXJsKCcvc2l0ZS9mb250cy8zQTlDMjVfMV8wLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoJy9zaXRlL2ZvbnRzLzNBOUMyNV8xXzAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy9zaXRlL2ZvbnRzLzNBOUMyNV8xXzAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgdXJsKCcvc2l0ZS9mb250cy8zQTlDMjVfMV8wLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSc7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBzcmM6IHVybCgnL3NpdGUvZm9udHMvM0E5QzI1XzJfMC5lb3QnKTtcbiAgICBzcmM6IHVybCgnL3NpdGUvZm9udHMvM0E5QzI1XzJfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCcvc2l0ZS9mb250cy8zQTlDMjVfMl8wLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcvc2l0ZS9mb250cy8zQTlDMjVfMl8wLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybCgnL3NpdGUvZm9udHMvM0E5QzI1XzJfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbiRmb250LWhlYWRpbmc6ICdIZWx2ZXRpY2EgTmV1ZScsICdBcmlhbCcsIHNhbnMtc2VyaWY7XG4kZm9udC1jb250ZW50OiAnSGVsdmV0aWNhIE5ldWUnLCAnQXJpYWwnLCBzYW5zLXNlcmlmO1xuJGZvbnQtYWN0aXZldHJhdmVsLWhlYWRpbmc6ICdmdXR1cmEtcHQtY29uZGVuc2VkJywgc2Fucy1zZXJpZjsiLCIkYmc6ICNGRkZGRkY7XG4kd2hpdGU6ICNGRkZGRkY7XG4kYmxhY2s6ICMwMDAwMDA7XG5cbiRsaWdodGVyLWJsYWNrOiAjMTQwRjA2O1xuJGxpZ2h0Z3JleS1jb2xvcjogI0UzRTZFOTtcbiR5ZWxsb3c6ICNGRkVFMDA7XG5cbiRib3JkZXItY29sb3I6ICM5MzlCQTE7XG4kZGl2aWRlZGxpbmUtY29sb3I6ICNENEQ3RDk7XG5cbiR0aGVtZS1icmlnaHQtcmVkOiAjRDMyNTMzO1xuJHRoZW1lLXJlZDogI0U2MjcyRDtcbiR0aGVtZS1kYXJrLXJlZDogI0FEMzQzRTtcbiR0aGVtZS1ncmVlbjogIzAwQkVDRDtcbiR0aGVtZS1vcmFuZ2U6ICNCNzU2MzA7XG4kdGhlbWUtZGFyay1ibHVlOiAjMzk1MTgwO1xuJHRoZW1lLWRhcmtlci1ibHVlOiAjMEMyOTRBO1xuJHRoZW1lLWJyaWdodC1waW5rOiAjREMyMzg1O1xuJHRoZW1lLWxpZ2h0ZXItcHVycGxlOiAjOTkzMTg5O1xuXG4kY291bnRkb3duLWFjdGl2ZTogI0NBRDUyQjtcblxuJHNldmVyZS1jb2xvcjogI0U2MjcyRDtcbiRtb2RlcmF0ZS1jb2xvcjogI0Y1OUIyNDtcbiRsb3ctY29sb3I6ICMwOUE1NTA7XG5cbiRwbGFjZWhvbGRlci1jb2xvcjogIzkzOUJBMTtcblxuLy8gLS0tLS0gRm9yIGFjdGl2ZSB0cmF2ZWwgLS0tLS0gLy9cbiRhY3RpdmV0cmF2ZWwtaGlnaGxpZ2h0OiAjRkY4QjQyO1xuJHRoZW1lLXdhbGtpbmctcmVkOiAjRDMyQzNEO1xuJHRoZW1lLXdhbGtpbmctbGlnaHRyZWQ6ICNFODQyNjE7XG5cbiR0aGVtZS1jeWNsaW5nLWJsdWU6ICMwMEFFRDA7XG4kdGhlbWUtY3ljbGluZy1saWdodGJsdWU6ICM3RkNDRTA7XG5cbi5iZy1saWdodGVyLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4uYmctbGlnaHRlci1ibGFjay01IHtcbiAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjA1KTtcbiAgICBiYWNrZ3JvdW5kOiAjRjNGM0YyO1xufVxuXG4uYmctbGlnaHRncmV5IHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRncmV5LWNvbG9yO1xufVxuXG4uYmctbGlnaHRncmV5LTUwIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGdyZXktY29sb3IsIDAuNSk7XG59XG5cbi5iZy1saWdodGdyZXktNjAge1xuICAgIC8vIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0Z3JleS1jb2xvciwgMC42KTtcbiAgICBiYWNrZ3JvdW5kOiAjRUVGMEYyO1xufVxuXG4uYmctZGFyay1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmID4gaDEsICYgPiBoMiwgJiA+IGgzLCAmID4gaDQsICYgPiBoNSwgJiA+IGg2LCAmID4gcCwgJiA+IHVsIGxpIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLmV4dGVybmFsLWJsb2NrICYgLmV4dGVybmFsLWNvbnRlbnQge1xuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmctZGFya2VyLWJsdWUge1xuICAgIGJhY2tncm91bmQ6ICR0aGVtZS1kYXJrZXItYmx1ZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJiA+IGgxLCAmID4gaDIsICYgPiBoMywgJiA+IGg0LCAmID4gaDUsICYgPiBoNiwgJiA+IHAsICYgPiB1bCBsaSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuLmJnLXllbGxvdyB7XG4gICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG5cbiAgICAmLmJ1dHRvbiwgJi5pY29uLWJ1dHRvbiB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJnLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICBjb2xvcjogJHllbGxvdztcblxuICAgICYuYnV0dG9uLCAmLmljb24tYnV0dG9uIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlnaHRlci1ibGFjay10ZXh0IHtcbiAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG59IiwiQHVzZSAnc2FzczptYXRoJztcblxuQG1peGluIGZsdWlkLXR5cGUoJHByb3BlcnRpZXMsICRtaW4tdncsICRtYXgtdncsICRtaW4tdmFsdWUsICRtYXgtdmFsdWUpIHtcblx0JiB7XG5cdFx0QGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcblx0XHRcdCN7JHByb3BlcnR5fTogJG1pbi12YWx1ZTtcblx0XHR9XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KSB7XG5cdFx0XHRAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuXHRcdFx0XHQjeyRwcm9wZXJ0eX06IGNhbGMoI3skbWluLXZhbHVlfSArICN7c3RyaXAtdW5pdCgkbWF4LXZhbHVlIC0gJG1pbi12YWx1ZSl9ICogKCgxMDB2dyAtICN7JG1pbi12d30pIC8gI3tzdHJpcC11bml0KCRtYXgtdncgLSAkbWluLXZ3KX0pKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXZ3KSB7XG5cdFx0XHRAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuXHRcdFx0XHQjeyRwcm9wZXJ0eX06ICRtYXgtdmFsdWU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xuXHRAcmV0dXJuIG1hdGguZGl2KCR2YWx1ZSwgKCR2YWx1ZSAqIDAgKyAxKSk7XG59XG5cblxuLy8gU2xpZ2h0bHkgbGlnaHRlbiBhIGNvbG9yXG4vLyBAYWNjZXNzIHB1YmxpY1xuLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gY29sb3IgdG8gdGludFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJjZW50YWdlIC0gcGVyY2VudGFnZSBvZiBgJGNvbG9yYCBpbiByZXR1cm5lZCBjb2xvclxuLy8gQHJldHVybiB7Q29sb3J9XG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50YWdlKSB7XG4gICAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHBlcmNlbnRhZ2UpO1xufVxuXG4vLyBTbGlnaHRseSBkYXJrZW4gYSBjb2xvclxuLy8gQGFjY2VzcyBwdWJsaWNcbi8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGNvbG9yIHRvIHNoYWRlXG4vLyBAcGFyYW0ge051bWJlcn0gJHBlcmNlbnRhZ2UgLSBwZXJjZW50YWdlIG9mIGAkY29sb3JgIGluIHJldHVybmVkIGNvbG9yXG4vLyBAcmV0dXJuIHtDb2xvcn1cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50YWdlKSB7XG4gIEByZXR1cm4gbWl4KGJsYWNrLCAkY29sb3IsICRwZXJjZW50YWdlKTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gICAgQGlmICRwb2ludCA9PSBkZXNrdG9wIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzMjBweCkgeyBAY29udGVudCA7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3BfcyB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXRfbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXRfcCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkgeyBAY29udGVudCA7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IG1vYmlsZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NDBweCkgIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSBtb2JpbGVfcyB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkgIHsgQGNvbnRlbnQgOyB9XG4gICAgfVxufVxuXG4vLyAkc3BhY2VhbW91bnRzOiAoNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA1MCwgNzUsIDEwMCk7IFxuJHNwYWNlYW1vdW50czogKDAsIDEsIDIsIDMsIDQsIDUsIDYpOyBcbiRzaWRlczogKHRvcCwgYm90dG9tLCBsZWZ0LCByaWdodCk7XG5cbkBlYWNoICRzcGFjZSBpbiAkc3BhY2VhbW91bnRzIHtcbiAgQGVhY2ggJHNpZGUgaW4gJHNpZGVzIHtcbiAgICAubSN7c3RyLXNsaWNlKCRzaWRlLCAwLCAxKX0tI3skc3BhY2V9IHtcbiAgICAgIG1hcmdpbi0jeyRzaWRlfTogI3skc3BhY2V9cmVtO1xuICAgIH1cbiAgXG4gICAgLnAje3N0ci1zbGljZSgkc2lkZSwgMCwgMSl9LSN7JHNwYWNlfSB7XG4gICAgICBwYWRkaW5nLSN7JHNpZGV9OiAjeyRzcGFjZX1yZW07XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBpZS1mbGV4LWZpeCgkZmxleGJhc2lzKSB7XG5cdCYge1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAkZmxleGJhc2lzO1xuICAgICAgICB9XG5cdH1cbn0iLCJALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICAgIGhlaWdodDogZGV2aWNlLWhlaWdodDtcbn1cblxuaHRtbCwgYm9keSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gaGVpZ2h0OiAxMDB2aDtcbn1cblxuaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogYXV0bztcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuaHRtbCB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogNjIuNSU7XG4gICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgLy8gY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgIGNvbG9yOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjcpO1xufVxuXG4uZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udGNlbnRyZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAmLnRsZWZ0LXRhYmxldCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbmEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcblxuICAgICYudW5kZXJsaW5lZCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxufVxuXG5pbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubm9kaXNwbGF5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5oMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcblxuICAgICYubGFyZ2VyIHtcbiAgICAgICAgZm9udC1zaXplOiA2cmVtO1xuICAgIH1cblxuICAgICYuc21hbGxlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogNS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICB9XG5cbiAgICAmLnNtYWxsZXN0IHtcbiAgICAgICAgZm9udC1zaXplOiA0LjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIH1cblxuICAgICYudGhpY2sge1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgZm9udC1zaXplOiA0LjhyZW07XG5cbiAgICAgICAgJi5sYXJnZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbWFsbGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICYubGFyZ2VyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbWFsbGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgJi5zbWFsbGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgIH1cblxuICAgIC5tYWluLXNpZGUgLm1haW4tY29udGVudCAmLFxuICAgIC5jb250ZW50LWNvbCAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy42cmVtO1xuXG4gICAgICAgICYuc21hbGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmLnNtYWxsZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG4gICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLy8gZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG5cbiAgICAmLnNtYWxsZXIge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgfVxuXG4gICAgJi5zbWFsbGVzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICB9XG59XG5cbmg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbnAge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAvLyB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgfVxuXG4gICAgJi5zbWFsbGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxNDI5O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bS13ZWlnaHQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICYgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgICYubGFyZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG51bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgLy8gYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMC44cmVtO1xuICAgICAgICAgICAgLy8gYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgICAgICAvLyBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgLy8gYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB0b3A6IDAuOHJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAgICAgICAgIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmLmNhdGUtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcblxuICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5vbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY291bnRlci1yZXNldDogbGlzdC1jb3VudGVyO1xuXG4gICAgbGkge1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGlzdC1jb3VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtY29udGVudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaXN0LWNvdW50ZXIpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5wLCB1bCwgb2wsIC5xdW90ZS1ibG9jaywgLmltYWdlLWNvbnRhaW5lciwgLnRvbGwtY2FyZCwgLmNvbnRlbnQtcmljaCwgLmN0YS5idXR0b24ge1xuICAgICYgKyBoMiwgJiArIC5xdW90ZS1ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgfVxuXG4gICAgJiArIGgzLCAmICsgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICB9XG5cbiAgICAmICsgaDQsICYgKyAuY3RhLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgJiArIGg1LCAmICsgcCwgJiArIHVsLCAmICsgb2wge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgJiArIGgyLCAmICsgLnF1b3RlLWJsb2NrIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAmICsgaDMsICYgKyAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmICsgaDQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIGg1LCAmICsgcCwgJiArIHVsLCAmICsgb2wge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jZW50cmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmFzcGVjdC1yYXRpby1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgLy8gcGFkZGluZy1ib3R0b206IDY2Ljg0JTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDU5LjY0ZGVnLCByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5uby1ncmFkaWVudDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbn1cblxuLnRhZy1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgcGFkZGluZzogMS4ycmVtIDJyZW07XG5cbiAgICAmLmRpc3J1cHRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtYnJpZ2h0LXBpbms7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIH1cbn1cblxuLnByb3YtbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IDAuM3JlbSAwLjhyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5zci1vbmx5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6MCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpOyAvKiBJRTYsIElFNyAqL1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cblxuYm9keTpob3ZlciAuc3Itb25seSBhLFxuYm9keTpob3ZlciAuc3Itb25seSBpbnB1dCxcbmJvZHk6aG92ZXIgLnNyLW9ubHkgYnV0dG9uIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8vIC5zci1vbmx5IHtcbi8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICAgd2lkdGg6IDFweDtcbi8vICAgICBoZWlnaHQ6IDFweDtcbi8vICAgICBwYWRkaW5nOiAwO1xuLy8gICAgIG1hcmdpbjogLTFweDtcbi8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4vLyAgICAgYm9yZGVyOiAwO1xuLy8gfVxuXG4uZGF0ZS1sYWJlbC10ZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAxLjhyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgfVxuXG4gICAgJiArIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbnVsLnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbn1cblxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmFsaWduLWl0ZW1zLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4ubWFwLWNvbnRhaW5lciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc4cmVtO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICAubWFwLXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAubGYtbWFwLCAudGltZXRhYmxlLW1hcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcblxuICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDQuNHJlbTtcbiAgICAgICAgaGVpZ2h0OiA0LjRyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IC0wLjVyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQsICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSBhLCAmOm50aC1sYXN0LWNoaWxkKDIpIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMC44cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWswM0lERXhURElnTmt3M0lERWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMikgYTo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gbGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gICAgICAgICYgPiBsaSB7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF0bHdkZy10cmlnZ2VyLmF0bHdkZy1SSUdIVCB7XG4gICAgei1pbmRleDogOTk5OTk5OSA7XG59IiwiaHRtbCB7XG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5hIHtcbiAgICBzY3JvbGwtbWFyZ2luLXRvcDogNGVtO1xufVxuXG4vLyAuaGVhZGVyICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0LFxuLy8gLmhlYWRlciB+IC50aWNrZXQtZmluZGVyLWJsb2NrLFxuLy8gLmNvbnRlbnQtYmxvY2stbGF5b3V0Om5vdCguam91cm5leS1wbGFuKTpub3QoLmJnLWRhcmstYmx1ZSk6bm90KC5hY2NvcmRpb24tY29udGFpbmVyKSArIC5jb250ZW50LWJsb2NrLWxheW91dDpub3QoLnRvcC1tYXJnaW4tMCksXG4vLyAuY29udGVudC1ibG9jay1sYXlvdXQ6bm90KC50Zi1ibG9jayk6bm90KC50ZnMtYmxvY2spOm5vdCguYmctZGFyay1ibHVlKTpub3QoLm1haW4tc2lkZSk6bm90KC5iZy1saWdodGdyZXktNjApOm5vdCguYmctbGlnaHRlci1ibGFjay01KSArIC5mb290ZXIsXG4vLyAudGltZXRhYmxlLWJsb2NrIH4gLmZvb3Rlcixcbi8vIC50cmF2ZWwtdXBkYXRlLWJhbm5lciArIC5jb250ZW50LWJsb2NrLWxheW91dDpub3QoLnRvcC1tYXJnaW4tMCksXG4vLyAuY29udGVudC1iYW5uZXIgKyAuY29udGVudC1ibG9jay1sYXlvdXQ6bm90KC50b3AtbWFyZ2luLTApLFxuLy8gLmJhbm5lci1pbWFnZSArIC5jb250ZW50LWJsb2NrLWxheW91dDpub3QoLnRvcC1tYXJnaW4tMCksXG4vLyAuY29udGVudC1ibG9jay1sYXlvdXQgPiAqLmxhcmdlLXdyYXA6bm90KC50YWJzKSA+ICo6bm90KC5qb3VybmV5LXBsYW4pICsgKiB7XG4uaGVhZGVyICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0LFxuLmhlYWRlciB+IC50aWNrZXQtZmluZGVyLWJsb2NrLFxuLmNvbnRlbnQtYmxvY2stbGF5b3V0ICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0Om5vdCgudG9wLW1hcmdpbi0wKSxcbi5jb250ZW50LWJsb2NrLWxheW91dDpub3QoLnRmLWJsb2NrKTpub3QoLnRmcy1ibG9jayk6bm90KC5iZy1kYXJrLWJsdWUpOm5vdCgubWFpbi1zaWRlKTpub3QoLmJnLWxpZ2h0Z3JleS02MCk6bm90KC5iZy1saWdodGVyLWJsYWNrLTUpICsgLmZvb3RlciwgLy8gUmVtb3ZlIHRoaXMgbGluZSBpZiBhZGRlZCBvcHRpb25hbCByZW1vdmluZyBtYXJnaW4tdG9wIGxpa2Ugc2luZ2xlIGNvbHVtbiBsYXlvdXQgYmxvY2suXG4vLyAuY29udGVudC1ibG9jay1sYXlvdXQgKyAuZm9vdGVyOm5vdCgudG9wLW1hcmdpbi0wKSwgRW5hYmxlIHRoaXMgbGluZSBpZiBhZGRlZCBvcHRpb25hbCByZW1vdmluZyBtYXJnaW4tdG9wIGxpa2Ugc2luZ2xlIGNvbHVtbiBsYXlvdXQgYmxvY2suXG4udGltZXRhYmxlLWJsb2NrIH4gLmZvb3Rlcixcbi5zaW1wbGUtYmFubmVyICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0Om5vdCgudG9wLW1hcmdpbi0wKSxcbi5jb250ZW50LWJhbm5lciArIC5jb250ZW50LWJsb2NrLWxheW91dDpub3QoLnRvcC1tYXJnaW4tMCksXG4uYmFubmVyLWltYWdlICsgLmNvbnRlbnQtYmxvY2stbGF5b3V0Om5vdCgudG9wLW1hcmdpbi0wKSxcbi5jb250ZW50LWJsb2NrLWxheW91dCA+ICoubGFyZ2Utd3JhcCA+ICogKyAqOm5vdCgudG9wLW1hcmdpbi0wKSB7XG4gICAgLy8gbWFyZ2luLXRvcDogNnJlbTtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cbn1cblxuLmhlYWRlciArIC5jb250ZW50LWJsb2NrLWxheW91dC50b3AtbWFyZ2luLTAge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5oZWFkZXIgKyAuY29udGVudC1ibG9jay1sYXlvdXQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTByZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOXJlbTtcbiAgICB9XG59XG5cbi5oZWFkZXIgKyAuY29udGVudC1ibG9jay1sYXlvdXQudGZzLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgfVxufVxuXG4ubGFyZ2Utd3JhcCB7XG4gICAgbWF4LXdpZHRoOiAxMzJyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcblxuICAgICAgICAuY29udGVudC1ibG9jay1sYXlvdXQgLmxhcmdlLXdyYXAgLmNvbnRlbnQtYmxvY2stbGF5b3V0ICYsXG4gICAgICAgIC5jb250ZW50LWJsb2NrLWxheW91dCAubWlkZGxlLXdyYXAgLmNvbnRlbnQtYmxvY2stbGF5b3V0ICYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1pZGRsZS13cmFwIHtcbiAgICAvLyBAZXh0ZW5kIC5sYXJnZS13cmFwO1xuICAgIG1heC13aWR0aDogMTIwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLy8gICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgLy8gfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgIC5jb250ZW50LWJsb2NrLWxheW91dCAubGFyZ2Utd3JhcCAuY29udGVudC1ibG9jay1sYXlvdXQgJixcbiAgICAgICAgLmNvbnRlbnQtYmxvY2stbGF5b3V0IC5taWRkbGUtd3JhcCAuY29udGVudC1ibG9jay1sYXlvdXQgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc21hbGwtd3JhcCB7XG4gICAgLy8gQGV4dGVuZCAubGFyZ2Utd3JhcDtcbiAgICBtYXgtd2lkdGg6IDgwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgLy8gICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgLy8gfVxuXG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIC8vIH1cbn1cblxuLnNtYWxsZXItd3JhcCB7XG4gICAgLy8gQGV4dGVuZCAubGFyZ2Utd3JhcDtcbiAgICBtYXgtd2lkdGg6IDcycmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLm1haW4tc2lkZSB7XG4gICAgLm1haW4tY29udGVudCB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDY4Ljc1JTtcbiAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNjguNzUlKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVyZW07XG5cbiAgICAgICAgLnNtYWxsZXItd3JhcCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGUtY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleC1iYXNpczogMzEuMjUlO1xuICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgzMS4yNSUpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDZyZW07XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNXJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDEwMHZ3IC0gMTIwcmVtKSAqIDAuNSk7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDVyZW0pO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRncmV5LWNvbG9yLCAwLjUpO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgIC5tYWluLWNvbnRlbnQgLnNtYWxsZXItd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAubWFpbi1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tY29udGVudCAuc21hbGxlci13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG5cbiAgICAgICAgICAgIC5taWRkbGUtd3JhcCwgLmxhcmdlLXdyYXAge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNpZGUtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNHJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLm1haW4tY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLWNvbnRlbnQsIC5zaWRlLWNvbnRlbnQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpZGUtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDNyZW07XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLnNpZGUtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmctbGlnaHRlci1ibGFjay01LCAuYmctbGlnaHRncmV5LTYwIHtcbiAgICBwYWRkaW5nOiA1cmVtIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAudHdvLWNvbHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICAgICAgLnR3by1jb2xzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmctbGlnaHRlci1ibGFjay01ICsgLmJnLWxpZ2h0ZXItYmxhY2stNSxcbi5iZy1saWdodGdyZXktNjAgKyAuYmctbGlnaHRncmV5LTYwLFxuLmJnLWRhcmstYmx1ZSArIC5iZy1kYXJrLWJsdWUge1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ubWlkZGxlLXdyYXAgLnNtYWxsLXdyYXAge1xuICAgICYuYmctbGlnaHRlci1ibGFjay01LCAmLmJnLWxpZ2h0Z3JleS02MCwgJi5iZy1kYXJrLWJsdWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDVyZW0gMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogLTNyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLmJnLWRhcmstYmx1ZSAuZXh0ZXJuYWwtYmxvY2s6OmJlZm9yZSB7XG4vLyAgICAgY29udGVudDogbm9uZTtcbi8vIH1cblxuLm1pZGRsZS13cmFwLnRvcC1kaXZpZGVkbGluZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGl2aWRlZGxpbmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbn1cblxuLmNvbnRlbnQtYmxvY2stbGF5b3V0LmJvcmRlci10b3AtYm90dG9tID4gLm1pZGRsZS13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogNXJlbTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogM3JlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDZyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAudHdvLWNvbHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICB9XG59IiwiLm9uZS1jb2xzID4gKiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cblxuLnR3by1jb2xzIHtcbiAgICA+ICoge1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDUwJSk7XG4gICAgfVxuXG4gICAgJi5jb2wtNjAtNDAge1xuICAgICAgICAmID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg2MCUpO1xuICAgICAgICB9XG4gICAgICAgICYgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNDAlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNvbC00MC02MCB7XG4gICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDQwJSk7XG4gICAgICAgIH1cbiAgICAgICAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg2MCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY29sLTcwLTMwIHtcbiAgICAgICAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNzAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNzAlKTtcbiAgICAgICAgfVxuICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDMwJSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jb2wtMzAtNzAge1xuICAgICAgICAmID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgzMCUpO1xuICAgICAgICB9XG4gICAgICAgICYgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNzAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNzAlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRocmVlLWNvbHMgPiAqIHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMzMuMzMlKTtcblxuICAgICYgPiBhOm9ubHktY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5mb3VyLWNvbHMgPiAqIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMjUlKTtcbn1cblxuLmZpdmUtY29scyA+ICoge1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgyMCUpO1xufVxuXG4ubWFpbi1zaWRlLCAuc2lkZS1tYWluIHtcbiAgICAubWFpbi1jb2wge1xuICAgICAgICBmbGV4LWJhc2lzOiA2NSU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDY1JSk7XG4gICAgfVxuXG4gICAgLnNpZGUtY29sIHtcbiAgICAgICAgZmxleC1iYXNpczogMzUlO1xuICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgzNSUpO1xuICAgIH1cbn1cblxuLm9uZS1jb2xzLCAudHdvLWNvbHMsIC50aHJlZS1jb2xzLCAuZm91ci1jb2xzLCAuZml2ZS1jb2xzOm5vdCgudHJhbnNmZXItbW9kZXMpIHtcbiAgICAvLyBtYXJnaW46IC0ycmVtO1xuICAgIG1hcmdpbjogLTNyZW07XG5cbiAgICAmID4gKiB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgfVxuXG4gICAgJi5zbWFsbC1nYXAge1xuICAgICAgICBtYXJnaW46IC0xLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgbWFyZ2luOiAtMnJlbTtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBtYXJnaW46IC0xcmVtO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAmLnNtYWxsLWdhcCB7XG4gICAgICAgICAgICBtYXJnaW46IC0xcmVtO1xuXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAub25lLWNvbHMgPiAqLCAudHdvLWNvbHMgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8vIC50d28tY29scywgLnRocmVlLWNvbHMge1xuICAgIC8vICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyAgICAgJiA+ICoge1xuICAgIC8vICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLy8gICAgICAgICAmID4gKiB7XG4gICAgLy8gICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8vICAgICAgICAgfVxuICAgIC8vICAgICB9XG4gICAgLy8gfVxufVxuXG4udHdvLWNvbHMge1xuICAgIC8vIG1hcmdpbjogLTNyZW07XG5cbiAgICAvLyAmID4gKiB7XG4gICAgLy8gICAgIHBhZGRpbmc6IDNyZW07XG4gICAgLy8gfVxuXG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAvLyAgICAgbWFyZ2luOiAtMnJlbTtcblxuICAgIC8vICAgICAmID4gKiB7XG4gICAgLy8gICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgIC8vICAgICB9XG4gICAgLy8gfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDAgMDtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuXG4gICAgICAgICAgICAmID4gaWZyYW1lLCAqOm5vdCguY2VudHJlKSAuaW1hZ2Utd3JhcCBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAmID4gaWZyYW1lLCAuaW1hZ2Utd3JhcCwgLnZpZGVvLWNsaXAsIC5tYXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2wtNjAtNDAsICYuY29sLTQwLTYwLCAmLmNvbC03MC0zMCwgJi5jb2wtMzAtNzAge1xuICAgICAgICAgICAgJiA+ICo6Zmlyc3QtY2hpbGQsICYgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tb2JpbGUtZmxpcCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICYgPiBpZnJhbWUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnJlbSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+IGlmcmFtZSwgLmltYWdlLXdyYXAsIC52aWRlby1jbGlwLCAubWFwLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJi5wYWRkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGhyZWUtY29scyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbjogLTFyZW0gMDtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3VyLWNvbHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDUwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maXZlLWNvbHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLnRyYW5zZmVyLW1vZGVzKSB7XG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMzMlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDMzJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAmOm5vdCgudHJhbnNmZXItbW9kZXMpIHtcbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiEgRmxpY2tpdHkgdjIuMS4yXG5odHRwczovL2ZsaWNraXR5Lm1ldGFmaXp6eS5jb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZmxpY2tpdHktZW5hYmxlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuICBcbi5mbGlja2l0eS1lbmFibGVkOmZvY3VzIHsgXG4gICAgLy8gb3V0bGluZTogbm9uZTsgXG59IFxuXG4uZmxpY2tpdHktdmlld3BvcnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLmZsaWNraXR5LXNsaWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbiAgXG4vKiBkcmFnZ2FibGUgKi9cbiAgXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuICBcbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG59XG4gIFxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydC5pcy1wb2ludGVyLWRvd24ge1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuICBcbi8qIC0tLS0gZmxpY2tpdHktYnV0dG9uIC0tLS0gKi9cbiAgXG4uZmxpY2tpdHktYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDpub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgLy8gb3BhY2l0eTogMC4zMjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbn1cbiAgXG4vKiAtLS0tIHByZXZpb3VzL25leHQgYnV0dG9ucyAtLS0tICovXG4gIFxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiA0LjhyZW07XG4gICAgaGVpZ2h0OiA0LjhyZW07XG4gICAgei1pbmRleDogMTA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxJRHh6ZG1jZ2QybGtkR2c5SWpFNUlpQm9aV2xuYUhROUlqTXlJaUIyYVdWM1FtOTRQU0l3SURBZ01Ua2dNeklpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NpQWdJQ0FnSUNBZ1BIQmhkR2dnWkQwaVRURTNJRE13VERNZ01UWk1NVGNnTWlJZ2MzUnliMnRsUFNKM2FHbDBaU0lnYzNSeWIydGxMWGRwWkhSb1BTSTBJaTgrQ2lBZ0lDQWdJQ0FnUEM5emRtYysnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMS45cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIH1cblxuICAgIC5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuICBcbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHsgXG4gICAgbGVmdDogMDsgXG4gICAgXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cblxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7IFxuICAgIHJpZ2h0OiAwO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLyogcmlnaHQgdG8gbGVmdCAqL1xuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbn1cblxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiAuZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwJTtcbiAgICB0b3A6IDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLy8gZmFkZSBzaWRlcyAobmVlZHMgcGFyZW50IHRvIGhhdmUgb3ZlZmxvdyBoaWRkZW4pXG4uY2Fyb3VzZWwuZmFkZVNpZGVzLmZsaWNraXR5LWVuYWJsZWQge1xuICAgIG1hcmdpbjogMCA2cmVtO1xuICAgIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA2cmVtKTtcbiAgICAgICAgd2lkdGg6IDUwdnc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogLTAuNXJlbTtcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgyNDcsMjQ0LDI0MywwKSwgcmdiYSgyNDcsMjQ0LDI0MywxKSA0cmVtKTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA2cmVtKTtcbiAgICAgICAgd2lkdGg6IDUwdnc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAtMC41cmVtO1xuICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMjQ3LDI0NCwyNDMsMCksIHJnYmEoMjQ3LDI0NCwyNDMsMSkgNHJlbSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cbiAgXG4vKiAtLS0tIHBhZ2UgZG90cyAtLS0tICovXG5cbi5mbGlja2l0eS1wYWdlLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3R0b206IDVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXBhZ2UtZG90cyB7IFxuICAgIGRpcmVjdGlvbjogcnRsOyBcbn1cbiAgXG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMCAwLjhyZW0gMCAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDAuMnJlbSBzb2xpZCAkd2hpdGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHsgXG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIGJvcmRlci13aWR0aDogMC4xcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNHJlbTtcbiAgICB9XG59XG4gIFxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG59IiwiLyogcmVxdWlyZWQgc3R5bGVzICovXHJcblxyXG4ubGVhZmxldC1wYW5lLFxyXG4ubGVhZmxldC10aWxlLFxyXG4ubGVhZmxldC1tYXJrZXItaWNvbixcclxuLmxlYWZsZXQtbWFya2VyLXNoYWRvdyxcclxuLmxlYWZsZXQtdGlsZS1jb250YWluZXIsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcsXHJcbi5sZWFmbGV0LXBhbmUgPiBjYW52YXMsXHJcbi5sZWFmbGV0LXpvb20tYm94LFxyXG4ubGVhZmxldC1pbWFnZS1sYXllcixcclxuLmxlYWZsZXQtbGF5ZXIge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR9XHJcbi5sZWFmbGV0LXRpbGUsXHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLFxyXG4ubGVhZmxldC1tYXJrZXItc2hhZG93IHtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdCAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0ICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHQgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xyXG5cdH1cclxuLyogU2FmYXJpIHJlbmRlcnMgbm9uLXJldGluYSB0aWxlIG9uIHJldGluYSBiZXR0ZXIgd2l0aCB0aGlzLCBidXQgQ2hyb21lIGlzIHdvcnNlICovXHJcbi5sZWFmbGV0LXNhZmFyaSAubGVhZmxldC10aWxlIHtcclxuXHRpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XHJcblx0fVxyXG4vKiBoYWNrIHRoYXQgcHJldmVudHMgaHcgbGF5ZXJzIFwic3RyZXRjaGluZ1wiIHdoZW4gbG9hZGluZyBuZXcgdGlsZXMgKi9cclxuLmxlYWZsZXQtc2FmYXJpIC5sZWFmbGV0LXRpbGUtY29udGFpbmVyIHtcclxuXHR3aWR0aDogMTYwMHB4O1xyXG5cdGhlaWdodDogMTYwMHB4O1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdH1cclxuLmxlYWZsZXQtbWFya2VyLWljb24sXHJcbi5sZWFmbGV0LW1hcmtlci1zaGFkb3cge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuLyogLmxlYWZsZXQtY29udGFpbmVyIHN2ZzogcmVzZXQgc3ZnIG1heC13aWR0aCBkZWNsZXJhdGlvbiBzaGlwcGVkIGluIEpvb21sYSEgKGpvb21sYS5vcmcpIDMueCAqL1xyXG4vKiAubGVhZmxldC1jb250YWluZXIgaW1nOiBtYXAgaXMgYnJva2VuIGluIEZGIGlmIHlvdSBoYXZlIG1heC13aWR0aDogMTAwJSBvbiB0aWxlcyAqL1xyXG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtb3ZlcmxheS1wYW5lIHN2ZyxcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LW1hcmtlci1wYW5lIGltZyxcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXNoYWRvdy1wYW5lIGltZyxcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXRpbGUtcGFuZSBpbWcsXHJcbi5sZWFmbGV0LWNvbnRhaW5lciBpbWcubGVhZmxldC1pbWFnZS1sYXllcixcclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXRpbGUge1xyXG5cdG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG4ubGVhZmxldC1jb250YWluZXIubGVhZmxldC10b3VjaC16b29tIHtcclxuXHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4teCBwYW4teTtcclxuXHR0b3VjaC1hY3Rpb246IHBhbi14IHBhbi15O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udGFpbmVyLmxlYWZsZXQtdG91Y2gtZHJhZyB7XHJcblx0LW1zLXRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcclxuXHQvKiBGYWxsYmFjayBmb3IgRkYgd2hpY2ggZG9lc24ndCBzdXBwb3J0IHBpbmNoLXpvb20gKi9cclxuXHR0b3VjaC1hY3Rpb246IG5vbmU7XHJcblx0dG91Y2gtYWN0aW9uOiBwaW5jaC16b29tO1xyXG59XHJcbi5sZWFmbGV0LWNvbnRhaW5lci5sZWFmbGV0LXRvdWNoLWRyYWcubGVhZmxldC10b3VjaC16b29tIHtcclxuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xyXG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcclxufVxyXG4ubGVhZmxldC1jb250YWluZXIge1xyXG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLmxlYWZsZXQtY29udGFpbmVyIGEge1xyXG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSg1MSwgMTgxLCAyMjksIDAuNCk7XHJcbn1cclxuLmxlYWZsZXQtdGlsZSB7XHJcblx0ZmlsdGVyOiBpbmhlcml0O1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR9XHJcbi5sZWFmbGV0LXRpbGUtbG9hZGVkIHtcclxuXHR2aXNpYmlsaXR5OiBpbmhlcml0O1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1ib3gge1xyXG5cdHdpZHRoOiAwO1xyXG5cdGhlaWdodDogMDtcclxuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0ICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdHotaW5kZXg6IDgwMDtcclxuXHR9XHJcbi8qIHdvcmthcm91bmQgZm9yIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTg4ODMxOSAqL1xyXG4ubGVhZmxldC1vdmVybGF5LXBhbmUgc3ZnIHtcclxuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LXBhbmUgICAgICAgICB7IHotaW5kZXg6IDQwMDsgfVxyXG5cclxuLmxlYWZsZXQtdGlsZS1wYW5lICAgIHsgei1pbmRleDogMjAwOyB9XHJcbi5sZWFmbGV0LW92ZXJsYXktcGFuZSB7IHotaW5kZXg6IDQwMDsgfVxyXG4ubGVhZmxldC1zaGFkb3ctcGFuZSAgeyB6LWluZGV4OiA1MDA7IH1cclxuLmxlYWZsZXQtbWFya2VyLXBhbmUgIHsgei1pbmRleDogNjAwOyB9XHJcbi5sZWFmbGV0LXRvb2x0aXAtcGFuZSAgIHsgei1pbmRleDogNjUwOyB9XHJcbi5sZWFmbGV0LXBvcHVwLXBhbmUgICB7IHotaW5kZXg6IDcwMDsgfVxyXG5cclxuLmxlYWZsZXQtbWFwLXBhbmUgY2FudmFzIHsgei1pbmRleDogMTAwOyB9XHJcbi5sZWFmbGV0LW1hcC1wYW5lIHN2ZyAgICB7IHotaW5kZXg6IDIwMDsgfVxyXG5cclxuLmxlYWZsZXQtdm1sLXNoYXBlIHtcclxuXHR3aWR0aDogMXB4O1xyXG5cdGhlaWdodDogMXB4O1xyXG5cdH1cclxuLmx2bWwge1xyXG5cdGJlaGF2aW9yOiB1cmwoI2RlZmF1bHQjVk1MKTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdH1cclxuXHJcblxyXG4vKiBjb250cm9sIHBvc2l0aW9uaW5nICovXHJcblxyXG4ubGVhZmxldC1jb250cm9sIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogODAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlUGFpbnRlZDsgLyogSUUgOS0xMCBkb2Vzbid0IGhhdmUgYXV0byAqL1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9wLFxyXG4ubGVhZmxldC1ib3R0b20ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9wIHtcclxuXHR0b3A6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1yaWdodCB7XHJcblx0cmlnaHQ6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1ib3R0b20ge1xyXG5cdGJvdHRvbTogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWxlZnQge1xyXG5cdGxlZnQ6IDA7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sIHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRjbGVhcjogYm90aDtcclxuXHR9XHJcbi5sZWFmbGV0LXJpZ2h0IC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdGZsb2F0OiByaWdodDtcclxuXHR9XHJcbi5sZWFmbGV0LXRvcCAubGVhZmxldC1jb250cm9sIHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtYm90dG9tIC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG4ubGVhZmxldC1sZWZ0IC5sZWFmbGV0LWNvbnRyb2wge1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtcmlnaHQgLmxlYWZsZXQtY29udHJvbCB7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdH1cclxuXHJcblxyXG4vKiB6b29tIGFuZCBmYWRlIGFuaW1hdGlvbnMgKi9cclxuXHJcbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC10aWxlIHtcclxuXHR3aWxsLWNoYW5nZTogb3BhY2l0eTtcclxuXHR9XHJcbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC1wb3B1cCB7XHJcblx0b3BhY2l0eTogMDtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XHJcblx0ICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xyXG5cdCAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcclxuXHR9XHJcbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC1tYXAtcGFuZSAubGVhZmxldC1wb3B1cCB7XHJcblx0b3BhY2l0eTogMTtcclxuXHR9XHJcbi5sZWFmbGV0LXpvb20tYW5pbWF0ZWQge1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdCAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdCAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1hbmltIC5sZWFmbGV0LXpvb20tYW5pbWF0ZWQge1xyXG5cdHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcblx0fVxyXG4ubGVhZmxldC16b29tLWFuaW0gLmxlYWZsZXQtem9vbS1hbmltYXRlZCB7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0ICAgLW1vei10cmFuc2l0aW9uOiAgICAtbW96LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0ICAgICAgICB0cmFuc2l0aW9uOiAgICAgICAgIHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XHJcblx0fVxyXG4ubGVhZmxldC16b29tLWFuaW0gLmxlYWZsZXQtdGlsZSxcclxuLmxlYWZsZXQtcGFuLWFuaW0gLmxlYWZsZXQtdGlsZSB7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xyXG5cdCAgIC1tb3otdHJhbnNpdGlvbjogbm9uZTtcclxuXHQgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtem9vbS1hbmltIC5sZWFmbGV0LXpvb20taGlkZSB7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdH1cclxuXHJcblxyXG4vKiBjdXJzb3JzICovXHJcblxyXG4ubGVhZmxldC1pbnRlcmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuLmxlYWZsZXQtZ3JhYiB7XHJcblx0Y3Vyc29yOiAtd2Via2l0LWdyYWI7XHJcblx0Y3Vyc29yOiAgICAtbW96LWdyYWI7XHJcblx0Y3Vyc29yOiAgICAgICAgIGdyYWI7XHJcblx0fVxyXG4ubGVhZmxldC1jcm9zc2hhaXIsXHJcbi5sZWFmbGV0LWNyb3NzaGFpciAubGVhZmxldC1pbnRlcmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBjcm9zc2hhaXI7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1wYW5lLFxyXG4ubGVhZmxldC1jb250cm9sIHtcclxuXHRjdXJzb3I6IGF1dG87XHJcblx0fVxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1ncmFiLFxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1ncmFiIC5sZWFmbGV0LWludGVyYWN0aXZlLFxyXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1tYXJrZXItZHJhZ2dhYmxlIHtcclxuXHRjdXJzb3I6IG1vdmU7XHJcblx0Y3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xyXG5cdGN1cnNvcjogICAgLW1vei1ncmFiYmluZztcclxuXHRjdXJzb3I6ICAgICAgICAgZ3JhYmJpbmc7XHJcblx0fVxyXG5cclxuLyogbWFya2VyICYgb3ZlcmxheXMgaW50ZXJhY3Rpdml0eSAqL1xyXG4ubGVhZmxldC1tYXJrZXItaWNvbixcclxuLmxlYWZsZXQtbWFya2VyLXNoYWRvdyxcclxuLmxlYWZsZXQtaW1hZ2UtbGF5ZXIsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcgcGF0aCxcclxuLmxlYWZsZXQtdGlsZS1jb250YWluZXIge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LW1hcmtlci1pY29uLmxlYWZsZXQtaW50ZXJhY3RpdmUsXHJcbi5sZWFmbGV0LWltYWdlLWxheWVyLmxlYWZsZXQtaW50ZXJhY3RpdmUsXHJcbi5sZWFmbGV0LXBhbmUgPiBzdmcgcGF0aC5sZWFmbGV0LWludGVyYWN0aXZlIHtcclxuXHRwb2ludGVyLWV2ZW50czogdmlzaWJsZVBhaW50ZWQ7IC8qIElFIDktMTAgZG9lc24ndCBoYXZlIGF1dG8gKi9cclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHR9XHJcblxyXG4vKiB2aXN1YWwgdHdlYWtzICovXHJcblxyXG4ubGVhZmxldC1jb250YWluZXIge1xyXG5cdGJhY2tncm91bmQ6ICNkZGQ7XHJcblx0b3V0bGluZTogMDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciBhIHtcclxuXHRjb2xvcjogIzAwNzhBODtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciBhLmxlYWZsZXQtYWN0aXZlIHtcclxuXHRvdXRsaW5lOiAycHggc29saWQgb3JhbmdlO1xyXG5cdH1cclxuLmxlYWZsZXQtem9vbS1ib3gge1xyXG5cdGJvcmRlcjogMnB4IGRvdHRlZCAjMzhmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcclxuXHR9XHJcblxyXG5cclxuLyogZ2VuZXJhbCB0eXBvZ3JhcGh5ICovXHJcbi5sZWFmbGV0LWNvbnRhaW5lciB7XHJcblx0Zm9udDogMTJweC8xLjUgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG5cdH1cclxuXHJcblxyXG4vKiBnZW5lcmFsIHRvb2xiYXIgc3R5bGVzICovXHJcblxyXG4ubGVhZmxldC1iYXIge1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsMCwwLDAuNjUpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHR9XHJcbi5sZWFmbGV0LWJhciBhLFxyXG4ubGVhZmxldC1iYXIgYTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcclxuXHR3aWR0aDogMjZweDtcclxuXHRoZWlnaHQ6IDI2cHg7XHJcblx0bGluZS1oZWlnaHQ6IDI2cHg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRjb2xvcjogYmxhY2s7XHJcblx0fVxyXG4ubGVhZmxldC1iYXIgYSxcclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG4ubGVhZmxldC1iYXIgYTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuXHR9XHJcbi5sZWFmbGV0LWJhciBhOmZpcnN0LWNoaWxkIHtcclxuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcclxuXHR9XHJcbi5sZWFmbGV0LWJhciBhOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcclxuXHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcblx0fVxyXG4ubGVhZmxldC1iYXIgYS5sZWFmbGV0LWRpc2FibGVkIHtcclxuXHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuXHRjb2xvcjogI2JiYjtcclxuXHR9XHJcblxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIgYSB7XHJcblx0d2lkdGg6IDMwcHg7XHJcblx0aGVpZ2h0OiAzMHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIGE6Zmlyc3QtY2hpbGQge1xyXG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcclxuXHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xyXG5cdH1cclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIGE6bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4O1xyXG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XHJcblx0fVxyXG5cclxuLyogem9vbSBjb250cm9sICovXHJcblxyXG4ubGVhZmxldC1jb250cm9sLXpvb20taW4sXHJcbi5sZWFmbGV0LWNvbnRyb2wtem9vbS1vdXQge1xyXG5cdGZvbnQ6IGJvbGQgMThweCAnTHVjaWRhIENvbnNvbGUnLCBNb25hY28sIG1vbm9zcGFjZTtcclxuXHR0ZXh0LWluZGVudDogMXB4O1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtem9vbS1pbiwgLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC16b29tLW91dCAge1xyXG5cdGZvbnQtc2l6ZTogMjJweDtcclxuXHR9XHJcblxyXG5cclxuLyogbGF5ZXJzIGNvbnRyb2wgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzIHtcclxuXHRib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjQpO1xyXG5cdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9sYXllcnMucG5nKTtcclxuXHR3aWR0aDogMzZweDtcclxuXHRoZWlnaHQ6IDM2cHg7XHJcblx0fVxyXG4ubGVhZmxldC1yZXRpbmEgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9sYXllcnMtMngucG5nKTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjZweDtcclxuXHR9XHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXRvZ2dsZSB7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0aGVpZ2h0OiA0NHB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtbGlzdCxcclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQgLmxlYWZsZXQtY29udHJvbC1sYXllcnMtbGlzdCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQge1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4IDZweCA2cHg7XHJcblx0Y29sb3I6ICMzMzM7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNjcm9sbGJhciB7XHJcblx0b3ZlcmZsb3cteTogc2Nyb2xsO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWxheWVycy1zZWxlY3RvciB7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR0b3A6IDFweDtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzIGxhYmVsIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNlcGFyYXRvciB7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xyXG5cdG1hcmdpbjogNXB4IC0xMHB4IDVweCAtNnB4O1xyXG5cdH1cclxuXHJcbi8qIERlZmF1bHQgaWNvbiBVUkxzICovXHJcbi5sZWFmbGV0LWRlZmF1bHQtaWNvbi1wYXRoIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9tYXJrZXItaWNvbi5wbmcpO1xyXG5cdH1cclxuXHJcblxyXG4vKiBhdHRyaWJ1dGlvbiBhbmQgc2NhbGUgY29udHJvbHMgKi9cclxuXHJcbi5sZWFmbGV0LWNvbnRhaW5lciAubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uIHtcclxuXHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcclxuXHRtYXJnaW46IDA7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uLFxyXG4ubGVhZmxldC1jb250cm9sLXNjYWxlLWxpbmUge1xyXG5cdHBhZGRpbmc6IDAgNXB4O1xyXG5cdGNvbG9yOiAjMzMzO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbiBhIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uIGE6aG92ZXIge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24sXHJcbi5sZWFmbGV0LWNvbnRhaW5lciAubGVhZmxldC1jb250cm9sLXNjYWxlIHtcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0fVxyXG4ubGVhZmxldC1sZWZ0IC5sZWFmbGV0LWNvbnRyb2wtc2NhbGUge1xyXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0fVxyXG4ubGVhZmxldC1ib3R0b20gLmxlYWZsZXQtY29udHJvbC1zY2FsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1zY2FsZS1saW5lIHtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjNzc3O1xyXG5cdGJvcmRlci10b3A6IG5vbmU7XHJcblx0bGluZS1oZWlnaHQ6IDEuMTtcclxuXHRwYWRkaW5nOiAycHggNXB4IDFweDtcclxuXHRmb250LXNpemU6IDExcHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG5cdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG5cdH1cclxuLmxlYWZsZXQtY29udHJvbC1zY2FsZS1saW5lOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuXHRib3JkZXItdG9wOiAycHggc29saWQgIzc3NztcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdG1hcmdpbi10b3A6IC0ycHg7XHJcblx0fVxyXG4ubGVhZmxldC1jb250cm9sLXNjYWxlLWxpbmU6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM3Nzc7XHJcblx0fVxyXG5cclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbixcclxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC1sYXllcnMsXHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWJhciB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHR9XHJcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLFxyXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIge1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMCwwLDAsMC4yKTtcclxuXHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cdH1cclxuXHJcblxyXG4vKiBwb3B1cCAqL1xyXG5cclxuLmxlYWZsZXQtcG9wdXAge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR9XHJcbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0cGFkZGluZzogMXB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogMTJweDtcclxuXHR9XHJcbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQge1xyXG5cdG1hcmdpbjogMTNweCAxOXB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC1jb250ZW50IHAge1xyXG5cdG1hcmdpbjogMThweCAwO1xyXG5cdH1cclxuLmxlYWZsZXQtcG9wdXAtdGlwLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDQwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0fVxyXG4ubGVhZmxldC1wb3B1cC10aXAge1xyXG5cdHdpZHRoOiAxN3B4O1xyXG5cdGhlaWdodDogMTdweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblxyXG5cdG1hcmdpbjogLTEwcHggYXV0byAwO1xyXG5cclxuXHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHQgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHQgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHQgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHR9XHJcbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlcixcclxuLmxlYWZsZXQtcG9wdXAtdGlwIHtcclxuXHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRjb2xvcjogIzMzMztcclxuXHRib3gtc2hhZG93OiAwIDNweCAxNHB4IHJnYmEoMCwwLDAsMC40KTtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRhaW5lciBhLmxlYWZsZXQtcG9wdXAtY2xvc2UtYnV0dG9uIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHBhZGRpbmc6IDRweCA0cHggMCAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0d2lkdGg6IDE4cHg7XHJcblx0aGVpZ2h0OiAxNHB4O1xyXG5cdGZvbnQ6IDE2cHgvMTRweCBUYWhvbWEsIFZlcmRhbmEsIHNhbnMtc2VyaWY7XHJcblx0Y29sb3I6ICNjM2MzYzM7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuLmxlYWZsZXQtY29udGFpbmVyIGEubGVhZmxldC1wb3B1cC1jbG9zZS1idXR0b246aG92ZXIge1xyXG5cdGNvbG9yOiAjOTk5O1xyXG5cdH1cclxuLmxlYWZsZXQtcG9wdXAtc2Nyb2xsZWQge1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0em9vbTogMTtcclxuXHR9XHJcbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLXRpcCB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblxyXG5cdC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9MC43MDcxMDY3OCwgTTEyPTAuNzA3MTA2NzgsIE0yMT0tMC43MDcxMDY3OCwgTTIyPTAuNzA3MTA2NzgpXCI7XHJcblx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0wLjcwNzEwNjc4LCBNMTI9MC43MDcxMDY3OCwgTTIxPS0wLjcwNzEwNjc4LCBNMjI9MC43MDcxMDY3OCk7XHJcblx0fVxyXG4ubGVhZmxldC1vbGRpZSAubGVhZmxldC1wb3B1cC10aXAtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiAtMXB4O1xyXG5cdH1cclxuXHJcbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LWNvbnRyb2wtem9vbSxcclxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtY29udHJvbC1sYXllcnMsXHJcbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlcixcclxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtcG9wdXAtdGlwIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xyXG5cdH1cclxuXHJcblxyXG4vKiBkaXYgaWNvbiAqL1xyXG5cclxuLmxlYWZsZXQtZGl2LWljb24ge1xyXG5cdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgIzY2NjtcclxuXHR9XHJcblxyXG5cclxuLyogVG9vbHRpcCAqL1xyXG4vKiBCYXNlIHN0eWxlcyBmb3IgdGhlIGVsZW1lbnQgdGhhdCBoYXMgYSB0b29sdGlwICovXHJcbi5sZWFmbGV0LXRvb2x0aXAge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRwYWRkaW5nOiA2cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRjb2xvcjogIzIyMjtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwwLDAsMC40KTtcclxuXHR9XHJcbi5sZWFmbGV0LXRvb2x0aXAubGVhZmxldC1jbGlja2FibGUge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHR9XHJcbi5sZWFmbGV0LXRvb2x0aXAtdG9wOmJlZm9yZSxcclxuLmxlYWZsZXQtdG9vbHRpcC1ib3R0b206YmVmb3JlLFxyXG4ubGVhZmxldC10b29sdGlwLWxlZnQ6YmVmb3JlLFxyXG4ubGVhZmxldC10b29sdGlwLXJpZ2h0OmJlZm9yZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdGJvcmRlcjogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0fVxyXG5cclxuLyogRGlyZWN0aW9ucyAqL1xyXG5cclxuLmxlYWZsZXQtdG9vbHRpcC1ib3R0b20ge1xyXG5cdG1hcmdpbi10b3A6IDZweDtcclxufVxyXG4ubGVhZmxldC10b29sdGlwLXRvcCB7XHJcblx0bWFyZ2luLXRvcDogLTZweDtcclxufVxyXG4ubGVhZmxldC10b29sdGlwLWJvdHRvbTpiZWZvcmUsXHJcbi5sZWFmbGV0LXRvb2x0aXAtdG9wOmJlZm9yZSB7XHJcblx0bGVmdDogNTAlO1xyXG5cdG1hcmdpbi1sZWZ0OiAtNnB4O1xyXG5cdH1cclxuLmxlYWZsZXQtdG9vbHRpcC10b3A6YmVmb3JlIHtcclxuXHRib3R0b206IDA7XHJcblx0bWFyZ2luLWJvdHRvbTogLTEycHg7XHJcblx0Ym9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcclxuXHR9XHJcbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tOmJlZm9yZSB7XHJcblx0dG9wOiAwO1xyXG5cdG1hcmdpbi10b3A6IC0xMnB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAtNnB4O1xyXG5cdGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XHJcblx0fVxyXG4ubGVhZmxldC10b29sdGlwLWxlZnQge1xyXG5cdG1hcmdpbi1sZWZ0OiAtNnB4O1xyXG59XHJcbi5sZWFmbGV0LXRvb2x0aXAtcmlnaHQge1xyXG5cdG1hcmdpbi1sZWZ0OiA2cHg7XHJcbn1cclxuLmxlYWZsZXQtdG9vbHRpcC1sZWZ0OmJlZm9yZSxcclxuLmxlYWZsZXQtdG9vbHRpcC1yaWdodDpiZWZvcmUge1xyXG5cdHRvcDogNTAlO1xyXG5cdG1hcmdpbi10b3A6IC02cHg7XHJcblx0fVxyXG4ubGVhZmxldC10b29sdGlwLWxlZnQ6YmVmb3JlIHtcclxuXHRyaWdodDogMDtcclxuXHRtYXJnaW4tcmlnaHQ6IC0xMnB4O1xyXG5cdGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmO1xyXG5cdH1cclxuLmxlYWZsZXQtdG9vbHRpcC1yaWdodDpiZWZvcmUge1xyXG5cdGxlZnQ6IDA7XHJcblx0bWFyZ2luLWxlZnQ6IC0xMnB4O1xyXG5cdGJvcmRlci1yaWdodC1jb2xvcjogI2ZmZjtcclxuXHR9XHJcbi5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24ge1xyXG5cdGE6Zmlyc3Qtb2YtdHlwZSwgc3BhbiB7XHJcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59IiwiQC13ZWJraXQta2V5ZnJhbWVzIGxlYWZsZXQtZ2VzdHVyZXMtZmFkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgbGVhZmxldC1nZXN0dXJlcy1mYWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLmxlYWZsZXQtY29udGFpbmVyOmFmdGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGxlYWZsZXQtZ2VzdHVyZXMtZmFkZWluIDAuOHMgYmFja3dhcmRzO1xuICBhbmltYXRpb246IGxlYWZsZXQtZ2VzdHVyZXMtZmFkZWluIDAuOHMgYmFja3dhcmRzO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIycHg7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB6LWluZGV4OiA0NjE7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5sZWFmbGV0LWdlc3R1cmUtaGFuZGxpbmctdG91Y2gtd2FybmluZzphZnRlcixcbi5sZWFmbGV0LWdlc3R1cmUtaGFuZGxpbmctc2Nyb2xsLXdhcm5pbmc6YWZ0ZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbjogbGVhZmxldC1nZXN0dXJlcy1mYWRlaW4gMC44cyBmb3J3YXJkcztcbiAgYW5pbWF0aW9uOiBsZWFmbGV0LWdlc3R1cmVzLWZhZGVpbiAwLjhzIGZvcndhcmRzOyB9XG5cbi5sZWFmbGV0LWdlc3R1cmUtaGFuZGxpbmctdG91Y2gtd2FybmluZzphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1nZXN0dXJlLWhhbmRsaW5nLXRvdWNoLWNvbnRlbnQpOyB9XG5cbi5sZWFmbGV0LWdlc3R1cmUtaGFuZGxpbmctc2Nyb2xsLXdhcm5pbmc6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtZ2VzdHVyZS1oYW5kbGluZy1zY3JvbGwtY29udGVudCk7IH1cbiIsIi8qXG4gKiBUaGUgTUlUIExpY2Vuc2VcbiAqIENvcHlyaWdodCAoYykgMjAxMiBNYXRpYXMgTWVubyA8bUB0aWFzLm1lPlxuICovXG5cbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgICBAY29udGVudDsgXG4gICAgfVxuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfSBcbn1cblxuQG1peGluIHByZWZpeCgkbWFwLCAkdmVuZG9yczogd2Via2l0IG1veiBtcyBvKSB7XG4gICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICAgQGlmICR2ZW5kb3JzIHtcbiAgICAgICAgICAgIEBlYWNoICR2ZW5kb3IgaW4gJHZlbmRvcnMge1xuICAgICAgICAgICAgICAgICN7XCItXCIgKyAkdmVuZG9yICsgXCItXCIgKyAkcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBEdW1wIHJlZ3VsYXIgcHJvcGVydHkgYW55d2F5XG4gICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMocGFzc2luZy10aHJvdWdoKSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KSkpO1xuICAgIH1cblxuICAgIDMwJSwgNzAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSkpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCkpKTtcbiAgICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhzbGlkZS1pbikge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCkpKTtcbiAgICB9XG5cbiAgICAzMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpKSk7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMocHVsc2UpIHtcbiAgICAwJSB7IFxuICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zZm9ybTogc2NhbGUoMSkpKTtcbiAgICB9XG4gICAgMTAlIHsgXG4gICAgICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNmb3JtOiBzY2FsZSgxLjEpKSk7IFxuICAgIH1cbiAgICAyMCUgeyBcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2Zvcm06IHNjYWxlKDEpKSk7IFxuICAgIH1cbn1cblxuLmRyb3B6b25lLCAuZHJvcHpvbmUgKiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmRyb3B6b25lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgICBib3JkZXI6IDJweCBkb3R0ZWQgJGJvcmRlci1jb2xvcjtcblx0YmFja2dyb3VuZDogcmdiYSgkbGlnaHRlci1ibGFjaywgMC4wMik7XG4gICAgcGFkZGluZzogNjBweDtcblxuICAgICRpbWFnZS1zaXplOiAzMHB4O1xuICAgICRpbWFnZS1ib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgJi5kei1jbGlja2FibGUge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZHotbWVzc2FnZSB7XG4gICAgICAgICAgICAmLCAqIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmR6LXN0YXJ0ZWQgLmR6LW1lc3NhZ2Uge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkZGl2aWRlZGxpbmUtY29sb3I7XG4gICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kei1kcmFnLWhvdmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcblxuICAgICAgICAuZHotbWVzc2FnZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHotbWVzc2FnZSB7XG4gICAgICAgIG1heC13aWR0aDogODFyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLmR6LWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIG91dGxpbmU6IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICBoMywgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lZGl1bS13ZWlnaHQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHotcHJldmlldyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmZsZXgge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAvLyBNYWtpbmcgc3VyZSB0aGF0IGFsd2F5cyB0aGUgaG92ZXJlZCBwcmV2aWV3IGVsZW1lbnQgaXMgb24gdG9wXG4gICAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuZHotZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZHotZmlsZS1wcmV2aWV3IHtcbiAgICAgICAgICAgIC5kei1pbWFnZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGltYWdlLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGRpdmlkZWRsaW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUsICNkZGQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZHotZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZHotaW1hZ2UtcHJldmlldyB7XG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIC5kei1pbWFnZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGltYWdlLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGRpdmlkZWRsaW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUsICNkZGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuZHotZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kei1yZW1vdmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciAuZHotZGV0YWlscyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcblxuICAgICAgICAgICAgLmR6LWltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kei1maWxlbmFtZSBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kei1pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAkaW1hZ2Utc2l6ZTtcbiAgICAgICAgICAgIGhlaWdodDogJGltYWdlLXNpemU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkaW1hZ2UtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kei1zdWNjZXNzIC5kei1kZXRhaWxzLCAmLmR6LWVycm9yIC5kei1kZXRhaWxzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZHotc3VjY2Vzcy1tYXJrLCAuZHotZXJyb3ItbWFyayB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiA1MDA7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmR6LWVycm9yLW1hcmsgLmVycm9yLXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICNDMDA7XG4gICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAmLmR6LXByb2Nlc3NpbmcgLmR6LXByb2dyZXNzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcikpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kei1jb21wbGV0ZSAuZHotcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCgodHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2UtaW4pKTtcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIHByZWZpeCgodHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UtaW4pKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KC5kei1wcm9jZXNzaW5nKSAuZHotcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KChhbmltYXRpb246IHB1bHNlIDZzIGVhc2UgaW5maW5pdGUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kei1wcm9ncmVzcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgIC8vIEZpeCBmb3IgY2hyb21lIGJ1ZzogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTE1NzIxOFxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0Z3JleS1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICAgICAgICAgIC5kei11cGxvYWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzM1ODkzODtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXgoKHRyYW5zaXRpb246IHdpZHRoIDUwMG1zIGVhc2UtaW4tb3V0KSk7XG4gICAgICAgICAgICAgICAgLy8gQGluY2x1ZGUgcHJlZml4KCh0cmFuc2l0aW9uOiB3aWR0aCAzMDBtcyBlYXNlLWluLW91dCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kei1lcnJvciAuZHotZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZHotZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiA1MDA7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KCh0cmFuc2l0aW9uOm9wYWNpdHkgMC4zcyBlYXNlLWluKSk7XG5cbiAgICAgICAgICAgIC5lcnJvci10ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0MwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuZHotcHJldmlldyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuZHotcHJldmlldyB7XG4gICAgICAgICAgICAmID4gLmZsZXgge1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmR6LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmR6LXByb2dyZXNzIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmR6LWNvbXBsZXRlIC5kei1lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMzBweDtcbiAgICAgICAgbWluLWhlaWdodDogMTcwcHg7XG5cbiAgICAgICAgLmR6LW1lc3NhZ2UgaDMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYnV0dG9uLCBidXR0b24sIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8vIG91dGxpbmU6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5nO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgIC8vIHdvcmQtd3JhcDogbm9uZTtcbiAgICAvLyB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIFxuICAgICYgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHBhZGRpbmc6IDAuN3JlbSAxLjVyZW07XG4gICAgfVxuXG4gICAgJi5taWRkbGUge1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMS41cmVtO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgICAvLyBwYWRkaW5nOiAxLjVyZW0gNC44N3JlbTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDRyZW07XG4gICAgfVxuICAgIFxuICAgICYueGxhcmdlIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSA0Ljg3cmVtO1xuICAgIH1cblxuICAgICYubm8tcm91bmQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgICYuY3RhLmJnLXllbGxvdyB7XG4gICAgICAgIG1heC13aWR0aDogMzJyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmxpbmstYnV0dG9uIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiA1cmVtO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpVFRFZ01XdzFJRFV0TlNBMUlpQnpkSEp2YTJVOUlpTm1abVlpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjhyZW0gMS4ycmVtO1xuICAgICAgICB3aWR0aDogMC44cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgIH1cbn1cblxuLnNlYXJjaC1idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAvLyBvdXRsaW5lOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDRweCAwcHggMHB4O1xuICAgIGJhY2tncm91bmQ6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgIFxuICAgICYgPiBzdmcge1xuICAgICAgICBtYXJnaW46IDAgM3JlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxufVxuXG5cbi5pY29uLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAuYnV0dG9uO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG5cbiAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgfVxuXG4gICAgJi5jdGEuYmcteWVsbG93IHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbi5vdXRsaW5lLWJ1dHRvbiB7XG4gICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG5cbiAgICAmLmRpc3J1cHRpb24ge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1icmlnaHQtcGluaztcbiAgICB9XG4gICAgXG4gICAgJi5jaGFuZ2VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtbGlnaHRlci1wdXJwbGU7XG4gICAgfVxufVxuXG4vLyAudW5kZXJsaW5lX2J1dHRvbiB7XG4vLyAgICAgYXBwZWFyYW5jZTogbm9uZTtcbi8vICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4vLyAgICAgY3Vyc29yOiBwb2ludGVyO1xuLy8gICAgIG91dGxpbmU6IG5vbmU7XG4vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LWhlYWRpbmc7XG4vLyAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4vLyAgICAgZm9udC1zaXplOiAxLjJyZW07XG4vLyAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbi8vICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4vLyAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4vLyAgICAgd29yZC13cmFwOiBub25lO1xuLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLyAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4vLyAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbi8vICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gICAgIGJvcmRlcjogbm9uZTtcbi8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgICAgcGFkZGluZzogMC44cmVtIDA7XG5cbi8vICAgICAmOjphZnRlciB7XG4vLyAgICAgICAgIGNvbnRlbnQ6ICcnO1xuLy8gICAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlOeUlnYUdWcFoyaDBQU0l4TUNJZ2RtbGxkMEp2ZUQwaU1DQXdJRGNnTVRBaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStDanh3WVhSb0lHUTlJazB4SURsTU5TQTFUREVnTUM0NU9UazVPVGtpSUhOMGNtOXJaVDBpSXpJek1qTXlNeUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrQ2p3dmMzWm5QZ289Jyk7XG4vLyAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbi8vICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbi8vICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjdyZW0gMXJlbTtcbi8vICAgICAgICAgd2lkdGg6IDAuN3JlbTtcbi8vICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuLy8gICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuLy8gICAgIH1cbiAgICBcbi8vICAgICAmOjpiZWZvcmUge1xuLy8gICAgICAgICBjb250ZW50OiAnJztcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICBsZWZ0OiAwO1xuLy8gICAgICAgICBib3R0b206IDA7XG4vLyAgICAgICAgIGhlaWdodDogMnB4O1xuLy8gICAgICAgICB3aWR0aDogMTAwJTtcbi8vICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWNvbG9yLTE7XG4vLyAgICAgfVxuLy8gfVxuXG4vLyAuY2lyY2xlLWNvbnRhaW5lciB7XG4vLyAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuLy8gICAgIGRpc3BsYXk6IGZsZXg7XG4vLyAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbi8vICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuLy8gfVxuXG5cbi50cmFuc2Zlci1tb2RlcyB7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMi40cmVtIDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0LCBtYXJnaW4gMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gM3JlbTtcblxuICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGxpIGEuYnV0dG9uIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmRhdGUtaWNvbi1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5kYXRlLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDQuNHJlbTtcbiAgICAgICAgaGVpZ2h0OiA0LjRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgLmRheS10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAubW9udGgtdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNHB4O1xuICAgICAgICBsZWZ0OiAtNHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkeWVsbG93O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxufVxuXG4uZXhjbGFtYXRpb24taWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQWlJR2hsYVdkb2REMGlNakFpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHTnNhWEF0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0lERTRZelF1TkRFNE15QXdJRGd0TXk0MU9ERTNJRGd0T0NBd0xUUXVOREU0TWpndE15NDFPREUzTFRndE9DMDRMVFF1TkRFNE1qZ2dNQzA0SURNdU5UZ3hOekl0T0NBNElEQWdOQzQwTVRneklETXVOVGd4TnpJZ09DQTRJRGg2YlRBZ01tTTFMalV5TWpnZ01DQXhNQzAwTGpRM056SWdNVEF0TVRBZ01DMDFMalV5TWpnMUxUUXVORGMzTWkweE1DMHhNQzB4TUVNMExqUTNOekUxSURBZ01DQTBMalEzTnpFMUlEQWdNVEJqTUNBMUxqVXlNamdnTkM0ME56Y3hOU0F4TUNBeE1DQXhNSG9pSUdacGJHdzlJaU5tWm1ZaUx6NDhjR0YwYUNCa1BTSk5NVEF1T1RBNU1TQTBMamcwTXpBeWRqUXVNREEwWXpBZ0xqUXlORFkyTFM0d01qTXpMamcwTkRZMkxTNHdOeUF4TGpJMU9UazRMUzR3TkRJdU5ERTFOQzB1TVRBeU55NDRORGN0TGpFNE1pQXhMakk1TlVnNUxqTTFOVEV5WXkwdU1EYzVNelF0TGpRME9DMHVNVFF5TXpRdExqZzNPVFl0TGpFNE9TMHhMakk1TlMwdU1EUXlMUzQwTVRVek1pMHVNRFl6TFM0NE16VXpNaTB1TURZekxURXVNalU1T1RoMkxUUXVNREEwYURFdU9EQTFPVGg2VFRndU9EUTBNVElnTVRNdU9UZzFZekF0TGpFMU5DNHdNamd0TGpJNU9EWXVNRGcwTFM0ME16UXVNRFl3TmpZdExqRTBMakUwTWpNekxTNHlOVGt1TWpRMUxTNHpOVGN1TVRBeU5qWXRMakV3TWpZdU1qSXhOall0TGpFNE1pNHpOVGN0TGpJek9DNHhOQzB1TURZd05pNHlPVEUyTmkwdU1Ea3hMalExTlMwdU1Ea3hMakUxT0RZNElEQWdMak13TlRZNExqQXpNRFF1TkRRd09UZ3VNRGt4TGpFMExqQTFOaTR5TmpFekxqRXpOVFF1TXpZMExqSXpPQzR4TURJM0xqQTVPQzR4T0RRekxqSXhOeTR5TkRVdU16VTNMakEyTURjdU1UTTFOQzR3T1RFdU1qZ3VNRGt4TGpRek5DQXdJQzR4TlRnM0xTNHdNekF6TGpNd05UY3RMakE1TVM0ME5ERXRMakEyTURjdU1UTTFOQzB1TVRReU15NHlOVFEwTFM0eU5EVXVNelUzTFM0eE1ESTNMakE1T0MwdU1qSTBMakUzTlMwdU16WTBMakl6TVMwdU1UTTFNeTR3TlRZdExqSTRNak11TURnMExTNDBOREE1T0M0d09EUXRMakUyTXpNMElEQXRMak14TlMwdU1ESTRMUzQwTlRVdExqQTROQzB1TVRNMU16UXRMakExTmkwdU1qVTBNelF0TGpFek15MHVNelUzTFM0eU16RXRMakV3TWpZM0xTNHhNREkyTFM0eE9EUXpOQzB1TWpJeE5pMHVNalExTFM0ek5UY3RMakExTmkwdU1UTTFNeTB1TURnMExTNHlPREl6TFM0d09EUXRMalEwTVhvaUlHWnBiR3c5SWlObVptWWlMejQ4TDNOMlp6ND0nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDJyZW0gMnJlbTtcbiAgICBmb250LXNpemU6IDA7XG59XG5cbi5pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGZvbnQtc2l6ZTogMDtcbn1cblxuLmV4Y2xhbWF0aW9uLWljb24tcmVkIHtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakFpSUdobGFXZG9kRDBpTWpBaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlJR05zYVhBdGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRURXdJREU0WVRnZ09DQXdJREV3TUMweE5pQTRJRGdnTUNBd01EQWdNVFo2YlRBZ01tTTFMalV5TXlBd0lERXdMVFF1TkRjM0lERXdMVEV3VXpFMUxqVXlNeUF3SURFd0lEQWdNQ0EwTGpRM055QXdJREV3Y3pRdU5EYzNJREV3SURFd0lERXdlaUlnWm1sc2JEMGlJMFF6TWpVek15SXZQanh3WVhSb0lHUTlJazB4TUM0NU1Ea2dOQzQ0TkROMk5DNHdNRFJqTUNBdU5ESTBMUzR3TWpRdU9EUTBMUzR3TnlBeExqSTJZVEUzTGpZZ01UY3VOaUF3SURBeExTNHhPRElnTVM0eU9UVklPUzR6TlRWakxTNHdPQzB1TkRRNExTNHhORE10TGpnNExTNHhPUzB4TGpJNU5XRXhNaTQxTVRjZ01USXVOVEUzSURBZ01ERXRMakEyTWkweExqSTJWalF1T0RRemFERXVPREEyZW0wdE1pNHdOalVnT1M0eE5ESmhNUzR3T0NBeExqQTRJREFnTURFdU16STVMUzQzT1RGakxqRXdNaTB1TVRBekxqSXlNUzB1TVRneUxqTTFOeTB1TWpNNExqRTBMUzR3Tmk0eU9URXRMakE1TVM0ME5UVXRMakE1TVM0eE5UZ2dNQ0F1TXpBMUxqQXpMalEwTGpBNUxqRTBMakExTnk0eU5qSXVNVE0yTGpNMk5TNHlNemt1TVRBeUxqQTVPQzR4T0RRdU1qRTNMakkwTlM0ek5UY3VNRFl1TVRNMUxqQTVMakk0TGpBNUxqUXpOQ0F3SUM0eE5UZ3RMakF6TGpNd05TMHVNRGt1TkRRdExqQTJMakV6TmkwdU1UUXpMakkxTlMwdU1qUTFMak0xT0dFeExqRXlOeUF4TGpFeU55QXdJREF4TFM0ek5qUXVNak1nTVM0eE5ETWdNUzR4TkRNZ01DQXdNUzB1TkRReExqQTROU0F4TGpFME55QXhMakUwTnlBd0lEQXhMUzQ0TVRJdExqTXhOU0F4TGpFNE55QXhMakU0TnlBd0lEQXhMUzR5TkRVdExqTTFOeUF4TGpFME15QXhMakUwTXlBd0lEQXhMUzR3T0RRdExqUTBNWG9pSUdacGJHdzlJaU5FTXpJMU16TWlMejQ4TDNOMlp6ND0nKTtcbn1cblxuLmJ1cy1pY29uLXdoaXRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDIuN3JlbTtcbiAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qY2lJR2hsYVdkb2REMGlNamdpSUhacFpYZENiM2c5SWpBZ01DQXlOeUF5T0NJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NalF1T1RFNU5DQTJMamcwTmpVM1l5MHVNak0wTWkweUxqSXpOVEE0TFM0Mk1EY3pMVE11T1RjMU16SXRNUzR4T1RjMUxUUXVOalU1TXpRdE1pNDBNek0wTFRJdU9ERXlORGc0TFRFNUxqUTNPVE0xTFRNdU1ERTRNekV0TWpFdU5ERTBOek1nTUMwdU5EY3pORE11TnpNNU5EZ3RMamd3TlRRMklESXVORGN6TlRZdE1TNHdNamd5T0NBMExqWTJNekEwUXk0MU5UazVNRGNnTmk0NU16STROQ0F3SURjdU5USXpPREVnTUNBNExqSTBOekkzZGpJdU56TTNPVE5qTUNBdU5qQTRPQzR6T1RVeE5UVWdNUzR4TWpJeExqazBOamcxTmlBeExqTXlNalJETGpneE5qRTVJREUyTGpZeUxqa3lNakl6T0NBeU1TNHhNVGt4SURFdU1URTNPVElnTWpNdU16VTJOMk13SURFdU56STNNeUF4TGpFNE9EWXlJREV1TkRRd055QXhMakU0T0RZeUlERXVORFF3TjJneExqRXhOREV6ZGpFdU9EWTBPR013SUM0M016azBMamM0TURnMUlERXVNek0zT0NBeExqYzBNamcxSURFdU16TTNPQzQ1TmpNeU55QXdJREV1TnpRME1URXRMalU1T0RRZ01TNDNORFF4TVMweExqTXpOemgyTFRFdU9EWTBPRWd4T1M0NE5qazFkakV1T0RZME9HTXdJQzQzTXprMExqYzRNRElnTVM0ek16YzRJREV1TnpRek5DQXhMak16TnpndU9UWXlJREFnTVM0M05ESTVMUzQxT1RnMElERXVOelF5T1MweExqTXpOemgyTFRFdU9EWTBPR2d1TXpZMk1YTXhMak01T0RndU1UZzNOQ0F4TGpRNE9EVXRMall5TmpGak1DMHlMakl6TVRNdU1UUXpPUzAzTGpFM05qWXVNREkxTWkweE1TNDRORFEyTGpVNE5qUXRMakUzT1RNZ01TNHdNVFEwTFM0M01EWTRJREV1TURFME5DMHhMak0wTVRWV09DNHlORGN5TjJNdU1EQXdOaTB1TnpRd056SXRMalU0TmpRdE1TNHpOREUxTkMweExqTXpNRFl0TVM0ME1EQTNlazAyTGpRM01ERTRJREl1TlRnNE5FZ3hPUzQxTlRnNWRqRXVPVE16TVRKSU5pNDBOekF4T0ZZeUxqVTRPRFI2YlM0eE9EWTROU0F5TUM0d01EY3lZeTB4TGpBeU56WTJJREF0TVM0NE5qQXlOaTB1T0RFek5DMHhMamcyTURJMkxURXVPREUyTmlBd0xURXVNREF5Tmk0NE16STJMVEV1T0RFMU5DQXhMamcyTURJMkxURXVPREUxTkNBeExqQXlOelkxSURBZ01TNDROakE0T0M0NE1USTRJREV1T0RZd09EZ2dNUzQ0TVRVMElEQWdNUzR3TURNeUxTNDRNekkySURFdU9ERTJOaTB4TGpnMk1EZzRJREV1T0RFMk5ucHRNVEl1T0RNeE56Y2dNR010TVM0d01qY2dNQzB4TGpnMk1UVXRMamd4TXpRdE1TNDROakUxTFRFdU9ERTJOaUF3TFRFdU1EQXlOaTQ0TXpNNUxURXVPREUxTkNBeExqZzJNVFV0TVM0NE1UVTBJREV1TURJM055QXdJREV1T0RZd015NDRNVEk0SURFdU9EWXdNeUF4TGpneE5UUXVNREF3TmlBeExqQXdNekl0TGpnek1qWWdNUzQ0TVRZMkxURXVPRFl3TXlBeExqZ3hOalo2YlRJdU16WTFNeTAzTGprME9UUklOQzR4TnpWV05TNDFPVE0zTjJneE55NDJOemt4ZGprdU1EVXlORE42SWlCbWFXeHNQU0lqWm1abUlpOCtQQzl6ZG1jKycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMi4ycmVtO1xuICAgIH1cbn1cblxuLmJ1cy1pY29uLWRhcmsge1xuICAgIHdpZHRoOiAyLjdyZW07XG4gICAgaGVpZ2h0OiAyLjhyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNamNpSUdobGFXZG9kRDBpTWpnaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TnlBeU9DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTWpRdU9URTVOQ0EyTGpnME5qVTNZeTB1TWpNME1pMHlMakl6TlRBNExTNDJNRGN6TFRNdU9UYzFNekl0TVM0eE9UYzFMVFF1TmpVNU16UXRNaTQwTXpNMExUSXVPREV5TkRnNExURTVMalEzT1RNMUxUTXVNREU0TXpFdE1qRXVOREUwTnpNZ01DMHVORGN6TkRNdU56TTVORGd0TGpnd05UUTJJREl1TkRjek5UWXRNUzR3TWpneU9DQTBMalkyTXpBMFF5NDFOVGs1TURjZ05pNDVNekk0TkNBd0lEY3VOVEl6T0RFZ01DQTRMakkwTnpJM2RqSXVOek0zT1ROak1DQXVOakE0T0M0ek9UVXhOVFVnTVM0eE1qSXhMamswTmpnMU5pQXhMak15TWpSRExqZ3hOakU1SURFMkxqWXlMamt5TWpJek9DQXlNUzR4TVRreElERXVNVEUzT1RJZ01qTXVNelUyTjJNd0lERXVOekkzTXlBeExqRTRPRFl5SURFdU5EUXdOeUF4TGpFNE9EWXlJREV1TkRRd04yZ3hMakV4TkRFemRqRXVPRFkwT0dNd0lDNDNNemswTGpjNE1EZzFJREV1TXpNM09DQXhMamMwTWpnMUlERXVNek0zT0M0NU5qTXlOeUF3SURFdU56UTBNVEV0TGpVNU9EUWdNUzQzTkRReE1TMHhMak16TnpoMkxURXVPRFkwT0VneE9TNDROamsxZGpFdU9EWTBPR013SUM0M016azBMamM0TURJZ01TNHpNemM0SURFdU56UXpOQ0F4TGpNek56Z3VPVFl5SURBZ01TNDNOREk1TFM0MU9UZzBJREV1TnpReU9TMHhMak16TnpoMkxURXVPRFkwT0dndU16WTJNWE14TGpNNU9EZ3VNVGczTkNBeExqUTRPRFV0TGpZeU5qRmpNQzB5TGpJek1UTXVNVFF6T1MwM0xqRTNOall1TURJMU1pMHhNUzQ0TkRRMkxqVTROalF0TGpFM09UTWdNUzR3TVRRMExTNDNNRFk0SURFdU1ERTBOQzB4TGpNME1UVldPQzR5TkRjeU4yTXVNREF3TmkwdU56UXdOekl0TGpVNE5qUXRNUzR6TkRFMU5DMHhMak16TURZdE1TNDBNREEzZWswMkxqUTNNREU0SURJdU5UZzRORWd4T1M0MU5UZzVkakV1T1RNek1USklOaTQwTnpBeE9GWXlMalU0T0RSNmJTNHhPRFk0TlNBeU1DNHdNRGN5WXkweExqQXlOelkySURBdE1TNDROakF5TmkwdU9ERXpOQzB4TGpnMk1ESTJMVEV1T0RFMk5pQXdMVEV1TURBeU5pNDRNekkyTFRFdU9ERTFOQ0F4TGpnMk1ESTJMVEV1T0RFMU5DQXhMakF5TnpZMUlEQWdNUzQ0TmpBNE9DNDRNVEk0SURFdU9EWXdPRGdnTVM0NE1UVTBJREFnTVM0d01ETXlMUzQ0TXpJMklERXVPREUyTmkweExqZzJNRGc0SURFdU9ERTJObnB0TVRJdU9ETXhOemNnTUdNdE1TNHdNamNnTUMweExqZzJNVFV0TGpneE16UXRNUzQ0TmpFMUxURXVPREUyTmlBd0xURXVNREF5Tmk0NE16TTVMVEV1T0RFMU5DQXhMamcyTVRVdE1TNDRNVFUwSURFdU1ESTNOeUF3SURFdU9EWXdNeTQ0TVRJNElERXVPRFl3TXlBeExqZ3hOVFF1TURBd05pQXhMakF3TXpJdExqZ3pNallnTVM0NE1UWTJMVEV1T0RZd015QXhMamd4TmpaNmJUSXVNelkxTXkwM0xqazBPVFJJTkM0eE56VldOUzQxT1RNM04yZ3hOeTQyTnpreGRqa3VNRFV5TkRONklpQm1hV3hzUFNJak1EQXdJaTgrUEM5emRtYysnKTtcblxuICAgICYuc21hbGwge1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjJyZW07XG4gICAgfVxufVxuXG4udHJhaW4taWNvbi13aGl0ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyLjRyZW07XG4gICAgaGVpZ2h0OiAzLjJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNalFpSUdobGFXZG9kRDBpTXpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBek1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTkM0eU16YzRNeUEyTGpNNU1qazVkak11TURNNE1UaGpNQ0F4TGpFMk1qWXpMamszTXpJM0lESXVNVEEyTkRNZ01pNHhOek13TmlBeUxqRXdOalF6U0RFMkxqY3lORGhqTVM0eE9UazRJREFnTWk0eE56RTRMUzQ1TkRNNElESXVNVGN4T0MweUxqRXdOalF6VmpZdU16a3lPVGxqTUMweExqRTJOelF5TFM0NU56SXRNaTR4TVRFeU5pMHlMakUzTVRndE1pNHhNVEV5TmtnMkxqUXhNRGc1WXkweExqRTVPVGM1SURBdE1pNHhOek13Tmk0NU5ETTROQzB5TGpFM016QTJJREl1TVRFeE1qWjZiVFF1TXpFd01ESXROQzR6TWpBMFl6QWdMalV3TVRVeUxqUTROemc0TGprd09EYzVJREV1TURnM056Y3VPVEE0Tnpsb015NDNOall4T0dNdU5qQXhNU0F3SURFdU1EZzVMUzQwTURjeU55QXhMakE0T1MwdU9UQTROemtnTUMwdU5UQXhOVE10TGpRNE56a3RMamt3TnpVNUxURXVNRGc1TFM0NU1EYzFPVWc1TGpZek5UWXlZeTB1TlRrNU9Ea2dNQzB4TGpBNE56YzNMalF3TmpBMkxURXVNRGczTnpjdU9UQTNOVGw2VFRRdU1EazBOeUF4T1M0ek5UTmpNQ0F4TGpBd05qY3VPRE0yTXpjZ01TNDRNVGc0SURFdU9EWTJPRGtnTVM0NE1UZzRJREV1TURNME1qWWdNQ0F4TGpnMk9ERXpMUzQ0TVRJeElERXVPRFk0TVRNdE1TNDRNVGc0SURBdExqazVPVFF0TGpnek16ZzNMVEV1T0RFeE5pMHhMamcyT0RFekxURXVPREV4TmkweExqQXpNRFV5SURBdE1TNDROalk0T1M0NE1USXlMVEV1T0RZMk9Ea2dNUzQ0TVRFMmVtMHhNUzR3TVRjeElEQmpNQ0F4TGpBd05qY3VPRE0yTkNBeExqZ3hPRGdnTVM0NE56QTJJREV1T0RFNE9DQXhMakF6TURZZ01DQXhMamcyT1RRdExqZ3hNakVnTVM0NE5qazBMVEV1T0RFNE9DQXdMUzQ1T1RrMExTNDRNemc0TFRFdU9ERXhOaTB4TGpnMk9UUXRNUzQ0TVRFMkxURXVNRE0wTWlBd0xURXVPRGN3Tmk0NE1USXlMVEV1T0Rjd05pQXhMamd4TVRaNmJUTXVOVE0wTnlBMExqZzBNREYyTGpnd05EaHNMUzR3TURJMUxqQTJNRFJNTWpNdU16ZzBOaUF6TW1ndE1TNDFOVFExYkMwekxqUXpOak10TkM0NE5EWXhTRFF1T1RreU1EVk1NUzQxTnpNeE5pQXpNa2d3YkRRdU5qVTVOelV0Tmk0NE1USXpkaTB1T1RrME5tZ3RMak00TnpBM1l5MHhMalV3TWpJeUlEQXRNaTQzTVRZNU5DMHhMakU0TWkweUxqY3hOamswTFRJdU5qTTNWakl1TmpNNE1UZERNUzQxTlRVM05DQXhMakU0TVRreUlESXVOemN3TkRZZ01DQTBMakkzTWpZNElEQklNVGd1T1RZeU5tTXhMalV3TVNBd0lESXVOekV6TWlBeExqRTRNVGt5SURJdU56RXpNaUF5TGpZek9ERTNWakl4TGpVMU5qRmpNQ0F4TGpRMU5TMHhMakl4TWpJZ01pNDJNemN0TWk0M01UTXlJREl1TmpNM2FDMHVNekUyTVhwdExURXVOekV6T0NBd1NEWXVNemN6TlRWMkxqazFOekZJTVRZdU9UTXlOM1l0TGprMU56RjZJaUJtYVd4c1BTSWpabVptSWk4K1BDOXpkbWMrJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICYuc21hbGwge1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjhyZW07XG4gICAgfVxufVxuXG4udHJhaW4taWNvbi1kYXJrIHtcbiAgICB3aWR0aDogMi40cmVtO1xuICAgIGhlaWdodDogMy4ycmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpRaUlHaGxhV2RvZEQwaU16SWlJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXpNaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk5DNHlNemM0TXlBMkxqTTVNams1ZGpNdU1ETTRNVGhqTUNBeExqRTJNall6TGprM016STNJREl1TVRBMk5ETWdNaTR4TnpNd05pQXlMakV3TmpRelNERTJMamN5TkRoak1TNHhPVGs0SURBZ01pNHhOekU0TFM0NU5ETTRJREl1TVRjeE9DMHlMakV3TmpRelZqWXVNemt5T1Rsak1DMHhMakUyTnpReUxTNDVOekl0TWk0eE1URXlOaTB5TGpFM01UZ3RNaTR4TVRFeU5rZzJMalF4TURnNVl5MHhMakU1T1RjNUlEQXRNaTR4TnpNd05pNDVORE00TkMweUxqRTNNekEySURJdU1URXhNalo2YlRRdU16RXdNREl0TkM0ek1qQTBZekFnTGpVd01UVXlMalE0TnpnNExqa3dPRGM1SURFdU1EZzNOemN1T1RBNE56bG9NeTQzTmpZeE9HTXVOakF4TVNBd0lERXVNRGc1TFM0ME1EY3lOeUF4TGpBNE9TMHVPVEE0TnprZ01DMHVOVEF4TlRNdExqUTROemt0TGprd056VTVMVEV1TURnNUxTNDVNRGMxT1VnNUxqWXpOVFl5WXkwdU5UazVPRGtnTUMweExqQTROemMzTGpRd05qQTJMVEV1TURnM056Y3VPVEEzTlRsNlRUUXVNRGswTnlBeE9TNHpOVE5qTUNBeExqQXdOamN1T0RNMk16Y2dNUzQ0TVRnNElERXVPRFkyT0RrZ01TNDRNVGc0SURFdU1ETTBNallnTUNBeExqZzJPREV6TFM0NE1USXhJREV1T0RZNE1UTXRNUzQ0TVRnNElEQXRMams1T1RRdExqZ3pNemczTFRFdU9ERXhOaTB4TGpnMk9ERXpMVEV1T0RFeE5pMHhMakF6TURVeUlEQXRNUzQ0TmpZNE9TNDRNVEl5TFRFdU9EWTJPRGtnTVM0NE1URTJlbTB4TVM0d01UY3hJREJqTUNBeExqQXdOamN1T0RNMk5DQXhMamd4T0RnZ01TNDROekEySURFdU9ERTRPQ0F4TGpBek1EWWdNQ0F4TGpnMk9UUXRMamd4TWpFZ01TNDROamswTFRFdU9ERTRPQ0F3TFM0NU9UazBMUzQ0TXpnNExURXVPREV4TmkweExqZzJPVFF0TVM0NE1URTJMVEV1TURNME1pQXdMVEV1T0Rjd05pNDRNVEl5TFRFdU9EY3dOaUF4TGpneE1UWjZiVE11TlRNME55QTBMamcwTURGMkxqZ3dORGhzTFM0d01ESTFMakEyTURSTU1qTXVNemcwTmlBek1tZ3RNUzQxTlRRMWJDMHpMalF6TmpNdE5DNDRORFl4U0RRdU9Ua3lNRFZNTVM0MU56TXhOaUF6TWtnd2JEUXVOalU1TnpVdE5pNDRNVEl6ZGkwdU9UazBObWd0TGpNNE56QTNZeTB4TGpVd01qSXlJREF0TWk0M01UWTVOQzB4TGpFNE1pMHlMamN4TmprMExUSXVOak0zVmpJdU5qTTRNVGRETVM0MU5UVTNOQ0F4TGpFNE1Ua3lJREl1Tnpjd05EWWdNQ0EwTGpJM01qWTRJREJJTVRndU9UWXlObU14TGpVd01TQXdJREl1TnpFek1pQXhMakU0TVRreUlESXVOekV6TWlBeUxqWXpPREUzVmpJeExqVTFOakZqTUNBeExqUTFOUzB4TGpJeE1qSWdNaTQyTXpjdE1pNDNNVE15SURJdU5qTTNhQzB1TXpFMk1YcHRMVEV1TnpFek9DQXdTRFl1TXpjek5UVjJMamsxTnpGSU1UWXVPVE15TjNZdExqazFOekY2SWlCbWFXeHNQU0lqTURBd0lpOCtQQzl6ZG1jKycpO1xuXG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICB9XG59XG5cbi50dW5uZWwtaWNvbi13aGl0ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzLjJyZW07XG4gICAgaGVpZ2h0OiAyLjZyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNeklpSUdobGFXZG9kRDBpTWpZaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBeU5pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlJR05zYVhBdGNuVnNaVDBpWlhabGJtOWtaQ0lnWkQwaVRUSXVNall3T0RjZ01USXVORGN6TlZZeU5rZ3dWakV5TGpRd05UUnNMakF3TWpBek16TTNMUzR3TXpNNVF5NHdOemt5TWpFMUlERXhMakE0TmpNdU16QTVOekV5SURjdU9UWXdPVFFnTWk0ME5UYzFPU0ExTGpFMklEUXVOalV3T0RrZ01pNHlPVGs0TXlBNExqWTJNRGsxSURBZ01UVXVPREkyTVNBd1l6Y3VNVFkxTVNBd0lERXhMakUzTlRJZ01pNHlPVGs0TXlBeE15NHpOamcxSURVdU1UWWdNaTR4TkRjNUlESXVPREF3T1RRZ01pNHpOemcwSURVdU9USTJNeUF5TGpRMU5UVWdOeTR5TVRFMWJDNHdNREl4TGpBek16bFdNalpvTFRJdU1qWXdPVll4TWk0ME56TTFZeTB1TURjME9DMHhMakl5TmkwdU1qazNNeTB6TGpjeU9USTFMVEV1T1Rrd09DMDFMamt6TnpjeUxURXVOall6TnkweUxqRTJPVFl0TkM0NU1qWTFMVFF1TWpjME9URXRNVEV1TlRjME5DMDBMakkzTkRreExUWXVOalEzT1RRZ01DMDVMamt4TURZNElESXVNVEExTXpFdE1URXVOVGMwTkRJZ05DNHlOelE1TVMweExqWTVNelUxSURJdU1qQTRORGN0TVM0NU1UVTVPU0EwTGpjeE1UY3lMVEV1T1Rrd09ERWdOUzQ1TXpjM01ub2lJR1pwYkd3OUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk1qVXVPRGMyT0NBeE5TNHdOekE1WXkwdU1UQTBPUzB1TVRNek5DMHVNall4TkMwdU1qRXhNeTB1TkRJMU5pMHVNakV4TTJndE1TNDFNemd4WXkwdU5URTFNUzB4TGpReE5qVXRNUzR4T0RZeExUSXVPREEwTkMweExqazBPRGd0TXk0ek1qZ3pMVEl1TmpNNE5TMHhMamd3T1RnNExUa3VOak0zTFRFdU9EQTVPRGd0TVRJdU1qYzFORGtnTUMwdU56WXpNamN1TlRJME5TMHhMalF6TVRVMUlERXVPVEUwTVMweExqazBPVE0ySURNdU16STRNMGcyTGpJd01UTTNZeTB1TVRZMU9ETWdNQzB1TXpJeE56Z3VNRGMzT1MwdU5ESTFOVFl1TWpFeE15MHVNVEEwTXpRdU1UTXlPQzB1TVRRMk1EY3VNekE0TmkwdU1URXlNREl1TkRjM05Xd3VNekE1TVRVZ01TNDFOakpqTGpBMU1qY3hMakkyTmpJdU1qYzNPRFV1TkRVMk15NDFNemMxT0M0ME5UWXphQzR3TmpreE9XTXRMalU1TmpnNUxqY3hPQzB1T0RnMk1qY2dNUzQyTWpJeExTNDRPVEF4TWlBeUxqVXlOamN0TGpBd016ZzBJREV1TVRFM055NDBNRE13TmlBeUxqRXlOemNnTVM0eE5EY3hNU0F5TGpnME1qSXVNREE0TWpRdU1EQTNOUzR3TVRZME55NHdNVEkyTGpBeU5ERTJMakF5TURGMk1pNHhPRFUwWXpBZ0xqUTNNelV1TXpZNU1ERXVPRFU0T1M0NE1qTTJOeTQ0TlRnNWFERXVPVEkxTWpGakxqUTFORFkySURBZ0xqZ3lNelkyTFM0ek9EVTBMamd5TXpZMkxTNDROVGc1ZGkwdU9EYzRNMmd4TUM0M09EVXlkaTQ0Tnpnell6QWdMalEzTXpVdU16WTVMamcxT0RrdU9ESXpOeTQ0TlRnNWFERXVPVEkxTW1NdU5EVXpOaUF3SUM0NE1qTTNMUzR6T0RVMExqZ3lNemN0TGpnMU9EbDJMVEl1TVRReU5XTXVOemc1TmkwdU56VTBNU0F4TGpFMk5qZ3RNUzQzT1RFMklERXVNVGN4T0MweUxqZ3lOek11TURBek15MHVPVE0xTmkwdU1qazVNeTB4TGpnM01qa3RMamt6TVRNdE1pNDJNRFU0YUM0eE1UQXpZeTR5TmpBNUlEQWdMalE0TmkwdU1Ua3VOVE0zTmkwdU5EVTJPV3d1TXpBNU55MHhMalUyTVROakxqQXpNVGt0TGpFMk56Z3RMakF3T0RJdExqTTBNalF0TGpFeE1qVXRMalEzTmpSNmJTMHhOUzR5T0RNMkxUSXVNVEExTTJNeUxqRXdNekV0TVM0ME5ETTFJRGd1TXpZeU5TMHhMalEwTXpVZ01UQXVORFkwTlNBd0lDNDBNRGcyTGpJM09UUXVPVE0wTVNBeExqUXdPU0F4TGpReE5UWWdNaTQzT1RJMFNEa3VNVGM0TmpoakxqUTRNRFE0TFRFdU16Z3lPQ0F4TGpBd05qQXlMVEl1TlRFeE9TQXhMalF4TkRVeUxUSXVOemt5TkhwdExUTXVNREV5TkRVZ055NHpORE14WXpBdExqa3pNek11TnpJMU9UTXRNUzQyT0RreElERXVOakl3TkRRdE1TNDJPRGt4TGpnNU5UWXhJREFnTVM0Mk1qQTBNUzQzTlRVNElERXVOakl3TkRFZ01TNDJPRGt4Y3kwdU56STBPQ0F4TGpZNE9UWXRNUzQyTWpBME1TQXhMalk0T1RaakxTNDRPVFExTVNBd0xURXVOakl3TkRRdExqYzFOak10TVM0Mk1qQTBOQzB4TGpZNE9UWjZiVEUwTGpnNU1UUTFJREV1TmpnNU5tTXRMamc1TkRVZ01DMHhMall5TURRdExqYzFOak10TVM0Mk1qQTBMVEV1TmpnNU5uTXVOekkxT1MweExqWTRPVEVnTVM0Mk1qQTBMVEV1TmpnNU1XTXVPRGsxTmlBd0lERXVOakl3TlM0M05UVTRJREV1TmpJd05TQXhMalk0T1RGekxTNDNNallnTVM0Mk9EazJMVEV1TmpJd05TQXhMalk0T1RaNklpQm1hV3hzUFNJalptWm1JaTgrUEM5emRtYysnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZm9udC1zaXplOiAwO1xuXG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAzLjFyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgIH1cbn1cblxuLnR1bm5lbC1pY29uLWRhcmssIC50dW5uZWwyLWljb24tZGFyayB7XG4gICAgd2lkdGg6IDMuMnJlbTtcbiAgICBoZWlnaHQ6IDIuNnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16SWlJR2hsYVdkb2REMGlNallpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF5TmlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHTnNhWEF0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRJdU1qWXdPRGNnTVRJdU5EY3pOVll5Tmtnd1ZqRXlMalF3TlRSc0xqQXdNakF6TXpNM0xTNHdNek01UXk0d056a3lNakUxSURFeExqQTROak11TXpBNU56RXlJRGN1T1RZd09UUWdNaTQwTlRjMU9TQTFMakUySURRdU5qVXdPRGtnTWk0eU9UazRNeUE0TGpZMk1EazFJREFnTVRVdU9ESTJNU0F3WXpjdU1UWTFNU0F3SURFeExqRTNOVElnTWk0eU9UazRNeUF4TXk0ek5qZzFJRFV1TVRZZ01pNHhORGM1SURJdU9EQXdPVFFnTWk0ek56ZzBJRFV1T1RJMk15QXlMalExTlRVZ055NHlNVEUxYkM0d01ESXhMakF6TXpsV01qWm9MVEl1TWpZd09WWXhNaTQwTnpNMVl5MHVNRGMwT0MweExqSXlOaTB1TWprM015MHpMamN5T1RJMUxURXVPVGt3T0MwMUxqa3pOemN5TFRFdU5qWXpOeTB5TGpFMk9UWXROQzQ1TWpZMUxUUXVNamMwT1RFdE1URXVOVGMwTkMwMExqSTNORGt4TFRZdU5qUTNPVFFnTUMwNUxqa3hNRFk0SURJdU1UQTFNekV0TVRFdU5UYzBORElnTkM0eU56UTVNUzB4TGpZNU16VTFJREl1TWpBNE5EY3RNUzQ1TVRVNU9TQTBMamN4TVRjeUxURXVPVGt3T0RFZ05TNDVNemMzTW5vaUlHWnBiR3c5SWlNd01EQWlMejQ4Y0dGMGFDQmtQU0pOTWpVdU9EYzJPQ0F4TlM0d056QTVZeTB1TVRBME9TMHVNVE16TkMwdU1qWXhOQzB1TWpFeE15MHVOREkxTmkwdU1qRXhNMmd0TVM0MU16Z3hZeTB1TlRFMU1TMHhMalF4TmpVdE1TNHhPRFl4TFRJdU9EQTBOQzB4TGprME9EZ3RNeTR6TWpnekxUSXVOak00TlMweExqZ3dPVGc0TFRrdU5qTTNMVEV1T0RBNU9EZ3RNVEl1TWpjMU5Ea2dNQzB1TnpZek1qY3VOVEkwTlMweExqUXpNVFUxSURFdU9URTBNUzB4TGprME9UTTJJRE11TXpJNE0wZzJMakl3TVRNM1l5MHVNVFkxT0RNZ01DMHVNekl4TnpndU1EYzNPUzB1TkRJMU5UWXVNakV4TXkwdU1UQTBNelF1TVRNeU9DMHVNVFEyTURjdU16QTROaTB1TVRFeU1ESXVORGMzTld3dU16QTVNVFVnTVM0MU5qSmpMakExTWpjeExqSTJOakl1TWpjM09EVXVORFUyTXk0MU16YzFPQzQwTlRZemFDNHdOamt4T1dNdExqVTVOamc1TGpjeE9DMHVPRGcyTWpjZ01TNDJNakl4TFM0NE9UQXhNaUF5TGpVeU5qY3RMakF3TXpnMElERXVNVEUzTnk0ME1ETXdOaUF5TGpFeU56Y2dNUzR4TkRjeE1TQXlMamcwTWpJdU1EQTRNalF1TURBM05TNHdNVFkwTnk0d01USTJMakF5TkRFMkxqQXlNREYyTWk0eE9EVTBZekFnTGpRM016VXVNelk1TURFdU9EVTRPUzQ0TWpNMk55NDROVGc1YURFdU9USTFNakZqTGpRMU5EWTJJREFnTGpneU16WTJMUzR6T0RVMExqZ3lNelkyTFM0NE5UZzVkaTB1T0RjNE0yZ3hNQzQzT0RVeWRpNDROemd6WXpBZ0xqUTNNelV1TXpZNUxqZzFPRGt1T0RJek55NDROVGc1YURFdU9USTFNbU11TkRVek5pQXdJQzQ0TWpNM0xTNHpPRFUwTGpneU16Y3RMamcxT0RsMkxUSXVNVFF5TldNdU56ZzVOaTB1TnpVME1TQXhMakUyTmpndE1TNDNPVEUySURFdU1UY3hPQzB5TGpneU56TXVNREF6TXkwdU9UTTFOaTB1TWprNU15MHhMamczTWprdExqa3pNVE10TWk0Mk1EVTRhQzR4TVRBell5NHlOakE1SURBZ0xqUTROaTB1TVRrdU5UTTNOaTB1TkRVMk9Xd3VNekE1TnkweExqVTJNVE5qTGpBek1Ua3RMakUyTnpndExqQXdPREl0TGpNME1qUXRMakV4TWpVdExqUTNOalI2YlMweE5TNHlPRE0yTFRJdU1UQTFNMk15TGpFd016RXRNUzQwTkRNMUlEZ3VNell5TlMweExqUTBNelVnTVRBdU5EWTBOU0F3SUM0ME1EZzJMakkzT1RRdU9UTTBNU0F4TGpRd09TQXhMalF4TlRZZ01pNDNPVEkwU0RrdU1UYzROamhqTGpRNE1EUTRMVEV1TXpneU9DQXhMakF3TmpBeUxUSXVOVEV4T1NBeExqUXhORFV5TFRJdU56a3lOSHB0TFRNdU1ERXlORFVnTnk0ek5ETXhZekF0TGprek16TXVOekkxT1RNdE1TNDJPRGt4SURFdU5qSXdORFF0TVM0Mk9Ea3hMamc1TlRZeElEQWdNUzQyTWpBME1TNDNOVFU0SURFdU5qSXdOREVnTVM0Mk9Ea3hjeTB1TnpJME9DQXhMalk0T1RZdE1TNDJNakEwTVNBeExqWTRPVFpqTFM0NE9UUTFNU0F3TFRFdU5qSXdORFF0TGpjMU5qTXRNUzQyTWpBME5DMHhMalk0T1RaNmJURTBMamc1TVRRMUlERXVOamc1Tm1NdExqZzVORFVnTUMweExqWXlNRFF0TGpjMU5qTXRNUzQyTWpBMExURXVOamc1Tm5NdU56STFPUzB4TGpZNE9URWdNUzQyTWpBMExURXVOamc1TVdNdU9EazFOaUF3SURFdU5qSXdOUzQzTlRVNElERXVOakl3TlNBeExqWTRPVEZ6TFM0M01qWWdNUzQyT0RrMkxURXVOakl3TlNBeExqWTRPVFo2SWlCbWFXeHNQU0lqTURBd0lpOCtQQzl6ZG1jKycpO1xuXG4gICAgJi5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAzLjFyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgIH1cbn1cblxuLmZlcnJ5LWljb24td2hpdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMi44cmVtO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qZ2lJR2hsYVdkb2REMGlNekFpSUhacFpYZENiM2c5SWpBZ01DQXlPQ0F6TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5PQzQwTkRjd05DQTJMakk0TURsSU5TNDBOakEyWXkwdU5USXpPVFFnTUMwdU9UUTROamN1TkRJMk5UVXRMamswT0RZM0xqazFNamN6VmpFeExqa3dPR013SUM0ek5qZ3pMak00TkRndU5qRXdNaTQzTVRZM05TNDBOVEExYkRndU16VTBOREl0TkM0d01UZzVOR011TVRNM0xTNHdOalU1TGpJNU5qVXRMakEyTlRrdU5ETXpOU0F3YkRndU16VTBOeUEwTGpBeE9UQTBZeTR6TXpJdU1UVTVOaTQzTVRZNExTNHdPREl6TGpjeE5qZ3RMalExTURaV055NHlNek0yTTJNd0xTNDFNall4T0MwdU5ESTBPQzB1T1RVeU56TXRMamswT0RZdExqazFNamN6U0RndU5EUTNNRFI2VFRFNExqWTFNeUExTGpNeU9ERTNZeTR5TnpZeElEQWdMalV0TGpJeU16ZzJMalV0TGpWMkxTNHdPRE00TldNd0xTNDFNall4T0MwdU5ESTBPQzB1T1RVeU56TXRMamswT0RjdExqazFNamN6YUMweExqZzFOVFZqTFM0eU5UVXpJREF0TGpRMk9UVXRMakU1TWpJMExTNDBPVGN4TFM0ME5EVTVPVXd4TlM0MU16WTJMalEwTlRrNE9FTXhOUzQxTURrdU1Ua3lNalEwSURFMUxqSTVORGdnTUNBeE5TNHdNemsxSURCb0xUSXVORGM1WXkwdU1qVTFNaUF3TFM0ME5qazFMakU1TWpJME9TMHVORGszTGpRME5UazVOa3d4TVM0M05EZzBJRE11TXpRMU5tTXRMakF5TnpVdU1qVXpOelF0TGpJME1UZ3VORFExT1RrdExqUTVOeTQwTkRVNU9VZzVMak01TlRjNFl5MHVOVEl6T1RVZ01DMHVPVFE0TmpndU5ESTJOVFV0TGprME9EWTRMamsxTWpjemRpNHdPRE00TldNd0lDNHlOell4TkM0eU1qTTROaTQxTGpVdU5XZzVMamN3TlRsNmJTMDBMall6TmpJZ05DNDVOemN3TTJNdExqRXpOeTB1TURZMU9TMHVNamsyTmkwdU1EWTFPUzB1TkRNek5pQXdUQzR6T1RrM016SWdNVFl1TmpRM01tTXRMakl5T0RBM09TNHhNRGszTFM0ek16Z3lNREEyTGpNM01qVXRMakkxTmpRME15NDJNVEl4VERNdU9UQTJOVEVnTWpndU1qZzBOV011TURrMk1Ea3VNamd4TlM0ME1UUTROeTQwTVRjdU5qZzNOQzR5T1RjM0lERXVPREUwTlRZdExqYzVOQ0EwTGpBME5URTJMVEV1TkRneU5pQTJMak15TmpZNUxURXVORGd5TmlBekxqazVPRE1nTUNBM0xqSXhOVElnTVM0NU1EUXhJREV4TGpReU56UWdNaTQ0T0RjMExqQXpOamt1TURBNE55NHdOelE1TGpBeE15NHhNVEk0TGpBeE0yZ3VNamc1TldNdU1qRXpPU0F3SUM0ME1EUXhMUzR4TXpZeExqUTNNekl0TGpNek9EVnNOQzR5TXpNeUxURXlMalF3TWpKakxqQTRNVGd0TGpJek9UWXRMakF5T0RRdExqVXdNalF0TGpJMU5qUXRMall4TWpGc0xURXpMakU0TXpVdE5pNHpOREo2SWlCbWFXeHNQU0lqWm1abUlpOCtQQzl6ZG1jKycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMi4ycmVtO1xuICAgIH1cbn1cblxuLmZlcnJ5LWljb24tZGFyayB7XG4gICAgd2lkdGg6IDIuOHJlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNamdpSUdobGFXZG9kRDBpTXpBaUlIWnBaWGRDYjNnOUlqQWdNQ0F5T0NBek1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOT0M0ME5EY3dOQ0EyTGpJNE1EbElOUzQwTmpBMll5MHVOVEl6T1RRZ01DMHVPVFE0TmpjdU5ESTJOVFV0TGprME9EWTNMamsxTWpjelZqRXhMamt3T0dNd0lDNHpOamd6TGpNNE5EZ3VOakV3TWk0M01UWTNOUzQwTlRBMWJEZ3VNelUwTkRJdE5DNHdNVGc1TkdNdU1UTTNMUzR3TmpVNUxqSTVOalV0TGpBMk5Ua3VORE16TlNBd2JEZ3VNelUwTnlBMExqQXhPVEEwWXk0ek16SXVNVFU1Tmk0M01UWTRMUzR3T0RJekxqY3hOamd0TGpRMU1EWldOeTR5TXpNMk0yTXdMUzQxTWpZeE9DMHVOREkwT0MwdU9UVXlOek10TGprME9EWXRMamsxTWpjelNEZ3VORFEzTURSNlRURTRMalkxTXlBMUxqTXlPREUzWXk0eU56WXhJREFnTGpVdExqSXlNemcyTGpVdExqVjJMUzR3T0RNNE5XTXdMUzQxTWpZeE9DMHVOREkwT0MwdU9UVXlOek10TGprME9EY3RMamsxTWpjemFDMHhMamcxTlRWakxTNHlOVFV6SURBdExqUTJPVFV0TGpFNU1qSTBMUzQwT1RjeExTNDBORFU1T1V3eE5TNDFNelkyTGpRME5UazRPRU14TlM0MU1Ea3VNVGt5TWpRMElERTFMakk1TkRnZ01DQXhOUzR3TXprMUlEQm9MVEl1TkRjNVl5MHVNalUxTWlBd0xTNDBOamsxTGpFNU1qSTBPUzB1TkRrM0xqUTBOVGs1Tmt3eE1TNDNORGcwSURNdU16UTFObU10TGpBeU56VXVNalV6TnpRdExqSTBNVGd1TkRRMU9Ua3RMalE1Tnk0ME5EVTVPVWc1TGpNNU5UYzRZeTB1TlRJek9UVWdNQzB1T1RRNE5qZ3VOREkyTlRVdExqazBPRFk0TGprMU1qY3pkaTR3T0RNNE5XTXdJQzR5TnpZeE5DNHlNak00Tmk0MUxqVXVOV2c1TGpjd05UbDZiUzAwTGpZek5qSWdOQzQ1Tnpjd00yTXRMakV6TnkwdU1EWTFPUzB1TWprMk5pMHVNRFkxT1MwdU5ETXpOaUF3VEM0ek9UazNNeklnTVRZdU5qUTNNbU10TGpJeU9EQTNPUzR4TURrM0xTNHpNemd5TURBMkxqTTNNalV0TGpJMU5qUTBNeTQyTVRJeFRETXVPVEEyTlRFZ01qZ3VNamcwTldNdU1EazJNRGt1TWpneE5TNDBNVFE0Tnk0ME1UY3VOamczTkM0eU9UYzNJREV1T0RFME5UWXRMamM1TkNBMExqQTBOVEUyTFRFdU5EZ3lOaUEyTGpNeU5qWTVMVEV1TkRneU5pQXpMams1T0RNZ01DQTNMakl4TlRJZ01TNDVNRFF4SURFeExqUXlOelFnTWk0NE9EYzBMakF6TmprdU1EQTROeTR3TnpRNUxqQXhNeTR4TVRJNExqQXhNMmd1TWpnNU5XTXVNakV6T1NBd0lDNDBNRFF4TFM0eE16WXhMalEzTXpJdExqTXpPRFZzTkM0eU16TXlMVEV5TGpRd01qSmpMakE0TVRndExqSXpPVFl0TGpBeU9EUXRMalV3TWpRdExqSTFOalF0TGpZeE1qRnNMVEV6TGpFNE16VXROaTR6TkRKNklpQm1hV3hzUFNJak1EQXdJaTgrUEM5emRtYysnKTtcblxuICAgICYuc21hbGwge1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjJyZW07XG4gICAgfVxufVxuXG4uYmlrZS1pY29uLXdoaXRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDMuNHJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNelFpSUdobGFXZG9kRDBpTWpBaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TkNBeU1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTWpjdU5URTVNU0EzTGpFMU1qZzBZeTB1TWpZMU5DQXdMUzQxTWpZMExqQXhOemN5TFM0M09ETTFMakEwT0RZM1RESTFMakV5SURFdU56RTVPV011TVRVM09TMHVNVGd5TWpndU1qVXpOeTB1TkRFNE56VXVNalV6TnkwdU5qYzNOek5ETWpVdU16Y3pOeTQwTmpZMk9EUWdNalF1T1RBeU9TQXdJREkwTGpNeU1qTWdNR2d0TXk0M00yTXRMalU0TURZZ01DMHhMakExTVRVdU5EWTJOamcwTFRFdU1EVXhOU0F4TGpBME1qRTNJREFnTGpVM05UUTVMalEzTURrZ01TNHdOREl4TnlBeExqQTFNVFVnTVM0d05ESXhOMmd5TGpFek9UaHNMVEV1TVRFMk9TQXhMamMyTW1NdExqQTBPVE10TGpBd05qSTFMUzR3T1RrNUxTNHdNRGszT1MwdU1UVXdOaTB1TURBNE5EUnNMVGd1TnpneU5TNHhNelE1Tm1NdU1qTXlOeTB1TVRreE1UTXVNemd3T1MwdU5EYzVPREV1TXpnd09TMHVPREF5TmpnZ01DMHVOVGMxTkRrdExqUTNNRGN0TVM0d05ESXhOeTB4TGpBMU1UUXRNUzR3TkRJeE4wZzRMamczTVRRMVl5MHVOVGd3TnpJZ01DMHhMakExTVRRMUxqUTJOalk0TFRFdU1EVXhORFVnTVM0d05ESXhOeUF3SUM0MU56VTBPUzQwTnpBM015QXhMakEwTWpFM0lERXVNRFV4TkRVZ01TNHdOREl4TjJndU1UZzVNVFpqTGpBeU5USXpMakE1TXpJNExqQTJNelF1TVRnME5qZ3VNVEUyTmpFdU1qY3hNemhzTGpReU1qSTJMalk0T0RjNExURXVNVFkxTkRNZ01pNHlOemt3TW1NdExqWXhOalk0TFM0eE9UTTJOQzB4TGpJM01qYzVMUzR5T1RnM09TMHhMamsxTXpJNUxTNHlPVGczT1VNeUxqa3dOekk0SURjdU1UVXlPRFFnTUNBeE1DNHdNelF6SURBZ01UTXVOVGMyTkNBd0lERTNMakV4T0RRZ01pNDVNRGN5T0NBeU1DQTJMalE0TURjMklESXdZek11TURnMk1ESWdNQ0ExTGpZM016TTBMVEl1TVRRNU55QTJMak15TWpRMExUVXVNREUzTVd3ekxqUTJOelV1TVRrNE9HTXVNREl3TkM0d01ERXlMakEwTURZdU1EQXhPQzR3TmpBNExqQXdNVGd1TXpZd01pQXdJQzQyT1RjeUxTNHhPRE15TGpnNU1ESXRMalE0Tnpoc05pNDFNRFkwTFRFd0xqSTJORGt4TGprNE9EY2dNeTR6TlRRek0yTXRNaTR4TnpReklERXVNRE0zT0MwekxqWTNPRFVnTXk0eU5ETTJPQzB6TGpZM09EVWdOUzQzT1RFeU9DQXdJRE11TlRReE9TQXlMamt3TnpNZ05pNDBNak0ySURZdU5EZ3dPQ0EyTGpReU16WkRNekV1TURreU55QXlNQ0F6TkNBeE55NHhNVGcwSURNMElERXpMalUzTmpSak1DMHpMalUwTWpFdE1pNDVNRGMwTFRZdU5ESXpOVFl0Tmk0ME9EQTVMVFl1TkRJek5UWjZiUzB4Tmk0Mk16UXpMakV4TmpVeGJETXVOVEEwTkNBMUxqY3hOalkxTFRFdU5EWXpOaTB1TURnek9XTXRMakU1TlRJdE1TNDRORFUzTFRFdU1UZ3lOUzB6TGpRMk1EUTBMVEl1TmpFM05TMDBMalV3TlRFeWJDNDFOelkzTFRFdU1USTNOak42VFRJdU1UQXlPVEVnTVRNdU5UYzJOR013TFRJdU16a3lOeUF4TGprMk16a3hMVFF1TXpNNU1qSWdOQzR6TnpjNE5TMDBMak16T1RJeUxqTXpPREEwSURBZ0xqWTJOamd6TGpBek9UUXVPVGd6TGpFeE1UY3liQzB4TGpreU1Ea2dNeTQzTlRZMFl5MHVNVFl3TXpVdU16RXpOUzB1TVRVd05EY3VOamcyTGpBeU5qTTVMams1TURjdU1UYzJPRFV1TXpBME55NDBPVFkzTVM0MU1EQTFMamcxTURjekxqVXlNRGxzTkM0eU5ESTVNaTR5TkRNell5MHVOVFV6TlNBeExqYzJPQzB5TGpJeE9EazNJRE11TURVMU5TMDBMakU0TWpFMElETXVNRFUxTlMweUxqUXhNemswSURBdE5DNHpOemM0TlMweExqazBOall0TkM0ek56YzROUzAwTGpNek9UTjZiVFl1TURReE5qY3RMamswT0Rac01TNHhPVE00TXkweUxqTXpORFpqTGpjek5qWTVMall6TURnZ01TNHlOVGt5T1NBeExqVWdNUzQwTkRRNE9TQXlMalE0TlRsc0xUSXVOak00TnpJdExqRTFNVE42YlRndU1UazVPVEl0TGpRMk5qSnNMVE11TnpRMk55MDJMakV4TVRZNUlEY3VOamt3TmkwdU1URXdOVGN0TXk0NU5ETTVJRFl1TWpJeU1qWjZiVEV4TGpFM05EWWdOUzQzTlRReFl5MHlMalF4TkNBd0xUUXVNemMzT1MweExqazBOall0TkM0ek56YzVMVFF1TXpNNU15QXdMVEV1TlRrNExqZzNOall0TWk0NU9UWWdNaTR4TnpjMkxUTXVOelE0T1ROc01TNHhPVEVnTkM0d05ERXhNMk11TVRZekxqVTFNall1TnpRM01pNDROamszSURFdU16QTBNUzQzTURneExqVTFOelF0TGpFMk1UUXVPRGMzTXkwdU56UXdNUzQzTVRRMExURXVNamt5Tld3dE1TNHhPVEUwTFRRdU1EUXlNek5qTGpBMk1EVXRMakF3TWpVdU1USXhNUzB1TURBME5UZ3VNVGd5TWkwdU1EQTBOVGdnTWk0ME1UUXhJREFnTkM0ek56Z2dNUzQ1TkRZMk1TQTBMak0zT0NBMExqTXpPVEl4Y3kweExqazJNemtnTkM0ek16a3lMVFF1TXpjNElEUXVNek01TW5vaUlHWnBiR3c5SWlObVptWWlMejQ4TDNOMlp6ND0nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZm9udC1zaXplOiAwO1xufVxuXG4uYmlrZS1pY29uLWRhcmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMy40cmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16UWlJR2hsYVdkb2REMGlNakFpSUhacFpYZENiM2c5SWpBZ01DQXpOQ0F5TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NamN1TlRFNU1TQTNMakUxTWpnMFl5MHVNalkxTkNBd0xTNDFNalkwTGpBeE56Y3lMUzQzT0RNMUxqQTBPRFkzVERJMUxqRXlJREV1TnpFNU9XTXVNVFUzT1MwdU1UZ3lNamd1TWpVek55MHVOREU0TnpVdU1qVXpOeTB1TmpjM056TkRNalV1TXpjek55NDBOalkyT0RRZ01qUXVPVEF5T1NBd0lESTBMak15TWpNZ01HZ3RNeTQzTTJNdExqVTRNRFlnTUMweExqQTFNVFV1TkRZMk5qZzBMVEV1TURVeE5TQXhMakEwTWpFM0lEQWdMalUzTlRRNUxqUTNNRGtnTVM0d05ESXhOeUF4TGpBMU1UVWdNUzR3TkRJeE4yZ3lMakV6T1Roc0xURXVNVEUyT1NBeExqYzJNbU10TGpBME9UTXRMakF3TmpJMUxTNHdPVGs1TFM0d01EazNPUzB1TVRVd05pMHVNREE0TkRSc0xUZ3VOemd5TlM0eE16UTVObU11TWpNeU55MHVNVGt4TVRNdU16Z3dPUzB1TkRjNU9ERXVNemd3T1MwdU9EQXlOamdnTUMwdU5UYzFORGt0TGpRM01EY3RNUzR3TkRJeE55MHhMakExTVRRdE1TNHdOREl4TjBnNExqZzNNVFExWXkwdU5UZ3dOeklnTUMweExqQTFNVFExTGpRMk5qWTRMVEV1TURVeE5EVWdNUzR3TkRJeE55QXdJQzQxTnpVME9TNDBOekEzTXlBeExqQTBNakUzSURFdU1EVXhORFVnTVM0d05ESXhOMmd1TVRnNU1UWmpMakF5TlRJekxqQTVNekk0TGpBMk16UXVNVGcwTmpndU1URTJOakV1TWpjeE16aHNMalF5TWpJMkxqWTRPRGM0TFRFdU1UWTFORE1nTWk0eU56a3dNbU10TGpZeE5qWTRMUzR4T1RNMk5DMHhMakkzTWpjNUxTNHlPVGczT1MweExqazFNekk1TFM0eU9UZzNPVU15TGprd056STRJRGN1TVRVeU9EUWdNQ0F4TUM0d016UXpJREFnTVRNdU5UYzJOQ0F3SURFM0xqRXhPRFFnTWk0NU1EY3lPQ0F5TUNBMkxqUTRNRGMySURJd1l6TXVNRGcyTURJZ01DQTFMalkzTXpNMExUSXVNVFE1TnlBMkxqTXlNalEwTFRVdU1ERTNNV3d6TGpRMk56VXVNVGs0T0dNdU1ESXdOQzR3TURFeUxqQTBNRFl1TURBeE9DNHdOakE0TGpBd01UZ3VNell3TWlBd0lDNDJPVGN5TFM0eE9ETXlMamc1TURJdExqUTROemhzTmk0MU1EWTBMVEV3TGpJMk5Ea3hMams0T0RjZ015NHpOVFF6TTJNdE1pNHhOelF6SURFdU1ETTNPQzB6TGpZM09EVWdNeTR5TkRNMk9DMHpMalkzT0RVZ05TNDNPVEV5T0NBd0lETXVOVFF4T1NBeUxqa3dOek1nTmk0ME1qTTJJRFl1TkRnd09DQTJMalF5TXpaRE16RXVNRGt5TnlBeU1DQXpOQ0F4Tnk0eE1UZzBJRE0wSURFekxqVTNOalJqTUMwekxqVTBNakV0TWk0NU1EYzBMVFl1TkRJek5UWXROaTQwT0RBNUxUWXVOREl6TlRaNmJTMHhOaTQyTXpRekxqRXhOalV4YkRNdU5UQTBOQ0ExTGpjeE5qWTFMVEV1TkRZek5pMHVNRGd6T1dNdExqRTVOVEl0TVM0NE5EVTNMVEV1TVRneU5TMHpMalEyTURRMExUSXVOakUzTlMwMExqVXdOVEV5YkM0MU56WTNMVEV1TVRJM05qTjZUVEl1TVRBeU9URWdNVE11TlRjMk5HTXdMVEl1TXpreU55QXhMamsyTXpreExUUXVNek01TWpJZ05DNHpOemM0TlMwMExqTXpPVEl5TGpNek9EQTBJREFnTGpZMk5qZ3pMakF6T1RRdU9UZ3pMakV4TVRjeWJDMHhMamt5TURrZ015NDNOVFkwWXkwdU1UWXdNelV1TXpFek5TMHVNVFV3TkRjdU5qZzJMakF5TmpNNUxqazVNRGN1TVRjMk9EVXVNekEwTnk0ME9UWTNNUzQxTURBMUxqZzFNRGN6TGpVeU1EbHNOQzR5TkRJNU1pNHlORE16WXkwdU5UVXpOU0F4TGpjMk9DMHlMakl4T0RrM0lETXVNRFUxTlMwMExqRTRNakUwSURNdU1EVTFOUzB5TGpReE16azBJREF0TkM0ek56YzROUzB4TGprME5qWXROQzR6TnpjNE5TMDBMak16T1RONmJUWXVNRFF4TmpjdExqazBPRFpzTVM0eE9UTTRNeTB5TGpNek5EWmpMamN6TmpZNUxqWXpNRGdnTVM0eU5Ua3lPU0F4TGpVZ01TNDBORFE0T1NBeUxqUTROVGxzTFRJdU5qTTROekl0TGpFMU1UTjZiVGd1TVRrNU9USXRMalEyTmpKc0xUTXVOelEyTnkwMkxqRXhNVFk1SURjdU5qa3dOaTB1TVRFd05UY3RNeTQ1TkRNNUlEWXVNakl5TWpaNmJURXhMakUzTkRZZ05TNDNOVFF4WXkweUxqUXhOQ0F3TFRRdU16YzNPUzB4TGprME5qWXROQzR6TnpjNUxUUXVNek01TXlBd0xURXVOVGs0TGpnM05qWXRNaTQ1T1RZZ01pNHhOemMyTFRNdU56UTRPVE5zTVM0eE9URWdOQzR3TkRFeE0yTXVNVFl6TGpVMU1qWXVOelEzTWk0NE5qazNJREV1TXpBME1TNDNNRGd4TGpVMU56UXRMakUyTVRRdU9EYzNNeTB1TnpRd01TNDNNVFEwTFRFdU1qa3lOV3d0TVM0eE9URTBMVFF1TURReU16TmpMakEyTURVdExqQXdNalV1TVRJeE1TMHVNREEwTlRndU1UZ3lNaTB1TURBME5UZ2dNaTQwTVRReElEQWdOQzR6TnpnZ01TNDVORFkyTVNBMExqTTNPQ0EwTGpNek9USXhjeTB4TGprMk16a2dOQzR6TXpreUxUUXVNemM0SURRdU16TTVNbm9pSUdacGJHdzlJaU13TURBaUx6NDhMM04yWno0PScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG59XG5cbi5tYXJrZXItaWNvbi13aGl0ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxLjhyZW07XG4gICAgaGVpZ2h0OiAyLjJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGdpSUdobGFXZG9kRDBpTWpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T0NBeU1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOT1M0d01EQXhPQ0EwTGpVMk16azJZeTB5TGpRd01UazRJREF0TkM0ek5UWXpPQ0F4TGprek1qTXhMVFF1TXpVMk16Z2dOQzR6TURjM01TQXdJREl1TXpjMU5ETWdNUzQ1TlRReE5DQTBMak13TnpjeklEUXVNelUyTXpnZ05DNHpNRGMzTXlBeUxqUXdNakl5SURBZ05DNHpOVFkwTWkweExqa3pNak1nTkM0ek5UWTBNaTAwTGpNd056Y3pJREF0TWk0ek56VXhOQzB4TGprMU5EUXROQzR6TURjM01TMDBMak0xTmpReUxUUXVNekEzTnpGNmJUQWdOeTR3TnpZNU5HTXRNUzQxTkRReE9TQXdMVEl1T0RBd05UUXRNUzR5TkRJekxUSXVPREF3TlRRdE1pNDNOamt5TnlBd0xURXVOVEkyT1RRZ01TNHlOVFl6TlMweUxqYzJPVEkxSURJdU9EQXdOVFF0TWk0M05qa3lOU0F4TGpVME5ESXlJREFnTWk0NE1EQTFNaUF4TGpJME1qTXhJREl1T0RBd05USWdNaTQzTmpreU5TQXdJREV1TlRJMk9UY3RNUzR5TlRZeklESXVOelk1TWpjdE1pNDRNREExTWlBeUxqYzJPVEkzZWlJZ1ptbHNiRDBpSTJabVppSXZQanh3WVhSb0lHUTlJazB4Tmk0ek9EVXhJRE11T0RJMU1USkRNVFF1TmpnMk5pQXhMak01TkRNNElERXhMams1TkRjZ01DQTVMakF3TURJMklEQWdOaTR3TURVM09DQXdJRE11TXpFek9USWdNUzR6T1RRek9DQXhMall4TlRReUlETXVPREkxTVRJdExqQTNORGN6TkRVZ05pNHlORE0xTnkwdU5EWTBPVGszSURrdU16QTFOQzQxTmprek9Ea2dNVEl1TURFd05XTXVNamMyTmpjekxqY3pPRGN1TnpFMk5EY3hJREV1TkRVMk5DQXhMak13TkRBMk1TQXlMakV5T1d3MkxqVXpORFUzSURjdU5UZzVOMk11TVRRM056a3VNVGN4T0M0ek5qUXpNaTR5TnpBNExqVTVNakkwTGpJM01EaHpMalEwTkRRMUxTNHdPVGt1TlRreU1qUXRMakkzTURoc05pNDFNekkzTFRjdU5UZzNOMk11TlRrd01pMHVOamMyTkNBeExqQXlPVFV0TVM0ek9UTXpJREV1TXpBek9DMHlMakV5TmpFZ01TNHdNelkxTFRJdU56RXVOalEyTXkwMUxqYzNNVGd6TFRFdU1EUXpPUzA0TGpFNU1ESTRlbTB0TGpReE1qZ2dOeTQyTlRFMU9HTXRMakl4TVRZdU5UWTFNeTB1TlRVM0lERXVNVEkwTXkweExqQXlOakVnTVM0Mk5qSXRMakF3TVRNdU1EQXhNeTB1TURBeU5pNHdNREkyTFM0d01ETTJMakF3TkRGc0xUVXVPVFF5TXpRZ05pNDVNREUyTFRVdU9UUTFPVFF0Tmk0NU1EVTVZeTB1TkRZNE9ETXRMalV6TnpJdExqZ3hOREkwTFRFdU1EazJNaTB4TGpBeU56a3hMVEV1TmpZM0xTNDROVFUwTkMweUxqSXpOekV6TFM0MU16QTNPUzAwTGpjMk9EWTRMamcyT0RjdE5pNDNOekUwT1NBeExqUXdNemczTFRJdU1EQTVNaklnTXk0Mk1qa3lOaTB6TGpFMk1UVTJJRFl1TVRBMU1UVXRNeTR4TmpFMU5pQXlMalEzTlRnMElEQWdOQzQzTURBNU5DQXhMakUxTWpNZ05pNHhNRFE1TkNBekxqRTJNVFUySURFdU16azVOeUF5TGpBd01qZ3hJREV1TnpJME5pQTBMalV6TkRNMkxqZzJOekVnTmk0M056WTJPWG9pSUdacGJHdzlJaU5tWm1ZaUx6NDhMM04yWno0PScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgIH1cbn1cblxuLmVtYWlsLWljb24td2hpdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMi43cmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qY2lJR2hsYVdkb2REMGlNakFpSUhacFpYZENiM2c5SWpBZ01DQXlOeUF5TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHTnNhWEF0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRBZ01HZ3lOaTR4TlRNNGRqSXdTREJXTUhwdE1TNHlORFUwTWlBeExqZzRNelEwVmpFNExqYzFTREkwTGprd09EUldNUzQ0T0RNME5Fd3hNeTR3TnpZNUlERXdMamc0T1RnZ01TNHlORFUwTWlBeExqZzRNelEwZWsweU15NDJOemsySURFdU1qVklNaTQwTnpReU5Vd3hNeTR3TnpZNUlEa3VNekl3T1RJZ01qTXVOamM1TmlBeExqSTFlaUlnWm1sc2JEMGlJMlptWmlJdlBqd3ZjM1puUGc9PScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG59XG5cbi50d2l0dGVyLWljb24td2hpdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQWlJR2hsYVdkb2REMGlNVFlpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F4TmlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5OaTR5T0RrMklERTJZemN1TlRRM01pQXdJREV4TGpZM05USXROaTR4TlRZeU1TQXhNUzQyTnpVeUxURXhMalE1TkRnMUlEQXRMakUzTkRnMUlEQXRMak0wT0RreUxTNHdNVEl0TGpVeU1qSXVPREF6TVMwdU5UY3hPU0F4TGpRNU5qTXRNUzR5T0RBd01pQXlMakEwTnpJdE1pNHdPVEV4T1MwdU56UTRPUzR6TWpZM01TMHhMalUwTXpNdU5UUXdPVGN0TWk0ek5UWTRMall6TlRZekxqZzFOall0TGpVd05Ea2dNUzQwT1RjM0xURXVNams1TURFZ01TNDRNRFF0TWk0eU16UTFORFV0TGpnd05UVXVORGN3TlRneExURXVOamcyTnk0NE1ESXlNalV0TWk0Mk1EVTJMams0TURZeE5VTXhOaTR5TWpJNUxqWXlOVGMzSURFMUxqUXdORGN1TVRrMk9EZzJJREUwTGpVeE16VXVNRFV6TVRjMk0yTXRMamc1TVRJdExqRTBNemN3T1RNdE1TNDRNRFUyTGpBd05UYzJPQzB5TGpZd01Ua3VOREkxTXpBd055MHVOemsyTWk0ME1UazFNek10TVM0ME1qazNJREV1TURnMU56TXpMVEV1T0RBeU5pQXhMamc1TlRVd015MHVNemN5T1RVdU9EQTVOemd0TGpRMk5ETTRJREV1TnpFM09UZ3RMakkyTURJZ01pNDFPRFF3TnkweExqWXpNVFF0TGpBNE1EVXlMVE11TWpJM016WXRMalE1TnpreUxUUXVOamcwTWprdE1TNHlNalV4TVVNekxqY3dOelU1SURNdU1EQTFOellnTWk0ME1qSXlOeUF4TGprNE5UQTFJREV1TXpreUxqY3pOekEzTlM0NE5qY3lOelFnTVM0Mk1qWTBOUzQzTURZMU5pQXlMalkzT1RJNUxqazBNalU0TXlBekxqWTRNVEl6SURFdU1UYzROakVnTkM0Mk9ETXhOeUF4TGpjNU16WXlJRFV1TlRVNE9EZ2dNaTQyTmpJMElEWXVNVE13TURZZ01pNHdNRGt6T1NBMkxqRXhNU0F4TGpNM01EWXlJRFV1T1RNM05UY3VPQ0ExTGpZeU5ETTVkaTR3TlRFeVl5NHdNREF5TlRrdU9UTXlOelF1TXpJNE1qRWdNUzQ0TXpZMk9DNDVNamd5TXlBeUxqVTFPRFV1TmpBd01ERXVOekl4T0RFZ01TNDBNelV4TlNBeExqSXhOekEzSURJdU16WXpOemNnTVM0ME1ERTNOaTB1TmpBME1TNHhOakl5TVMweExqSXpOemswTGpFNE5Ua3lMVEV1T0RVeU9DNHdOamt6TWk0eU5qSXlNUzQ0TURJM015NDNOekkyT1NBeExqVXdORGN6SURFdU5EWXdNRFlnTWk0d01EYzNNeTQyT0Rjek5pNDFNRE14SURFdU5URTNNak11TnpneUlESXVNemN6TlRRdU56azNPQzB4TGpRMU16QXhJREV1TVRJME5DMHpMakkwTnprMUlERXVOek0wTnkwMUxqQTVOaUF4TGpjek1qa3RMak15TmpRM055MHVNREF3TnkwdU5qVXlOak0zTFM0d01qQXhMUzQ1TnpZNExTNHdOVGd6SURFdU9EYzJOVEVnTVM0eE9EVTJJRFF1TURVNU9UTWdNUzQ0TVRRMUlEWXVNamc1TmlBeExqZ3hNVFVpSUdacGJHdzlJaU5tWm1ZaUx6NDhMM04yWno0PScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBmb250LXNpemU6IDA7XG59XG5cbi50d2l0dGVyLWljb24tZGFyayB7XG4gICAgd2lkdGg6IDIuNHJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNalFpSUdobGFXZG9kRDBpTWpBaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRjdU5UUTNOVElnTVRrdU5UQXhNME14Tmk0Mk1EUXlJREU1TGpVd01UTWdNakV1TlRVM09DQXhNUzQ1T1RjNUlESXhMalUxTnpnZ05TNDBPVEV3TVVNeU1TNDFOVGM0SURVdU1qYzNPRGtnTWpFdU5UVTNPQ0ExTGpBMk5UY3pJREl4TGpVME16UWdOQzQ0TlRRMU0wTXlNaTQxTURjZ05DNHhOVGMwT0NBeU15NHpNemc1SURNdU1qazBOREVnTWpRZ01pNHpNRFUzTTBNeU15NHhNREV6SURJdU56QXpPVFFnTWpJdU1UUTRJREl1T1RZMU1EZ2dNakV1TVRjeE9DQXpMakE0TURRMVF6SXlMakU1T1RnZ01pNDBOalV3TnlBeU1pNDVOamt4SURFdU5EazNNVGtnTWpNdU16TTJOaUF3TGpNMU5qa3lPRU15TWk0ek56QXhJREF1T1RNd05EZzFJREl4TGpNeE1qWWdNUzR6TXpRM0lESXdMakl3T1RrZ01TNDFOVEl4TTBNeE9TNDBOamMxSURBdU56WXlOekEySURFNExqUTROVFlnTUM0eU16azVOeUF4Tnk0ME1UWXlJREF1TURZME9ERXlPRU14Tmk0ek5EWTRJQzB3TGpFeE1ETTBOQ0F4TlM0eU5EazBJREF1TURjeE9EUXpJREUwTGpJNU5DQXdMalU0TXpFNE1rTXhNeTR6TXpnMUlERXVNRGswTlRJZ01USXVOVGM0TWlBeExqa3dOalVnTVRJdU1UTXdOeUF5TGpnNU16UTRRekV4TGpZNE16TWdNeTQ0T0RBME5TQXhNUzQxTnpNMUlEUXVPVGczTXprZ01URXVPREU0TmlBMkxqQTBNekF4UXprdU9EWXdPRGdnTlM0NU5EUTROeUEzTGprME5UY3lJRFV1TkRNMk1UTWdOaTR4T1RjME1TQTBMalUwT1RneVF6UXVORFE1TVNBekxqWTJNelVnTWk0NU1EWTNNaUF5TGpReE9UUXpJREV1Tmpjd05DQXdMamc1T0RNMk9FTXhMakEwTURjeklERXVPVGd5TXpZZ01DNDRORGM0TnpJZ015NHlOalUySURFdU1UTXhNU0EwTGpRNE5qYzVRekV1TkRFME16TWdOUzQzTURjNU9TQXlMakUxTWpNMElEWXVOemMxTXpJZ015NHhPVFE0T0NBM0xqUTNNVFE1UXpJdU5ERXhNamNnTnk0ME5EZ3lOaUF4TGpZME5EYzFJRGN1TWpNMk9EZ2dNQzQ1TmlBMkxqZzFOVEUzUXpBdU9UWWdOaTQ0TnpVek15QXdMamsySURZdU9EazJORFVnTUM0NU5pQTJMamt4TnpVM1F6QXVPVFl3TXpFeElEZ3VNRFUwTkRJZ01TNHpOVE00TlNBNUxqRTFOakUySURJdU1EY3pPRGNnTVRBdU1ETTFPVU15TGpjNU16ZzVJREV3TGpreE5UY2dNeTQzT1RZd05pQXhNUzQxTVRreklEUXVPVEV3TkNBeE1TNDNORFEwUXpRdU1UZzFORGNnTVRFdU9UUXlNaUF6TGpReU5EZzRJREV4TGprM01URWdNaTQyT0Rjd05DQXhNUzQ0TWpnNVF6TXVNREF4TmprZ01USXVPREEzTXlBekxqWXhOREkzSURFekxqWTJNamtnTkM0ME16a3hNU0F4TkM0eU56WkROUzR5TmpNNU5TQXhOQzQ0T0RreUlEWXVNalU1TnprZ01UVXVNakk1TWlBM0xqSTROek0ySURFMUxqSTBPRFZETlM0MU5ETTNOU0F4Tmk0Mk1UZzRJRE11TXpnNU9ESWdNVGN1TXpZeU55QXhMakUzTWpFMklERTNMak0yTURWRE1DNDNPREF6T0RjZ01UY3VNelU1TnlBd0xqTTRPRGs1TmlBeE55NHpNellnTUNBeE55NHlPRGswUXpJdU1qVXhPREVnTVRndU56TTBOU0EwTGpnM01Ua3lJREU1TGpVd01TQTNMalUwTnpVeUlERTVMalE1TnpRaUlHWnBiR3c5SWlNeE5EQkdNRFlpTHo0S1BDOXpkbWMrQ2dvPScpO1xufVxuXG4uc2VhcmNoLWljb24td2hpdGUge1xuICAgIHdpZHRoOiAxLjdyZW07XG4gICAgaGVpZ2h0OiAxLjdyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGNpSUdobGFXZG9kRDBpTVRjaUlIWnBaWGRDYjNnOUlqQWdNQ0F4TnlBeE55SWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTVRFZ01URnNOU0ExSWlCemRISnZhMlU5SWlObVptWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQanhqYVhKamJHVWdZM2c5SWpjaUlHTjVQU0kzSWlCeVBTSTJJaUJ6ZEhKdmEyVTlJaU5tWm1ZaUlITjBjbTlyWlMxM2FXUjBhRDBpTWlJdlBqd3ZjM1puUGc9PScpO1xufVxuXG4ubGVmdGFycm93LWJsYWNrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDAuOHJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9DSWdhR1ZwWjJoMFBTSXhNaUlnZG1sbGQwSnZlRDBpTUNBd0lEZ2dNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeHdZWFJvSUdROUlrMDNJREV4VERJZ05rdzNJREVpSUhOMGNtOXJaVDBpSXpFME1FWXdOaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrQ2p3dmMzWm5QZ289Jyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGZvbnQtc2l6ZTogMDtcbn1cblxuLnJpZ2h0YXJyb3ctYmxhY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMC44cmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweElERk1OaUEyVERFZ01URWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZm9udC1zaXplOiAwO1xufVxuXG4ueWVsbG93LWNoZWNrLWljb24ge1xuICAgIHdpZHRoOiA0cmVtO1xuICAgIGhlaWdodDogNHJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU5EQWlJR2hsYVdkb2REMGlOREFpSUhacFpYZENiM2c5SWpBZ01DQTBNQ0EwTUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQR05wY21Oc1pTQmplRDBpTWpBaUlHTjVQU0l5TUNJZ2NqMGlNakFpSUdacGJHdzlJaU5HUmtWRk1EQWlMejRLUEhCaGRHZ2daRDBpVFRFMElESXhMakkxVERFM0xqUXlPRFlnTWpWTU1qWWdNVFVpSUhOMGNtOXJaVDBpSXpFME1FWXdOaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrQ2p3dmMzWm5QZ289Jyk7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgIH1cbn1cblxuLmdyZXktdW5jaGVjay1pY29uIHtcbiAgICB3aWR0aDogNHJlbTtcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlOREFpSUdobGFXZG9kRDBpTkRBaUlIWnBaWGRDYjNnOUlqQWdNQ0EwTUNBME1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEdjZ2IzQmhZMmwwZVQwaU1DNDBJajRLUEdOcGNtTnNaU0JqZUQwaU1qQWlJR041UFNJeU1DSWdjajBpTWpBaUlHWnBiR3c5SWlNNU16bENRVEVpTHo0S1BISmxZM1FnZUQwaU1UUWlJSGs5SWpJMExqa3dPVEVpSUhkcFpIUm9QU0l4TlM0ME1qYzRJaUJvWldsbmFIUTlJakV1TlRReU56Z2lJSEo0UFNJd0xqYzNNVE00T1NJZ2RISmhibk5tYjNKdFBTSnliM1JoZEdVb0xUUTFJREUwSURJMExqa3dPVEVwSWlCbWFXeHNQU0lqTVRRd1JqQTJJaUJ6ZEhKdmEyVTlJaU14TkRCR01EWWlMejRLUEhKbFkzUWdlRDBpTVRVdU1Ea3dPQ0lnZVQwaU1UUWlJSGRwWkhSb1BTSXhOUzQwTWpjNElpQm9aV2xuYUhROUlqRXVOVFF5TnpnaUlISjRQU0l3TGpjM01UTTRPU0lnZEhKaGJuTm1iM0p0UFNKeWIzUmhkR1VvTkRVZ01UVXVNRGt3T0NBeE5Da2lJR1pwYkd3OUlpTXhOREJHTURZaUlITjBjbTlyWlQwaUl6RTBNRVl3TmlJdlBnbzhMMmMrQ2p3dmMzWm5QZ289Jyk7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgIH1cbn1cblxuLnJpZ2h0YXJyb3ctZGFyay1ibHVlIHtcbiAgICB3aWR0aDogMi4ycmVtO1xuICAgIGhlaWdodDogMS40cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpJaUlHaGxhV2RvZEQwaU1UUWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1pQXhOQ0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRUQWdOMGd5TUUweU1DQTNUREUwTGpJNE5UY2dNVTB5TUNBM1RERTBMakk0TlRjZ01UTWlJSE4wY205clpUMGlJek01TlRFNE1DSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbn1cblxuLnRpY2tlci1pY29uLXdoaXRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6MS40cmVtO1xuICAgIGhlaWdodDogMS4zcmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRRaUlHaGxhV2RvZEQwaU1UTWlJSFpwWlhkQ2IzZzlJakFnTUNBeE5DQXhNeUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRURWdOeTR5TlV3MExqUXlPRFUzSURFeFRERXpJREVpSUhOMGNtOXJaVDBpZDJocGRHVWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQZ284TDNOMlp6NEsnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgZm9udC1zaXplOiAwO1xufVxuXG4uZG91YmxlLWRpcmVjdHMtaWNvbiB7XG4gICAgd2lkdGg6IDIuNHJlbTtcbiAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qUWlJR2hsYVdkb2REMGlNamdpSUhacFpYZENiM2c5SWpBZ01DQXlOQ0F5T0NJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVElnTjBneU1rMHlNaUEzVERFMkxqSTROVGNnTVUweU1pQTNUREUyTGpJNE5UY2dNVE1pSUhOMGNtOXJaVDBpZDJocGRHVWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQZ284Y0dGMGFDQmtQU0pOTWpJZ01qRk1NaUF5TVUweUlESXhURGN1TnpFME1qa2dNamROTWlBeU1VdzNMamN4TkRJNUlERTFJaUJ6ZEhKdmEyVTlJbmRvYVhSbElpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUx6NEtQQzl6ZG1jK0NnPT0nKTtcbn1cblxuLmRyb3Bkb3duLWljb24ge1xuICAgIHdpZHRoOiAxLjJyZW07XG4gICAgaGVpZ2h0OiAwLjhyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVElpSUdobGFXZG9kRDBpT0NJZ2RtbGxkMEp2ZUQwaU1DQXdJREV5SURnaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStDanh3WVhSb0lHUTlJazB4TVNBeFREWWdOa3d4SURFaUlITjBjbTlyWlQwaWQyaHBkR1VpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGdvOEwzTjJaejQ9Jyk7XG59XG5cbi5kcm9wZG93bi1pY29uLWJsYWNrIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMC44cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRJaUlHaGxhV2RvZEQwaU9DSWdkbWxsZDBKdmVEMGlNQ0F3SURFeUlEZ2lJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweE1TQXhURFlnTmt3eElERWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbn1cblxuLnJpZ2h0LWNoZXJ2b24taWNvbiB7XG4gICAgd2lkdGg6IDAuOHJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9DSWdhR1ZwWjJoMFBTSXhNaUlnZG1sbGQwSnZlRDBpTUNBd0lEZ2dNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeHdZWFJvSUdROUlrMHhJREZNTmlBMlRERWdNVEVpSUhOMGNtOXJaVDBpZDJocGRHVWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQZ284TDNOMlp6NEsnKTtcbn1cblxuLnJpZ2h0LWNoZXJ2b24taWNvbi1kYXJrIHtcbiAgICB3aWR0aDogMC44cmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweElERk1OaUEyVERFZ01URWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbn1cblxuLmxlZnQtY2hlcnZvbi1pY29uIHtcbiAgICB3aWR0aDogMC44cmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWswM0lERXhURElnTmt3M0lERWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnb0snKTtcbn1cblxuLmxlZnQtY2hlcnZvbi1pY29uLXllbGxvdyB7XG4gICAgd2lkdGg6IDAuOHJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9DSWdhR1ZwWjJoMFBTSXhNaUlnZG1sbGQwSnZlRDBpTUNBd0lEZ2dNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeHdZWFJvSUdROUlrMHhJREZNTmlBMlRERWdNVEVpSUhOMGNtOXJaVDBpSTBaR1JVVXdNQ0lnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrQ2p3dmMzWm5QZ289Jyk7XG59XG5cbi5hcnRpY2xlLWljb24tZGFyayB7XG4gICAgd2lkdGg6IDEuN3JlbTtcbiAgICBoZWlnaHQ6IDIuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UY2lJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXhOeUF5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1ptbHNiQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmpiR2x3TFhKMWJHVTlJbVYyWlc1dlpHUWlJR1E5SWsweElERklNVEl1TlRBeE5rd3hOaUEwTGpnME9UazJWakl4U0RGV01WcE5NUzQzTURNeE1pQXhMamMyTURjeFZqSXdMakl6T1ROSU1UVXVNamsyT1ZZMUxqUXhNREV6U0RFeExqazBObFl4TGpjMk1EY3hTREV1TnpBek1USmFUVEV5TGpZME9USWdNaTR5TkRjME9GWTBMalkwT1RRelNERTBMamd6TVRoTU1USXVOalE1TWlBeUxqSTBOelE0V2sweE1pNDVOamM0SURjdU9EQXlORGhJTkM0d016SXlNMVkzTGpBME1UYzRTREV5TGprMk56aFdOeTQ0TURJME9GcE5NVEl1T1RZM09DQXhNQzQzTURJM1NEUXVNRE15TWpOV09TNDVOREU1T0VneE1pNDVOamM0VmpFd0xqY3dNamRhVFRFeUxqazJOemdnTVRNdU5qQXlPVWcwTGpBek1qSXpWakV5TGpnME1qSklNVEl1T1RZM09GWXhNeTQyTURJNVdrMHhNaTQ1TmpjNElERTJMalV3TXpGSU5DNHdNekl5TTFZeE5TNDNOREkwU0RFeUxqazJOemhXTVRZdU5UQXpNVm9pSUdacGJHdzlJaU14TkRCR01EWWlJSE4wY205clpUMGlZbXhoWTJzaUlITjBjbTlyWlMxM2FXUjBhRDBpTUM0MUlpOCtDand2YzNablBnbz0nKTtcbn1cblxuLnBvaS1pY29uIHtcbiAgICB3aWR0aDogMS4zcmVtO1xuICAgIGhlaWdodDogMS42cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRNaUlHaGxhV2RvZEQwaU1UWWlJSFpwWlhkQ2IzZzlJakFnTUNBeE15QXhOaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk5pNDFNREF4TmlBekxqTXhPVEkzWXkweExqY3pORGMzSURBdE15NHhORFl5T0NBeExqUXdOVE15TFRNdU1UUTJNamdnTXk0eE16STRPQ0F3SURFdU56STNOVFlnTVM0ME1URXpNeUF6TGpFek1qZzRJRE11TVRRMk1qZ2dNeTR4TXpJNE9ITXpMakUwTmpJM0xURXVOREExTXpJZ015NHhORFl5TnkwekxqRXpNamc0WXpBdE1TNDNNamN6T0MweExqUXhNVFV4TFRNdU1UTXlPRGd0TXk0eE5EWXlOeTB6TGpFek1qZzRlbTB3SURVdU1UUTJPRFZqTFRFdU1URTFNalVnTUMweUxqQXlNall5TFM0NU1ETTFMVEl1TURJeU5qSXRNaTR3TVRRZ01DMHhMakV4TURVdU9UQTNNemN0TWk0d01UUWdNaTR3TWpJMk1pMHlMakF4TkNBeExqRXhOVEkxSURBZ01pNHdNakkyTVM0NU1ETTFJREl1TURJeU5qRWdNaTR3TVRRZ01DQXhMakV4TURVdExqa3dOek0ySURJdU1ERTBMVEl1TURJeU5qRWdNaTR3TVRSNklpQm1hV3hzUFNJak1UUXdSakEySWk4K1BIQmhkR2dnWkQwaVRURXhMamd6TXpjZ01pNDNPREU1TVVNeE1DNDJNRGNnTVM0d01UUXdPU0E0TGpZMk1qZzNJREFnTmk0MU1EQXhPU0F3WXkweUxqRTJNalk0SURBdE5DNHhNRFk0SURFdU1ERTBNRGt0TlM0ek16TTFJREl1TnpneE9URXRNUzR5TWpBMk5qUTVJREV1TnpVNE9EY3RNUzQxTURJMU1qRWdNeTQ1T0RVMk5TMHVOelUxTkRZMUlEVXVPVFV6TGpFNU9UZ3lMalV6TnpJMUxqVXhOelExTkNBeExqQTFPVEl4TGprME1UZ3lOU0F4TGpVME9ESTViRFF1TnpFNU5ERWdOUzQxTVRrNVl5NHhNRFkzTkM0eE1qUTVMakkyTXpFeUxqRTVOamt1TkRJM056TXVNVGsyT1M0eE5qUTJNU0F3SUM0ek1qQTVPUzB1TURjeUxqUXlOemN6TFM0eE9UWTViRFF1TnpFNE1EZ3ROUzQxTVRnMFl5NDBNall6TFM0ME9URTRPUzQzTkRNMUxURXVNREV6TWprdU9UUXhOaTB4TGpVME5qSXpMamMwT0RZdE1TNDVOekE1TVM0ME5qWTRMVFF1TVRrM05qa3RMamMxTXprdE5TNDVOVFkxTm5wdExTNHlPVGd5SURVdU5UWTBOelZqTFM0eE5USTRMalF4TVRFNExTNDBNREl5TGpneE56Y3lMUzQzTkRFZ01TNHlNRGczTlMwdU1EQXhMakF3TURrekxTNHdNREU1TGpBd01UZzNMUzR3TURJM0xqQXdNMHcyTGpVd01ERTVJREUwTGpVM056Y2dNaTR5TURVNUlEa3VOVFUxTWpWakxTNHpNemcyTFM0ek9UQTJPUzB1TlRnNE1EY3RMamM1TnpFNUxTNDNOREl6T0MweExqSXhNak14TFM0Mk1UYzRNVGt0TVM0Mk1qY3dNeTB1TXpnek16VXRNeTQwTmpneE5pNDJNamN6T1MwMExqa3lORGMxSURFdU1ERXpPVEV0TVM0ME5qRXlOU0F5TGpZeU1URXpMVEl1TWprNU16RWdOQzQwTURreU9DMHlMakk1T1RNeElERXVOemc0TVRJZ01DQXpMak01TlRFMUxqZ3pPREF6SURRdU5EQTVNVEVnTWk0eU9Ua3pNU0F4TGpBeE1Ea2dNUzQwTlRZMU9TQXhMakkwTlRZZ015NHlPVGMzTWk0Mk1qWXlJRFF1T1RJNE5EZDZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQQzl6ZG1jKycpO1xufVxuXG4uc3RyZWV0LWljb24sXG4uYnVpbGRpbmduYW1lLWljb24ge1xuICAgIHdpZHRoOiAxLjhyZW07XG4gICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGdpSUdobGFXZG9kRDBpTVRZaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T0NBeE5pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRBZ09DNHlOakV5TmtNd0lEZ3VNall4TWpZZ01DNDFOalF5TkRrZ09TNHpNamMwTnlBeExqYzVORFkzSURndU1qWXhNalpNT1M0eE5EYzRPU0F4TGpnNE16RXlUREUyTGpBME1qRWdPQzR5TWpFMk5FTXhOeTQwTmpZMElEa3VNamMwT0RnZ01UZ2dPQzR5TWpFMk5DQXhPQ0E0TGpJeU1UWTBURGt1TVRRM09Ea2dNRXd3SURndU1qWXhNalphSWlCbWFXeHNQU0lqTVRRd1JqQTJJaTgrQ2p4d1lYUm9JR1E5SWsweUxqUTBOelE0SURFMUxqVTROelJETWk0ME5EYzBPQ0F4TlM0MU9EYzBJREl1TkRNeE5Ea2dNVFlnTWk0NE1qUTFNeUF4TmtNekxqTXhNelVnTVRZZ055NHpOakU0TkNBeE5TNDVPVFExSURjdU16WXhPRFFnTVRVdU9UazBOVXczTGpNMk9EVWdNVEl1TVRneU5VTTNMak0yT0RVZ01USXVNVGd5TlNBM0xqTXdORFUxSURFeExqVTFOREVnTnk0NE9UazBOQ0F4TVM0MU5UUXhTRGt1TnpneU1EUkRNVEF1TkRnMU5TQXhNUzQxTlRReElERXdMalEwTWpJZ01USXVNVGd5TlNBeE1DNDBOREl5SURFeUxqRTRNalZNTVRBdU5ETTBNaUF4TlM0NU9ESXlRekV3TGpRek5ESWdNVFV1T1RneU1pQXhOQzR5TnpJM0lERTFMams0TWpJZ01UUXVPRGMxTmlBeE5TNDVPREl5UXpFMUxqTTNORFlnTVRVdU9UZ3lNaUF4TlM0ek5URTVJREUxTGpRMk9EWWdNVFV1TXpVeE9TQXhOUzQwTmpnMlZqZ3VORFF3T0RsTU9TNHdPVEkxTmlBeUxqY3pNakV5VERJdU5EUTNORGdnT0M0ME5EQTRPVll4TlM0MU9EYzBXaUlnWm1sc2JEMGlJekUwTUVZd05pSXZQZ284TDNOMlp6NEsnKTtcbn1cblxuLmxvYy1pY29uIHtcbiAgICB3aWR0aDogMS4zcmVtO1xuICAgIGhlaWdodDogMS42cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRNaUlHaGxhV2RvZEQwaU1UWWlJSFpwWlhkQ2IzZzlJakFnTUNBeE15QXhOaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk5pNDFNREF4TmlBekxqTXhPVEkzWXkweExqY3pORGMzSURBdE15NHhORFl5T0NBeExqUXdOVE15TFRNdU1UUTJNamdnTXk0eE16STRPQ0F3SURFdU56STNOVFlnTVM0ME1URXpNeUF6TGpFek1qZzRJRE11TVRRMk1qZ2dNeTR4TXpJNE9ITXpMakUwTmpJM0xURXVOREExTXpJZ015NHhORFl5TnkwekxqRXpNamc0WXpBdE1TNDNNamN6T0MweExqUXhNVFV4TFRNdU1UTXlPRGd0TXk0eE5EWXlOeTB6TGpFek1qZzRlbTB3SURVdU1UUTJPRFZqTFRFdU1URTFNalVnTUMweUxqQXlNall5TFM0NU1ETTFMVEl1TURJeU5qSXRNaTR3TVRRZ01DMHhMakV4TURVdU9UQTNNemN0TWk0d01UUWdNaTR3TWpJMk1pMHlMakF4TkNBeExqRXhOVEkxSURBZ01pNHdNakkyTVM0NU1ETTFJREl1TURJeU5qRWdNaTR3TVRRZ01DQXhMakV4TURVdExqa3dOek0ySURJdU1ERTBMVEl1TURJeU5qRWdNaTR3TVRSNklpQm1hV3hzUFNJak1UUXdSakEySWk4K1BIQmhkR2dnWkQwaVRURXhMamd6TXpjZ01pNDNPREU1TVVNeE1DNDJNRGNnTVM0d01UUXdPU0E0TGpZMk1qZzNJREFnTmk0MU1EQXhPU0F3WXkweUxqRTJNalk0SURBdE5DNHhNRFk0SURFdU1ERTBNRGt0TlM0ek16TTFJREl1TnpneE9URXRNUzR5TWpBMk5qUTVJREV1TnpVNE9EY3RNUzQxTURJMU1qRWdNeTQ1T0RVMk5TMHVOelUxTkRZMUlEVXVPVFV6TGpFNU9UZ3lMalV6TnpJMUxqVXhOelExTkNBeExqQTFPVEl4TGprME1UZ3lOU0F4TGpVME9ESTViRFF1TnpFNU5ERWdOUzQxTVRrNVl5NHhNRFkzTkM0eE1qUTVMakkyTXpFeUxqRTVOamt1TkRJM056TXVNVGsyT1M0eE5qUTJNU0F3SUM0ek1qQTVPUzB1TURjeUxqUXlOemN6TFM0eE9UWTViRFF1TnpFNE1EZ3ROUzQxTVRnMFl5NDBNall6TFM0ME9URTRPUzQzTkRNMUxURXVNREV6TWprdU9UUXhOaTB4TGpVME5qSXpMamMwT0RZdE1TNDVOekE1TVM0ME5qWTRMVFF1TVRrM05qa3RMamMxTXprdE5TNDVOVFkxTm5wdExTNHlPVGd5SURVdU5UWTBOelZqTFM0eE5USTRMalF4TVRFNExTNDBNREl5TGpneE56Y3lMUzQzTkRFZ01TNHlNRGczTlMwdU1EQXhMakF3TURrekxTNHdNREU1TGpBd01UZzNMUzR3TURJM0xqQXdNMHcyTGpVd01ERTVJREUwTGpVM056Y2dNaTR5TURVNUlEa3VOVFUxTWpWakxTNHpNemcyTFM0ek9UQTJPUzB1TlRnNE1EY3RMamM1TnpFNUxTNDNOREl6T0MweExqSXhNak14TFM0Mk1UYzRNVGt0TVM0Mk1qY3dNeTB1TXpnek16VXRNeTQwTmpneE5pNDJNamN6T1MwMExqa3lORGMxSURFdU1ERXpPVEV0TVM0ME5qRXlOU0F5TGpZeU1URXpMVEl1TWprNU16RWdOQzQwTURreU9DMHlMakk1T1RNeElERXVOemc0TVRJZ01DQXpMak01TlRFMUxqZ3pPREF6SURRdU5EQTVNVEVnTWk0eU9Ua3pNU0F4TGpBeE1Ea2dNUzQwTlRZMU9TQXhMakkwTlRZZ015NHlPVGMzTWk0Mk1qWXlJRFF1T1RJNE5EZDZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQQzl6ZG1jKycpO1xufVxuXG4ubWFyay1pY29uIHtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQWlJR2hsYVdkb2REMGlNVElpSUhacFpYZENiM2c5SWpBZ01DQXhNQ0F4TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NUzR3TURFd05TQTJMamN4T1RrNVREVXVNVEl4TVRjZ01URXVOVEpzTkM0eE1qQXdPUzAwTGpnd01EQXhRekV3TGpZNE16TWdNaTR4TVRFNU9TQTNMakl6TlRrMkxqY3hPVGs0TlNBMUxqRXlNVEUzTGpNMU9UazROUzR4TVRBNU5EY3VPRE01T1RnMUxqRTBNalk1TnlBMExqazFPVGs1SURFdU1EQXhNRFVnTmk0M01UazVPWG9pSUdacGJHdzlJaU14TkRCR01EWWlMejQ4Y0dGMGFDQmtQU0pOTlM0d01EQXlPU0F5TGpRNE9UUTBZeTB4TGpNek5EUXpJREF0TWk0ME1qQXlNU0F4TGpBMU16azVMVEl1TkRJd01qRWdNaTR6TkRrMk5uTXhMakE0TlRZeklESXVNelE1TmpVZ01pNDBNakF5TVNBeUxqTTBPVFkxWXpFdU16TTBOVGdnTUNBeUxqUXlNREl4TFRFdU1EVXpPVGdnTWk0ME1qQXlNUzB5TGpNME9UWTFJREF0TVM0eU9UVTFNeTB4TGpBNE5UYzRMVEl1TXpRNU5qWXRNaTQwTWpBeU1TMHlMak0wT1RZMmVtMHdJRE11T0RZd01UUmpMUzQ0TlRjNE9DQXdMVEV1TlRVMU9EWXRMalkzTnpZekxURXVOVFUxT0RZdE1TNDFNVEExTVNBd0xTNDRNekk0Tnk0Mk9UYzVPQzB4TGpVeE1EVWdNUzQxTlRVNE5pMHhMalV4TURVdU9EVTNPRGtnTUNBeExqVTFOVGcyTGpZM056WXpJREV1TlRVMU9EWWdNUzQxTVRBMUlEQWdMamd6TWpnNExTNDJPVGM1TnlBeExqVXhNRFV4TFRFdU5UVTFPRFlnTVM0MU1UQTFNWG9pSUdacGJHdzlJaU14TkRCR01EWWlMejQ4Y0dGMGFDQmtQU0pOT1M0eE1ESTRNeUF5TGpBNE5qUXpRemd1TVRVNU1qSXVOell3TlRjZ05pNDJOak0zTlNBd0lEVXVNREF3TVRVZ01DQXpMak16TmpVMUlEQWdNUzQ0TkRFd055NDNOakExTnk0NE9UYzBOVFlnTWk0d09EWTBNeTB1TURReE5URTVNaUF6TGpRd05UVTVMUzR5TlRnek16SWdOUzR3TnpVMk55NHpNVFl6TWpjZ05pNDFOVEV4T0dNdU1UVXpOekE0TGpRd01qazBMak01T0RBME1TNDNPVFEwTVM0M01qUTBPRE1nTVM0eE5qRXlObXd6TGpZek1ETXhJRFF1TVRNNU9EWmpMakE0TWpFeExqQTVNemN1TWpBeU5DNHhORGMzTGpNeU9UQXpMakUwTnpjdU1USTJOaklnTUNBdU1qUTJPVEV0TGpBMU5DNHpNamt3TWkwdU1UUTNOMnd6TGpZeU9UTXROQzR4TXpnM05HTXVNekkzT0RrdExqTTJPRGsxTGpVM01Ua3hMUzQzTmpBd01TNDNNalF6TkMweExqRTFPVGN4TGpVM05UYzVMVEV1TkRjNE1UZ3VNelU0T1RrdE15NHhORGd5TmkwdU5UYzVPVGd0TkM0ME5qYzBNbnB0TFM0eU1qa3pOQ0EwTGpFM016VTJZeTB1TVRFM05UUXVNekE0TXprdExqTXdPVFEwTGpZeE16STVMUzQxTnpBd05DNDVNRFkxTmkwdU1EQXdOek11TURBd056RXRMakF3TVRRMUxqQXdNVFF4TFM0d01ESXdNeTR3TURJeU5Xd3RNeTR6TURFeU55QXpMamMyTkRVdE15NHpNRE16TFRNdU56WTJPRFpqTFM0eU5qQTBOaTB1TWprek1ESXRMalExTWpNMkxTNDFPVGM0T1MwdU5UY3hNRGN0TGprd09USTBMUzQwTnpVeU5ERXRNUzR5TWpBeU55MHVNamswT0RneExUSXVOakF4TVRFdU5EZ3lOakV0TXk0Mk9UTTFOa015TGpNNE9ETXlJREV1TkRZM055QXpMall5TkRZMUxqZ3pPVEUxTmlBMUxqQXdNREUxTGpnek9URTFObU14TGpNM05UUTNJREFnTWk0Mk1URTJOUzQyTWpnMU1qUWdNeTR6T1RFMklERXVOekkwTkRnMExqYzNOelkwSURFdU1Ea3lORFV1T1RVNE1UVWdNaTQwTnpNeU9TNDBPREUzTkNBekxqWTVOak0xZWlJZ1ptbHNiRDBpSXpFME1FWXdOaUl2UGp4d1lYUm9JR1E5SWsweUxqVWdOQzQ0TURBd01tTXdMVEV1TXpJek5ETWdNUzR4TWpFMU55MHlMalFnTWk0MUxUSXVOSE15TGpVZ01TNHdOelkzTVNBeUxqVWdNaTQwWXpBZ01TNHpNak0wTkMweExqRXlNVFF5SURJdU5DMHlMalVnTWk0MGN5MHlMalV0TVM0d056WTFOaTB5TGpVdE1pNDBlaUlnWm1sc2JEMGlJMlptWmlJdlBqd3ZjM1puUGc9PScpO1xufVxuXG4uY2xvc2UtaWNvbiB7XG4gICAgd2lkdGg6IDEuNnJlbTtcbiAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UWWlJR2hsYVdkb2REMGlNVFlpSUhacFpYZENiM2c5SWpBZ01DQXhOaUF4TmlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEpsWTNRZ2VUMGlNVFF1TVRReU1pSWdkMmxrZEdnOUlqSXdJaUJvWldsbmFIUTlJaklpSUhKNFBTSXhJaUIwY21GdWMyWnZjbTA5SW5KdmRHRjBaU2d0TkRVZ01DQXhOQzR4TkRJeUtTSWdabWxzYkQwaWQyaHBkR1VpTHo0S1BISmxZM1FnZUQwaU1TNDBNVFF4T0NJZ2QybGtkR2c5SWpJd0lpQm9aV2xuYUhROUlqSWlJSEo0UFNJeElpQjBjbUZ1YzJadmNtMDlJbkp2ZEdGMFpTZzBOU0F4TGpReE5ERTRJREFwSWlCbWFXeHNQU0ozYUdsMFpTSXZQZ284TDNOMlp6NEsnKTtcbn1cblxuLmFjY2Vzc2liaWxpdHktaWNvbiB7XG4gICAgd2lkdGg6IDMuMXJlbTtcbiAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16RWlJR2hsYVdkb2REMGlNeklpSUhacFpYZENiM2c5SWpBZ01DQXpNU0F6TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlHTnNhWEF0Y25Wc1pUMGlaWFpsYm05a1pDSWdaRDBpVFRFd0xqSTNNVElnTmk0Mk1qVXdNbWd4TGpJMU1URjJOQzQyT0RjME9HZzJMamc0TVhZeExqSTFhQzAyTGpnNE1YWTBMakEyTWpab09TNHhNakEyYkRRdU9UTWdPQzQyTWpBeElETXVNalkyT0MweExqQTRPQzR6T1RVMklERXVNVGcxT0MwMExqSXpPVGdnTVM0ME1USXhMVFV1TURjNE5pMDRMamc0YUMwNUxqWTBOVGRXTmk0Mk1qVXdNbm9pSUdacGJHdzlJaU14TkRCR01EWWlMejQ4Y0dGMGFDQmtQU0pOTnk0eU5UVXhOeUF4TVM0M01qWTVRek11TlRnM016UWdNVE11TWpFd05DQXhJREUyTGpnd016TWdNU0F5TVdNd0lEVXVOVEl5T0NBMExqUTRNVEEwSURFd0lERXdMakF3T0RjZ01UQWdOQzR5TURBeklEQWdOeTQzT1RZMExUSXVOVGcxTWlBNUxqSTRNVEV0Tmk0eU5XZ3RNaTR3TmpVeFl5MHhMak0xTmpJZ01pNDFPVGs1TFRRdU1EYzROaUEwTGpNM05TMDNMakl4TmlBMExqTTNOUzAwTGpRNU1USXpJREF0T0M0eE16SXdPQzB6TGpZek56Y3RPQzR4TXpJd09DMDRMakV5TlNBd0xUTXVNVE0wTmlBeExqYzNOalUzTFRVdU9EVTBOaUEwTGpNM09EVTFMVGN1TWpBNU4zWXRNaTR3TmpNMGVrMHhOQzR3TWpRM0lEUXVNVEkxTURKak1DQXhMamN5TlRnNUxURXVOREF3TXlBekxqRXlOVEF4TFRNdU1USTNOeUF6TGpFeU5UQXhMVEV1TnpJM016a2dNQzB6TGpFeU56Y3lMVEV1TXprNU1USXRNeTR4TWpjM01pMHpMakV5TlRBeFF6Y3VOelk1TWpnZ01pNHpPVGt4TWlBNUxqRTJPVFl4SURFZ01UQXVPRGszSURGak1TNDNNamMwSURBZ015NHhNamMzSURFdU16azVNVElnTXk0eE1qYzNJRE11TVRJMU1ESjZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQSEJoZEdnZ1kyeHBjQzF5ZFd4bFBTSmxkbVZ1YjJSa0lpQmtQU0pOTVRBdU1qY3hNaUEyTGpZeU5UQXlhREV1TWpVeE1YWTBMalk0TnpRNGFEWXVPRGd4ZGpFdU1qVm9MVFl1T0RneGRqUXVNRFl5Tm1nNUxqRXlNRFpzTkM0NU15QTRMall5TURFZ015NHlOalk0TFRFdU1EZzRMak01TlRZZ01TNHhPRFU0TFRRdU1qTTVPQ0F4TGpReE1qRXROUzR3TnpnMkxUZ3VPRGhvTFRrdU5qUTFOMVkyTGpZeU5UQXllaUlnYzNSeWIydGxQU0lqTURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUx6NDhjR0YwYUNCa1BTSk5OeTR5TlRVeE55QXhNUzQzTWpZNVF6TXVOVGczTXpRZ01UTXVNakV3TkNBeElERTJMamd3TXpNZ01TQXlNV013SURVdU5USXlPQ0EwTGpRNE1UQTBJREV3SURFd0xqQXdPRGNnTVRBZ05DNHlNREF6SURBZ055NDNPVFkwTFRJdU5UZzFNaUE1TGpJNE1URXROaTR5TldndE1pNHdOalV4WXkweExqTTFOaklnTWk0MU9UazVMVFF1TURjNE5pQTBMak0zTlMwM0xqSXhOaUEwTGpNM05TMDBMalE1TVRJeklEQXRPQzR4TXpJd09DMHpMall6TnpjdE9DNHhNekl3T0MwNExqRXlOU0F3TFRNdU1UTTBOaUF4TGpjM05qVTNMVFV1T0RVME5pQTBMak0zT0RVMUxUY3VNakE1TjNZdE1pNHdOak0wZWsweE5DNHdNalEzSURRdU1USTFNREpqTUNBeExqY3lOVGc1TFRFdU5EQXdNeUF6TGpFeU5UQXhMVE11TVRJM055QXpMakV5TlRBeExURXVOekkzTXprZ01DMHpMakV5TnpjeUxURXVNems1TVRJdE15NHhNamMzTWkwekxqRXlOVEF4UXpjdU56WTVNamdnTWk0ek9Ua3hNaUE1TGpFMk9UWXhJREVnTVRBdU9EazNJREZqTVM0M01qYzBJREFnTXk0eE1qYzNJREV1TXprNU1USWdNeTR4TWpjM0lETXVNVEkxTURKNklpQnpkSEp2YTJVOUlpTXdNREFpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZ289Jyk7XG59IiwiOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbmZvcm0sIC50YWJwYW5lbC1maWx0ZXIge1xuICAgICYubWFyZ2luLXRvcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgaW5wdXQsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1udW1iZXJdLFxuICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgaW5wdXRbdHlwZT1zZWFyY2hdLFxuICAgIGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuICAgIGlucHV0W3R5cGU9ZW1haWxdLFxuICAgIGlucHV0W3R5cGU9dGVsXSxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEsXG4gICAgaW5wdXRbdHlwZT1kYXRlXSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42MTU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIC8vIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHdpbGwtY2hhbmdlOiBib3gtc2hhZG93O1xuICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTI1cyBsaW5lYXI7XG4gICAgICAgIHBhZGRpbmc6IDEuOXJlbSAxLjVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgLy8gJjpmb2N1cyB7XG4gICAgICAgIC8vICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjFyZW0gJHB1cnBsZSxcbiAgICAgICAgLy8gICAgICAgICAgICAgMCAwIDAuNXJlbSAwLjFyZW0gJHB1cnBsZTtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0Z3JleS1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS40cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaG9ydCB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjJyZW0gMC44cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1USWlJR2hsYVdkb2REMGlPQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlJRGdpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeHdZWFJvSUdROUlrMHhNU0F4VERZZ05rd3hJREVpSUhOMGNtOXJaVDBpSXpFME1FWXdOaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrQ2p3dmMzWm5QZ289Jyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDJyZW0gY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgIH1cblxuICAgIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgfVxuXG4gICAgLmNoZWNrYm94LXN0YW5kYXJkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjNyZW07XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMi44cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMi44cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHJnYmEoJGJsYWNrLCAwLjc1KTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UUWlJR2hsYVdkb2REMGlNVE1pSUhacFpYZENiM2c5SWpBZ01DQXhOQ0F4TXlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NU0EzTGpJMVREUXVNalF6SURFeElERXpJREVpSUhOMGNtOXJaVDBpSXprME1EQXdNQ0lnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrUEM5emRtYysnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNHJlbSAxLjNyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuOHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NXJlbTtcbiAgICB9XG5cbiAgICAucmVxIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1yZWQ7XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgICYuZG91YmxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1jaGVja2JveCB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42MTU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5mb3JtIC5mb3JtLWdyb3VwLmVycm9yIHtcbiAgICBpbnB1dCB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSAkdGhlbWUtYnJpZ2h0LXJlZDtcbiAgICB9XG5cbiAgICAuZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAxLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWJyaWdodC1yZWQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1mb3JtLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogNzJyZW07XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuc2VhcmNoLWZpZWxkIHtcbiAgICAgICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UY2lJR2hsYVdkb2REMGlNVGNpSUhacFpYZENiM2c5SWpBZ01DQXhOeUF4TnlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NVEVnTVRGc05TQTFJaUJ6ZEhKdmEyVTlJaU14TkRCR01EWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQanhqYVhKamJHVWdZM2c5SWpjaUlHTjVQU0kzSWlCeVBTSTJJaUJ6ZEhKdmEyVTlJaU14TkRCR01EWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxN3B4IDE3cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuc2VhcmNoLWZpZWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLXNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gICAgJiA+ICoge1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDUwJSk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgICYgPiAqOmZpcnN0LWNoaWxkIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbiAgICB9XG5cbiAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG4gICAgfVxufVxuXG4uaW5wdXQtcmFkaW8tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogLTFyZW0gLTEuNXJlbTtcblxuICAgIC5pbnB1dC1yYWRpbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDMzLjMzJSk7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDdyZW07XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMS4wNXJlbSAxLjVyZW0gMS4wNXJlbSA1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuNyk7XG5cbiAgICAgICAgICAgIHNwYW4uYm9sZGVyIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcblxuICAgICAgICAgICAgICAgICY6b25seS1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmICsgc3Bhbjpub3QoOmVtcHR5KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuNyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTk5OTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxLjA1cmVtO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEuMDVyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQWlJR2hsYVdkb2REMGlPU0lnZG1sbGQwSnZlRDBpTUNBd0lERXdJRGtpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK0NqeHdZWFJvSUdROUlrMHhJRFF1TnpWTU15NHlPRFUzTVNBM1REa2dNU0lnYzNSeWIydGxQU0ozYUdsMFpTSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggOXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxLjA1cmVtO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEuMDVyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAgICAgJjpmb2N1cyArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3IgYXV0byA1cHg7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1jb2xvcjogLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICAgICAgICAgICAgICAgIG91dGxpbmUtc3R5bGU6IGF1dG87XG4gICAgICAgICAgICAgICAgb3V0bGluZS13aWR0aDogNXB4OztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgIHNwYW4uYm9sZGVyLCBzcGFuICsgc3Bhbjpub3QoOmVtcHR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIC5pbnB1dC1yYWRpbyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMjAlKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5pbnB1dC1yYWRpbyB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg1MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbWFsbCAuaW5wdXQtcmFkaW8ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMzMuMzMlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMzMuMzMlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0wLjVyZW07XG5cbiAgICAgICAgLmlucHV0LXJhZGlvIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbWFsbCAuaW5wdXQtcmFkaW8ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW5wdXQtY2hlY2tib3gtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogLTFyZW0gLTEuNXJlbTtcblxuICAgIC5pbnB1dC1jaGVja2JveCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDMzLjMzJSk7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDdyZW07XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMS4wNXJlbSAxLjVyZW0gMS4wNXJlbSA1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuNyk7XG5cbiAgICAgICAgICAgIHNwYW4uYm9sZGVyIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcblxuICAgICAgICAgICAgICAgICY6b25seS1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmICsgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEuMDVyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMS4wNXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGxpZ2h0Z3JleS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRBaUlHaGxhV2RvZEQwaU9TSWdkbWxsZDBKdmVEMGlNQ0F3SURFd0lEa2lJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweElEUXVOelZNTXk0eU9EVTNNU0EzVERrZ01TSWdjM1J5YjJ0bFBTSjNhR2wwWlNJZ2MzUnliMnRsTFhkcFpIUm9QU0l5SWk4K0Nqd3ZjM1puUGdvPScpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCA5cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEuMDVyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMS4wNXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICAgICAmOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDVweDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1zdHlsZTogYXV0bztcbiAgICAgICAgICAgICAgICBvdXRsaW5lLXdpZHRoOiA1cHg7O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgc3Bhbi5ib2xkZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMC41cmVtO1xuXG4gICAgICAgIC5pbnB1dC1jaGVja2JveCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0LWNoZWNrYm94LXNpbXBsZS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAuaW5wdXQtY2hlY2tib3gtc2ltcGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0wLjRyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRJaUlHaGxhV2RvZEQwaU1URWlJSFpwWlhkQ2IzZzlJakFnTUNBeE1pQXhNU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk1TQTJMak16TXpNelREUXVNakUwTWprZ09TQXhNU0F4SWlCemRISnZhMlU5SWlNeU1UTTBOaklpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDExcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0wLjRyZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICAgICAmOmZvY3VzICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDVweDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLWNvbG9yOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gICAgICAgICAgICAgICAgb3V0bGluZS1zdHlsZTogYXV0bztcbiAgICAgICAgICAgICAgICBvdXRsaW5lLXdpZHRoOiA1cHg7O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXRlcGlja2VyLWZvcm0tZ3JvdXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZGF0ZXBpY2tlci1maWVsZCB7XG4gICAgICAgIC8vIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGVwaWNrZXItYnV0dG9uIHtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1Ua2lJR2hsYVdkb2REMGlNakFpSUhacFpYZENiM2c5SWpBZ01DQXhPU0F5TUNJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhjR0YwYUNCa1BTSk5NVGd1TmpZd055QXhMak16TXpNemFDMHlMak0zTlZZdU16TXpNek16UXpFMkxqSTROVGN1TVRRNUlERTJMakV6TkRFZ01DQXhOUzQ1TkRZMElEQm9MVEl1TXpjMVl5MHVNVGczTmlBd0xTNHpNemt6TGpFME9TMHVNek01TXk0ek16TXpNek4yTGprNU9UazVOMGcxTGpjMk56ZzJWaTR6TXpNek16TkROUzQzTmpjNE5pNHhORGtnTlM0Mk1UWXlJREFnTlM0ME1qZzFOeUF3YUMweUxqTTNOV010TGpFNE56WXlJREF0TGpNek9USTRMakUwT1MwdU16TTVNamd1TXpNek16TXpkaTQ1T1RrNU9UZElMak16T1RJNE5rTXVNVFV4TmpZeElERXVNek16TXpNZ01DQXhMalE0TWpNeklEQWdNUzQyTmpZMk4xWXhPUzQyTmpZM1F6QWdNVGt1T0RVeExqRTFNVFkyTVNBeU1DQXVNek01TWpnMklESXdTREU0TGpZMk1EZGpMakU0TnpZZ01DQXVNek01TXkwdU1UUTVMak16T1RNdExqTXpNek5XTVM0Mk5qWTJOMk13TFM0eE9EUXpOQzB1TVRVeE55MHVNek16TXpRdExqTXpPVE10TGpNek16TTBlbTB0TkM0M05TMHVOalkyTmpZemFERXVOamsyTkZZeUxqWTJOalkzYUMweExqWTVOalJXTGpZMk5qWTJOM3B0TFRFd0xqVXhOemcwSURCb01TNDJPVFkwTTFZeUxqWTJOalkzU0RNdU16a3lPRFpXTGpZMk5qWTJOM3BOTGpZM09EVTNNU0F5U0RJdU56RTBNamwyTVdNd0lDNHhPRFF6TXk0eE5URTJOaTR6TXpNek15NHpNemt5T0M0ek16TXpNMmd5TGpNM05XTXVNVGczTmpNZ01DQXVNek01TWprdExqRTBPUzR6TXpreU9TMHVNek16TXpOV01tZzNMalEyTkRJMGRqRmpNQ0F1TVRnME16TXVNVFV4Tnk0ek16TXpNeTR6TXprekxqTXpNek16YURJdU16YzFZeTR4T0RjM0lEQWdMak16T1RNdExqRTBPUzR6TXprekxTNHpNek16TTFZeWFESXVNRE0xTjNZelNDNDJOemcxTnpGV01ucHRNQ0F4Tnk0ek16TXpWalV1TmpZMk5qZElNVGd1TXpJeE5GWXhPUzR6TXpNelNDNDJOemcxTnpGNklpQm1hV3hzUFNJak1UUXdSakEySWk4K1BIQmhkR2dnWkQwaVRUSXVNemMxSURkb01UUXVNalYyTGpZMk5qWTNTREl1TXpjMVZqZDZUVEl1TXpjMUlERXdMak16TXpOb01UUXVNalZXTVRGSU1pNHpOelYyTFM0Mk5qWTNlazB5TGpNM05TQXhNeTQyTmpZM2FERTBMakkxZGk0Mk5qWTJTREl1TXpjMWRpMHVOalkyTm5wTk1pNHpOelVnTVRkb01UUXVNalYyTGpZMk5qZElNaTR6TnpWV01UZDZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQSEJoZEdnZ1pEMGlUVEl1TXpjMUlEZG9MalkzT0RVM2RqRXdMalkyTmpkSU1pNHpOelZXTjNwTk1UWXVNamcxTnlBM2FDNDJOemcyZGpFd0xqWTJOamRvTFM0Mk56ZzJWamQ2VFRjdU1USTFJRGRvTGpZM09EVTNkakV3TGpZMk5qZElOeTR4TWpWV04zcE5NVEV1TlRNMU55QTNhQzQyTnpnMmRqRXdMalkyTmpkb0xTNDJOemcyVmpkNklpQm1hV3hzUFNJak1UUXdSakEySWk4K1BDOXpkbWMrJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5kYXRlcGlja2VyLWZpZWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXRlcGlja2VyLWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmpvdXJuZXktcGxhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIG1hcmdpbi10b3A6IC0zcmVtO1xuXG4gICAgLmludHJvLXRleHQge1xuICAgICAgICBjb2xvcjogcmdiYSgkbGlnaHRlci1ibGFjaywgMC40Mik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbTtcblxuICAgICAgICAmICsgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogM3JlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRDREN0Q5IDAlLCByZ2JhKDIxMiwgMjE1LCAyMTcsIDApIDEwMCUpO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cblxuICAgIC5taWRkbGUtd3JhcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCAwIDVyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtM3JlbTtcbiAgICAgICAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEycmVtKTtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgM3JlbSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5qb3VybmV5LXBsYW4tZm9ybSAuZm91ci1jb2xzIHtcbiAgICAgICAgbWFyZ2luOiAtMS41cmVtIC0xLjVyZW0gLTMuNXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuXG4gICAgICAgICYgPiAqOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAyOS4yJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDI5LjIlKTtcbiAgICAgICAgICAgIC8vIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIC8vIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+ICo6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDIwLjglO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMjAuOCUpO1xuICAgICAgICAgICAgLy8gZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgLy8gZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMuNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJiA+IGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoLXJlc3VsdHMge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA0cHgpO1xuICAgICAgICAgICAgbGVmdDogMS4zcmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNnJlbSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNHJlbSAxLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDByZW07XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4uc21hbGxlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRsaWdodGdyZXktY29sb3IsIDAuNSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHRncmV5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1pZGRsZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50LWJsb2NrLWxheW91dCAubGFyZ2Utd3JhcCAmLFxuICAgICAgICAuY29udGVudC1ibG9jay1sYXlvdXQgLm1pZGRsZS13cmFwICYge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5taWRkbGUtd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9sKSB7XG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuam91cm5leS1wbGFuLWZvcm0gLmZvdXItY29scyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMS41cmVtO1xuXG4gICAgICAgICAgICAmID4gKiwgJiA+ICo6bnRoLWNoaWxkKDMpLCAmID4gKjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg1MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgICAgICYgPiBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5pbnRyby10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1pZGRsZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmpvdXJuZXktcGxhbi1mb3JtIC5mb3VyLWNvbHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgJiA+ICosICYgPiAqOm50aC1jaGlsZCgzKSwgJiA+ICo6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LWJsb2NrLWxheW91dCAubGFyZ2Utd3JhcCAmIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTMycmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtYmxvY2stbGF5b3V0IC5taWRkbGUtd3JhcCAmIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uam91cm5leS1wbGFuLmFpcnBvcnQge1xuICAgIG1hcmdpbi10b3A6IC03cmVtO1xuXG4gICAgLmFpcnBvcnQtdGFicyB7XG4gICAgICAgIGhlaWdodDogN3JlbTtcblxuICAgICAgICAudGFiLWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMzMyU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwiZmFsc2VcIl06Zm9jdXMsXG4gICAgICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiXTpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1pZGRsZS13cmFwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMnJlbSk7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDdyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmpvdXJuZXktcGxhbi1mb3JtIC5mb3VyLWNvbHMge1xuICAgICAgICBwYWRkaW5nLXRvcDogNy41cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAubWlkZGxlLXdyYXA6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgLmFpcnBvcnQtdGFicyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMC41cmVtIHNvbGlkICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgICAgICAudGFiLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuam91cm5leS1wbGFuLWZvcm0gLmZvdXItY29scyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmFpcnBvcnQtdGFicyAudGFiLWJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5qb3VybmV5LXBsYW4tZm9ybSAuZm91ci1jb2xzIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGYtZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3VibWl0LWdyb3VwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG5cbiAgICAgICAgLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNnJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1ncm91cCArIHAge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJtaXQtZ3JvdXAgIHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29uY2Vzc2lvbi1mb3JtIHtcbiAgICB1bCBsaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxldC1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZm9ybS1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCArIHVsLCBwICsgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ib3JkZXJlZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBjb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPW51bWJlcl0sXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICBpbnB1dFt0eXBlPXNlYXJjaF0sXG4gICAgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4gICAgaW5wdXRbdHlwZT1lbWFpbF0sXG4gICAgaW5wdXRbdHlwZT10ZWxdLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSxcbiAgICBpbnB1dFt0eXBlPWRhdGVdIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgICAgICYud2l0aC1yZXEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgIC5yZXEtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gJHRoZW1lLWJyaWdodC1yZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mcm9tLWlucHV0LWdyb3VwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1NHJlbTtcbiAgICB9XG5cbiAgICAuZGF0ZXBpY2tlci1mb3JtLWdyb3VwIHtcbiAgICAgICAgLmRhdGVwaWNrZXItZmllbGQge1xuICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRhdGVwaWNrZXItYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhbGYtd2lkdGgge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuXG4gICAgICAgIHAgKyBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC50d28tY29scyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmV4Y2xhbWF0aW9uLWljb24tcmVkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG5cbiAgICAuaW1wb3J0YW50LXRleHQge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWJyaWdodC1yZWQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnR3by1jb2xzIHtcbiAgICAgICAgbWFyZ2luOiAtMnJlbSAycmVtIC0ycmVtIC0ycmVtO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBwIHN0cm9uZyB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwgKyBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgICAubm90aWNlLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxNDI5O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZHJvcHpvbmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG5cbiAgICAgICAgJi5lcnJvciB7XG4gICAgICAgICAgICAuZHJvcHpvbmUge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSAkdGhlbWUtYnJpZ2h0LXJlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1icmlnaHQtcmVkO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0LWNoZWNrYm94LXNpbXBsZS1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgbGFiZWwgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCArIC5pbnB1dC1jaGVja2JveC1zaW1wbGUtZ3JvdXAsIC5pbnB1dC1jaGVja2JveC1zaW1wbGUtZ3JvdXAgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy41cmVtO1xuICAgIH1cblxuICAgIC5zaWduYXR1cmUtdGV4dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgLnNpZ25hdHVyZS1pbnB1dC1ncm91cCB7XG4gICAgICAgIG1hcmdpbjogLTAuNzVyZW0gLTJyZW07XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxNDI5O1xuICAgICAgICAgICAgY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mcm9tLWlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDYwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuc2lnbmF0dXJlLW5vdGljZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lnbmF0dXJlLW5vdGljZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuc2lnbmF0dXJlLW5vdGljZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjZyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3VibWl0LWdyb3VwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMS41cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG5cbiAgICAgICAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAmOmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuZm9ybS1zZWN0aW9uIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC50YWJsZXQtb25seSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZGVza3RvcC1vbmx5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1zZWN0aW9uIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhhbGYtd2lkdGgge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR3by1jb2xzIC5pbXBvcnRhbnQtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpZ25hdHVyZS1pbnB1dC1ncm91cCAuZnJvbS1pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLCAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmZvcm0tc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYm9yZGVyZWQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhhbGYtd2lkdGgge1xuICAgICAgICAgICAgcCArIG9sIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1kcm9wem9uZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCArIC5pbnB1dC1jaGVja2JveC1zaW1wbGUtZ3JvdXAsIC5pbnB1dC1jaGVja2JveC1zaW1wbGUtZ3JvdXAgKyBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuc3VibWl0LWdyb3VwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi50YWJsZS1jb250YWluZXIge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgIHRoZWFkIHRoIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAyLjJyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtY29udGVudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAyLjJyZW07XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoZWFkIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICAgICAgJiArICoge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjByZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Ym9keSB0ciA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwcmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICAgICAgICAgICAmICsgKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDJyZW0pO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG5cbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUgdGhlYWQgdGgge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlIHRib2R5IHRyID4gKiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFibGUtY29udGFpbmVyLnRpbWV0YWJsZSB7XG4gICAgLy8gdGgucHJvdl8xIHtcbiAgICAvLyAgICAgYmFja2dyb3VuZDogcmdiYSgwLDE5MCwyMDUsMSkgIWltcG9ydGFudDtcbiAgICAvLyAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAvLyB9XG4gICAgLy8gdGgucHJvdl8yIHtcbiAgICAvLyAgICAgYmFja2dyb3VuZDogcmdiYSgwLDEwNywxODIsMSkgIWltcG9ydGFudDtcbiAgICAvLyAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAvLyB9XG4gICAgLy8gdGQucHJvdl8xIHtcbiAgICAvLyAgICAgYmFja2dyb3VuZDogcmdiYSgwLDE5MCwyMDUsMC4xNSkgIWltcG9ydGFudDtcbiAgICAvLyB9XG4gICAgLy8gdGQucHJvdl8yIHtcbiAgICAvLyAgICAgYmFja2dyb3VuZDogcmdiYSgwLDEwNywxODIsMC4xNSkgIWltcG9ydGFudDtcbiAgICAvLyB9XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNS4zcmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNi4ycmVtO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNi4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgc3Bhbi5zY3JvbGwtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRpdmlkZWRsaW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRJM0lpQm9aV2xuYUhROUlqRXlJaUIyYVdWM1FtOTRQU0l3SURBZ01USTNJREV5SWlCbWFXeHNQU0p1YjI1bElpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaVBqeHdZWFJvSUdacGJHdzlJaU5FTkVRM1JEa2lJR1E5SWswd0lEVm9NVEkwZGpKSU1Ib2lMejQ4Y0dGMGFDQmtQU0pOTVRJd0lERnNOU0ExTFRVZ05TSWdjM1J5YjJ0bFBTSWpSRFJFTjBRNUlpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUx6NDhMM04yWno0SycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjcpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbGlnaHRlci1ibGFjaywgMC4wNSk7XG5cbiAgICAgICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoZWFkIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmICsgKiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2LjNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkgdHIgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHJlbTtcblxuICAgICAgICAgICAgJiArICoge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNi4zcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRib2R5IHRyOm50aC1jaGlsZChvZGQpID4gKjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRlci1ibGFjaywgMC4wNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICB0aGVhZCB0aDpmaXJzdC1jaGlsZCwgdGJvZHkgdHIgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjByZW07XG5cbiAgICAgICAgICAgICAgICAmICsgKiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNi4zcmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDZyZW0pO1xuXG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgIHRoZWFkIHRoIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUuNnJlbTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGJvZHkgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgICAgICAgICAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGJvZHkgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50YWJsZS1jb250YWluZXIucHJpY2VzIHtcbiAgICAudGlja2V0LXByaWNlLXRhYmxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdy1ncm91cCArIC50YWJsZS1yb3ctZ3JvdXAsXG4gICAgICAgIC50YWJsZS1yb3cgKyAudGFibGUtcm93IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+ICo6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxOC4zMSU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTguMzElKTtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgLy93b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiAqOm50aC1jaGlsZChuICsgMikge1xuICAgICAgICAgICAgICAgIC8vIGZsZXgtYmFzaXM6IDExLjY3JTtcbiAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMS42NyUpO1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciwgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuOHJlbSAycmVtO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGdyZXktY29sb3IsIDAuMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnRlcm0tcHJpY2VzIHtcbiAgICAgICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIHtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci10YWJsZS1yb3cge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAudGFibGUtcm93IC5jb2wtaGVhZGVyIHAge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAudGFibGUtcm93IC50YWJsZS1jZWxsIHtcbiAgICAgICAgICAgIHAsIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBbaGlkZGVuXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9sKSB7XG4gICAgICAgIC50aWNrZXQtcHJpY2UtdGFibGUge1xuICAgICAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgJiA+ICo6bnRoLWNoaWxkKDEpLCAmID4gKjpudGgtY2hpbGQobiArIDIpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZmxleC1iYXNpczogMTIuNSU7XG4gICAgICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIGllLWZsZXgtZml4KDEyLjUlKTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeChub25lKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgIC50aWNrZXQtcHJpY2UtdGFibGUge1xuICAgICAgICAgICAgJiA+ICosICYgPiAqOmxhc3QtY2hpbGQsIC50YWJsZS1yb3ctZ3JvdXAgKyAudGFibGUtcm93LWdyb3VwLCAudGFibGUtcm93ICsgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGFibGUtcm93LWdyb3VwICsgLnRhYmxlLXJvdy1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgICYgPiAqOm50aC1jaGlsZCgxKSwgJiA+ICo6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRpdmlkZWRsaW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyAudGFibGUtcm93IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciwgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGFibGUtcm93IC50YWJsZS1jZWxsIHtcbiAgICAgICAgICAgICAgICBzcGFuICsgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnJlbSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkaXZpZGVkbGluZS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC50aWNrZXQtcHJpY2UtdGFibGUge1xuICAgICAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciwgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1yb3cgLnRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjM1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFibGUtY29udGFpbmVyLmFpcnBvcnQtaW5mbyB7XG4gICAgJiA+IC5oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICB9XG5cbiAgICAuYWlycG9ydC1pbmZvLXRhYmxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLnRhYmxlLXJvdy1ncm91cCArIC50YWJsZS1yb3ctZ3JvdXAsXG4gICAgICAgIC50YWJsZS1yb3cgKyAudGFibGUtcm93IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgyNSUpO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+ICo6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDNyZW0gMS42cmVtO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRncmV5LWNvbG9yLCAwLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciBwIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdyZXktdW5jaGVjay1pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMS45cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS45cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMC44cmVtIGF1dG8gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJvdXRlLXRleHQsIC50aW1lLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmR1cmF0aW9uLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg1MCUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAmLnRpbWUtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU3O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2hpZGRlbl0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAuYWlycG9ydC1pbmZvLXRhYmxlIHtcbiAgICAgICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC44cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDZyZW0pO1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAuaGVhZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFpcnBvcnQtaW5mby10YWJsZSB7XG4gICAgICAgICAgICAudGFibGUtcm93LWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpICsgLnRhYmxlLXJvdy1ncm91cCxcbiAgICAgICAgICAgIC50YWJsZS1yb3cgKyAudGFibGUtcm93IHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1yb3ctZ3JvdXA6Zmlyc3QtY2hpbGQgKyAudGFibGUtcm93LWdyb3VwIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGFibGUtcm93IHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KG5vbmUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAqOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciwgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgLmdyZXktdW5jaGVjay1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAubW9iaWxlLW9ubHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aWNrZXRzLXRhYmxlLWNvbnRhaW5lciB7XG4gICAgLnRpY2tldHMtdGFibGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAudGFibGUtcm93LWdyb3VwICsgLnRhYmxlLXJvdy1ncm91cCxcbiAgICAgICAgLnRhYmxlLXJvdyArIC50YWJsZS1yb3cge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAudGFibGUtcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgICAmID4gKjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMzJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgzMyUpO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiA+ICo6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTYuNzUlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDE2Ljc1JSk7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAyLjVyZW0gMnJlbTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGFibGUtcm93IC5jb2wtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaS5pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuNyk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaS5pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTguM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFtoaWRkZW5dIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLnRpY2tldHMtdGFibGUge1xuICAgICAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgJiA+ICo6bnRoLWNoaWxkKC1uKzQpOm50aC1jaGlsZChuKzIpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTUlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxNSUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAqOm50aC1jaGlsZCg1KSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDIyJTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMjIlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyAuY29sLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBpLmljb24ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi4ycmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAudGlja2V0cy10YWJsZSB7XG4gICAgICAgICAgICAudGFibGUtcm93LWdyb3VwICsgLnRhYmxlLXJvdy1ncm91cCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyArIC50YWJsZS1yb3cge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoJGJvcmRlci1jb2xvciwgMC4zKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMCAxLjVyZW07XG5cbiAgICAgICAgICAgICAgICAmID4gKjpudGgtY2hpbGQoMSksICYgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gKjpudGgtY2hpbGQoLW4rNCk6bnRoLWNoaWxkKG4rMikge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDMzLjMzJSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+ICo6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaGVhZGVyLXRhYmxlLXJvdyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1yb3cgLmNvbC1oZWFkZXIsIC50YWJsZS1yb3cgLnRhYmxlLWNlbGwge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1jZWxsLmljb24tdGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgICAgIGkuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9iaWxlLW9ubHkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLm5vdC1hdmFpbGFibGUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLXJvdyAudGFibGUtY2VsbCB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGlja2V0cy10YWJsZS1jb250YWluZXIuZnVsbCB7XG4gICAgdGFibGUge1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgdGQsIHRoIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICB0aGVhZCB0ciB0aCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxOC43NSU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmg0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIC5oNCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICB9XG5cbiAgICAgICAgaS5pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cbiAgICAgICAgICAgICYgKyAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHIgPiAqIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cblxuICAgICAgICB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmID4gKjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICB0aGVhZCB0ciB0aCB7XG4gICAgICAgICAgICB3aWR0aDogMjIuNSU7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5mdWxsLXRpY2tldHMtbGlzdCB7XG4gICAgICAgICAgICAuYXZhaWxhYmxlLXR5cGVzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC50eXBlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaS5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkuaWNvbiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5ub3QtYXZhaWxhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aWNrZXQtaXRlbSB7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW5mby1pdGVtIHAgKyBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyAudGlja2V0LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJvcmRlci1jb2xvciwgMC4zKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYWN0aW9ucyAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjByZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpICB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjRyZW07XG5cbiAgICAgICAgLmZ1bGwtdGlja2V0cy1saXN0IC50aWNrZXQtaXRlbSB7XG4gICAgICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjdGlvbnMgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgJiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50LXJpY2gge1xuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAyLjJyZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5kYXRlcGlja2VyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogMTlweCAyMHB4O1xuICAgICAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAyMHB4IGNlbnRlcjtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGtpSUdobGFXZG9kRDBpTWpBaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T1NBeU1DSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4Y0dGMGFDQmtQU0pOTVRndU5qWXdOeUF4TGpNek16TXphQzB5TGpNM05WWXVNek16TXpNelF6RTJMakk0TlRjdU1UUTVJREUyTGpFek5ERWdNQ0F4TlM0NU5EWTBJREJvTFRJdU16YzFZeTB1TVRnM05pQXdMUzR6TXprekxqRTBPUzB1TXpNNU15NHpNek16TXpOMkxqazVPVGs1TjBnMUxqYzJOemcyVmk0ek16TXpNek5ETlM0M05qYzROaTR4TkRrZ05TNDJNVFl5SURBZ05TNDBNamcxTnlBd2FDMHlMak0zTldNdExqRTROell5SURBdExqTXpPVEk0TGpFME9TMHVNek01TWpndU16TXpNek16ZGk0NU9UazVPVGRJTGpNek9USTROa011TVRVeE5qWXhJREV1TXpNek16TWdNQ0F4TGpRNE1qTXpJREFnTVM0Mk5qWTJOMVl4T1M0Mk5qWTNRekFnTVRrdU9EVXhMakUxTVRZMk1TQXlNQ0F1TXpNNU1qZzJJREl3U0RFNExqWTJNRGRqTGpFNE56WWdNQ0F1TXpNNU15MHVNVFE1TGpNek9UTXRMak16TXpOV01TNDJOalkyTjJNd0xTNHhPRFF6TkMwdU1UVXhOeTB1TXpNek16UXRMak16T1RNdExqTXpNek0wZW0wdE5DNDNOUzB1TmpZMk5qWXphREV1TmprMk5GWXlMalkyTmpZM2FDMHhMalk1TmpSV0xqWTJOalkyTjNwdExURXdMalV4TnpnMElEQm9NUzQyT1RZME0xWXlMalkyTmpZM1NETXVNemt5T0RaV0xqWTJOalkyTjNwTkxqWTNPRFUzTVNBeVNESXVOekUwTWpsMk1XTXdJQzR4T0RRek15NHhOVEUyTmk0ek16TXpNeTR6TXpreU9DNHpNek16TTJneUxqTTNOV011TVRnM05qTWdNQ0F1TXpNNU1qa3RMakUwT1M0ek16a3lPUzB1TXpNek16TldNbWczTGpRMk5ESTBkakZqTUNBdU1UZzBNek11TVRVeE55NHpNek16TXk0ek16a3pMak16TXpNemFESXVNemMxWXk0eE9EYzNJREFnTGpNek9UTXRMakUwT1M0ek16a3pMUzR6TXpNek0xWXlhREl1TURNMU4zWXpTQzQyTnpnMU56RldNbnB0TUNBeE55NHpNek16VmpVdU5qWTJOamRJTVRndU16SXhORll4T1M0ek16TXpTQzQyTnpnMU56RjZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQSEJoZEdnZ1pEMGlUVEl1TXpjMUlEZG9NVFF1TWpWMkxqWTJOalkzU0RJdU16YzFWamQ2VFRJdU16YzFJREV3TGpNek16Tm9NVFF1TWpWV01URklNaTR6TnpWMkxTNDJOalkzZWsweUxqTTNOU0F4TXk0Mk5qWTNhREUwTGpJMWRpNDJOalkyU0RJdU16YzFkaTB1TmpZMk5ucE5NaTR6TnpVZ01UZG9NVFF1TWpWMkxqWTJOamRJTWk0ek56VldNVGQ2SWlCbWFXeHNQU0lqTVRRd1JqQTJJaTgrUEhCaGRHZ2daRDBpVFRJdU16YzFJRGRvTGpZM09EVTNkakV3TGpZMk5qZElNaTR6TnpWV04zcE5NVFl1TWpnMU55QTNhQzQyTnpnMmRqRXdMalkyTmpkb0xTNDJOemcyVmpkNlRUY3VNVEkxSURkb0xqWTNPRFUzZGpFd0xqWTJOamRJTnk0eE1qVldOM3BOTVRFdU5UTTFOeUEzYUM0Mk56ZzJkakV3TGpZMk5qZG9MUzQyTnpnMlZqZDZJaUJtYVd4c1BTSWpNVFF3UmpBMklpOCtQQzl6ZG1jKycpO1xuICAgICB9XG5cbiAgICAuZGF0ZXBpY2tlci1kaWFsb2cge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBwYWRkaW5nOiAwIDIuNHJlbSAyLjRyZW07XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDM1LjRyZW07XG4gICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIFxuXG4gICAgICAgIC5kYXRlcGlja2VyLWhlYWRlciB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC55ZWFyLWdyb3VwLCAubW9udGgtZ3JvdXAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0LjJyZW07XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB9ICAgICAgICAgIFxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRhdGUtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUuZGF0ZXMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGVhZCB0ciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0Z3JleS1jb2xvcjtcblxuICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0LjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGVhZCB0ciB0aCBzcGFuLCAuZGF0ZS1idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhlYWQgdHIgdGggc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kYXRlLWNlbGwge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0LjJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0LjJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kYXRlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0LjJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0LjJyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRncmV5LWNvbG9yLCAwLjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkXSwgJlt0YWJpbmRleD1cIjBcIl0ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRncmV5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRpc2FibGVkLCAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkbGlnaHRlci1ibGFjaywgMC4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5kYXRlcGlja2VyLWRpYWxvZyB7IFxuICAgICAgICAgICAgLnJpZ2h0LWFsaWduICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAuZGF0ZXBpY2tlci1kaWFsb2cge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxLjVyZW0gMS41cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgICAgICAgICB3aWR0aDogMjlyZW07XG5cbiAgICAgICAgICAgIHRhYmxlLmRhdGVzIHtcbiAgICAgICAgICAgICAgICB0aGVhZCB0ciB0aCwgLmRhdGUtY2VsbCwgLmRhdGUtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmlnaHQtYWxpZ24gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIucXVvdGUtYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBtYXJnaW46IDZyZW0gMDtcbiAgICAvLyBwYWRkaW5nOiA1cmVtIDA7XG5cbiAgICAucXVvdGUtY29udGVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDcuMnJlbTtcbiBcbiAgICAgICAgJiA+IHAge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAvLyB0b3A6IDVyZW07XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDUuMnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNS4ycmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRnaUlHaGxhV2RvZEQwaU1UWWlJSFpwWlhkQ2IzZzlJakFnTUNBeE9DQXhOaUlnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0OGNHRjBhQ0JrUFNKTk5pNDNPVFU1TWlBeE5sWTVMakV4TmpJNFNETXVNVGd6Tmpkak1DMHVOekF5T0RRdU1EUXdPREl0TVM0ME1EVTJPUzR4TWpJME5TMHlMakV3T0RVekxqRXlNalExTFM0M05EUXhPQzR6TWpZMU15MHhMalF3TlRZNExqWXhNakkxTFRFdU9UZzBORGt1TWpnMU56RXRMalUzT0RneExqWTFNekEyTFRFdU1ETXpOVGtnTVM0eE1ESXdOQzB4TGpNMk5ETTBMalEwT0RrNExTNHpOekl4SURFdU1ESXdOREV0TGpVMU9ERTBJREV1TnpFME1qZ3RMalUxT0RFMFZqQmpMVEV1TVRReU9EVWdNQzB5TGpFME1qZzFMakkwT0RBMk15MHpJQzQzTkRReE9EZ3RMamcxTnpFMExqUTVOakV5TWkweExqVTNNVFF5SURFdU1UVTNOakl5TFRJdU1UUXlPRFVnTVM0NU9EUTBPVEl0TGpVek1EWXlMamd5TmpnNExTNDVNemczTnpnZ01TNDNPVGcwTlMweExqSXlORFE1TXlBeUxqa3hORGN6UXk0eE1qSTBORGtnTmk0M01UZ3pOU0F3SURjdU9EYzFPVGNnTUNBNUxqRXhOakk0VmpFMmFEWXVOemsxT1RKNlRURTRJREUyVmprdU1URTJNamhvTFRNdU5qRXlNbU13TFM0M01ESTROQzR3TkRBNExURXVOREExTmprdU1USXlOQzB5TGpFd09EVXpMakV5TWpVdExqYzBOREU0TGpNeU5qVXRNUzQwTURVMk9DNDJNVEl6TFRFdU9UZzBORGt1TWpnMU55MHVOVGM0T0RFdU5qVXpMVEV1TURNek5Ua2dNUzR4TURJdE1TNHpOalF6TkM0ME5Ea3RMak0zTWpFZ01TNHdNakEwTFM0MU5UZ3hOQ0F4TGpjeE5ETXRMalUxT0RFMFZqQmpMVEV1TVRReU9TQXdMVEl1TVRReU9TNHlORGd3TmpNdE15QXVOelEwTVRnNExTNDROVGN5TGpRNU5qRXlNaTB4TGpVM01UVWdNUzR4TlRjMk1qSXRNaTR4TkRJNUlERXVPVGcwTkRreUxTNDFNekEyTGpneU5qZzRMUzQ1TXpnNElERXVOems0TkRVdE1TNHlNalExSURJdU9URTBOek10TGpJME5Ea2dNUzR3TnpRNU5DMHVNelkzTXlBeUxqSXpNalUyTFM0ek5qY3pJRE11TkRjeU9EZFdNVFpJTVRoNklpQm1hV3hzUFNJalptWm1JaTgrUEM5emRtYysnKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdW90ZS1hdXRob3Ige1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIC5hdXRob3ItbmFtZS10ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICYgKyBzcGFuLCAmICsgcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IFxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogLTAuNSk7XG4gICAgICAgIC8vIHdpZHRoOiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgKyAxMjByZW0gKiAwLjY4NzUpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6ICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC5jb250ZW50LWNvbCAmIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5tYWluLWNvbnRlbnQgJiB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgKyAxMjByZW0gKiAwLjY4NzUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxhcmdlLXdyYXAgPiAmOjpiZWZvcmV7XG4gICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTMycmVtKSAqIC0wLjUpO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxuICAgIFxuICAgIC5taWRkbGUtd3JhcCA+ICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxuICAgIFxuICAgIC5iZy1kYXJrLWJsdWUgJiB7XG4gICAgICAgIC5xdW90ZS1jb250ZW50IHAsIC5xdW90ZS1jb250ZW50IC5xdW90ZS1hdXRob3IgLmF1dGhvci1uYW1lLXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vICY6OmJlZm9yZSB7XG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIC5jb250ZW50LWNvbCAmIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogLTAuNSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tY29udGVudCAmIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygoMTIwcmVtICogMC42ODc1IC0gMTAwJSkgKiAtMC41ICsgKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhcmdlLXdyYXAgPiAmOjpiZWZvcmV7XG4gICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAvLyBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgICAvLyBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgLy8gcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICAgICAgLy8gLnF1b3RlLWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgICAgIC8vICAgICB0b3A6IDNyZW07XG4gICAgICAgIC8vIH1cblxuICAgICAgICAuY29udGVudC1jb2wgJiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzcmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLWNvbnRlbnQgJiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3ICogMC42ODc1IC0gMTAwJSkgKiAtMC41KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAqIDAuNjg3NSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWlkZGxlLXdyYXAgPiAmOjpiZWZvcmV7XG4gICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLmNvbnRlbnQtY29sICYge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1jb250ZW50ICYge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEwMCUpICogLTAuNSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLy8gbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgIC5xdW90ZS1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEuMnJlbSBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAvLyB0b3A6IDNyZW07XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQtY29sICYsIC5tYWluLWNvbnRlbnQgJiwgLmxhcmdlLXdyYXAgPiAmLCAubWlkZGxlLXdyYXAgPiAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIC5xdW90ZS1jb250ZW50OjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFyZ2Utd3JhcCAudHdvLWNvbHMgJiwgLm1pZGRsZS13cmFwIC50d28tY29scyAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIC5xdW90ZS1jb250ZW50OjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmNvb2tpZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNHMgbGluZWFyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmhpZGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5pbm5lciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgfVxufVxuXG4uaGVhZGVyIHtcbiAgICAvLyBwb3NpdGlvbjogZml4ZWQ7XG4gICAgLy8gdG9wOiAwO1xuICAgIC8vIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIC8vIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvci00O1xuXG4gICAgLm1vYmlsZS1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMHJlbTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICB6LWluZGV4OiAxMjA7XG5cbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAubWVudS1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcblxuICAgICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC4ycmVtO1xuICAgICAgICAgICAgICAgIHdpbGwtY2hhbmdlOiB0b3AsIG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMjVzIGxpbmVhciwgb3BhY2l0eSAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyLjNyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDMuN3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgICAgLy8gdHJhbnNpdGlvbjogcGFkZGluZyAwLjI1cyBsaW5lYXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAubWlkZGxlLXdyYXAge1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgaGVpZ2h0OiA2LjJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgICAgIGltZywgc3ZnIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY28tbG9nb3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gKjpmaXJzdC1jaGlsZCBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ib3R0b20ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgbGluZWFyO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtY29udGVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICAubGFyZ2Utd3JhcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2aWdhdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRncmV5LWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDBweCAwcHggMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNnJlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1hcmdpbi1sZWZ0IDAuMjVzIGxpbmVhcjtcblxuICAgICAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgLy8gZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgICYubWVnYS1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUsIHVsLm5hdi1kcm9wZG93biBsaTo6YmVmb3JlLCB1bC5tZWdhLW5hdi1saXN0ID4gbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAxO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNHJlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwcHggMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgPiBhOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmID4gYTpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJiA+IGFbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6b25seS1jaGlsZDpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6b25seS1jaGlsZDpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyLjA1cmVtIDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTMwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMi4wNXJlbSAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1bC5uYXYtZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdWwubmF2LWRyb3Bkb3duID4gbGksIHVsLm1lZ2EtbmF2LWxpc3QgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS44cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm5vdCgubW9iaWxlLW9ubHkpICsgbGkgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRib3JkZXItY29sb3IsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGE6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLm5hdi1kcm9wZG93biwgLm1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDNweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLm5hdi1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI3cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdWwubWVnYS1uYXYtbGlzdCA+IGxpIC5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWFjY29yZGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbSAwIDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW5hdi1saXN0LnR3by1jb2xzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbSAwIC0xcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gbGk6bnRoLWNoaWxkKDIpIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLWZvb3RlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCA0cHggNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY3RhLmljb24tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNjcm9sbGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuXG4gICAgICAgIC50b3Age1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICAgICAgICAgICAgIGltZywgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvLWxvZ29zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAgICAgICAgICYgPiAubGFyZ2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0Z3JleS1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdmlnYXRpb24sIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdmlnYXRpb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3ZnID4gKiB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgLmJvdHRvbSAubGFyZ2Utd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmJvdHRvbSAubmF2aWdhdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmID4gdWwgPiBsaSB7XG4gICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAycmVtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vICYgPiBhW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgLy8gICAgIGxlZnQ6IC0xcmVtO1xuICAgICAgICAgICAgICAgIC8vICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICAgICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUgLm1lbnUtYWNjb3JkaW9uIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogM3JlbSAzcmVtIDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcblxuICAgICAgICAubW9iaWxlLW9ubHkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cbiAgICAgICAgICAgICYucGFyZW50LWNvcHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRib3JkZXItY29sb3IsIDAuMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVnYS1tZW51ICYucGFyZW50LWNvcHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS10b2dnbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgJiA+IHN2ZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEuMnJlbSAwIDA7XG5cbiAgICAgICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRvcCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIC5taWRkbGUtd3JhcCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgaW1nLCBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvLWxvZ29zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgdG9wOiA2cmVtO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkaXZpZGVkbGluZS1jb2xvcjtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAvLyBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDEyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjJzIGxpbmVhcjtcblxuICAgICAgICAgICAgJiA+IC5mbGV4IHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdmlnYXRpb24ge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gYSBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhLCAmID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweElERk1OaUEyVERFZ01URWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRpdmlkZWRsaW5lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bC5uYXYtZHJvcGRvd24sIC5tZWdhLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgNnJlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwICsgNnJlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJhY2stYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkaXZpZGVkbGluZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhLCAmID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgKyBsaSwgJiArIC5wYXJlbnQtY29weSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gYSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHVsLm5hdi1kcm9wZG93biA+IGxpLCB1bC5tZWdhLW5hdi1saXN0ID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYTpub3QoLmJ1dHRvbik6bm90KC5iYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVnYS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFjay1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tb2JpbGUtb25seS5wYXJlbnQtY29weSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1hY2NvcmRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDE0LjVyZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiAxMDAgLSAxNC41cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsLm1lZ2EtbmF2LWxpc3QgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhOm5vdCguYnV0dG9uKSwgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW5hdi1saXN0LnR3by1jb2xzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVnYS1mb290ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDguNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY3RhLmljb24tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZWFkZXIge1xuICAgICYuc2Nyb2xsaW5nIHtcbiAgICAgICAgJiArIGRpdiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNi4zcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiB+IC50aWNrZXQtZmluZGVyLWJsb2NrIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIxLjNyZW07XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgJiArICoge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgfiAudGlja2V0LWZpbmRlci1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgICYgfiAudGlja2V0LWZpbmRlci1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA5cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBtZW51IG9wZW5cbmJvZHkubWVudW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaGVhZGVyIHtcbiAgICAgICAgLm1lbnUtdG9nZ2xlIC5tZW51LWljb24gPiBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9sKSB7XG4gICAgICAgICAgICAudG9wIC5jby1sb2dvcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm90dG9tIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTRyZW0pO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiAxMDAgLSAxNHJlbSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkaXZpZGVkbGluZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIGZvb3RlciAqL1xuLmZvb3RlciB7XG4gICAgLm1vYmlsZS1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAudG9wIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgIC5zb2NpYWxzIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogNnJlbSAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXJlbSBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zb2NpYWwtaWNvbnMgbGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZyZW0gMDtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGlzdC1oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIuNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLWxpc3QgbGkge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kYXRlLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmV3cy1pdGVtIGE6aG92ZXIsICYubmV3cy1pdGVtIGE6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAmID4qOm5vdCguZGF0ZS1pY29uLWNvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5uZXdzLWl0ZW0gKyAubmV3cy1pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNlZS1tb3JlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNvcHlyaWdodCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ib3R0b20ge1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDAgNnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgICAgIC5mbGV4IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvLWxvZ29zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG5cbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY28tbG9nb3MgKyBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDg1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hbGVydC1zaG93biAmIC5ib3R0b20ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTByZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgLmJvdHRvbSB7XG4gICAgICAgICAgICAuY28tbG9nb3MgaW1nLCAuY28tbG9nb3MgKyBhIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAudG9wIHtcbiAgICAgICAgICAgIC5zb2NpYWxzLCAudGhyZWUtY29scyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5tb2JpbGUtb25seSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC50b3Age1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIC5zb2NpYWxzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tZXJzZXl0cmF2ZWwtY29sLCAuYWJvdXQtY29sIGgzLCAubmV3cy1jb2wgLnRvcC1saXN0ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYWJvdXQtY29sIHtcbiAgICAgICAgICAgICAgICAgICAgLnRvcC1saXN0ICsgLnRvcC1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgKyAubmV3cy1jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5ld3MtY29sIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50b3AtbGlzdCBsaS5jb3B5cmlnaHQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAudG9wIHtcbiAgICAgICAgICAgIC5zb2NpYWxzLCAudGhyZWUtY29scyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zb2NpYWxzIC5zb2NpYWwtaWNvbnMge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIC5uZXdzLWNvbCBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvcC1saXN0IGxpIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXG4gICAgICAgICAgICAuY28tbG9nb3Mge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWxlcnQtc2hvd24gJiAuYm90dG9tIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBmaXhlZCBhbGVydCBwYW5lbCAqL1xuLmFsZXJ0IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogOTg7XG5cbiAgICAuYWxlcnQtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwcHggMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtYnJpZ2h0LXJlZDtcbiAgICAgICAgcGFkZGluZzogMS4zcmVtIDZyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAuYWxlcnQtY29udGVudCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN0YS5pY29uLWJ1dHRvbi5iZy1saWdodGVyLWJsYWNrIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY3RhLmljb24tYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWxlcnQtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oaWRlIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAuYWxlcnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmFsZXJ0LWNvbnRlbnQgPiBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmN0YS5pY29uLWJ1dHRvbi5iZy1saWdodGVyLWJsYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWxlcnQtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMXJlbSAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTEuM3JlbTtcbiAgICAgICAgICAgICAgICByaWdodDogLTNyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYuNHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYuNHJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc29jaWFsLXVwZGF0aW5nIHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbjogMCA3cmVtIDAgMDtcbiAgICB9XG5cbiAgICAuaWNvbi1idXR0b24gKyAuaWNvbi1idXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxLjZyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIudGV4dC10aHVtYm5haWwge1xuICAgIEBleHRlbmQgLmFzcGVjdC1yYXRpby1pbWFnZTtcblxuICAgIC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLmV2ZW50LWNhcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICRldmVudEluZGVudDogNnJlbTtcblxuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzkuMDYyNSU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDdyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNGRkZGRkYgNzBweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3MHB4KSwgbGluZWFyLWdyYWRpZW50KC05MGRlZywgI0ZGRkZGRiA3MHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDcwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlubmVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgdG9wOiAkZXZlbnRJbmRlbnQ7XG4gICAgICAgIGxlZnQ6ICRldmVudEluZGVudDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGV2ZW50SW5kZW50fSAqIDIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JGV2ZW50SW5kZW50fSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4xNXMgbGluZWFyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNCkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogNXJlbSAzcmVtIDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbS1pbmZvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAkZXZlbnRJbmRlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjcpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5leHRyYS1saW5rLXdyYXAge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IC0xcmVtO1xuICAgICAgICAgICAgYm90dG9tOiAtMXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiA3cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA3cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5rLWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC5pbm5lcjo6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub25lLWNvbHMgJiAudGV4dC10aHVtYm5haWw6OmJlZm9yZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MC42MSU7XG4gICAgfVxuXG4gICAgJi5kYXJrLWNvbnRyYXN0IHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ib3R0b20taW5mbyBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saW5rLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE1pSWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01USWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrQ2p4d1lYUm9JR1E5SWsweElERk1OaUEyVERFZ01URWlJSE4wY205clpUMGlJekUwTUVZd05pSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpOCtDand2YzNablBnbz0nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgICRldmVudEluZGVudDogNHJlbTtcblxuICAgICAgICAudGV4dC10aHVtYm5haWw6OmFmdGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI0ZGRkZGRiA1MHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDUwcHgpLCBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAjRkZGRkZGIDUwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgdG9wOiAkZXZlbnRJbmRlbnQ7XG4gICAgICAgICAgICBsZWZ0OiAkZXZlbnRJbmRlbnQ7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skZXZlbnRJbmRlbnR9ICogMik7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JGV2ZW50SW5kZW50fSk7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJvdHRvbS1pbmZvIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRldmVudEluZGVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmV4dHJhLWxpbmstd3JhcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDVyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgaDIsIC5ib3R0b20taW5mbyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC50ZXh0LXRodW1ibmFpbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3My44NzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9uZS1jb2xzICYgLnRleHQtdGh1bWJuYWlsOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDczLjg3NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgJGV2ZW50SW5kZW50OiAycmVtO1xuXG4gICAgICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4Mi42NjclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI0ZGRkZGRiAyMHB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDIwcHgpLCBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAjRkZGRkZGIDIwcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgdG9wOiA4cmVtO1xuICAgICAgICAgICAgbGVmdDogJGV2ZW50SW5kZW50O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JGV2ZW50SW5kZW50fSAqIDIpO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cmVtKTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm90dG9tLWluZm8ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmV4dHJhLWxpbmstd3JhcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDZyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vbmUtY29scyAmIC50ZXh0LXRodW1ibmFpbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4Mi42NjclO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGVfcykge1xuICAgICAgICAuaW5uZXIgaDIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yb3V0ZW1hcC1jYXJkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE2LjZyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iZy1pbWFnZTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoNTEuOTQlIDM5OC4zNCUgYXQgOS4zMSUgNTkuODElLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgOTkuOTklLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpLCBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCAjMDAwMDAwIC0wLjA2JSwgcmdiYSgwLCAwLCAwLCAwKSA0MC4xOSUpO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0LCBtYXJnaW4gMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAuaW5uZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdGF0aW9uLWNhcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLmlubmVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3RhbmNlLXRleHQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgKyAudW5kZXJsaW5lZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY2Vzc2liaWxpdHktdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjRyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuN3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC51bmRlcmxpbmVkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudW5kZXJsaW5lZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAudW5kZXJsaW5lZCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyAuc3RhdGlvbi1jYXJkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDAgMi40cmVtO1xuXG4gICAgICAgIC5pbm5lciAuZGlzdGFuY2UtdGV4dCxcbiAgICAgICAgLmlubmVyIC5kaXN0YW5jZS10ZXh0ICsgLnVuZGVybGluZWQsXG4gICAgICAgIC5pbm5lciAuYWNjZXNzaWJpbGl0eS10ZXh0LFxuICAgICAgICAuaW5uZXIgLmFjY2Vzc2liaWxpdHktdGV4dCArIC51bmRlcmxpbmVkLFxuICAgICAgICAuaW5uZXIgLnVuZGVybGluZWQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuc3RhdGlvbi1jYXJkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRib3JkZXItY29sb3IsIDAuMyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbWFnZS10ZXh0LWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC50ZXh0LXRodW1ibmFpbCB7XG4gICAgICAgICYgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY1LjglO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3VyLWNvbHMgJiAudGV4dC10aHVtYm5haWw6OmJlZm9yZSxcbiAgICAuZml2ZS1jb2xzICYgLnRleHQtdGh1bWJuYWlsOjpiZWZvcmUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBoNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV2ZW50cyB7XG4gICAgbWFyZ2luOiAtMnJlbTtcblxuICAgIC5iZy1kYXJrLWJsdWUgKyAuY29udGVudC1ibG9jay1sYXlvdXQgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgIH1cblxuICAgICYgKyAuZXZlbnRzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5iZy1kYXJrLWJsdWUgKyAuY29udGVudC1ibG9jay1sYXlvdXQgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbjogLTFyZW0gLTNyZW07XG5cbiAgICAgICAgJiArIC5ldmVudHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJnLWRhcmstYmx1ZSArIC5jb250ZW50LWJsb2NrLWxheW91dCAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucm91dGUtbWFwcy1ibG9jayB7XG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5mb3VyLWNvbHMge1xuICAgICAgICAgICAgbWFyZ2luOiAtMXJlbTtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b2xsLWNhcmQge1xuICAgIHBhZGRpbmc6IDJyZW0gM3JlbTtcbiAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAudG9sbC1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDUwJSk7XG5cbiAgICAgICAgcCArIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwLmJvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICYgKyAudG9sbC1jYXJkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuMSk7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgLnRvbGwtaXRlbSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtO1xuXG4gICAgICAgIC50b2xsLWl0ZW0ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b2xscy1ibG9jayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmZvdXItY29scyA+ICoge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmVuZWZpdC1jYXJkIHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5pbm5lciB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgbWluLWhlaWdodDogNDkuMnJlbTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogNHJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYWN0aXZldHJhdmVsLWhlYWRpbmc7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTM7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLmhpZ2hsaWdodCwgYiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmJlbmVmaXQtYmc6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNjUpO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwgLmlubmVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMzhyZW07XG4gICAgfVxuXG4gICAgLnRoZW1lLWJsdWUgJiAuaW5uZXIgaDIge1xuICAgICAgICAuaGlnaGxpZ2h0LCBiIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRoZW1lLXJlZCAmIC5pbm5lciBoMiB7XG4gICAgICAgIC5oaWdobGlnaHQsIGIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS13YWxraW5nLXJlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM3LjlyZW07XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWN0aXZpdHktY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAmLWJnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDM2cmVtKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDRyZW07XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICBcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHdvLWNvbHMgPiAqOmZpcnN0LWNoaWxkICYge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTRyZW07XG4gICAgfVxuXG4gICAgLnR3by1jb2xzID4gKjpsYXN0LWNoaWxkICYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC00cmVtO1xuICAgIH1cblxuICAgICYuYmx1ZSB7XG4gICAgICAgIC5hY3Rpdml0eS1jYXJkLWNvbnRlbnQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRoZW1lLWN5Y2xpbmctYmx1ZTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmcteWVsbG93IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJi5idXR0b24sICYuaWNvbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYucmVkIHtcbiAgICAgICAgLmFjdGl2aXR5LWNhcmQtY29udGVudCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkdGhlbWUtd2Fsa2luZy1yZWQ7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLXdhbGtpbmctcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmcteWVsbG93IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtd2Fsa2luZy1yZWQ7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmLmJ1dHRvbiwgJi5pY29uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS13YWxraW5nLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAudHdvLWNvbHMgPiAqOmZpcnN0LWNoaWxkICYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLnR3by1jb2xzID4gKjpsYXN0LWNoaWxkICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgJi1iZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMxcmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cmVtO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50d28tY29scyA+ICo6Zmlyc3QtY2hpbGQgJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLnR3by1jb2xzID4gKjpsYXN0LWNoaWxkICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgJi1iZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI2cmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCBwIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcblxuICAgICAgICAmLWJnIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTcuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudHdvLWNvbHMgPiAqOmxhc3QtY2hpbGQgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi1iZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmNvdW50ZG93bi1ibG9jayB7XG4gICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAudGl0bGUtdGFnIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG5cbiAgICAgICAgJiArIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcblxuICAgICAgICAudGl0bGUtdGFnICsgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAudGl0bGUtdGFnICsgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvdW50ZG93bi1iYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICBmbGV4OiAxIDAgMDtcblxuICAgICAgICAuYWN0aXZlLWJhciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC00cmVtO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwOyAvLyBjb250cm9sIHBlcmNlbnRhZ2VcbiAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC40cmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAtNHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1yZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTMuMnJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXG4gICAgICAgICAgICBoZWlnaHQ6IDAuNHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0Z3JleS1jb2xvciwgMC4zKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAuYWN0aXZlLWJhciB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb3VudGRvd24tYWN0aXZlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDAuNHJlbTtcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuYWN0aXZlLWJhciB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC00cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDsgLy8gbmVlZCB0byBzZXQgaGVpZ2h0IHRvIGNvbnRyb2wgdW5kZXIgdGFibGV0IHZpZXdcblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDAuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogLTRyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDAuNHJlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMy4ycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjRyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjRyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIH0gICAgXG4gICAgfVxufVxuXG4uY291bnRkb3duLWNhcm91c2VsIHtcbiAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgIHRvcDogOHJlbTtcbiAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgIGhlaWdodDogM3JlbTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmxpY2tpdHktYnV0dG9uOmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cblxuICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgbGVmdDogY2FsYygoMTAwJSAtIDEzMnJlbSkgKiAwLjUpO1xuICAgIH1cblxuICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICAgICAgICByaWdodDogY2FsYygoMTAwJSAtIDEzMnJlbSkgKiAwLjUpO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDI5LjE2NjclO1xuICAgICAgICBcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY291bnRkb3duLWl0ZW0taW1hZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCAkeWVsbG93O1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvdW50ZG93bi1pdGVtLXRhZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG5cbiAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjI7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDhyZW07XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0Z3JleS1jb2xvciwgMC4zKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1pbGVzdG9uZSB7XG4gICAgICAgICAgICAuY291bnRkb3duLWl0ZW0taW1hZ2Uge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY291bnRkb3duLWl0ZW0tdGFnIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAkdGhlbWUtZGFya2VyLWJsdWUgMCUsIHJnYmEoMTIsIDQxLCA3NCwgMCkgMTAwJSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuY2Fyb3VzZWwtaXRlbSAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IDM1LjI3JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IDQzLjU5JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiA2OC43NSU7XG5cbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvdW50ZG93bi1pdGVtLWltYWdlIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE0cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiA3cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi52aWRlby1jbGlwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIC8vIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgcGFkZGluZy1ib3R0b206IDY2LjY3JTtcblxuICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLnZpZGVvLWVtYmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICBwYWRkaW5nLXRvcDogMzBweDsgaGVpZ2h0OiAwOyBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgaWZyYW1lLFxuICAgIG9iamVjdCxcbiAgICBlbWJlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG4uaW1hZ2Utd3JhcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICAgICAgLnRocmVlLWNvbHMgJixcbiAgICAgICAgLmZvdXItY29scyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFwLWNvbnRhaW5lci50aW1ldGFibGUge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMS45NCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNy41JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0Mi43NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY3JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIGxpc3QgLS0tLS0tIGxpc3QgaXRlbSBzdHlsZXMgKi9cbi50aW1ldGFibGUtbGlzdCwgLnRyYXZlbHVwZGF0ZXMtbGlzdCB7XG4gICAgbWFyZ2luOiAycmVtIDA7XG5cbiAgICBsaS5zaG93IHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuXG4udGltZXRhYmxlLWxpc3QgbGksIC50cmF2ZWx1cGRhdGVzLWxpc3QgbGkge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgIH1cblxuICAgICYuc2hvdyB+IGxpLnNob3cge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRib3JkZXItY29sb3IsIDAuMyk7XG4gICAgfVxufVxuXG4udGltZXRhYmxlLWFjY29yZGlvbiAuYWNjb3JkaW9uLXBhbmVsIC50cmF2ZWx1cGRhdGVzLWxpc3QgbGkgKyBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRib3JkZXItY29sb3IsIDAuMyk7XG59XG5cbi50aW1ldGFibGUtbGlzdCBsaSArIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJvcmRlci1jb2xvciwgMC4zKTtcbn1cblxuLnRyYXZlbC11cGRhdGUtaXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgIC5pdGVtLXRhZy10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1saWdodGVyLXB1cnBsZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuXG4gICAgICAgIC5waW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtYnJpZ2h0LXBpbms7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxpdmUtdGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJyaWdodC1waW5rO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNHB4KTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWJyaWdodC1waW5rO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudXBjb21pbmcge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1icmlnaHQtcGluaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZXZlbC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE0Mjg7XG4gICAgICAgIGNvbG9yOiAkc2V2ZXJlLWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICBmaWxsOiAkc2V2ZXJlLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gJi5tb2RlcmF0ZSB7XG4gICAgICAgIC8vICAgICBjb2xvcjogJG1vZGVyYXRlLWNvbG9yO1xuXG4gICAgICAgIC8vICAgICBzdmcge1xuICAgICAgICAvLyAgICAgICAgIGZpbGw6ICRtb2RlcmF0ZS1jb2xvcjtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC8vICYubG93IHtcbiAgICAgICAgLy8gICAgIGNvbG9yOiAkbG93LWNvbG9yO1xuXG4gICAgICAgIC8vICAgICBzdmcge1xuICAgICAgICAvLyAgICAgICAgIGZpbGw6ICRsb3ctY29sb3I7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MnJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI0cmVtO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMy42cmVtIDAgM3JlbTtcbiAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgLmxldmVsLXRleHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyLjNyZW07XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgICAgIC5pdGVtLXRhZy10ZXh0Om5vdCgubm8taWNvbikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiAqOmZpcnN0LWNoaWxkOm5vdCguaXRlbS10YWctdGV4dCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRyYXZlbC11cGRhdGUtaXRlbS50dW5uZWwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIC8vIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMS42cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0tdGFnLXRleHQubGFiZWwtdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICB9XG5cbiAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgLTJyZW07XG5cbiAgICAgICAgLnVwZGF0ZWQtdGltZSB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDJyZW07XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuam91cm5leS1sZW5ndGgge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDJyZW07XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNldmVyZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubW9kZXJhdGU6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtb2RlcmF0ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmxvdzo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxvdy1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5pdGVtLXRhZy10ZXh0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gICAgICAgICAgICAudXBkYXRlZC10aW1lLCAuam91cm5leS1sZW5ndGgge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgaDMgLmljb24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgIC51cGRhdGVkLXRpbWUsIC5qb3VybmV5LWxlbmd0aCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuam91cm5leS1sZW5ndGggLml0ZW0tdGFnLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC51cGRhdGVkLXRpbWUge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAuaXRlbS10YWctdGV4dCwgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbS10YWctdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC40cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpbWV0YWJsZS1saXN0LWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgaDIuc21hbGxlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gICAgICAgIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjRyZW07XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC51cGRhdGVzLWNvdW50IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMnJlbTtcblxuICAgICAgICAgICAgJiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51cGRhdGVzLWNvdW50LXRleHQge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTQyODtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1saWdodGVyLXB1cnBsZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAycmVtO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1saWdodGVyLXB1cnBsZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC42cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzcnVwdGlvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJyaWdodC1waW5rO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1icmlnaHQtcGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogbGlzdCAtLS0tLS0gbGlzdCBpdGVtIHN0eWxlcyAqL1xuLnRmcy1ibG9jayAudHdvLWNvbHMge1xuICAgIG1hcmdpbjogLTNyZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ4cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXRpb24tY2FyZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgICAuaW5uZXIgaDMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAubWFwLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIC5sZWZ0LWNvbnRlbnQgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1jb250ZW50IC5tYXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uZXdzLWxpc3QgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgIH1cblxuICAgIC5kYXRlLWljb24tY29udGFpbmVyIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuXG4gICAgICAgIC5kYXRlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWRhcmstYmx1ZTtcblxuICAgICAgICAgICAgLmRheS10ZXh0LCAubW9udGgtdGV4dCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgICB9XG5cbiAgICAmLm5ld3MtaXRlbSBhOmhvdmVyLCAmLm5ld3MtaXRlbSBhOmZvY3VzIHtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAmID4qOm5vdCguZGF0ZS1pY29uLWNvbnRhaW5lcikge1xuICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm5ld3MtaXRlbSArIC5uZXdzLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cblxuICAgICYuc2VlLW1vcmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cbn1cblxuLm9wZXJhdG9yLWxpc3Qge1xuICAgIG1hcmdpbjogMS4xcmVtIC0xLjVyZW0gLTAuNXJlbTtcblxuICAgICYgPiBhIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG5cbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY2Nlc3NpYmlsaXR5LWJsb2NrIHtcbiAgICBoMyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICAgIH1cblxuICAgIC50d28tY29scyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgLmFjY2Vzc2liaWxpdHktaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6bnRoLWNoaWxkKDEpKSArIC5hY2Nlc3NpYmlsaXR5LWl0ZW0gcCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcblxuICAgICAgICAgICAgLmFjY2Vzc2liaWxpdHktaWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyLjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudHdvLWNvbHMgLmFjY2Vzc2liaWxpdHktaXRlbTpudGgtY2hpbGQoMSkgKyAuYWNjZXNzaWJpbGl0eS1pdGVtIHAge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogdGFicGFuZWwgZmlsdGVyICovXG4udGFicGFuZWwtZmlsdGVyIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAuZmxleCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci10ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLm91dGxpbmUtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAgICAgLmZpbHRlci10aWNrZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAuZmlsdGVyLXRpY2tlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5kaXNydXB0aW9uW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtYnJpZ2h0LXBpbms7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2hhbmdlc1thcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWxpZ2h0ZXItcHVycGxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2t0b3Atb25seSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJltoaWRkZW5dIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vYmlsZS1vbmx5W2hpZGRlbl0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgIC5mbGV4ID4gKiArICoge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAubW9iaWxlLW9ubHkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogZ2VuZXJhbCBibG9ja3MgKi9cbi5yb3V0ZS1zZWFyY2gge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA1cmVtIDAgNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTJyZW0pO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAuc2VhcmNoLWZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV4dGVybmFsLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xuXG4gICAgLmV4dGVybmFsLWNvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDQ4cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMsIGg1IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc29jaWFsLWljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgICAgICAmICsgLnNvY2lhbC1pY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjEuNXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgJiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTZyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cmVtICogMik7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgcGFkZGluZzogNHJlbSAwO1xuXG4gICAgICAgICYuY2VudGVyIHtcbiAgICAgICAgICAgIC5leHRlcm5hbC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcycmVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41IC0gMnJlbSk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgKDEwMHZ3IC0gMTIwcmVtKSAqIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RhdGlvbi1jYXJkICsgJiB7XG4gICAgICAgIC5leHRlcm5hbC1jb250ZW50IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAvLyAuZXh0ZXJuYWwtY29udGVudCB7XG4gICAgICAgIC8vICAgICBtYXgtd2lkdGg6IDcycmVtO1xuICAgICAgICAvLyAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgLmJnLWxpZ2h0Z3JleS02MCAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5iZy1kYXJrLWJsdWUgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICAgICAgICAuZXh0ZXJuYWwtY29udGVudCB7XG4gICAgICAgICAgICBoMywgaDQsIGg1LCBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgLmV4dGVybmFsLWNvbnRlbnQge1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMTAwdncgLSAxMjByZW0pKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYudmVydGljYWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZy1kYXJrLWJsdWUgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgICAgICAgLmV4dGVybmFsLWNvbnRlbnQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vICYudmVydGljYWwgLmV4dGVybmFsLWNvbnRlbnQgaDUge1xuICAgICAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIC5leHRlcm5hbC1jb250ZW50IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudmVydGljYWwge1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwIDNyZW07XG5cbiAgICAgICAgICAgIC5leHRlcm5hbC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgaDMsIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAgICAgLmN0YS5idXR0b24gKyAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jZW50ZXIgLmV4dGVybmFsLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmctZGFyay1ibHVlICYge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRlbnQtY29sIHtcbiAgICAmID4gKiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgIH1cblxuICAgICYgPiAuY3RhLmJ1dHRvbiArICoge1xuICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgIH1cblxuICAgIC5leHRlcm5hbC1ibG9jayB7XG4gICAgICAgIC8vIG1hcmdpbjogNHJlbSAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzLjVyZW07XG5cbiAgICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICAgICAuZXh0ZXJuYWwtY29udGVudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5iZy1kYXJrLWJsdWUgLmV4dGVybmFsLWJsb2NrIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5leHRlcm5hbC1ibG9jazo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDNyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuZXh0ZXJuYWwtYmxvY2sge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAmID4gLmN0YS5idXR0b24gKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAvLyAuZXh0ZXJuYWwtYmxvY2sge1xuICAgICAgICAvLyAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIC8vIH1cbiAgICB9XG59XG5cbi50d28tY29scyB7XG4gICAgcCArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAxLjZyZW0gMCA0cmVtO1xuICAgICAgICBtaW4td2lkdGg6IDIxLjVyZW07XG4gICAgfVxuXG4gICAgJiA+ICogPiAqLmN0YS5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4udGltZXRhYmxlLWJsb2NrIHtcbiAgICAucHJvdnMge1xuICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIG1hcmdpbjogLTIuNXJlbSAtMS41cmVtIDIuNXJlbTtcblxuICAgICAgICAucHJvdi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiArIHAge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWxpZ2h0ZXItcHVycGxlO1xuICAgIH1cblxuICAgIC50YWJsZS1jb250YWluZXIudGltZXRhYmxlIHtcbiAgICAgICAgbWFyZ2luOiAzcmVtIDAgNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAucHJvdnMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLWNvbnRhaW5lci50aW1ldGFibGUge1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDAgM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5wcm92cyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLWNvbnRhaW5lci50aW1ldGFibGUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcblxuICAgICAgICAgICAgJiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpY2tldC1maW5kZXItcmVzdWx0LWJsb2NrIHtcbiAgICBwLnRpY2tldC1wcmljZS10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICYgKyBwLnRpY2tldC1wcmljZS10ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAqOm5vdCgudGlja2V0LXByaWNlLXRleHQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgJiArIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmICsgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgJiArIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIHAudGlja2V0LXByaWNlLXRleHQge1xuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIHAudGlja2V0LXByaWNlLXRleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArICo6bm90KC50aWNrZXQtcHJpY2UtdGV4dCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwICsgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbmNlc3Npb24taGVhZGVyIHtcbiAgICAubWlkZGxlLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0wLjZyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0wLjZyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEycmVtKTtcbiAgICAgICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC42cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC42cmVtO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAtMC4yNXJlbSAtMi41cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC42cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC42cmVtO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMi41cmVtO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgLm1pZGRsZS13cmFwOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogLTAuNSk7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAubWlkZGxlLXdyYXAge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLm1pZGRsZS13cmFwIHVsIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAubWlkZGxlLXdyYXAge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbmNlc3Npb24tZm9ybS1yZXR1cm4tdGV4dCB7XG4gICAgJiArIGgxIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgICYgKyBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAuY29uY2Vzc2lvbi1mb3JtLWJsb2NrIHtcbi8vICAgICBoMSwgaDIge1xuLy8gICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG4vLyAgICAgfVxuXG4vLyAgICAgaDMge1xuLy8gICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuLy8gICAgIH1cblxuLy8gICAgIHAgKyBoMSB7XG4vLyAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4vLyAgICAgfVxuXG4vLyAgICAgdWwgbGkge1xuLy8gICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuLy8gICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG5cbi8vICAgICAgICAgJjo6YmVmb3JlIHtcbi8vICAgICAgICAgICAgIHRvcDogMC41cmVtO1xuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgJiArIGxpIHtcbi8vICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cblxuLy8gICAgIHVsICsgLmNhdGUtcmVmIHtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbi8vICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuXG4vLyAgICAgICAgICYgKyBwIHtcbi8vICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbi8vICAgICAgICAgICAgIGEge1xuLy8gICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgfVxuXG4vLyAgICAgLmN0YS5idXR0b24ge1xuLy8gICAgICAgICBtYXgtd2lkdGg6IDIxLjVyZW07XG4vLyAgICAgfVxuXG4vLyAgICAgLnR3by1jb2xzIHtcbi8vICAgICAgICAgbWFyZ2luOiAtMXJlbSAycmVtIC0xcmVtIC0ycmVtO1xuXG4vLyAgICAgICAgICYgPiAqIHtcbi8vICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cblxuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4vLyAgICAgICAgIGgxLCBoMiB7XG4vLyAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgLnR3by1jb2xzIHtcbi8vICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTJyZW07XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuLy8gICAgICAgICAuY3RhLmJ1dHRvbiArIHAge1xuLy8gICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgIHAgKyAuY3RhLmJ1dHRvbiwgdWwgKyAuY3RhLmJ1dHRvbiB7XG4vLyAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuXG4vKiBuZXdzIGNvbnRlbnQgbGF5b3V0ICovXG4ubmV3cy1sYXlvdXQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5tYWluLWNvbnRlbnQgLm5ld3MtbGF5b3V0LXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuc2lkZS1jb250ZW50IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogbmV3cyBsaXN0IHBhZ2UgKi9cbi5uZXdzLWxpc3QtdGl0bGUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxufVxuXG4uT1RIIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgIHNlbGVjdCwgdGV4dGFyZWEsIGlucHV0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIHNraXBwaW5nIHRvIGNvbnRlbnQvbWVudSAqL1xuLnNraXBwaW5nLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiAtOTk5cHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IC05OTk7XG5cbiAgICAudW5kZXJsaW5lZCB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB3aWR0aDogNDhyZW07XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIGNhbGMoKDEwMHZ3IC0gNDhyZW0pICogMC41KSAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbSAwLjhyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiJWFsZXJ0IHtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0Ym9yZGVyLXdpZHRoOiAxcHg7XG5cdG1hcmdpbjogMWVtO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5hbGVydC1lcnJvciB7XG5cdEBleHRlbmQgJWFsZXJ0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0aGVtZS1icmlnaHQtcmVkLCA0MCUpO1xuXHRib3JkZXItY29sb3I6JHRoZW1lLWJyaWdodC1yZWQ7XG4gICAgY29sb3I6ICR0aGVtZS1icmlnaHQtcmVkO1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWJyaWdodC1yZWQ7XG4gICAgfVxufVxuLmFsZXJ0LXdhcm5pbmcge1xuXHRAZXh0ZW5kICVhbGVydDtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRTtcblx0Ym9yZGVyLWNvbG9yOiAkbW9kZXJhdGUtY29sb3I7XG5cdGNvbG9yOiAkbW9kZXJhdGUtY29sb3I7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkbW9kZXJhdGUtY29sb3I7XG4gICAgfVxufVxuLmFsZXJ0LXN1Y2Nlc3Mge1xuXHRAZXh0ZW5kICVhbGVydDtcblx0YmFja2dyb3VuZC1jb2xvcjogI0VGRTtcblx0Ym9yZGVyLWNvbG9yOiAkbG93LWNvbG9yO1xuXHRjb2xvcjogJGxvdy1jb2xvcjtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRsb3ctY29sb3I7XG4gICAgfVxufSIsIi5iYW5uZXItaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuICAgICAgICBAZXh0ZW5kIC5hc3BlY3QtcmF0aW8taW1hZ2U7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0Ni4zOSU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWltYWdlLWlubmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiA+IC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAvLyB6LWluZGV4OiAzO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2Fyb3VzZWwtYmFubmVyLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAzLjZyZW07XG4gICAgICAgIGhlaWdodDogMy42cmVtO1xuICAgIH1cblxuICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgbGVmdDogY2FsYygoMTAwJSAtIDEzMnJlbSkgKiAwLjUpOztcbiAgICB9XG5cbiAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgICAgICAgcmlnaHQ6IGNhbGMoKDEwMCUgLSAxMzJyZW0pICogMC41KTtcbiAgICB9XG5cbiAgICAuaW5uZXIgLm1pZGRsZS13cmFwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgJiA+ICo6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogODVyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICAgICAgICAgJiArIC5jdGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN0YS5idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTZyZW07XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1heC13aWR0aDogNjByZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDVyZW07XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiA4cmVtO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDRyZW07XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmlubmVyIC5taWRkbGUtd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gICAgICAgICAgICByaWdodDogN3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgLm1pZGRsZS13cmFwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAudGV4dC1iYW5uZXItaW1hZ2Uge1xuLy8gICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuLy8gICAgICAgICAmOjpiZWZvcmUge1xuLy8gICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM2JTtcbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgICY6OmFmdGVyIHtcbi8vICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsICMwMDAwMDAgLTAuMDYlLCByZ2JhKDAsIDAsIDAsIDApIDQwLjE5JSk7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAmID4gLmlubmVyIHtcbi8vICAgICAgICAgei1pbmRleDogMztcbi8vICAgICB9XG4vLyB9XG5cbi50cmF2ZWwtdXBkYXRlLWJhbm5lciB7XG4gICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjUuNjklO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgcmdiYSgwLCAwLCAwLCAwLjUpIC0wLjA2JSwgcmdiYSgwLCAwLCAwLCAwKSA0MC4xOSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAgICAgLnRhZy1sYWJlbCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG5cbiAgICAgICAgLnRhZy1sYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwIDRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudHUtZGF0ZSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM3LjUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAuYmFubmVyLWltYWdlLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQyLjc1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZS1iZyB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NjclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC43KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xKSwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICAgICAgaDEsIC50dS1kYXRlIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50dS1kYXRlIC5kYXRlLWxhYmVsLXRleHQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGFnLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5iYW5uZXItaW1hZ2UtYmcge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1iYW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgcGFkZGluZzogNXJlbSAwO1xuXG4gICAgaDEsIGgzLCBwLCBzcGFuIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgIH1cbn1cblxuLnRwcy1zZWFyY2gtYmFubmVyIHtcbiAgICAudHdvLWNvbHMge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgM3JlbSAwIDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KG5vbmUpO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMnJlbSAzcmVtO1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeChub25lKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgICAgICAmICsgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudmVydGljYWwge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBwLCBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gKiArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIHAgKyAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgIH1cbn1cblxuLnRpbWV0YWJsZS1jb250ZW50LWJhbm5lciB7XG4gICAgYmFja2dyb3VuZDogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICBwYWRkaW5nOiA1cmVtIDAgNnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcblxuICAgIGgxLCBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgZm9ybSAuZmxleCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgbWFyZ2luOiAtMXJlbSAtMS41cmVtO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZsaXAtYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICAgICAgICAgLmRvdWJsZS1kaXJlY3RzLWljb24ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMSU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgzMSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gJi5mbGlwLW9yZGVyIHtcbiAgICAgICAgLy8gICAgIC5kYXRlLWlucHV0LWdyb3VwIHtcbiAgICAgICAgLy8gICAgICAgICBvcmRlcjogMztcbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyAgICAgLmZyb20taW5wdXQtZ3JvdXAge1xuICAgICAgICAvLyAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgIC8vICAgICAuZmxpcC1idXR0b24ge1xuICAgICAgICAvLyAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgIC8vICAgICAudG8taW5wdXQtZ3JvdXAge1xuICAgICAgICAvLyAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgZm9ybSAuZmxleCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuNnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuNnJlbTtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsaXAtYnV0dG9uIC5kb3VibGUtZGlyZWN0cy1pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcblxuICAgICAgICBmb3JtIC5mbGV4IC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDQ1JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDQ1JSk7XG5cbiAgICAgICAgICAgICYuZGF0ZS1pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpY2tldC1maW5kZXItcmVzdWx0LWJhbm5lciB7XG4gICAgYmFja2dyb3VuZDogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG5cbiAgICAubGVmdC1jb250ZW50IGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnNtYWxsLXRleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgLnNtYWxsLXRleHQgKyBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIH1cbn1cblxuLnNpbXBsZS1iYW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5iYW5uZXItYmcge1xuICAgICAgICBAZXh0ZW5kIC5hc3BlY3QtcmF0aW8taW1hZ2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIsIGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciwgMHB4IDBweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1LjY5JTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzNjBkZWcsIHJnYmEoMCwgMCwgMCwgMC44KSAtMC4wNiUsIHJnYmEoMCwgMCwgMCwgMCkgNDAuMTklKSwgcmFkaWFsLWdyYWRpZW50KDUxLjk0JSAzOTguMzQlIGF0IDkuMzElIDU5LjgxJSwgcmdiYSgwLCAwLCAwLCAwLjYpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDk5Ljk5JSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xKSwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5iYW5uZXItY2FzZS1zdHVkeSB7XG4gICAgICAgIC5iYW5uZXItYmcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNzJyZW07XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg2OS41MmRlZywgcmdiYSgwLCAwLCAwLCAwLjYpIDYuMTclLCByZ2JhKDAsIDAsIDAsIDApIDU2LjU4JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xuXG4gICAgICAgICAgICBoMSBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzcuNSU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYmFubmVyLWNhc2Utc3R1ZHkge1xuICAgICAgICAgICAgLmJhbm5lci1iZzo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjIuNSU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9sKSB7XG4gICAgICAgIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDIuNzUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuYmFubmVyLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY2LjY2NyU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmJhbm5lci1jYXNlLXN0dWR5IHtcbiAgICAgICAgICAgIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDc0LjkzMzMlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmJhbm5lci1iZzo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5iYW5uZXItY2FzZS1zdHVkeSB7XG4gICAgICAgICAgICAuYmFubmVyLWJnIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg4MC43MmRlZywgcmdiYSgwLCAwLCAwLCAwLjYpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGVfcykge1xuICAgICAgICAuYmFubmVyLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYW5uZXItYWN0aXZlIHtcbiAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNDEuNjY2NyU7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCg0MS42NjY3JSk7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTByZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTByZW07XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1OC4zMzMzJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDU4LjMzMzMlKTtcblxuICAgICAgICAgICAgLmFjdGl2ZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDYwcmVtIC0gMTAwJSk7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzkuOTQzMSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aGVtZS1ibHVlICYgLmJhbm5lci1jb250ZW50IGgxIC5oaWdobGlnaHQsIC50aGVtZS1ibHVlICYgLmJhbm5lci1jb250ZW50IGgxIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuICAgIH1cblxuICAgIC50aGVtZS1yZWQgJiAuYmFubmVyLWNvbnRlbnQgaDEgLmhpZ2hsaWdodCwgLnRoZW1lLXJlZCAmIC5iYW5uZXItY29udGVudCBoMSBzdHJvbmcge1xuICAgICAgICBjb2xvcjogJHRoZW1lLXdhbGtpbmctcmVkO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IC5yaWdodC1jb250ZW50IC5hY3RpdmUtaW1hZ2Uge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIC0wLjUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIC5sZWZ0LWNvbnRlbnQsIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IC5hY3RpdmUtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IC5sZWZ0LWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeCgxMDAlKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuXG4gICAgICAgICAgICAgICAgLmFjdGl2ZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cmVtKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDUuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0LWNvbnRlbnQgLmFjdGl2ZS1pbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFubmVyLWFjdGl2ZS1ob21lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcblxuICAgIC5iYW5uZXItYmcge1xuICAgICAgICBtYXgtaGVpZ2h0OiA4MHJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQzLjc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXZpZGVvLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogc2NhbGUoMS44KTtcbiAgICAgICAgLy8gdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcblxuICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdncvMS43Nyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMHJlbSAzcmVtO1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGlnaGxpZ2h0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWN0aXZldHJhdmVsLWhpZ2hsaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hY3Rpdml0eS1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gICAgICAgICAgICAuYWN0aXZpdHktaXRlbSB7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDZyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyAuYWN0aXZpdHktaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYud2l0aC12aWRlbyB7XG4gICAgICAgIC5iYW5uZXItYmc6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgICAgICBoMTpvbmx5LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMSwgcCwgcCBzdHJvbmcsXG4gICAgICAgICAgICAuYWN0aXZpdHktY29udGFpbmVyIC5hY3Rpdml0eS1pdGVtIGg1IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi53aXRob3V0LXZpZGVvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IDEyMHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAgICAgLmJhbm5lci1iZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTEuOTE2NyU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA1cmVtKTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODEuMjIlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuYmFubmVyLWJnOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU0LjY4NzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLndpdGhvdXQtdmlkZW8ge1xuICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjUuNjI1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItdmlkZW8tY29udGFpbmVyIGlmcmFtZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMi4xKTtcbiAgICAgICAgICAgIHRvcDogNyU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNS44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWN0aXZpdHktY29udGFpbmVyIC5hY3Rpdml0eS1pdGVtIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmICsgLmFjdGl2aXR5LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLndpdGgtdmlkZW8ge1xuICAgICAgICAgICAgLmJhbm5lci1iZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYud2l0aG91dC12aWRlbyB7XG4gICAgICAgICAgICAuYmFubmVyLWJnIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3cmVtKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogN3JlbTtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MC45MTUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgIC5hY3Rpdml0eS1jb250YWluZXIgLmFjdGl2aXR5LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi53aXRob3V0LXZpZGVvIC5iYW5uZXItYmc6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzMuNDQzJTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIudGFicyB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi50YWJzLnRmLXRhYnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnRmLXRhYmxpc3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcblxuICAgICAgICAmW2RhdGEtdmlldz0nbWFwJ106OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IC0xNXJlbTtcbiAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHJlbSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDE1MHB4IDE1MHB4IDBweCByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjQyKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmW2RhdGEtdmlldz0nbWFwJ10gLmNvdW50LXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJzLWhlYWRlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC50YWItdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgICAudGFiLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNsaXN0dmlldy10YWIge1xuICAgICAgICBwYWRkaW5nLXRvcDogOC40cmVtO1xuXG4gICAgICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgICAgIG1hcmdpbjogLTJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFwLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU4LjMzJTtcbiAgICB9XG5cbiAgICAubWFwLWNvbnRhaW5lciB7XG4gICAgICAgIC5sZWFmbGV0LWNvbnRyb2wtem9vbS1pbixcbiAgICAgICAgLmxlYWZsZXQtY29udHJvbC16b29tLW91dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAubWFwLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NyU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAubWFwLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAudGYtdGFibGlzdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJzLWhlYWRlciB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmNvdW50LXRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjbGlzdHZpZXctdGFiIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3LjRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubWFwLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC50Zi10YWJsaXN0IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYnMtaGVhZGVyIC50YWItdG9nZ2xlIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC50YWItYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE2cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNsaXN0dmlldy10YWIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYuNHJlbTtcblxuICAgICAgICAgICAgLnB0LTQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGItNCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aHJlZS1jb2xzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFwLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMTUlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicy50cHMtdGFicyB7XG4gICAgLnRwcy10YWItbGlzdCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgIGhlaWdodDogN3JlbTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgIFxuICAgICAgICAubGFyZ2Utd3JhcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnRhYi1idXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCA2cmVtIDFyZW07XG4gICAgXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFiLWJ1dHRvblthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWItYnV0dG9uOmhvdmVyLFxuICAgIC50YWItYnV0dG9uOmZvY3VzLFxuICAgIC50YWItYnV0dG9uOmFjdGl2ZSB7XG4gICAgICAgIC8vIG91dGxpbmU6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIC8vIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIC50YWItYnV0dG9uW2FyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiXTpmb2N1cyxcbiAgICAudGFiLWJ1dHRvblthcmlhLXNlbGVjdGVkPVwiZmFsc2VcIl06aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgIH1cblxuICAgIC8vIC50YWItYnV0dG9uOmhvdmVyOjpiZWZvcmUsXG4gICAgLy8gLnRhYi1idXR0b246Zm9jdXM6OmJlZm9yZSB7XG4gICAgLy8gICAgIGJvcmRlci1jb2xvcjogaHNsKDIwLCA5NiUsIDQ4JSk7XG4gICAgLy8gfVxuXG4gICAgLnRwcy10YWItY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgLy8gcGFkZGluZzogM3JlbSAwO1xuXG4gICAgICAgIC5kYXJrLWJsdWUtdGFicGFuZWwtdGV4dCB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbjogNXJlbSAwIDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZmVycnktdGltZXRhYmxlLWxpbmsge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50cHMtdGFiLWNvbnRlbnQ6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAudHBzLXRhYi1saXN0IC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAudHBzLXRhYi1saXN0IC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudHBzLXRhYi1jb250ZW50IC5kYXJrLWJsdWUtdGFicGFuZWwtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAudGFiLWJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAudHBzLXRhYi1saXN0IHtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAubGFyZ2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRhYi1idXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAudHBzLXRhYi1jb250ZW50IC5kYXJrLWJsdWUtdGFicGFuZWwtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicy5yb3V0ZXMtdGFicyB7XG4gICAgW3JvbGU9XCJ0YWJsaXN0XCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgaGVpZ2h0OiA3cmVtO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgXG4gICAgICAgIC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBbcm9sZT1cInRhYlwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDZyZW0gMXJlbTtcbiAgICBcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBbcm9sZT1cInRhYlwiXVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtyb2xlPVwidGFiXCJdOmhvdmVyLFxuICAgIFtyb2xlPVwidGFiXCJdOmZvY3VzLFxuICAgIFtyb2xlPVwidGFiXCJdOmFjdGl2ZSB7XG4gICAgICAgIC8vIG91dGxpbmU6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgW3JvbGU9XCJ0YWJcIl1bYXJpYS1zZWxlY3RlZD1cImZhbHNlXCJdOmZvY3VzLFxuICAgIFtyb2xlPVwidGFiXCJdW2FyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiXTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxuXG4gICAgW3JvbGU9XCJ0YWJwYW5lbFwiXSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAuZGFyay1ibHVlLXRhYnBhbmVsLXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrLWJsdWU7XG4gICAgICAgICAgICBtYXJnaW46IDVyZW0gMCAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZlcnJ5LXRpbWV0YWJsZS1saW5rIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbcm9sZT1cInRhYnBhbmVsXCJdOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgW3JvbGU9XCJ0YWJsaXN0XCJdIC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgW3JvbGU9XCJ0YWJsaXN0XCJdIC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICBbcm9sZT1cInRhYnBhbmVsXCJdIC5kYXJrLWJsdWUtdGFicGFuZWwtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICBbcm9sZT1cInRhYlwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBbcm9sZT1cInRhYmxpc3RcIl0ge1xuICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgIC5sYXJnZS13cmFwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBbcm9sZT1cInRhYlwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICBbcm9sZT1cInRhYnBhbmVsXCJdIC5kYXJrLWJsdWUtdGFicGFuZWwtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDUwJSk7XG4gICAgICAgIHBhZGRpbmc6IDAgM3JlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIC5jb3VudC1udW1iZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLCAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1pY29uIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmRyb3Bkb3duLWljb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3ICogMC41KTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc3J1cHRpb24ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1icmlnaHQtcGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY2hhbmdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtbGlnaHRlci1wdXJwbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm9ubHktb2YtdHlwZSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAtMC41KTtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tcGFuZWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGxpbmVhcjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICAmLmhpZGRlbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXBhbmVsW2hpZGRlbl0ge1xuICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlcjpvbmx5LW9mLXR5cGU6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciBoNCB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLXRyaWdnZXI6b25seS1vZi10eXBlIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5kaXNydXB0aW9uLCAmLmNoYW5nZSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlci5kaXNydXB0aW9uIHtcbiAgICAgICAgICAgIG9yZGVyOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi1wYW5lbC5kaXNydXB0aW9uLXBhbmVsIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi10cmlnZ2VyLmNoYW5nZSB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2NvcmRpb24tcGFuZWwuY2hhbmdlLXBhbmVsIHtcbiAgICAgICAgICAgIG9yZGVyOiAzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmFjY29yZGlvbi10cmlnZ2VyIHtcbiAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1lbnUtYWNjb3JkaW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDIwJSk7XG5cbiAgICAgICAgLmFjY29yZGlvbi10cmlnZ2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgICAgICAgLmgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcblxuICAgICAgICAmICsgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDQwJSk7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAucCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXBhbmVsW2hpZGRlbl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10cmlnZ2VyIHtcbiAgICAgICAgICAgIGhlaWdodDogNS40cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLmgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2NvcmRpb24taXRlbSwgLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBpZS1mbGV4LWZpeChub25lKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgJiArIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGMtYWNjb3JkaW9uIHtcbiAgICAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIC8vIGxlZnQ6IC00cmVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDRyZW0pO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkaXZpZGVkbGluZS1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1pY29uLWJsYWNrIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgbGluZWFyO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuZHJvcGRvd24taWNvbi1ibGFjayB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXBhbmVsW2hpZGRlbl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgKyAudGMtYWNjb3JkaW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIH1cblxuICAgIC8vICogKyAmIHtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAvLyB9XG5cbiAgICArIGg0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbmVyICsgJiB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duLWljb24tYmxhY2sgIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAzcmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1jb250YWluZXIgKyAmIHtcbiAgICAgICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1jb250YWluZXIgKyAmIHtcbiAgICAgICAgICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnJlbSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLWljb24tYmxhY2sge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLmFjY29yZGlvbi10cmlnZ2VyIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi1wYW5lbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2UtY29udGFpbmVyICsgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5iYW5uZXItYmdzLmltYWdlcy1jYXJvdXNlbCB7XG4gICAgei1pbmRleDogMjtcblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgQGV4dGVuZCAuYXNwZWN0LXJhdGlvLWltYWdlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyLCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIsIDBweCAwcHg7XG5cbiAgICAgICAgJjpub3QoLm5vLWZhZGUpIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoNTEuOTQlIDM5OC4zNCUgYXQgOS4zMSUgNTkuODElLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHJnYmEoMCwgMCwgMCwgMCkgOTkuOTklLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpLCBsaW5lYXItZ3JhZGllbnQoMzYwZGVnLCAjMDAwMDAwIC0wLjA2JSwgcmdiYSgwLCAwLCAwLCAwKSA0MC4xOSUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNS42OSU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGxpbmVhciwgdG9wIDAuMjVzIGxpbmVhciAwLjI1cztcbiAgICAgICAgICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB0b3A7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1zZWxlY3RlZCAuaW5uZXIge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kZXNrdG9wLWJsYWNrIHtcbiAgICAgICAgICAgIC5pbm5lciBoMSwgLmlubmVyIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJvdXNlbC1pdGVtOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM3LjUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfbCkge1xuICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJvdXNlbC1pdGVtOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQyLjc1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciwgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJvdXNlbC1pdGVtOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY2LjY2NyU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDBweCAwcHgsIGNvdmVyO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCgubm8tZmFkZSkge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC43KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xKSwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgJi50b3Age1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmVuZCB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubW9iaWxlLWJsYWNrIHtcbiAgICAgICAgICAgICAgICAuaW5uZXIgaDEsIC5pbm5lciBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubW9iaWxlLXdoaXRlIHtcbiAgICAgICAgICAgICAgICAuaW5uZXIgaDEsIC5pbm5lciBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vICY6b25seS1jaGlsZCB7XG4gICAgICAgICAgICAvLyAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIC8vICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAgICAgLy8gICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAvLyAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlX3MpIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLS0tLS0gQmVuZWZpdCBDYXJvdXNlbCAtLS0tLSAvL1xuLmJlbmVmaXQtY2Fyb3VzZWwtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTRyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtNHJlbTtcblxuICAgIC5iZW5lZml0LWNhcm91c2VsIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLmZvdXItY29scyB7XG4gICAgICAgIG1hcmdpbjogLTIuNjVyZW07XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgcGFkZGluZzogMi42NXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiAzcmVtO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgYm90dG9tOiAzcmVtO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ25leHQnO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWFjdGl2ZXRyYXZlbC1oZWFkaW5nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjkzO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMC44cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPQ0lnYUdWcFoyaDBQU0l4TXlJZ2RtbGxkMEp2ZUQwaU1DQXdJRGdnTVRNaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVEVnTVM0MWJEVWdOUzAxSURVaUlITjBjbTlyWlQwaUkyWm1aaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrUEM5emRtYytDZz09Jyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAuZm91ci1jb2xzIHtcbiAgICAgICAgICAgIG1hcmdpbjogLTJyZW07XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X2wpIHtcbiAgICAgICAgLmZvdXItY29scyB7XG4gICAgICAgICAgICBtYXJnaW46IC0xcmVtO1xuXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5iZW5lZml0LWNhcm91c2VsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0zcmVtO1xuXG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGllLWZsZXgtZml4KDEwMCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnZmxpY2tpdHknO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMyLjVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5mbGlja2l0eS1yZXNpemUgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tIFRlc3RpbW9uaWFsIENhcm91c2VsIC0tLS0tIC8vXG4udGVzdGltb25pYWwtY2Fyb3VzZWwtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmFzcGVjdC1yYXRpby1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA3MnJlbTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTAlO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGVzdGltb25pYWwtY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogLTRyZW07XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHJlbSA0cmVtIDZyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWN5Y2xpbmctbGlnaHRibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hdXRob3Ige1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hdXRob3ItaW5mbyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3RhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDIycmVtO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgei1pbmRleDogNDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWFjdGl2ZXRyYXZlbC1oZWFkaW5nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjkzO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMC44cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZsaWNraXR5LWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgLSA0cmVtKTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAncHJldic7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0NJZ2FHVnBaMmgwUFNJeE15SWdkbWxsZDBKdmVEMGlNQ0F3SURnZ01UTWlJR1pwYkd3OUltNXZibVVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEhCaGRHZ2daRDBpVFRjZ01URXVOV3d0TlMwMUlEVXROU0lnYzNSeWIydGxQU0lqWm1abUlpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUx6NDhMM04yWno0SycpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQgeyBcbiAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogMC41ICsgMThyZW0pO1xuICAgICAgICByaWdodDogYXV0bztcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ25leHQnO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPQ0lnYUdWcFoyaDBQU0l4TXlJZ2RtbGxkMEp2ZUQwaU1DQXdJRGdnTVRNaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVEVnTVM0MWJEVWdOUzAxSURVaUlITjBjbTlyWlQwaUkyWm1aaUlnYzNSeWIydGxMWGRwWkhSb1BTSXlJaTgrUEM5emRtYytDZz09Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmxpY2tpdHktcmVzaXplIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAuZmxpY2tpdHktcmVzaXplIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLnRlc3RpbW9uaWFsLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIC5jYXJvdXNlbC1pdGVtIC50ZXN0aW1vbmlhbC1jb250ZW50IC5pbm5lciB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7IFxuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogMC41ICsgMjJyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgLmFzcGVjdC1yYXRpby1pbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjIuNSU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXN0aW1vbmlhbC1jb250ZW50IC5pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHsgXG4gICAgICAgICAgICBsZWZ0OiAyMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgLnRlc3RpbW9uaWFsLWNhcm91c2VsIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgLmFzcGVjdC1yYXRpby1pbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGVzdGltb25pYWwtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYXV0aG9yLWluZm8ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDUwdnc7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHsgXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICAuYXNwZWN0LXJhdGlvLWltYWdlOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGVzdGltb25pYWwtY29udGVudCBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkubW9kYWwtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmRpc3BsYXktbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubW9kYWwtb3ZlcmxheSB7XG4gICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy8gei1pbmRleDogMzIwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIC8vIHRyYW5zZm9ybTogc2NhbGUoMC4yNSk7XG4gICAgLy8gdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGxpbmVhcjtcbiAgICB6LWluZGV4OiAtMTAwO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgICAgLy8gZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IDMyMDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAvLyB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAvLyAubW9kYWwtY29udGFpbmVyIHtcbiAgICAgICAgICAgIC8vIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAvLyB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgLy8gb3BhY2l0eTogMDtcbiAgICAgICAgLy8gdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgICAgICAvLyB0cmFuc2l0aW9uOiBhbGwgMC43NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgfVxuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDZyZW0gMCAzcmVtO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLm1vZGFsLWNsb3NlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1oZWFkaW5nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTYyNTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgLy8gb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIC8vIHotaW5kZXg6IDIyMjtcbiAgICBcbiAgICAgICAgICAgIC5jbG9zZS1pY29uIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIxMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gJjpob3ZlciAuY2xvc2UtaWNvbiB7XG4gICAgICAgICAgICAvLyAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAvLyBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAgNnJlbTtcblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnNlYXJjaC1mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgXG4gICAgICAgICAgICAgICAgLmZvcm0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEzLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMnJlbSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1yZXN1bHRzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcblxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMi4zcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRsaWdodGdyZXktY29sb3IsIDAuMyk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyAmLmxvYWQtbW9yZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICAgICAvLyAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gM3JlbSAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICAgICBmb3JtIC5zZWFyY2gtZm9ybS1ncm91cCAuZm9ybS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlYXJjaC1yZXN1bHRzIHVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgICAgIGxpIHsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8vICYubG9hZC1tb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICAgICAgICAgICBcbiAgICB9XG59XG5cbi5tb2RhbC1vdmVybGF5LmFsZXJ0LW1vZGFsIHtcbiAgICAubW9kYWwtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRlci1ibGFjaywgMC43NSk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5tb2RhbC1pbm5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkycmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcmVtIHNvbGlkICR0aGVtZS1icmlnaHQtcGluaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXG4gICAgICAgIC5zbWFsbC13cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50eXBlLXRleHQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtYnJpZ2h0LXBpbms7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuaDEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1icmlnaHQtcGluaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudXBkYXRlLXRpbWUtdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRsaWdodGVyLWJsYWNrLCAwLjUpO1xuXG4gICAgICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24tYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY2hhbmdlIHtcbiAgICAgICAgLm1vZGFsLWNvbnRhaW5lciAubW9kYWwtaW5uZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRoZW1lLWxpZ2h0ZXItcHVycGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWNvbnRlbnQgLnR5cGUtdGV4dCwgLm1vZGFsLWNvbnRlbnQgLmgxIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtbGlnaHRlci1wdXJwbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5tb2RhbC1pbm5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAgICAgLnNtYWxsLXdyYXAge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC51cGRhdGUtdGltZS10ZXh0ICsgcCB7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbi1idXR0b24ge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qIGxlYWZsZXQgbWFwIHBvcHVwICovXG5cbi5sZWFmbGV0LXBvcHVwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjhyZW07XG59XG5cbi5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciAge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG59XG5cbi5sZWFmbGV0LXBvcHVwLXRpcC1jb250YWluZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTYlKTtcbn1cblxuLmxlYWZsZXQtcG9wdXAtdGlwIHtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkbGlnaHRlci1ibGFjaztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpZ2h0ZXItYmxhY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAkbGlnaHRlci1ibGFjaztcbn1cblxuLmxlYWZsZXQtY29udGFpbmVyIGEubGVhZmxldC1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbn1cblxuLmxlYWZsZXQtcG9wdXAtY29udGVudCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gNS41cmVtIDEuNXJlbSAxLjVyZW07XG5cbiAgICAuaW5uZXIuZmxleCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAmID4gKjpub3QoaDMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmstYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmdhbGxlcnkucG9wdXAtZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW07XG5cbiAgICAuaW1hZ2VzLWNhcm91c2VsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygyNSUgLSAyLjI1cmVtKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAmICsgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCg0biArIDEpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFzcGVjdC1yYXRpby1pbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJyZW07XG5cbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygyNSUgLSAxLjVyZW0pO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBcbiAgICAgICAgICAgICYgKyAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuICsgMSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgLmltYWdlcy1jYXJvdXNlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdmbGlja2l0eSc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWJsYWNrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjZyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjZyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC40KTtcblxuICAgICAgICAgICAgICAgICYgKyAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmxpY2tpdHktcGFnZS1kb3RzIC5kb3QuaXMtc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmICsgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYXNwZWN0LXJhdGlvLWltYWdlOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NjclO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2FsbGVyeS5lbWJlZC1nYWxsZXJ5IHtcbiAgICAuZ2FsbGVyeS1kaXNwbGF5LWNhcm91c2VsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xuXG4gICAgICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXG4gICAgICAgICAgICAgICAgJiA+IGltZyB7IFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC52aWRlby1jbGlwIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPQ0lnYUdWcFoyaDBQU0l4TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRGdnTVRJaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStQSEJoZEdnZ1pEMGlUVGNnTVV3eUlEWnNOU0ExSWlCemRISnZhMlU5SWlNeE5EQkdNRFlpSUhOMGNtOXJaUzEzYVdSMGFEMGlNaUl2UGp3dmMzWm5QZz09Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91czo6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0OjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAudGh1bWJuYWlscy1jYXJvdXNlbCB7XG4gICAgICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOHJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGdyZXktY29sb3I7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmID4gaW1nIHsgXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAudmlkZW8tY2xpcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pcy1uYXYtc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkdGhlbWUtZGFyay1ibHVlLCAwLjI1KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA3cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA4cmVtO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU9DSWdhR1ZwWjJoMFBTSXhNaUlnZG1sbGQwSnZlRDBpTUNBd0lEZ2dNVElpSUdacGJHdzlJbTV2Ym1VaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRUY2dNVXd5SURac05TQTFJaUJ6ZEhKdmEyVTlJaU14TkRCR01EWWlJSE4wY205clpTMTNhV1IwYUQwaU1pSXZQand2YzNablBnPT0nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgJHdoaXRlIDIwcHgsICR3aGl0ZSAyMHB4LCByZ2JhKCR3aGl0ZSwgMCkgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC05MGRlZywgJHdoaXRlIDIwcHgsICR3aGl0ZSAyMHB4LCByZ2JhKCR3aGl0ZSwgMCkgMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgICAgICAuZ2FsbGVyeS1kaXNwbGF5LWNhcm91c2VsIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdhbGxlcnktdGh1bWJuYWlscyB7XG4gICAgICAgICAgICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR3aGl0ZSA1cHgsICR3aGl0ZSA1cHgsIHJnYmEoJHdoaXRlLCAwKSAxMDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC05MGRlZywgJHdoaXRlIDVweCwgJHdoaXRlIDVweCwgcmdiYSgkd2hpdGUsIDApIDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsImJvZHkubGlnaHRib3gtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmxpZ2h0Ym94IHsgXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgICAvLyB6LWluZGV4OiAzMjA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC43NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgei1pbmRleDogLTEwMDtcbiAgICBwYWRkaW5nOiAxMHJlbSA2cmVtO1xuICAgIFxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgIHotaW5kZXg6IDMyMDtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAubWlkZGxlLXdyYXAge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5taWRkbGUtd3JhcCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgIH1cblxuICAgIC5saWdodGJveC1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuZ2FsbGVyeS1jb3VudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41NjI1O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpZ2h0Ym94LWNsb3NlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBcbiAgICAgICAgICAgIC5jbG9zZS1pY29uIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIxMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gJjpob3ZlciAuY2xvc2UtaWNvbiB7XG4gICAgICAgICAgICAvLyAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpZ2h0Ym94LWNvbnRlbnQge1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDUwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuXG4gICAgICAgIC5saWdodGJveC1jYXJvdXNlbCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gICAgICAgICAgICBsZWZ0OiAtNC44cmVtO1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5saWdodGJveC1jYXJvdXNlbCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtNC44cmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgICAgICAgIC5hc3BlY3QtcmF0aW8taW1hZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDY2LjY2NjclO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wX3MpIHtcbiAgICAgICAgLmxpZ2h0Ym94LWNvbnRlbnQge1xuICAgICAgICAgICAgLmxpZ2h0Ym94LWNhcm91c2VsIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzLFxuICAgICAgICAgICAgLmxpZ2h0Ym94LWNhcm91c2VsIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoIG1heC1oZWlnaHQ6IDkwMHB4ICkge1xuICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZnNsaWdodGJveC1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0ZXItYmxhY2ssIDAuOSkgIWltcG9ydGFudDtcbn1cblxuLmZzbGlnaHRib3gtc291cmNlLW91dGVyLmZzbGlnaHRib3gtZnVsbC1kaW1lbnNpb24ge1xuICAgIG1heC13aWR0aDogMTIwcmVtO1xuICAgIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTIwcmVtKSAqIDAuNSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cblxuLmZzbGlnaHRib3gtc2xpZGUtYnRuLWNvbnRhaW5lciB7XG4gICAgLmZzbGlnaHRib3gtc2xpZGUtYnRuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNC44cmVtO1xuICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICBcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsSUR4emRtY2dkMmxrZEdnOUlqRTVJaUJvWldsbmFIUTlJak15SWlCMmFXVjNRbTk0UFNJd0lEQWdNVGtnTXpJaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStDaUFnSUNBZ0lDQWdQSEJoZEdnZ1pEMGlUVEUzSURNd1RETWdNVFpNTVRjZ01pSWdjM1J5YjJ0bFBTSjNhR2wwWlNJZ2MzUnliMnRsTFhkcFpIUm9QU0kwSWk4K0NpQWdJQ0FnSUNBZ1BDOXpkbWMrJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHdpZHRoOiAxLjlyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mc2xpZ2h0Ym94LXNsaWRlLWJ0bi1jb250YWluZXIuZnNsaWdodGJveC1zbGlkZS1idG4tY29udGFpbmVyLXByZXZpb3VzIHtcbiAgICBsZWZ0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgLSA4cmVtKTtcblxuICAgIC5mc2xpZ2h0Ym94LXNsaWRlLWJ0bjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5mc2xpZ2h0Ym94LXNsaWRlLWJ0bi1jb250YWluZXIuZnNsaWdodGJveC1zbGlkZS1idG4tY29udGFpbmVyLW5leHQge1xuICAgIHJpZ2h0OiBjYWxjKCgxMDB2dyAtIDEyMHJlbSkgKiAwLjUgLSA4cmVtKTtcblxuICAgIC5mc2xpZ2h0Ym94LXNsaWRlLWJ0bjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5mc2xpZ2h0Ym94LXNsaWRlLW51bWJlci1jb250YWluZXIge1xuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtY29udGVudDtcbiAgICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59IiwiLy8gLS0tLS0gY29sb3JzIC0tLS0tIC8vXG4uYmcteWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ibGFjaztcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJi5idXR0b24sICYuaWNvbi1idXR0b24ge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXItYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tIHR5cG9zIC0tLS0tIC8vXG5oMSwgLmgxIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYWN0aXZldHJhdmVsLWhlYWRpbmc7XG4gICAgZm9udC1zaXplOiA4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGluZS1oZWlnaHQ6IDAuOTM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgY29sb3I6ICR0aGVtZS1kYXJrZXItYmx1ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJi5zbWFsbGVyIHtcbiAgICAgICAgZm9udC1zaXplOiA3cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNi41cmVtO1xuXG4gICAgICAgICYuc21hbGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDZyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNS42cmVtO1xuXG4gICAgICAgICYuc21hbGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDUuMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC44cmVtO1xuXG4gICAgICAgICYuc21hbGxlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQuOHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1hY3RpdmV0cmF2ZWwtaGVhZGluZztcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjkzO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGNvbG9yOiAkdGhlbWUtZGFya2VyLWJsdWU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnZpZGVvLWVtYmVkIHtcbiAgICAvLyBwYWRkaW5nLXRvcDogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0X3ApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcmVtO1xuICAgIH1cbn1cblxuLy8gLS0tLS0gbGF5b3V0IC0tLS0tIC8vXG4uc21hbGwtd3JhcCB7XG4gICAgbWF4LXdpZHRoOiA5MnJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnNtYWxsZXItd3JhcCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIH1cbn1cblxuLnR3by1jb2xzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLSBibG9ja3MgLS0tLS0gLy9cbi50Yy1hY2NvcmRpb24ge1xuICAgIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgIGhlaWdodDogNi42cmVtO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1ibHVlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duLWljb24tYmxhY2sge1xuICAgICAgICAgICAgd2lkdGg6IDAuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlPQ0lnYUdWcFoyaDBQU0l4TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRGdnTVRJaUlHWnBiR3c5SW01dmJtVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStDanh3WVhSb0lHUTlJazB4SURGTU5pQTJUREVnTVRFaUlITjBjbTlyWlQwaUl6RTBNRVl3TmlJZ2MzUnliMnRsTFhkcFpIUm9QU0l5SWk4K0Nqd3ZjM1puUGdvPScpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuZHJvcGRvd24taWNvbi1ibGFjayB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxufVxuXG4udHdvLWNvbHMgLnRjLWFjY29yZGlvbiB7XG4gICAgLmFjY29yZGlvbi1wYW5lbCA+ICouY3RhLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4udGlwcy1ibG9jayB7XG4gICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuXG4gICAgICAgIGgyIHNwYW4sIGgyIGIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1kYXJrZXItYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRpcC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXAtaW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMCAzcmVtIDVyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhpZ2hsaWdodCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhY3RpdmV0cmF2ZWwtaGlnaGxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAgICAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbGVyIC50aXAtaXRlbSB7XG4gICAgICAgIC50aXAtaW1hZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NyU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJldmVyc2VkIC50aXAtaXRlbSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAgICAgICAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcF9zKSB7XG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpcC1pdGVtIHtcbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSAucmlnaHQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmV2ZXJzZWQgLnRpcC1pdGVtIHtcbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldF9wKSB7XG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpcC1pdGVtIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgJiA+ICoge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWUtZmxleC1maXgoMTAwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aXAtaW1hZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbWFsbGVyIC50aXAtaXRlbSB7XG4gICAgICAgICAgICAudGlwLWltYWdlOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJldmVyc2VkIC50aXAtaXRlbSB7XG4gICAgICAgICAgICAudGlwLWltYWdlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNnJlbSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50LCAmOm50aC1jaGlsZCgybikgLnJpZ2h0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBoMiBzcGFuLCBoMiBiIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aXAtaXRlbSAudGlwLWltYWdlOjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc21hbGxlciAudGlwLWl0ZW0ge1xuICAgICAgICAgICAgLnRpcC1pbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJldmVyc2VkIC50aXAtaXRlbSB7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgLnRpcC1pbWFnZTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjRkZGRkZGIC0wLjE1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA1MC4xMSUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXh0ZXJuYWwtYmxvY2sge1xuICAgICYudmVydGljYWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgICAgLmV4dGVybmFsLWNvbnRlbnQgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWFjdGl2ZXRyYXZlbC1oZWFkaW5nO1xuICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjkzO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWRhcmtlci1ibHVlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAmLnZlcnRpY2FsOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogY2FsYygoMTAwdncgLSAxMjByZW0pICogLTAuNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICAmLnZlcnRpY2FsOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tIHRoZW1lcyAtLS0tLSAvL1xuJi50aGVtZS1ibHVlIC50aXBzLWJsb2NrLCAmLnRoZW1lLXJlZCAudGlwcy1ibG9jayB7XG4gICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIGgyLCAuaDEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG4gICAgfVxuXG4gICAgcCBzdHJvbmcge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAudGlwLWl0ZW0gLnJpZ2h0LWNvbnRlbnQgaDIge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3Bfcykge1xuICAgICAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXRfcCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICAgICAgLnRpcC1pdGVtIC5yaWdodC1jb250ZW50IGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4gICAgICAgIC50aXAtaXRlbSAucmlnaHQtY29udGVudCBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuJi50aGVtZS1ibHVlIHtcbiAgICAudGMtYWNjb3JkaW9uIC5hY2NvcmRpb24tdHJpZ2dlciB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0aGVtZS1jeWNsaW5nLWxpZ2h0Ymx1ZTtcbiAgICB9XG5cbiAgICAudGlwcy1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jeWNsaW5nLWJsdWU7XG4gICAgfVxuXG4gICAgLmV4dGVybmFsLWJsb2NrIHtcbiAgICAgICAgLmJnLXllbGxvdyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY3ljbGluZy1ibHVlO1xuXG4gICAgICAgICAgICAmLmJ1dHRvbiwgJi5pY29uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jeWNsaW5nLWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRlc3RpbW9uaWFsLWNhcm91c2VsLWNvbnRhaW5lciAuY2Fyb3VzZWwtaXRlbSAudGVzdGltb25pYWwtY29udGVudCAuaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY3ljbGluZy1saWdodGJsdWU7XG4gICAgfVxufVxuXG4mLnRoZW1lLXJlZCB7XG4gICAgLnRjLWFjY29yZGlvbiAuYWNjb3JkaW9uLXRyaWdnZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkdGhlbWUtd2Fsa2luZy1saWdodHJlZDtcbiAgICB9XG5cbiAgICAudGlwcy1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS13YWxraW5nLXJlZDtcbiAgICB9XG5cbiAgICAuZXh0ZXJuYWwtYmxvY2sge1xuICAgICAgICAuYmcteWVsbG93IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS13YWxraW5nLXJlZDtcblxuICAgICAgICAgICAgJi5idXR0b24sICYuaWNvbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtd2Fsa2luZy1yZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRlc3RpbW9uaWFsLWNhcm91c2VsLWNvbnRhaW5lciAuY2Fyb3VzZWwtaXRlbSAudGVzdGltb25pYWwtY29udGVudCAuaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtd2Fsa2luZy1saWdodHJlZDtcblxuICAgICAgICBoMiwgaDMge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0= */
