@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
html {
  scroll-padding-top: 9.375rem;
}
@media print, screen and (min-width: 64em) {
  html {
    scroll-padding-top: 12.5rem;
  }
}

body {
  overflow-x: hidden;
  letter-spacing: 0px;
}
body .wrapper {
  padding-top: 13.875rem;
}
body p {
  font-size: 1rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 64em) {
  body p {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  body p {
    font-size: 1.4375rem;
  }
}
body strong {
  font-weight: bold;
}
body a {
  color: #00a4b1;
  transition: all 0.3s ease-out;
}
body h1,
body h2,
body h3 {
  letter-spacing: -1px;
}
@media print, screen and (min-width: 25em) {
  body .image-carousel.image-carousel--wide ul li {
    width: 50%;
  }
}
@media print, screen and (min-width: 46.875em) {
  body .image-carousel.image-carousel--wide ul li {
    width: 33.3%;
  }
}
@media print, screen and (min-width: 64em) {
  body .image-carousel.image-carousel--wide ul li {
    width: 20%;
  }
}
body .image-carousel {
  padding: 2.5rem 1.25rem;
  text-align: center;
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body .image-carousel {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
    padding: 3.75rem 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  body .image-carousel {
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
  }
}
body .image-carousel .medium-4 {
  position: relative;
}
body .image-carousel .medium-4:after {
  position: absolute;
  display: block;
  top: 0;
  right: -10px;
  content: "";
  height: 100%;
  width: 1px;
  border-left: solid 1px #00a4b1;
}
body .image-carousel .medium-8 {
  padding-top: 1.25rem;
}
body .image-carousel p {
  color: #00a4b1;
  text-align: center;
}
body .image-carousel h2 {
  font-size: 1.375rem;
  font-weight: 400;
  padding: 1.25rem 1.25rem 1.875rem 1.25rem;
  margin: 0;
  color: #00a4b1;
}
@media print, screen and (min-width: 46.875em) {
  body .image-carousel h2 {
    font-size: 2.25rem;
  }
}
body .image-carousel .row {
  max-width: 1300px;
  margin: auto;
  overflow: hidden;
}
body .image-carousel ul {
  list-style-type: none;
  padding: 20 0;
  margin: 0;
}
body .image-carousel ul li {
  padding: 0 1.25rem;
  margin: 0;
  width: 100%;
  min-height: 6.25rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 25em) {
  body .image-carousel ul li {
    width: 50%;
  }
}
@media print, screen and (min-width: 46.875em) {
  body .image-carousel ul li {
    width: 33.3%;
  }
}
body .image-carousel ul li:before {
  display: none;
}
body .image-carousel ul li img {
  max-height: 6.25rem;
}
body .fullwidth-image-slider {
  font-size: 1.125rem;
  color: #fff;
  text-align: center;
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body .fullwidth-image-slider {
    margin-top: 3.75rem;
    margin-bottom: 3.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  body .fullwidth-image-slider {
    margin-top: 5.625rem;
    margin-bottom: 5.625rem;
  }
}
body .fullwidth-image-slider .orbit-wrapper {
  position: relative;
}
body .fullwidth-image-slider ul {
  margin-left: auto;
  margin-right: auto;
}
body .fullwidth-image-slider ul li {
  background-size: cover;
  background-position: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 0;
  padding-bottom: 60%;
}
body .fullwidth-image-slider ul li:before {
  content: "";
}
body .fullwidth-image-slider .orbit-next,
body .fullwidth-image-slider .orbit-previous {
  position: absolute;
  z-index: 10;
  font-size: 2.125rem;
  width: 2.125rem;
  color: #fff;
  opacity: 1;
  transition: opacity 0.5s;
  background-color: #00a4b1;
}
body .fullwidth-image-slider .orbit-next:hover,
body .fullwidth-image-slider .orbit-previous:hover {
  opacity: 0.6;
}
body .fullwidth-image-slider .orbit-next {
  right: 0px;
  top: calc(50% - 25px);
}
body .fullwidth-image-slider .orbit-previous {
  left: 0px;
  top: calc(50% - 25px);
}
body .fullwidth-image-slider .orbit-bullets {
  position: absolute;
  bottom: 1.875rem;
  text-align: center;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body .fullwidth-image-slider .orbit-bullets button {
  cursor: pointer;
  display: inline-block;
  float: none;
  height: 12px;
  width: 12px;
  margin-right: 8px;
  border: 1px solid #00a4b1;
  transition: opacity 0.5s;
  opacity: 1;
}
body .fullwidth-image-slider .orbit-bullets button.is-active {
  background: #00a4b1;
}
body .fullwidth-image-slider .orbit-bullets button:hover {
  opacity: 0.6;
}

.full-width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.large-9 .full-width {
  width: 100%;
  position: relative;
  left: 0;
  right: 0;
  margin-left: 0;
  margin-right: 0;
}

#accessibility {
  position: absolute;
  font-size: 0em;
  margin: 0;
  padding: 0;
  visibility: hidden;
}

.small-12.columns {
  padding-left: 20px;
  padding-right: 20px;
}

.small-12.columns--mobile {
  padding-left: 0;
  padding-right: 0;
}

.footer .small-12.columns {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.question {
  font-size: 1.5em;
  font-weight: 300;
  color: #004990;
}

.errors,
ul.errorlist li {
  color: red;
}
.errors.errors-centred ul li,
ul.errorlist li.errors-centred ul li {
  text-align: center;
}

#cms-top .cms-dragarea-static:first-child {
  display: none !important;
}

.extend-left {
  position: relative;
}
.extend-left:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 2000px;
  left: -1975px;
  top: 0;
  background: #f7f7f7;
}
.extend-left:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 20px;
  right: 0px;
  top: 0;
  background: #f7f7f7;
}

.extend-right {
  position: relative;
}
.extend-right:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 20px;
  left: 0px;
  top: 0;
  background: #f7f7f7;
}
.extend-right:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 2000px;
  right: -1985px;
  top: 0;
  background: #f7f7f7;
}

.extend-to-sidebar:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 45px;
  left: -45px;
  top: 0;
  background: #f7f7f7;
}

.extend-left--blue:before {
  background: #004990;
}
.extend-left--blue:after {
  background: #004990;
}

.extend-left--teal:before {
  background: #00a4b1;
}
.extend-left--teal:after {
  background: #00a4b1;
}

.page-banner {
  position: relative;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  height: 300px;
}
@media print, screen and (min-width: 64em) {
  .page-banner {
    height: 430px;
  }
}
.page-banner.deeper {
  height: 400px;
}
@media print, screen and (min-width: 64em) {
  .page-banner.deeper {
    height: 600px;
  }
}
.page-banner .page-banner__container {
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}
.page-banner .page-banner__text {
  color: #ffffff;
  position: absolute;
  bottom: 3.125rem;
  padding: 1.875rem 1.875rem 1.875rem 1.25rem;
  text-shadow: 0px 0px 19px rgba(0, 0, 0, 0.18);
}
@media screen and (min-width: 75em) {
  .page-banner .page-banner__text {
    padding: 1.875rem 1.875rem 1.875rem 0;
  }
}
.page-banner span {
  font-size: 2.4em;
  font-weight: 600;
  line-height: 1.1em;
  color: #ffffff;
}
@media print, screen and (min-width: 64em) {
  .page-banner span {
    font-size: 3.9375rem;
  }
}
.page-banner p {
  position: relative;
  z-index: 32;
  color: #ffffff;
}
.page-banner.is-wrapped {
  height: auto;
  position: relative;
  padding-top: 20.25%;
  background-size: contain;
  background-repeat: no-repeat;
}
.page-banner.is-wrapped:after {
  display: none;
}
.page-banner.is-wrapped a {
  display: block;
  width: 100%;
  margin: auto;
  position: absolute;
  top: 0px;
  bottom: 0px;
}

.crumbs {
  display: none;
  width: 100%;
  min-height: 47px;
  position: relative;
}
.crumbs:after {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 16;
}
.crumbs ul.crumbs__list {
  position: relative;
  margin: 0;
  padding: 0.7em 1.875rem 0.7em 1.5625rem;
  z-index: 32;
  overflow: hidden;
}
@media screen and (min-width: 75em) {
  .crumbs ul.crumbs__list {
    padding: 0.7em 1.875rem 0.7em 0.375rem;
  }
}
.crumbs ul.crumbs__list li {
  float: left;
  list-style: none;
}
.crumbs ul.crumbs__list li a {
  color: #004990;
}
.crumbs ul.crumbs__list li:after {
  margin: 0 10px;
  color: #004990;
  content: ">";
}
.crumbs ul.crumbs__list li:last-child a {
  font-weight: 500;
}
.crumbs ul.crumbs__list li:last-child:after {
  content: "";
}

.sidebar {
  margin-top: 1em;
}
.sidebar h3 {
  font-size: 1.6em;
  margin-top: 50px;
  color: #004990;
}
.sidebar span {
  display: block;
  line-height: 1.2em;
  margin-bottom: 0.6em;
  color: #004990;
}
.sidebar .sidebar__border {
  position: relative;
}
.sidebar .sidebar__border:after {
  display: none;
  position: absolute;
  content: "";
  width: 1px;
  background: #004990;
  height: 100%;
  top: 0;
  right: -15px;
}
.sidebar .block-button {
  margin: 0 0 40px 0;
}
.sidebar .sidebar__item {
  margin-bottom: 30px;
}
.sidebar .sidebar__title {
  margin-top: 0;
}
.sidebar .sidebar__text {
  font-size: 1.3em;
  font-weight: 300;
}
.sidebar .sidebar__sub {
  font-size: 0.9em;
}
.sidebar ul.sidebar__list {
  margin: 0;
  padding: 0;
}
.sidebar ul.sidebar__list li {
  list-style: none;
  font-size: 1.3em;
  line-height: 1.2em;
  color: #004990;
  font-weight: 300;
}
.sidebar ul.sidebar__nav {
  margin: 0;
  padding: 0 0 0 0;
}
.sidebar ul.sidebar__nav li {
  list-style: none;
  font-size: 1.3em;
  margin-bottom: 0.5em;
  line-height: 1.2em;
}
.sidebar ul.sidebar__nav li ul {
  margin: 4px 0 0 20px;
}
.sidebar ul.sidebar__nav li ul li {
  font-size: 0.8em;
}
.sidebar ul.sidebar__nav li ul li li {
  font-size: 1em;
}
.sidebar ul.sidebar__nav li ul li.selected > a {
  color: #00a4b1;
  font-weight: 400;
}
.sidebar ul.sidebar__nav li a {
  color: #004990;
}
.sidebar ul.sidebar__nav li a:hover {
  color: #00a4b1;
}
.sidebar ul.sidebar__nav li a.current {
  font-weight: 500;
  color: #00a4b1;
}
.sidebar ul.sidebar__social {
  margin: 0;
}
.sidebar ul.sidebar__social li {
  float: left;
  list-style: none;
  margin: 0 4px 8px 0;
}
.sidebar ul.sidebar__social li a {
  color: #ffffff;
  display: block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  border-radius: 50%;
}
.sidebar ul.sidebar__social li a.linkedin {
  background: #2085c7;
}
.sidebar ul.sidebar__social li a.linkedin:hover {
  background: #3b9edf;
}
.sidebar ul.sidebar__social li a.twitter {
  background: #78cdf0;
}
.sidebar ul.sidebar__social li a.twitter:hover {
  background: #a6def5;
}
.sidebar ul.sidebar__social li a.facebook {
  background: #537bbd;
}
.sidebar ul.sidebar__social li a.facebook:hover {
  background: #7897cb;
}
.sidebar ul.sidebar__social li a.youtube {
  background: #e9654b;
}
.sidebar ul.sidebar__social li a.youtube:hover {
  background: #ef8c78;
}
.sidebar ul.sidebar__social li a.google-plus {
  background: #4c4c4b;
}
.sidebar ul.sidebar__social li a.google-plus:hover {
  background: #666664;
}
.sidebar ul.sidebar__social li a.rss {
  background: #004990;
}
.sidebar ul.sidebar__social li a.rss:hover {
  background: #0063c3;
}

.content {
  margin: 0 0 60px 0;
}
.content .content__full {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}
@media screen and (min-width: 75em) {
  .content .content__full {
    margin-left: auto;
    margin-right: auto;
  }
}
.content .content__border {
  padding: 40px 0 0 0;
}
.content .content__border > h2 {
  margin-top: 0;
}
.content h1 {
  color: #004990;
  font-size: 1.75rem;
  line-height: 1.2em;
  margin-bottom: 0.2em;
}
@media print, screen and (min-width: 46.875em) {
  .content h1 {
    font-size: 2.625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content h1 {
    font-size: 3.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content h1.booking-heading {
    font-size: 2.625rem;
    margin-bottom: 0.8em;
  }
}
.content h2 {
  color: #004990;
  font-size: 1.6em;
  margin: 0.8em 0 0.2em 0;
}
@media print, screen and (min-width: 64em) {
  .content h2 {
    font-size: 1.625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content h2 {
    font-size: 2rem;
  }
}
.content h3 {
  color: #004990;
  font-size: 1.4em;
  margin: 0.8em 0 0.2em 0;
}
.content h4 {
  color: #004990;
  font-size: 1.3em;
  margin: 0.8em 0 0.2em 0;
}
.content p {
  font-size: 1rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .content p {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content p {
    font-size: 1.4375rem;
  }
}
.content ul {
  text-align: left;
  list-style: none;
  position: relative;
  padding: 0;
  margin: 0 0 1em 0;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  .content ul {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content ul {
    font-size: 1.4375rem;
  }
}
.content ul li {
  padding-left: 1rem;
  position: relative;
}
.content ul li:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 0.3em;
  height: 0.3em;
  background: #004990;
  border-radius: 50%;
}
.content #id_concession ul li:before {
  display: none;
}
.content ol {
  text-align: left;
  margin-left: 1.375rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  .content ol {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content ol {
    font-size: 1.4375rem;
    margin-left: 2rem;
  }
}
.content .content__list li:before,
.content ol li:before {
  display: none;
}
.content iframe {
  margin-right: 10px;
  margin-bottom: 10px;
}
.content .block-extend:before {
  display: none;
}
.content table {
  border: none;
  border-collapse: collapse;
}
.content table td {
  padding: 0.5em;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  .content table td {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .content table td {
    font-size: 1.25rem;
  }
}

ul.content__list {
  margin: 0;
  padding: 0;
}
ul.content__list li {
  margin: 0 0 2rem 0;
  padding: 0 0 1rem 0;
  list-style: none;
  border-bottom: 4px solid #004990;
  position: relative;
}
ul.content__list li h3 {
  font-size: 1.4em;
  color: #004990;
  margin-bottom: 0;
}
ul.content__list li h3 a {
  color: #004990;
}
ul.content__list li .list__date {
  display: block;
  font-size: 0.9em;
  margin-bottom: 0.3em;
}
ul.content__list li p {
  font-weight: 300;
  line-height: 1.2em;
}

.wrapper--gray {
  background: #e9e9e9;
}

.page-top {
  height: 134px;
}
.page-top h2 {
  margin-top: 20px;
  line-height: 134px;
  color: #004990;
  font-weight: 300;
  display: block;
  width: 100%;
  font-size: 2em;
}

.page-top--tall {
  height: 180px;
}
.page-top--tall h2 {
  line-height: 64px;
  float: left;
}

.page-main {
  background: #ffffff;
  padding: 0;
}

.page-main--block {
  padding: 60px 0;
}

.small-text {
  font-size: 1em;
}

.tabs--filter {
  margin: 0;
  padding: 0;
  display: table;
  width: 100%;
}
.tabs--filter li {
  display: block;
  vertical-align: middle;
  width: 100%;
  list-style: none;
  float: none;
  width: auto;
  padding: 16px 0;
  background: rgba(255, 255, 255, 0);
  transition: all 0.3s ease-out;
}
.tabs--filter li a {
  letter-spacing: -1px;
  padding: 0 4px;
  font-size: 1.2em;
  line-height: 1em;
  font-weight: 300;
  color: #004990;
  width: 100%;
  text-align: center;
  display: block;
  position: relative;
}
.tabs--filter li a::after {
  display: block;
  content: attr(title);
  letter-spacing: -1px;
  font-weight: 500;
  height: 1px;
  color: transparent;
  overflow: hidden;
  visibility: hidden;
  margin-bottom: -1px;
}
.tabs--filter li:hover {
  background: rgb(255, 255, 255);
  font-weight: 500;
}
.tabs--filter li:hover a {
  letter-spacing: -1px;
  font-weight: 500;
}
.tabs--filter li.select {
  font-weight: 500;
  background: rgb(255, 255, 255);
}

.page-list {
  background: #ffffff;
  padding: 70px 0;
}

.page-top__search {
  display: block;
  margin-right: 10px;
  float: left;
  margin-top: 30px;
  width: 51px;
  overflow: hidden;
  transition: all 0.3s ease-out;
}
.page-top__search .search__wrap {
  width: 290px;
  float: right;
}
.page-top__search .search__wrap i {
  font-size: 40px;
  color: #004990;
  display: block;
  margin-right: 10px;
  float: left;
}
.page-top__search .search__wrap input {
  width: 230px;
  display: block;
  margin: 0 10px 0 0;
  float: left;
}

.search-toggle {
  cursor: pointer;
}

.search-expanded {
  width: 290px;
}

.filter-wrap {
  background: #f7f7f7;
  padding: 30px 0;
  margin-bottom: 3em;
}

#map {
  width: 100%;
  height: 360px;
}

.show-for-large-up {
  display: none;
}

.show-for-medium-up {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  .show-for-medium-up {
    display: block;
  }
}

@media print, screen and (min-width: 46.875em) {
  .show-small {
    display: none;
  }
}

@media print, screen and (min-width: 46.875em) {
  .small-12.columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
  .page-main--list .small-12.columns {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
  }
  .small-12.columns--mobile {
    padding-left: 0;
    padding-right: 0;
  }
  .extend-left:before {
    left: -1985px;
  }
  .page-top {
    height: 134px;
  }
  .page-top h2 {
    margin-top: 0;
    display: inline-block;
    width: auto;
    font-size: 2.5em;
  }
  .page-top--tall {
    height: 180px;
  }
  .page-top--tall h2 {
    line-height: 180px;
    float: left;
  }
  .page-top__search {
    margin-top: 68px;
  }
  .page-top__search .search__wrap {
    width: 400px;
  }
  .page-top__search .search__wrap input {
    width: 340px;
  }
  .tabs--filter li {
    display: table-cell;
    width: auto;
    max-width: 260px;
    min-width: 100px;
  }
  .search-expanded {
    width: 400px;
  }
  .crumbs {
    display: block;
  }
  .sidebar {
    margin-top: 60px;
    margin-bottom: 1em;
  }
  .sidebar .sidebar__border {
    position: relative;
    padding-left: 10px;
  }
  .sidebar .sidebar__border:after {
    display: block;
  }
  .sidebar .sidebar__title {
    font-size: 1.4em;
  }
  .sidebar .sidebar__text {
    font-size: 1.1em;
  }
  .sidebar .sidebar__sub {
    font-size: 0.9em;
  }
  .sidebar ul.sidebar__nav {
    padding: 0 0 3em 0;
  }
  .sidebar ul.sidebar__nav li {
    font-size: 1.2em;
  }
  .content {
    margin: 60px 0 60px 0;
  }
  .content .content__border {
    padding: 0 10px 0 30px;
  }
  .row--medium-stack .content {
    margin: 0px 0 60px 0;
  }
  .row--medium-stack .content .content__border {
    padding: 0 10px;
  }
  .row--medium-stack ul.sidebar__nav {
    padding: 0 0 3em 0;
  }
  .row--medium-stack ul.sidebar__nav li {
    font-size: 1.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .small-12.columns--mobile {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
  .extend-left:after {
    display: none;
  }
  .page-top--tall {
    height: 180px;
  }
  .page-top--tall h2 {
    line-height: 180px;
    float: left;
    font-size: 2.5em;
  }
  .page-top__search .search__wrap {
    width: 460px;
  }
  .page-top__search .search__wrap input {
    width: 400px;
  }
  .search-expanded {
    width: 460px;
  }
  .sidebar .sidebar__border {
    padding-left: 0;
  }
  .sidebar .sidebar__title {
    font-size: 1.6em;
  }
  .sidebar .sidebar__text {
    font-size: 1.3em;
  }
  .sidebar .sidebar__sub {
    font-size: 0.9em;
  }
  .sidebar ul.sidebar__nav li {
    font-size: 1.5em;
  }
  .content .content__border {
    padding: 0 0 0 30px;
  }
  .row--medium-stack .content {
    margin: 80px 0 60px 0;
  }
  .row--medium-stack .content .content__border {
    padding: 0 0 0 30px;
  }
  .show-for-large-up {
    display: block;
  }
}
.socials {
  clear: both;
}
.socials h3 {
  margin-top: 2em;
}
.socials .fa {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #ffffff;
  text-align: center;
  line-height: 32px;
  font-size: 18px;
  transition: all 0.3s ease-out;
}
.socials .fa:hover {
  opacity: 0.75;
}
.socials .fa.fa-vimeo {
  background-color: #00adef;
}
.socials .fa.fa-linkedin {
  background-color: #2085c7;
}
.socials .fa.fa-twitter {
  background-color: #78cdf0;
}
.socials .fa.fa-facebook {
  background-color: #537bbd;
}
.socials .fa.fa-youtube-play {
  background-color: #e9654b;
}
.socials .fa.fa-google-plus {
  background-color: #4c4c4b;
}
.socials .fa.fa-rss {
  background-color: #004990;
}
.socials .fa.fa-envelope {
  background-color: #00a4b1;
}

.trustpilotshare {
  font-size: 0.875rem;
}
.trustpilotshare p {
  margin-top: 0.8em;
  margin-bottom: 0;
}
.trustpilotshare a {
  color: #58595b;
}

.map {
  padding-top: 50%;
  margin-bottom: 25px;
}

.row .new-member-signup {
  margin-bottom: 0.5em;
}
.row .new-member-signup h2 {
  background: #00a4b1;
  margin-bottom: 0;
  padding: 10px 20px;
  color: #fff;
}
.row .new-member-signup .row {
  margin: 0;
  padding-top: 1em;
  padding-bottom: 1em;
  background-color: #e0e0e0;
}

.help-button-main {
  position: fixed;
  right: -6.125rem;
  bottom: 11.875rem;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  width: 13.125rem;
  min-height: 3.75rem;
  z-index: 130;
}
@media screen and (min-width: 95.625em) {
  .help-button-main {
    top: 20%;
    bottom: auto;
  }
}
.help-button-main a {
  background-color: #dd5829;
  display: inline-block;
  color: #fff;
  padding: 0.375rem 0.625rem 1rem 0.625rem;
  border-radius: 5px;
  text-align: center;
  width: 100%;
  transition: background 0.25s;
}
.help-button-main a:hover {
  background: #004990;
  color: #fff;
}
.help-button-main a:hover i {
  color: #fff;
}
.help-button-main a i {
  font-size: 1.25rem;
  line-height: 1.25rem;
  margin-left: 0.375rem;
}

.js-off-canvas-overlay {
  z-index: 250;
}

.quotes-slider {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
  padding: 1.25rem;
  background-color: #f7f7f7;
  font-size: 1.125rem;
  font-weight: bold;
  color: #00a4b1;
  text-align: center;
}
@media print, screen and (min-width: 46.875em) {
  .quotes-slider {
    padding: 4.375rem 0;
    font-size: 1.5rem;
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .quotes-slider {
    padding: 4.375rem;
    font-size: 2.3125rem;
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
  }
}
.quotes-slider .orbit-wrapper {
  position: relative;
  max-width: 69.75rem;
  margin: auto;
  padding: 0;
}
@media print, screen and (min-width: 46.875em) {
  .quotes-slider .orbit-wrapper {
    padding: 0 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .quotes-slider .orbit-wrapper {
    padding: 0 5rem;
  }
}
.quotes-slider ul {
  max-width: 69.75rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.quotes-slider ul li {
  margin: 0;
  padding: 0;
  height: 100%;
}
.quotes-slider ul li div {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}
.quotes-slider ul li p {
  font-size: 1.125rem;
}
@media print, screen and (min-width: 46.875em) {
  .quotes-slider ul li p {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .quotes-slider ul li p {
    font-size: 2.3125rem;
  }
}
.quotes-slider ul li p:before {
  font-size: 1.5em;
  content: "“";
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .quotes-slider ul li p:before {
    font-size: 2.3125rem;
  }
}
.quotes-slider ul li p:after {
  content: "”";
  font-size: 1.5em;
  line-height: 1em;
}
@media print, screen and (min-width: 64em) {
  .quotes-slider ul li p:after {
    font-size: 2.3125rem;
  }
}
.quotes-slider ul li:before {
  display: none;
}
.quotes-slider .orbit-bullets {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.quotes-slider .orbit-bullets button {
  cursor: pointer;
  display: inline-block;
  float: none;
  height: 12px;
  width: 12px;
  margin: 4px;
  border: 1px solid #00a4b1;
  border-radius: 50%;
  transition: opacity 0.5s;
  opacity: 1;
}
@media print, screen and (min-width: 64em) {
  .quotes-slider .orbit-bullets button {
    height: 18px;
    width: 18px;
    border: 2px solid #00a4b1;
  }
}
.quotes-slider .orbit-bullets button.is-active {
  background: #00a4b1;
}
.quotes-slider .orbit-bullets button:hover {
  opacity: 0.6;
}

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
   ========================================================================== */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
figcaption,
figure {
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * Add the correct display in IE.
 */
main {
  display: block;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 */
button {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

button,
[type=button],
[type=reset],
[type=submit] {
  /**
   * Remove the inner border and padding in Firefox.
   */
  /**
   * Restore the focus styles unset by the previous rule.
   */
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Show the overflow in Edge.
 */
input {
  overflow: visible;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
  /**
   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
   */
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  color: inherit; /* 2 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Add the correct display in IE 9-.
 */
menu {
  display: block;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&smallish=25em&smallmed=31.25em&medium=46.875em&large=64em&xlarge=75em&xxlargeish=81.25em&xxlarge=90em&xxxlarge=95.625em&xxxxlarge=116.875em";
}

html {
  box-sizing: border-box;
  font-size: 100%;
}

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "din-2014", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #58595b;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0;
}

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0;
}

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
}
[data-whatinput=mouse] button {
  outline: 0;
}

pre {
  overflow: auto;
}

.is-visible {
  display: block !important;
}

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

.row {
  max-width: 84.75rem;
  margin-right: auto;
  margin-left: auto;
}
.row::before, .row::after {
  display: table;
  content: " ";
}
.row::after {
  clear: both;
}
.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}
.row .row {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
.row .row.collapse {
  margin-right: 0;
  margin-left: 0;
}
.row.expanded {
  max-width: none;
}
.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}
.row:not(.expanded) .row {
  max-width: none;
}
.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}
.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .column, .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right;
}
.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left;
}

.column.row.row, .row.row.columns {
  float: none;
}

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

.small-1 {
  width: 8.3333333333%;
}

.small-push-1 {
  position: relative;
  left: 8.3333333333%;
}

.small-pull-1 {
  position: relative;
  left: -8.3333333333%;
}

.small-offset-0 {
  margin-left: 0%;
}

.small-2 {
  width: 16.6666666667%;
}

.small-push-2 {
  position: relative;
  left: 16.6666666667%;
}

.small-pull-2 {
  position: relative;
  left: -16.6666666667%;
}

.small-offset-1 {
  margin-left: 8.3333333333%;
}

.small-3 {
  width: 25%;
}

.small-push-3 {
  position: relative;
  left: 25%;
}

.small-pull-3 {
  position: relative;
  left: -25%;
}

.small-offset-2 {
  margin-left: 16.6666666667%;
}

.small-4 {
  width: 33.3333333333%;
}

.small-push-4 {
  position: relative;
  left: 33.3333333333%;
}

.small-pull-4 {
  position: relative;
  left: -33.3333333333%;
}

.small-offset-3 {
  margin-left: 25%;
}

.small-5 {
  width: 41.6666666667%;
}

.small-push-5 {
  position: relative;
  left: 41.6666666667%;
}

.small-pull-5 {
  position: relative;
  left: -41.6666666667%;
}

.small-offset-4 {
  margin-left: 33.3333333333%;
}

.small-6 {
  width: 50%;
}

.small-push-6 {
  position: relative;
  left: 50%;
}

.small-pull-6 {
  position: relative;
  left: -50%;
}

.small-offset-5 {
  margin-left: 41.6666666667%;
}

.small-7 {
  width: 58.3333333333%;
}

.small-push-7 {
  position: relative;
  left: 58.3333333333%;
}

.small-pull-7 {
  position: relative;
  left: -58.3333333333%;
}

.small-offset-6 {
  margin-left: 50%;
}

.small-8 {
  width: 66.6666666667%;
}

.small-push-8 {
  position: relative;
  left: 66.6666666667%;
}

.small-pull-8 {
  position: relative;
  left: -66.6666666667%;
}

.small-offset-7 {
  margin-left: 58.3333333333%;
}

.small-9 {
  width: 75%;
}

.small-push-9 {
  position: relative;
  left: 75%;
}

.small-pull-9 {
  position: relative;
  left: -75%;
}

.small-offset-8 {
  margin-left: 66.6666666667%;
}

.small-10 {
  width: 83.3333333333%;
}

.small-push-10 {
  position: relative;
  left: 83.3333333333%;
}

.small-pull-10 {
  position: relative;
  left: -83.3333333333%;
}

.small-offset-9 {
  margin-left: 75%;
}

.small-11 {
  width: 91.6666666667%;
}

.small-push-11 {
  position: relative;
  left: 91.6666666667%;
}

.small-pull-11 {
  position: relative;
  left: -91.6666666667%;
}

.small-offset-10 {
  margin-left: 83.3333333333%;
}

.small-12 {
  width: 100%;
}

.small-offset-11 {
  margin-left: 91.6666666667%;
}

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%;
}
.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both;
}
.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left;
}

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%;
}
.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both;
}
.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left;
}

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.3333333333%;
}
.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both;
}
.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left;
}

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%;
}
.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both;
}
.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left;
}

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%;
}
.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both;
}
.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left;
}

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.6666666667%;
}
.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both;
}
.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left;
}

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.2857142857%;
}
.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both;
}
.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left;
}

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%;
}
.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both;
}
.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}
.small-collapse .row {
  margin-right: 0;
  margin-left: 0;
}

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0;
}

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}

.small-centered {
  margin-right: auto;
  margin-left: auto;
}
.small-centered, .small-centered:last-child:not(:first-child) {
  float: none;
  clear: both;
}

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  float: left;
  margin-right: 0;
  margin-left: 0;
}

@media print, screen and (min-width: 46.875em) {
  .medium-1 {
    width: 8.3333333333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.6666666667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .medium-4 {
    width: 33.3333333333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.6666666667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .medium-7 {
    width: 58.3333333333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.6666666667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .medium-10 {
    width: 83.3333333333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.6666666667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.3333333333%;
  }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.6666666667%;
  }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.2857142857%;
  }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
  .medium-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .medium-centered, .medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .medium-uncentered,
.medium-push-0,
.medium-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.3333333333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.6666666667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .large-4 {
    width: 33.3333333333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.6666666667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .large-7 {
    width: 58.3333333333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.6666666667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .large-10 {
    width: 83.3333333333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.6666666667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.3333333333%;
  }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.6666666667%;
  }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.2857142857%;
  }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
  .large-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .large-centered, .large-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .large-uncentered,
.large-push-0,
.large-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}
.column-block {
  margin-bottom: 1.25rem;
}
.column-block > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 46.875em) {
  .column-block {
    margin-bottom: 1.875rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

p {
  margin-bottom: 2rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
}

em,
i {
  font-style: italic;
  line-height: inherit;
}

strong,
b {
  font-weight: bold;
  line-height: inherit;
}

small {
  font-size: 80%;
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "din-2014", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: bold;
  color: #58595b;
  text-rendering: optimizeLegibility;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  line-height: 0;
  color: #e9e9e9;
}

h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h2 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h3 {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

@media print, screen and (min-width: 46.875em) {
  h1 {
    font-size: 3rem;
  }
  h2 {
    font-size: 2.5rem;
  }
  h3 {
    font-size: 1.9375rem;
  }
  h4 {
    font-size: 1.5625rem;
  }
  h5 {
    font-size: 1.25rem;
  }
  h6 {
    font-size: 1rem;
  }
}
a {
  line-height: inherit;
  color: #004990;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: #003f7c;
}
a img {
  border: 0;
}

hr {
  clear: both;
  max-width: 84.75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #e9e9e9;
  border-left: 0;
}

ul,
ol,
dl {
  margin-bottom: 2rem;
  list-style-position: outside;
  line-height: 1.6;
}

li {
  font-size: inherit;
}

ul {
  margin-left: 1.25rem;
  list-style-type: disc;
}

ol {
  margin-left: 1.25rem;
}

ul ul, ul ol, ol ul, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 2rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #e9e9e9;
}
blockquote, blockquote p {
  line-height: 1.6;
  color: #58595b;
}

cite {
  display: block;
  font-size: 0.8125rem;
  color: #58595b;
}
cite:before {
  content: "— ";
}

abbr {
  border-bottom: 1px dotted #0a0a0a;
  color: #58595b;
  cursor: help;
}

figure {
  margin: 0;
}

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #e9e9e9;
  background-color: #f7f7f7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
}

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #f7f7f7;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a;
}

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #58595b;
}

.lead {
  font-size: 125%;
  line-height: 1.6;
}

.stat {
  font-size: 2.5rem;
  line-height: 1;
}
p + .stat {
  margin-top: -1rem;
}

.no-bullet {
  margin-left: 0;
  list-style: none;
}

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

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

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

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

@media print, screen and (min-width: 46.875em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}
@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print {
    display: table-cell !important;
  }
  th.show-for-print {
    display: table-cell !important;
  }
  a,
a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
a[href^="javascript:"]:after,
a[href^="#"]:after {
    content: "";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
blockquote {
    border: 1px solid #58595b;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}
[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.5625rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: none;
  border-radius: 0;
  background-color: rgba(255, 255, 255, 0.2);
  box-shadow: none;
  font-family: "din-2014", Helvetica, Roboto, Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 300;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus,
textarea:focus {
  outline: none;
  border: none;
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}

textarea {
  max-width: 100%;
}
textarea[rows] {
  height: auto;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #58595b;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #58595b;
}

input::placeholder,
textarea::placeholder {
  color: #58595b;
}
input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #f7f7f7;
  cursor: not-allowed;
}

[type=submit],
[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}

input[type=search] {
  box-sizing: border-box;
}

[type=file],
[type=checkbox],
[type=radio] {
  margin: 0 0 1rem;
}

[type=checkbox] + label,
[type=radio] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
}
[type=checkbox] + label[for],
[type=radio] + label[for] {
  cursor: pointer;
}

label > [type=checkbox],
label > [type=radio] {
  margin-right: 0.5rem;
}

[type=file] {
  width: 100%;
}

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a;
}
label.middle {
  margin: 0 0 1rem;
  padding: 0.5rem 0;
}

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a;
}

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem;
}
.input-group > :first-child {
  border-radius: 0 0 0 0;
}
.input-group > :last-child > * {
  border-radius: 0 0 0 0;
}

.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label, .input-group-button, .input-group-field, .input-group-label {
  margin: 0;
  white-space: nowrap;
  display: table-cell;
  vertical-align: middle;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #e9e9e9;
  background: #f7f7f7;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  height: 2.625rem;
}

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  height: 2.625rem;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1.125rem;
}

.input-group .input-group-button {
  display: table-cell;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  max-width: 100%;
  margin-bottom: 0.5rem;
}

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #e9e9e9;
}
.fieldset legend {
  margin: 0;
  margin-left: -0.1875rem;
  padding: 0 0.1875rem;
  background: #ffffff;
}

select {
  height: 2.5625rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  border-radius: 0;
  background-color: #ffffff;
  font-family: "din-2014", Helvetica, Roboto, Arial, sans-serif;
  font-size: 1.125rem;
  line-height: normal;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2888, 89, 91%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: none;
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #f7f7f7;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #faedeb;
}
.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

.is-invalid-label {
  color: #cc4b37;
}

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37;
}
.form-error.is-visible {
  display: block;
}

.accordion {
  margin-left: 0;
  background: #ffffff;
  list-style-type: none;
}

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0;
}
.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0;
}

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #f7f7f7;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #004990;
}
:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #f7f7f7;
  border-radius: 0 0 0 0;
}
.accordion-title:hover, .accordion-title:focus {
  background-color: #f7f7f7;
}
.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: "+";
}
.is-active > .accordion-title::before {
  content: "–";
}

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #f7f7f7;
  border-bottom: 0;
  background-color: #ffffff;
  color: #58595b;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #f7f7f7;
}

.close-button {
  position: absolute;
  color: #58595b;
  cursor: pointer;
}
[data-whatinput=mouse] .close-button {
  outline: 0;
}
.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}
.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}
.close-button, .close-button.medium {
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
}

.menu {
  margin: 0;
  list-style-type: none;
}
.menu > li {
  display: table-cell;
  vertical-align: middle;
}
[data-whatinput=mouse] .menu > li {
  outline: 0;
}
.menu > li > a {
  display: block;
  padding: 0.7rem 1rem;
  line-height: 1;
}
.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}
.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  vertical-align: middle;
}
.menu > li > a img + span,
.menu > li > a i + span,
.menu > li > a svg + span {
  vertical-align: middle;
}
.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  margin-right: 0.25rem;
  display: inline-block;
}
.menu > li, .menu.horizontal > li {
  display: table-cell;
}
.menu.expanded {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.menu.expanded > li:first-child:last-child {
  width: 100%;
}
.menu.vertical > li {
  display: block;
}
@media print, screen and (min-width: 46.875em) {
  .menu.medium-horizontal > li {
    display: table-cell;
  }
  .menu.medium-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.medium-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.medium-vertical > li {
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .menu.large-horizontal > li {
    display: table-cell;
  }
  .menu.large-expanded {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .menu.large-expanded > li:first-child:last-child {
    width: 100%;
  }
  .menu.large-vertical > li {
    display: block;
  }
}
.menu.simple li {
  display: inline-block;
  vertical-align: top;
  line-height: 1;
}
.menu.simple a {
  padding: 0;
}
.menu.simple li {
  margin-left: 0;
  margin-right: 1rem;
}
.menu.simple.align-right li {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.align-right::before, .menu.align-right::after {
  display: table;
  content: " ";
}
.menu.align-right::after {
  clear: both;
}
.menu.align-right > li {
  float: right;
}
.menu.icon-top > li > a {
  text-align: center;
}
.menu.icon-top > li > a img,
.menu.icon-top > li > a i,
.menu.icon-top > li > a svg {
  display: block;
  margin: 0 auto 0.25rem;
}
.menu.icon-top.vertical a > span {
  margin: auto;
}
.menu.nested {
  margin-left: 1rem;
}
.menu .active > a {
  background: #004990;
  color: #ffffff;
}
.menu.menu-bordered li {
  border: 1px solid transparent;
}
.menu.menu-bordered li:not(:first-child) {
  border-top: 0;
}
.menu.menu-hover li:hover {
  background-color: transparent;
}

.menu-text {
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered {
  text-align: center;
}
.menu-centered > .menu {
  display: inline-block;
  vertical-align: top;
}

.no-js [data-responsive-menu] ul {
  display: none;
}

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}
.menu-icon::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #ffffff;
  box-shadow: 0 7px 0 #ffffff, 0 14px 0 #ffffff;
  content: "";
}
.menu-icon:hover::after {
  background: #e9e9e9;
  box-shadow: 0 7px 0 #e9e9e9, 0 14px 0 #e9e9e9;
}

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}
.menu-icon.dark::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #0a0a0a;
  box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
  content: "";
}
.menu-icon.dark:hover::after {
  background: #58595b;
  box-shadow: 0 7px 0 #58595b, 0 14px 0 #58595b;
}

.is-drilldown {
  position: relative;
  overflow: hidden;
}
.is-drilldown li {
  display: block;
}
.is-drilldown.animate-height {
  transition: height 0.5s;
}

.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #ffffff;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}
.is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}
.is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
}

.drilldown-submenu-cover-previous {
  min-height: 100%;
}

.is-drilldown-submenu-parent > a {
  position: relative;
}
.is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #004990;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
}

.js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #004990 transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
  border-left-width: 0;
}

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: block;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #e9e9e9;
  border-radius: 0;
  background-color: #ffffff;
  font-size: 1rem;
}
.dropdown-pane.is-open {
  visibility: visible;
}

.dropdown-pane.tiny {
  width: 100px;
}

.dropdown-pane.small {
  width: 200px;
}

.dropdown-pane.large {
  width: 400px;
}

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto;
}
.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #004990 transparent transparent;
  right: 5px;
  margin-top: -3px;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.no-js .dropdown.menu ul {
  display: none;
}
.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}
.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
}
.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
.dropdown.menu.vertical > li > a::after {
  right: 14px;
}
.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #004990 transparent transparent;
}
.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #004990;
}
@media print, screen and (min-width: 46.875em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #004990 transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #004990 transparent transparent;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #004990;
  }
}
@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #004990 transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #004990 transparent transparent;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #004990;
  }
}
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

.is-dropdown-menu.vertical {
  width: 100px;
}
.is-dropdown-menu.vertical.align-right {
  float: right;
}

.is-dropdown-submenu-parent {
  position: relative;
}
.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -6px;
}
.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto;
}
.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
}
.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #e9e9e9;
  background: #ffffff;
}
.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #004990 transparent transparent;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #004990;
}
.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}
.is-dropdown-submenu > li {
  width: 100%;
}
.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden;
}
.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video,
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.responsive-embed.widescreen,
.flex-video.widescreen {
  padding-bottom: 56.25%;
}

.media-object {
  display: block;
  margin-bottom: 1rem;
}
.media-object img {
  max-width: none;
}
@media screen and (max-width: 24.9375em) {
  .media-object.stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    display: block;
  }
  .media-object.stack-for-small .media-object-section img {
    width: 100%;
  }
}

.media-object-section {
  display: table-cell;
  vertical-align: top;
}
.media-object-section:first-child {
  padding-right: 1rem;
}
.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}
.media-object-section > :last-child {
  margin-bottom: 0;
}
.media-object-section.middle {
  vertical-align: middle;
}
.media-object-section.bottom {
  vertical-align: bottom;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(255, 255, 255, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}
.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}
.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}
.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}
.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  position: fixed;
  z-index: 1;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #f7f7f7;
}
[data-whatinput=mouse] .off-canvas {
  outline: 0;
}
.off-canvas.is-transition-overlap {
  z-index: 10;
}
.off-canvas.is-transition-overlap.is-open {
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}
.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-absolute {
  position: absolute;
  z-index: 1;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #f7f7f7;
}
[data-whatinput=mouse] .off-canvas-absolute {
  outline: 0;
}
.off-canvas-absolute.is-transition-overlap {
  z-index: 10;
}
.off-canvas-absolute.is-transition-overlap.is-open {
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}
.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
  overflow-y: auto;
}
.position-left.is-open ~ .off-canvas-content {
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}
.position-left.is-transition-push::after {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 1px;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}
.position-left.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}

.position-right {
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
  overflow-y: auto;
}
.position-right.is-open ~ .off-canvas-content {
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}
.position-right.is-transition-push::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 1px;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}
.position-right.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
  overflow-x: auto;
}
.position-top.is-open ~ .off-canvas-content {
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}
.position-top.is-transition-push::after {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}
.position-top.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
  overflow-x: auto;
}
.position-bottom.is-open ~ .off-canvas-content {
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}
.position-bottom.is-transition-push::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
  content: " ";
}
.position-bottom.is-transition-overlap.is-open ~ .off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}

.off-canvas-content {
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

@media print, screen and (min-width: 46.875em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 1;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
.tabs {
  margin: 0;
  border: 1px solid #f7f7f7;
  background: #ffffff;
  list-style-type: none;
}
.tabs::before, .tabs::after {
  display: table;
  content: " ";
}
.tabs::after {
  clear: both;
}

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto;
}

.tabs.simple > li > a {
  padding: 0;
}
.tabs.simple > li > a:hover {
  background: transparent;
}

.tabs.primary {
  background: #004990;
}
.tabs.primary > li > a {
  color: #ffffff;
}
.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #0052a2;
}

.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #004990;
}
.tabs-title > a:hover {
  background: #ffffff;
  color: #003f7c;
}
.tabs-title > a:focus, .tabs-title > a[aria-selected=true] {
  background: #f7f7f7;
  color: #004990;
}

.tabs-content {
  border: 1px solid #f7f7f7;
  border-top: 0;
  background: #ffffff;
  color: #58595b;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #f7f7f7;
  border-left: 0;
}

.tabs-panel {
  display: none;
  padding: 1rem;
}
.tabs-panel[aria-hidden=false] {
  display: block;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

@media screen and (max-width: 24.9375em) {
  .hide-for-small-only {
    display: none !important;
  }
}

@media screen and (max-width: 0em), screen and (min-width: 25em) {
  .show-for-small-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 46.875em) {
  .hide-for-medium {
    display: none !important;
  }
}

@media screen and (max-width: 46.8125em) {
  .show-for-medium {
    display: none !important;
  }
}

@media screen and (min-width: 46.875em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

@media screen and (max-width: 46.8125em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important;
  }
}

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
}

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}
@media screen and (orientation: landscape) {
  .show-for-landscape,
.hide-for-portrait {
    display: block !important;
  }
}
@media screen and (orientation: portrait) {
  .show-for-landscape,
.hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}
@media screen and (orientation: landscape) {
  .hide-for-landscape,
.show-for-portrait {
    display: none !important;
  }
}
@media screen and (orientation: portrait) {
  .hide-for-landscape,
.show-for-portrait {
    display: block !important;
  }
}

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
}

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
}

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
}

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity;
}

.fade-in.mui-enter.mui-enter-active {
  opacity: 1;
}

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity;
}

.fade-out.mui-leave.mui-leave-active {
  opacity: 0;
}

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0;
}

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0;
}

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0;
}

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0;
}

.slow {
  transition-duration: 750ms !important;
}

.fast {
  transition-duration: 250ms !important;
}

.linear {
  transition-timing-function: linear !important;
}

.ease {
  transition-timing-function: ease !important;
}

.ease-in {
  transition-timing-function: ease-in !important;
}

.ease-out {
  transition-timing-function: ease-out !important;
}

.ease-in-out {
  transition-timing-function: ease-in-out !important;
}

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  transition-delay: 300ms !important;
}

.long-delay {
  transition-delay: 700ms !important;
}

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7;
}
@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}
@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}
@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}
@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg;
}
@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms;
}

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important;
}

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important;
}

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important;
}

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important;
}

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important;
}

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important;
}

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important;
}

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

.flickity-enabled:focus {
  outline: none;
}

.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;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

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

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

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

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

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

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

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  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: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

.header {
  position: fixed;
  z-index: 128;
  width: 100%;
  background: rgb(31, 73, 139);
  background: rgba(31, 73, 139, 0.8);
}
.header .row {
  max-width: 91.25rem;
}
.header .main__logo {
  margin-top: 0.625rem;
  margin-bottom: 0.75rem;
  display: block;
  max-width: 7.5rem;
}
@media print, screen and (min-width: 64em) {
  .header .main__logo {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}
@media screen and (min-width: 75em) {
  .header .main__logo {
    margin-top: 0.875rem;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 75em) and (min-height: 700px) {
  .header .main__logo {
    margin-top: 1rem;
    margin-bottom: 1rem;
    max-width: none;
  }
}
.header .header__top {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: right;
      -ms-flex-pack: right;
          justify-content: right;
  z-index: 128;
}
.header .header__top ul li a {
  padding: 0 8px;
  font-size: 1.125rem;
  color: #ffffff;
  letter-spacing: 0;
}
@media print, screen and (min-width: 64em) {
  .header .header__top ul li a {
    font-size: 1.375rem;
  }
}
.header .header__top .top__cart {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  .header .header__top .top__cart {
    display: table-cell;
    padding-left: 1.25rem;
    background: #a40475;
    color: #ffffff;
  }
}
.header .header__top .top__cart select {
  background: transparent;
  display: inline-block;
  border: solid 1px #ffffff;
  color: #ffffff;
  height: 28px;
  line-height: 28px;
  font-size: 0.9em;
  padding: 0 0 0 4px;
  margin-right: 4px;
}
.header .header__top .top__cart select:hover {
  opacity: 0.7;
}
@media print, screen and (min-width: 46.875em) {
  .header .header__top .top__cart select {
    padding: 0 26px 0 4px;
    background-image: url("/static/images/drop-arrow.cd8a7b74dd0a.png");
    background-position: right center;
    background-repeat: no-repeat;
  }
  .header .header__top .top__cart select:hover {
    background-image: url("/static/images/drop-arrow.cd8a7b74dd0a.png");
    background-position: right center;
    background-repeat: no-repeat;
  }
}
.header .header__top .top__cart select option {
  color: black;
}
.header .header__top ul.menu--top {
  display: block;
  font-weight: 600;
}
@media screen and (min-width: 75em) {
  .header .header__top ul.menu--top {
    font-size: 1.375rem;
  }
}
.header .header__top ul.menu--top li a {
  line-height: 1em;
  padding: 0.625rem;
}
@media screen and (min-width: 81.25em) {
  .header .header__top ul.menu--top li a {
    min-height: 3.125rem;
    padding: 0.875rem;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  .header .header__top ul.menu--top li a {
    min-height: 4.5rem;
    padding: 1.5625rem;
  }
}
.header .header__top ul.menu--top li a:hover {
  color: #00a4b1;
}
.header .header__top ul.menu--top li.menu__account a {
  background: #dd5829;
}
.header .header__top ul.menu--top li.menu__elearning a {
  background: #8BC34A;
}
.header .header__top .main__search {
  display: none;
}
@media screen and (min-width: 81.25em) {
  .header .header__top .main__search {
    display: inline-block;
    overflow: hidden;
    max-width: 18.75rem;
  }
  .header .header__top .main__search .search__wrap {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: rgba(255, 255, 255, 0.4);
  }
  .header .header__top .main__search .search__wrap input.search__input {
    border: none;
    margin-bottom: 0;
    color: #ffffff;
    height: auto;
    font-size: 1.375rem;
    font-weight: bold;
    line-height: 1em;
    min-height: 3.125rem;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  .header .header__top .main__search .search__wrap input.search__input {
    padding: 1.3125rem;
    min-height: 4.5rem;
  }
}
@media screen and (min-width: 81.25em) {
  .header .header__top .main__search .search__wrap label {
    display: none;
  }
}
@media screen and (min-width: 81.25em) {
  .header .header__top .main__search .search__wrap i {
    cursor: pointer;
    height: 2.5625rem;
    line-height: 2.5625rem;
    display: inline-block;
    width: 2.5rem;
    text-align: center;
    font-size: 1.75rem;
    color: #ffffff;
    margin-right: 1.25rem;
  }
}
.header .header__top .dropdown-pane {
  background: #003a73;
  width: 120px;
  display: block;
}
.header .header__top .dropdown-pane ul {
  margin: 0;
  padding: 0;
}
.header .header__top .dropdown-pane ul li {
  height: auto;
  line-height: 2em;
  list-style: none;
}
.header .header__top .dropdown-pane ul li a {
  border: 0;
}
.header .header__top .dropdown-pane ul li a:hover {
  background: none;
  color: #00a4b1;
}
.header .header__top .cart__amount__outer {
  background: #a40475;
}
.header .header__top .cart__amount {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  .header .header__top .cart__amount {
    display: inline-block;
    margin: 0 10px;
    color: #fff;
  }
}
.header .header__top .cart__amount .fa {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  .header .header__top .cart__amount .fa {
    display: inline-block;
  }
}
.header .header__top .cart__amount a {
  padding-left: 8px !important;
}
.header .header__top a.top__sign-in {
  background: #00a4b1;
}
.header .header__top a.top__sign-in:hover {
  background: #008c98;
  color: #fff;
}
.header .header__main {
  transition: all 0.25s;
  position: relative;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .header .header__main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  .header .header__main {
    min-height: 13.5625rem;
  }
}
.header .header__main .menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  cursor: pointer;
  position: absolute;
  right: 0;
  bottom: 1.25rem;
  right: 1.875rem;
}
.header .header__main .menu-icon::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 5px;
  background: #ffffff;
  box-shadow: 0 12px 0 #ffffff, 0 24px 0 #ffffff;
  content: "";
}
.header .header__main .menu-icon:hover::after {
  background: #00a4b1;
  box-shadow: 0 12px 0 #00a4b1, 0 24px 0 #00a4b1;
}
@media screen and (min-width: 81.25em) {
  .header .header__main .menu-icon {
    display: none;
  }
}
.header img {
  width: 9.5rem;
  transition: all 0.25s;
}
.header.fixed .main__logo {
  transition: all 0.25s;
}
@media screen and (min-width: 75em) {
  .header.fixed .main__logo {
    margin-top: 0.625rem;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 75em) and (min-height: 700px) {
  .header.fixed .main__logo {
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
  }
}
@media screen and (min-width: 75em) {
  .header.fixed .main__logo img {
    width: 6.625rem;
  }
}
@media screen and (min-width: 90em) {
  .header.fixed .main__logo img {
    width: 7.5rem;
  }
}
@media screen and (min-width: 81.25em) {
  .header.fixed ul.main__nav li a {
    padding: 0.15em 0 1.375rem 0;
  }
}
@media screen and (min-width: 81.25em) and (max-height: 700px) {
  .header.fixed ul.main__nav li a {
    padding: 0.15em 0 1.375rem 0;
  }
}
@media screen and (min-width: 81.25em) {
  .header.fixed ul.main__nav li a:before {
    bottom: 0.375rem;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  .header.fixed ul.main__nav li a:before {
    bottom: 0.75rem;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  .header.fixed .header__main {
    min-height: 0;
  }
}

.footer {
  width: 100%;
  min-height: 315px;
  background: #004990;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .footer {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.footer__top {
  color: #ffffff;
}
.footer__top .footer__brand {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .footer__top .footer__brand {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.footer__top img {
  margin: 36px 0 20px 0;
  display: block;
  width: 100px;
}
.footer__top span {
  display: block;
  font-size: 20px;
  text-align: left;
  margin: 0px 0 20px 0;
  line-height: 1.2em;
}

.footer__bottom ul.footer__links {
  margin: 0 0 10px 0;
}
.footer__bottom ul.footer__links li {
  list-style: none;
  color: #ffffff;
  text-align: left;
  display: inline-block;
  margin-right: 10px;
}
.footer__bottom ul.footer__links li a {
  color: #ffffff;
}
.footer__bottom ul.footer__social {
  margin: 20px 0;
  padding: 0;
  text-align: left;
}
.footer__bottom ul.footer__social li {
  display: inline-block;
}
.footer__bottom ul.footer__social li a {
  padding: 0 8px;
  color: #ffffff;
  padding: 0 4px;
  display: inline-block;
}
.footer__bottom ul.footer__social li a:hover {
  color: #00a4b1;
}
.footer__bottom ul.footer__social li a.trustpilot-star {
  padding: 0;
}
.footer__bottom ul.footer__social li a.trustpilot-star svg {
  width: 24px;
  height: 24px;
  vertical-align: top;
  margin-top: -3px;
}
.footer__bottom ul.footer__social li a.trustpilot-star svg polygon {
  transition: all 0.3s ease-out;
}
.footer__bottom ul.footer__social li a.trustpilot-star:hover svg polygon {
  fill: #00a4b1;
}
.footer__bottom ul.footer__social li a.x-logo {
  padding: 0;
}
.footer__bottom ul.footer__social li a.x-logo svg {
  width: 24px;
  height: 24px;
  vertical-align: top;
  margin-top: -3px;
}
.footer__bottom ul.footer__social li a.x-logo svg path {
  fill: #ffffff;
  transition: all 0.3s ease-out;
}
.footer__bottom ul.footer__social li a.x-logo:hover svg path {
  fill: #00a4b1;
}
.footer__bottom ul.footer__social li a i {
  font-size: 24px;
}
.footer__bottom .siteBy {
  font-size: 1.1em;
  padding-bottom: 1em;
  color: #fff;
}
.footer__bottom .siteBy a {
  color: #fff;
  text-decoration: none;
}
.footer__bottom .siteBy a:hover {
  color: #fff;
}
.footer__bottom .vatMessage {
  color: #fff;
  font-size: 1.1em;
  margin-bottom: 2em;
}

div#google_translate_element {
  text-align: center;
  padding: 20px;
}
div#google_translate_element select.goog-te-combo {
  width: auto;
  border: #d8d8d8 solid 1px;
}

@media print, screen and (min-width: 46.875em) {
  .footer__bottom .footer__nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .footer__bottom ul.footer__links {
    margin: 0 40px 20px 0;
  }
  .footer__bottom ul.footer__links li {
    display: block;
  }
  .footer__bottom ul.footer__social {
    margin: 20px 0;
  }
  .footer__bottom .vatMessage {
    text-align: right;
  }
}
@media print, screen and (min-width: 64em) {
  .footer__top .footer__brand {
    width: 100%;
    height: 160px;
  }
  .footer__top img {
    width: auto;
    margin: 36px 0 54px 0;
    display: block;
    float: left;
  }
  .footer__top span {
    display: block;
    float: left;
    font-size: 28px;
    margin: 50px 0 0 40px;
  }
  .footer__bottom ul.footer__links {
    margin: 0 60px 40px 0;
  }
  .footer__bottom ul.footer__links li {
    text-align: left;
    list-style: none;
    color: #ffffff;
  }
  .footer__bottom ul.footer__links li a {
    color: #ffffff;
    font-size: 1.25rem;
  }
  .footer__bottom ul.footer__social {
    text-align: right;
    margin: 50px 0 0 0;
  }
}
.block-50--empty {
  display: none;
}

.block-50--short {
  height: 100px;
  padding: 0 30px;
}
.block-50--short h2 {
  font-weight: 300;
  line-height: 100px;
  font-size: 20px;
  color: #ffffff;
  display: inline-block;
}
.block-50--short .block__arrow {
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
}

.block__arrow {
  line-height: 42px;
  display: inline-block;
  float: right;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: solid 2px #ffffff;
  text-align: center;
}
.block__arrow i {
  color: #ffffff;
  font-size: 30px;
  line-height: 38px;
  -webkit-animation: arrowbob 2s ease-in-out infinite;
          animation: arrowbob 2s ease-in-out infinite;
}

@-webkit-keyframes arrowbob {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
}

@keyframes arrowbob {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
}
.block-extend {
  height: 96px;
  padding-left: 20px;
  position: relative;
  background: #004990;
}
.block-extend h2 {
  line-height: 96px;
  font-size: 2.1875rem;
  color: #ffffff;
  display: inline-block;
  margin: 0 1.25rem 0 0;
  padding: 0;
  font-weight: bold;
}
.block-extend span {
  display: inline-block;
  color: #ffffff;
  font-size: 1.2em;
  font-weight: bold;
}
.block-extend a {
  display: inline-block;
}
.block-extend i.fa-angle-right {
  color: #ffffff;
  float: right;
  line-height: 28px;
  display: block;
  font-size: 1.4em;
  margin-left: 10px;
  margin-right: 30px;
  -webkit-animation: arrowslide 2s ease-in-out infinite;
          animation: arrowslide 2s ease-in-out infinite;
}
.block-extend:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 2000px;
  top: 0;
  background: #004990;
}
.block-extend:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 20px;
  top: 0;
  background: #004990;
}

.block-extend--teal {
  background: #00a4b1;
}
.block-extend--teal:before {
  background: #00a4b1;
}
.block-extend--teal:after {
  background: #00a4b1;
}

.block-extend--pink {
  background: #a40475;
}
.block-extend--pink:before {
  background: #a40475;
}
.block-extend--pink:after {
  background: #a40475;
}
.block-extend--pink h3 {
  color: #a40475;
  font-weight: 600;
}
.block-extend--pink a {
  color: #a40475;
}

.block-extend--orange {
  background: #dd5829;
}
.block-extend--orange:before {
  background: #dd5829;
}
.block-extend--orange:after {
  background: #dd5829;
}

.block-extend--green {
  background: #5bbe82;
}
.block-extend--green:before {
  background: #5bbe82;
}
.block-extend--green:after {
  background: #5bbe82;
}

.block-extend--left:before {
  left: -2000px;
}
.block-extend--left:after {
  right: -20px;
}

.block-extend--right {
  padding-left: 20px;
}
.block-extend--right:before {
  right: -2000px;
}
.block-extend--right:after {
  left: -20px;
}

.block-50--blue {
  background: #004990;
}

.block-50--teal {
  background: #00a4b1;
}

.block-50--grey {
  background: #f7f7f7;
}

.block-50 {
  width: 100%;
  float: left;
  padding-bottom: 1.875rem;
}
.block-50:last-child {
  padding-bottom: 0;
}

.blocks .block .news-link {
  font-size: 1.25rem;
  font-weight: bold;
  color: #004990;
}
.blocks .block .news-link .fa-angle-right {
  font-weight: bold;
  margin-left: 0.625rem;
  font-size: 1.375rem;
}
.blocks .block .block-border {
  position: relative;
  display: block;
  width: 100%;
  /*&:before {
    content: '';
    position: absolute;
    width: 3px;
    height: 100%;
    background: $rqa-blue;
    top: 0;
    left: 0;
  }*/
}
.blocks .block .block-border .block__info {
  width: 100%;
  height: 123px;
  padding: 16px;
  background: #004990;
  position: absolute;
  left: 0;
  bottom: 0;
}
.blocks .block .block-border .block__info span {
  font-weight: 500;
  display: block;
  position: absolute;
  color: #fff;
  top: -30px;
  left: 30px;
}
.blocks .block .block-border .block__info h3 {
  font-size: 1.8em;
  font-weight: 300;
  margin: 0;
  color: #ffffff;
  line-height: 1.1em;
}
.blocks .block .block-border--text.block-border--orange:before {
  background: #dd5829;
}
.blocks .block .block-border--text.block-border--orange h2 {
  color: #dd5829;
}
.blocks .block .block-border--text.block-border--orange .block__more {
  background: #dd5829;
}
.blocks .block .block-border--text.block-border--pink:before {
  background: #a40475;
}
.blocks .block .block-border--text.block-border--pink .jt_job_position,
.blocks .block .block-border--text.block-border--pink h2 {
  color: #a40475;
  font-weight: 600;
}
.blocks .block .block-border--text.block-border--pink .jt_job_location,
.blocks .block .block-border--text.block-border--pink .jt_job_company {
  font-size: 1.25rem;
}
.blocks .block .block-border--text.block-border--pink .jt_alljobs {
  font-size: 1.4375rem;
}
.blocks .block .block-border--text.block-border--pink a {
  color: #a40475;
}
.blocks .block .block-border--text.block-border--pink .block__more {
  background: #a40475;
}
.blocks .block .block-border--text.block-border--teal:before {
  background: #00a4b1;
}
.blocks .block .block-border--text.block-border--teal h2 {
  color: #00a4b1;
}
.blocks .block .block-border--text.block-border--teal .block__more {
  background: #00a4b1;
}

.block-border--feature {
  height: 123px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.block__more {
  display: block;
  position: absolute;
  right: 0px;
  bottom: 0;
  color: #ffffff;
  background: #002f5d;
  font-size: 1.1em;
  font-weight: 300;
  width: 36px;
  height: 36px;
  line-height: 36px;
  overflow: hidden;
  text-align: right;
  transition: all 0.5s ease-out;
}
.block__more .more__wrap {
  width: 145px;
  float: right;
}
.block__more .more__text {
  color: #ffffff;
  width: 109px;
  display: block;
  height: 36px;
  line-height: 36px;
  float: left;
  text-align: center;
  opacity: 0;
  transition: all 0.5s ease-out;
}
.block__more .more__plus {
  color: #ffffff;
  display: block;
  font-weight: 400;
  font-size: 3.125rem;
  height: 38px;
  line-height: 40px;
  float: right;
  margin-right: 5px;
  transition: all 0.5s ease-out;
}
.block__more:hover {
  color: #ffffff;
  width: 145px;
  right: 0px;
}
.block__more:hover .more__text {
  opacity: 1;
}
.block__more:hover .more__plus {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

.whatinput-types-touch .block__more:hover {
  width: 36px;
}

.block-list:hover .block__more,
.booklet-list:hover .block__more {
  color: #ffffff;
  width: 145px;
  right: 0px;
}
.block-list:hover .block__more .more__text,
.booklet-list:hover .block__more .more__text {
  opacity: 1;
}
.block-list:hover .block__more .more__plus,
.booklet-list:hover .block__more .more__plus {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

.block__more--list {
  right: 0;
  width: 32px;
  height: 32px;
  width: 32px;
}
.block__more--list .more__wrap {
  width: 141px;
}
.block__more--list .more__text {
  height: 32px;
  line-height: 32px;
}
.block__more--list .more__plus {
  height: 32px;
  line-height: 32px;
  margin-right: 7px;
}
.block__more--list:hover {
  width: 141px;
}

.block__more--content {
  right: 0;
  bottom: -4px;
  background: #004990;
}
.block__more--content:hover {
  right: 0;
}

.block-border--text {
  padding: 0 1.25rem 0 1.25rem;
  margin-bottom: 20px;
}
.block-border--text h2 {
  font-size: 2.5em;
}
.block-border--text h3 {
  font-size: 1.75rem;
  padding-top: 30px;
  color: #004990;
  line-height: 1.2em;
  margin-bottom: 0.6em;
}
.block-border--text h4 {
  padding-top: 30px;
  font-weight: 300;
  font-size: 0.9em;
  font-weight: 600;
  line-height: 1.2em;
}
.block-border--text .block__more {
  background: #004990;
  right: auto;
  left: 0;
}

@media screen and (min-width: 90em) {
  .blocks .block .block-extend.block-extend--right {
    padding: 0 2.5rem 5rem 2.5rem;
  }
}
.blocks .block .block-border--twitter, .blocks .block .block-border--jobs {
  margin-bottom: 0;
  background: #f7f7f7;
}
.blocks .block .block-border--twitter :before, .blocks .block .block-border--jobs :before {
  content: "";
  position: absolute;
  height: 100%;
  width: 2000px;
  top: 0;
  left: 100%;
  background: #f7f7f7;
}
.blocks .block .block-border--twitter.block-border--text, .blocks .block .block-border--jobs.block-border--text {
  padding: 0 2.5rem 2.5rem 2.5rem;
  margin-left: -1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .blocks .block .block-border--twitter.block-border--text, .blocks .block .block-border--jobs.block-border--text {
    padding: 0 2.5rem 2.5rem 2.5rem;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .blocks .block .block-border--twitter.block-border--text, .blocks .block .block-border--jobs.block-border--text {
    padding: 0 2.5rem 5rem 2.5rem;
  }
}

.block-border--stack {
  margin-top: 45px;
}

.block__twitter h4 {
  font-size: 1.4375rem;
  font-weight: 600;
}
.block__twitter .twitter__name {
  color: #00a4b1;
}
.block__twitter .twitter__tweet {
  margin-bottom: 0;
}

.page-main--list {
  padding: 35px 0 0 0;
  background: #f7f7f7;
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .page-main--list {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .page-main--list {
    padding: 4.375rem 0 2.5rem 0;
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
  }
}
.page-main--list.smallTitles .columns .block-list {
  height: 300px;
}
.page-main--list.smallTitles .columns .block-list .block-list__info h3 {
  font-size: 1em;
}
.page-main--list .column:last-child:not(:first-child),
.page-main--list .columns:last-child:not(:first-child) {
  float: left;
}
.page-main--list .row {
  max-width: 84.75rem !important;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 64em) {
  .page-main--list .width-3 .columns {
    width: 33%;
  }
  .page-main--list .width-3 .columns .block-list {
    height: 340px;
  }
}
@media print, screen and (min-width: 64em) {
  .page-main--list .width-5 .columns {
    width: 20%;
  }
  .page-main--list .width-5 .columns .block-list {
    width: calc(100% - 16px);
    height: 230px;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .page-main--list .width-5 .columns .block-list .block-list__info {
    padding: 0.625rem;
  }
  .page-main--list .width-5 .columns .block-list .block-list__info h3 {
    font-size: 1.1em;
    line-height: 1.2em;
  }
  .page-main--list .width-5 .columns .block-list .block-list__info .fa-angle-right {
    top: 0.5625rem;
    right: 1rem;
  }
}

.booklet-list--booklets {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.booklet-list--booklets .booklet-list {
  background: #004990;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  position: relative;
  margin-right: 1%;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 31.25em) {
  .booklet-list--booklets .booklet-list {
    -webkit-flex-basis: 49%;
        -ms-flex-preferred-size: 49%;
            flex-basis: 49%;
  }
}
@media print, screen and (min-width: 64em) {
  .booklet-list--booklets .booklet-list {
    -webkit-flex-basis: 32%;
        -ms-flex-preferred-size: 32%;
            flex-basis: 32%;
  }
}
.booklet-list--booklets .booklet-list a.booklet-list__Link {
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  z-index: 10;
  text-indent: -1000px;
  overflow: hidden;
}
.booklet-list--booklets .booklet-list .booklet-list__image {
  min-height: 12.5rem;
  background-repeat: no-repeat;
  background-position: center;
  margin-top: 1.25rem;
  background-size: contain;
}
.booklet-list--booklets .booklet-list .booklet-list__info {
  position: relative;
  padding: 1rem 2.75rem 1rem 1.5rem;
}
.booklet-list--booklets .booklet-list .booklet-list__info h3 {
  color: #ffffff;
  font-weight: bold;
  font-size: 1.375rem;
  margin-top: 0px;
}
.booklet-list--booklets .booklet-list .booklet-list__info .fa-angle-right {
  color: #ffffff;
  font-weight: bold;
  font-size: 1.625rem;
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}
.booklet-list--booklets .booklet-list .booklet-list__price {
  font-size: 0.875rem;
  background: #00a4b1;
  padding: 0.3125rem 0.625rem;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
}

.large-9 .page-main--list {
  padding: 0;
  background: transparent;
}
.large-9 .page-main--list .width-3 {
  margin-left: -1rem;
  margin-right: -1rem;
}
@media print, screen and (min-width: 64em) {
  .large-9 .page-main--list .width-3 .columns .block-list {
    height: 290px;
  }
}
.large-9 .page-main--list .width-4 {
  margin-left: -1.875rem;
  margin-right: -1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .large-9 .page-main--list .width-4 {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .large-9 .page-main--list .width-4 {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .large-9 .page-main--list .width-4 .columns .block-list {
    height: 210px;
    width: calc(100% - 16px);
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  .large-9 .page-main--list .width-4 .columns .block-list .block-list__info {
    padding: 0.625rem;
  }
  .large-9 .page-main--list .width-4 .columns .block-list .block-list__info h3 {
    font-size: 1em;
  }
  .large-9 .page-main--list .width-4 .columns .block-list .block-list__info .fa-angle-right {
    right: 1.25rem;
    top: 0.625rem;
  }
}
.large-9 .page-main--list .width-5 {
  margin-left: -1.875rem;
  margin-right: -1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .large-9 .page-main--list .width-5 {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .large-9 .page-main--list .width-5 {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .large-9 .page-main--list .width-5 .columns .block-list {
    height: 180px;
  }
  .large-9 .page-main--list .width-5 .columns .block-list .block-list__info h3 {
    font-size: 0.9em;
  }
}

.block-list {
  background: #004990;
  width: calc(100% - 28px);
  height: 312px;
  position: relative;
  margin-bottom: 2.25rem;
  margin-left: 0.875rem;
  margin-right: 0.875rem;
}
.block-list a.block-list__Link {
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  z-index: 10;
  text-indent: -1000px;
  overflow: hidden;
}
.block-list .block-list__image {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}
.block-list .block-list__info {
  padding: 1rem 2.75rem 1rem 1.5rem;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #004990;
  transition: background 0.25s;
}
.block-list .block-list__info h3 {
  color: #ffffff;
  font-weight: bold;
  font-size: 1.375rem;
  margin-top: 0px;
}
.block-list .block-list__info .fa-angle-right {
  color: #ffffff;
  font-weight: bold;
  font-size: 1.625rem;
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}
.block-list:hover .block-list__info {
  background: #00a4b1;
}
.block-list .block-list__price {
  position: absolute;
  display: block;
  top: 0px;
  right: 0px;
  background-color: #00a4b1;
  color: #fff;
  padding: 7px 7px 4px 7px;
}

.home-featured .blocks .block:nth-child(4n+1) .block-border:before {
  background: #dd5829;
}
.home-featured .blocks .block:nth-child(4n+1) .block-border .block__info {
  background: #dd5829;
}
.home-featured .blocks .block:nth-child(4n+1) .block-border .block__more {
  background: #b6451d;
}
.home-featured .blocks .block:nth-child(4n+2) .block-border:before {
  background: #00a4b1;
}
.home-featured .blocks .block:nth-child(4n+2) .block-border .block__info {
  background: #00a4b1;
}
.home-featured .blocks .block:nth-child(4n+2) .block-border .block__more {
  background: #00757e;
}
.home-featured .blocks .block:nth-child(4n+3) .block-border:before {
  background: #a40475;
}
.home-featured .blocks .block:nth-child(4n+3) .block-border .block__info {
  background: #a40475;
}
.home-featured .blocks .block:nth-child(4n+3) .block-border .block__more {
  background: #720351;
}

@media print, screen and (min-width: 46.875em) {
  .block-border--feature {
    height: 318px;
  }
  .block-50 {
    width: 50%;
    float: left;
  }
  .block-50--empty {
    display: block;
  }
  .blocks .block .news-link {
    font-size: 1.625rem;
  }
  .blocks .block .news-link .fa-angle-right {
    font-size: 1.75rem;
  }
  .blocks .block .block__padding {
    padding: 0 10px;
  }
  .blocks .block .block-extend:after {
    display: none;
  }
  .blocks .block .block-50--blue {
    background: #004990;
  }
  .blocks .block .block-50--teal {
    background: #00a4b1;
  }
  .blocks .block .block-50--grey {
    background: #f7f7f7;
  }
  .blocks .block .block-50--short {
    height: 116px;
    padding: 0 30px;
  }
  .blocks .block .block-50--short h2 {
    font-weight: 300;
    line-height: 116px;
    font-size: 30px;
    color: #ffffff;
    display: inline-block;
  }
  .blocks .block .block-50--short .block__arrow {
    -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
            transform: translateY(30px);
  }
  .blocks .block .block__arrow {
    line-height: 58px;
    width: 58px;
    height: 58px;
  }
  .blocks .block .block__arrow i {
    font-size: 50px;
    line-height: 54px;
  }
  .blocks .block .block-border--text {
    padding: 0 2.5rem 0 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .blocks .block .block__padding {
    padding: 0;
  }
  .blocks .block .block-extend h2 {
    float: left;
  }
  .blocks .block .block-extend a {
    display: inline;
  }
  .blocks .block .block-extend span {
    line-height: 96px;
    display: block;
    color: #ffffff;
    font-size: 1.4em;
    font-weight: 300;
    float: right;
  }
  .blocks .block .block-extend i.fa-angle-right {
    color: #ffffff;
    font-weight: bold;
    float: right;
    line-height: 96px;
    display: block;
    font-size: 1.8em;
    margin-left: 16px;
    margin-right: 30px;
    -webkit-animation: arrowslide 2s ease-in-out infinite;
            animation: arrowslide 2s ease-in-out infinite;
  }
  .blocks .block .block-extend--right {
    padding-left: 30px;
  }
  .blocks .block .block-border .block__info {
    width: 390px;
    padding: 20px 26px;
  }
  .blocks .block .block-border .block__info h3 {
    font-size: 2.3em;
  }
  .blocks .block .block__more {
    right: 110px;
  }
  .blocks .block .block__more:hover {
    right: 0;
  }
  .blocks .block .more__wrap {
    width: 145px;
    float: right;
  }
  .blocks .block .block__more--list,
.blocks .block .block__more--content {
    right: 0;
  }
}
@media screen and (min-width: 90em) {
  .blocks .block .block-extend {
    padding: 0;
  }
  .blocks .block .block-border--text {
    padding: 0 2.5rem 0 0;
  }
}
.form__button, form[name=gm_form] input[type=submit] {
  font-family: "din-2014", Helvetica, Roboto, Arial, sans-serif;
  font-size: 1.2em;
  font-weight: 600;
  background: #004990;
  border: solid 1px #ffffff;
  color: #ffffff;
  padding: 0.625rem 0.9375rem;
  vertical-align: middle;
  cursor: pointer;
  width: auto;
  display: inline-block;
  transition: all 0.2s ease-out;
  margin-top: 1em;
}
.form__button i, form[name=gm_form] input[type=submit] i {
  font-size: 28px;
  line-height: 28px;
  float: right;
  margin: 0 0 0 15px;
  font-size: 1.4em;
}
.form__button:hover, form[name=gm_form] input[type=submit]:hover {
  background: #003a73;
}

a.block-button, button.block-button, input.block-button {
  display: inline-block;
  font-size: 1.625rem;
  color: rgb(255, 255, 255);
  font-weight: 300;
  line-height: normal;
  background-color: #004990;
  padding: 8px 20px;
}
a.block-button i, a.block-button em, button.block-button i, button.block-button em, input.block-button i, input.block-button em {
  font-size: 1.2em;
  font-weight: bold;
  float: right;
  margin: 0 0 0 20px;
  -webkit-animation: arrowslide 2s ease-in-out infinite;
          animation: arrowslide 2s ease-in-out infinite;
}
@-webkit-keyframes arrowslide {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  50% {
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@keyframes arrowslide {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  50% {
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
a.block-button:hover, button.block-button:hover, input.block-button:hover {
  color: rgba(255, 255, 255, 0.5);
}

a.block-button--content, button.block-button--content, input.block-button--content {
  display: block;
  width: 250px;
  margin-bottom: 30px;
}

a.block-button--content {
  clear: both;
}

a.block-button--arrow, button.block-button--arrow, input.block-button--arrow {
  font-size: 1.3em;
}
a.block-button--arrow i, a.block-button--arrow em, button.block-button--arrow i, button.block-button--arrow em, input.block-button--arrow i, input.block-button--arrow em {
  font-size: 1.2em;
  float: right;
  margin: 0 0 0 20px;
  -webkit-animation: arrowbobsmall 2s ease-in-out infinite;
          animation: arrowbobsmall 2s ease-in-out infinite;
}
@-webkit-keyframes arrowbobsmall {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
}
@keyframes arrowbobsmall {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
}

a.block-button--top, button.block-button--top, input.block-button--top {
  font-size: 1.8em;
}
a.block-button--top i, a.block-button--top em, button.block-button--top i, button.block-button--top em, input.block-button--top i, input.block-button--top em {
  -webkit-animation: arrowbobup 2s ease-in-out infinite;
          animation: arrowbobup 2s ease-in-out infinite;
}
@-webkit-keyframes arrowbobup {
  0% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
}
@keyframes arrowbobup {
  0% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
}

a.block-button--dark {
  float: right;
  font-size: 1.3em;
  height: 38px;
  width: 205px;
  line-height: 38px;
  display: block;
  padding: 0 0 0 40px;
  margin-top: 20px;
}
a.block-button--dark .block-button__plus {
  text-align: center;
  display: block;
  height: 38px;
  width: 38px;
  line-height: 38px;
  font-size: 1.5em;
  float: right;
  margin: 0;
}
a.block-button--dark .block-button__plus span {
  display: inline-block;
  transition: all 0.5s ease-out;
}
a.block-button--dark:hover .block-button__plus span {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

.delete, .edit {
  width: 30px;
  height: 30px;
  overflow: hidden;
  display: inline-block;
  margin-top: 8px;
}
.delete:before, .edit:before {
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  content: "\f1f8";
  height: 30px;
  width: 30px;
  font-size: 1.6em;
  color: #00a4b1;
  background: transparent;
}
.delete:hover:before, .edit:hover:before {
  color: #004990;
}

.edit:before {
  content: "\f040";
}

@media print, screen and (min-width: 46.875em) {
  a.block-button--content {
    display: block;
    width: 250px;
    -webkit-transform: translateX(-45px);
        -ms-transform: translateX(-45px);
            transform: translateX(-45px);
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  a.block-button--dark {
    margin-top: 0;
  }
}
select::-ms-expand {
  display: none !important;
}

.dropdown-menu {
  background-color: #e9e9e9;
}

.required {
  color: #00a4b1;
}

.orderSummary select, .orderSummary [type=text], .orderSummary [type=password], .orderSummary [type=date], .orderSummary [type=datetime], .orderSummary [type=datetime-local], .orderSummary [type=month], .orderSummary [type=week], .orderSummary [type=email], .orderSummary [type=number], .orderSummary [type=search], .orderSummary [type=tel], .orderSummary [type=time], .orderSummary [type=url], .orderSummary [type=color], .orderSummary textarea, form select, form [type=text], form [type=password], form [type=date], form [type=datetime], form [type=datetime-local], form [type=month], form [type=week], form [type=email], form [type=number], form [type=search], form [type=tel], form [type=time], form [type=url], form [type=color], form textarea {
  width: 100%;
  color: #004990;
  border: 1px solid #9b9b9b;
  position: relative;
  background: transparent;
  z-index: 16;
  margin: 0 0 0.5em 0;
  padding-right: 10px;
  cursor: pointer;
}
.orderSummary [type=number], form [type=number] {
  display: inline;
}
.orderSummary [type=checkbox], form [type=checkbox] {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  margin-left: 5px;
}
.orderSummary input#id_quantity, .orderSummary input.quantity, form input#id_quantity, form input.quantity {
  max-width: 60px;
  padding: 5px;
  margin-right: 1em;
}
.orderSummary #id_concession, form #id_concession {
  text-align: center;
}
.orderSummary label, form label {
  font-size: 1em;
  color: #58595b;
  display: inline;
  clear: right;
}
.orderSummary ul, form ul {
  padding: 0px;
  margin: 0px;
}
.orderSummary ul li, form ul li {
  padding: 0px;
  margin: 0px;
  display: inline-block;
}
.orderSummary ul li label, form ul li label {
  display: inline-block;
}
.orderSummary ul li input, form ul li input {
  width: auto;
}
.orderSummary ul:before, form ul:before {
  content: "";
  display: none;
}
.orderSummary .optionsList ul, form .optionsList ul {
  padding-left: 3px;
}
.orderSummary .optionsList ul li, form .optionsList ul li {
  display: block;
  position: relative;
}
.orderSummary .optionsList ul li label, form .optionsList ul li label {
  padding-left: 32px;
  padding-top: 0.5em;
  line-height: 1.3em;
}
.orderSummary .optionsList ul li label input, form .optionsList ul li label input {
  position: absolute;
  left: 0px;
  top: 18px;
}
.orderSummary .priceTD, form .priceTD {
  min-width: 130px;
  text-align: right;
}
.orderSummary th, form th {
  padding: 10px;
  background: #e4e4e4;
  border-bottom: #fff solid 4px;
}
.orderSummary tr.basket_item, form tr.basket_item {
  display: block;
  background-color: #f7f7f7;
  border-bottom: #fff solid 4px;
  max-width: 378px;
}
.orderSummary tr.basket_item td, form tr.basket_item td {
  display: block;
  text-align: left;
  padding: 10px 10px 0px 10px;
}
.orderSummary tr.basket_item td.priceTD, form tr.basket_item td.priceTD {
  text-align: right;
}
.orderSummary tr.membership_renewal_due_head, form tr.membership_renewal_due_head {
  background-color: #feeae9;
  border-bottom: none !important;
}
.orderSummary tr.membership_renewal_due, form tr.membership_renewal_due {
  background-color: #feeae9;
}
.orderSummary tbody, form tbody {
  display: block;
}

a.empty {
  display: block;
  text-align: right;
}

.content form li {
  padding-left: 0px;
  padding-right: 1em;
}
.content form li:before {
  content: "";
  display: none;
}
.content form input:focus, .content form select:focus, .content form [type=text]:focus, .content form [type=password]:focus, .content form [type=date]:focus, .content form [type=datetime]:focus, .content form [type=datetime-local]:focus, .content form [type=month]:focus, .content form [type=week]:focus, .content form [type=email]:focus, .content form [type=number]:focus, .content form [type=search]:focus, .content form [type=tel]:focus, .content form [type=time]:focus, .content form [type=url]:focus, .content form [type=color]:focus, .content form textarea:focus {
  border: 1px solid #9b9b9b;
}
.content form .formMessage {
  font-size: 0.8em;
  color: #999;
}
.content form a.postcode_anywhere {
  display: block;
}
.content form .formTable tr {
  display: block;
}
.content form .formTable tr td {
  padding: 0px;
  display: block;
}

div.required_notice, div.vat_notice {
  margin: 1em auto;
  font-size: 1em;
  font-style: italic;
}

.area-form {
  float: left;
  width: 100%;
  margin: 0 0 0 0;
}
.area-form .select-wrap {
  width: 100%;
  position: relative;
  margin-bottom: 0;
}
.area-form .select-wrap:after {
  font-family: FontAwesome;
  content: "\f107";
  font-size: 3em;
  text-align: center;
  width: 40px;
  height: 40px;
  line-height: 40px;
  position: absolute;
  color: #004990;
  top: 0;
  right: 0;
  z-index: 32;
  background: #e9e9e9;
  pointer-events: none;
}
.area-form .select-wrap select {
  width: 100%;
  position: relative;
  background: none;
  border: none;
  border-bottom: 1px solid #004990;
  color: #9b9b9b;
  font-size: 1.8em;
  font-weight: 300;
  padding: 0;
  z-index: 16;
  margin: 0;
  cursor: pointer;
}

.filter-form label, .contact-form label {
  font-size: 22px;
  color: #58595b;
}
.filter-form .select-wrap, .contact-form .select-wrap {
  width: 100%;
  position: relative;
  background: #ffffff;
  box-shadow: inset 0px 0px 5px 0px rgba(0, 0, 0, 0.6);
  margin-bottom: 1em;
}
.filter-form .select-wrap:after, .contact-form .select-wrap:after {
  font-family: FontAwesome;
  content: "\f107";
  font-size: 1.5em;
  text-align: center;
  width: 40px;
  height: 40px;
  line-height: 40px;
  position: absolute;
  background: #004990;
  color: #ffffff;
  top: 0;
  right: 0;
  z-index: 32;
  pointer-events: none;
  transition: all 0.3s ease-out;
}
.filter-form .select-wrap:hover:after, .contact-form .select-wrap:hover:after {
  line-height: 50px;
}
.filter-form .select-wrap--large:after, .contact-form .select-wrap--large:after {
  font-size: 2.5em;
}
.filter-form select, .filter-form input, .contact-form select, .contact-form input {
  width: 100%;
  color: #9b9b9b;
  border: 1px solid #9b9b9b;
  position: relative;
  background: transparent;
  z-index: 16;
  margin: 0;
  padding-right: 10px;
  cursor: pointer;
}
.filter-form .submit-wrap, .contact-form .submit-wrap {
  padding: 50px 0 0 0;
  text-align: right;
}
.filter-form .submit-wrap button i, .contact-form .submit-wrap button i {
  transition: all 0.3s ease-out;
}
.filter-form .submit-wrap button:hover, .contact-form .submit-wrap button:hover {
  opacity: 0.8;
}
.filter-form .submit-wrap button:hover i, .contact-form .submit-wrap button:hover i {
  -webkit-transform: translateX(5px);
      -ms-transform: translateX(5px);
          transform: translateX(5px);
  line-height: 1.2em;
}
.filter-form .form__button, .contact-form .form__button {
  line-height: 1.2em;
  background: #004990;
  border: none;
  z-index: 64;
  position: relative;
}
.filter-form .form__button:hover, .contact-form .form__button:hover {
  background: #003a73;
}

.contact-form {
  margin-bottom: 50px;
}
.contact-form .address {
  position: relative;
}
.contact-form .address a {
  float: right;
}
.contact-form .address a .fa {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background-color: #003a73;
  color: #ffffff;
}
.contact-form .address span {
  line-height: 40px;
}
.contact-form .address span a {
  float: none;
}
.contact-form .address:after {
  content: "";
  display: block;
  width: 100%;
  border-bottom: 1px solid #003a73;
}

#id_other_requirements, #id_dietary_requirements, #id_relevant_experience {
  height: 90px;
}

.conference-product {
  padding: 0px 0 10px 0;
  border-bottom: 1px dashed #00a4b1;
  position: relative;
}
.conference-product form {
  padding: 20px 0 0 0;
}
.conference-product form [type=checkbox] + label, .conference-product form [type=radio] + label {
  display: block;
  margin-left: 0;
}
.conference-product a.list-columns__link {
  margin: 10px 0 20px 0;
  display: inline-block;
  background: #00a4b1;
  color: #fff;
  padding: 4px 32px 4px 10px;
  position: relative;
}
.conference-product a.list-columns__link i {
  font-style: normal;
}
.conference-product a.list-columns__link .list-columns__plus {
  position: absolute;
  top: 4px;
  right: 6px;
  display: inline-block;
  line-height: 19px;
  font-weight: 400;
  font-size: 1.7em;
  margin-left: 10px;
  padding-top: 2px;
  transition: all 0.5s ease-out;
}
.conference-product a.list-columns__link .list-columns__plus:after {
  content: "+";
  display: block;
}
.conference-product a.list-columns__link:hover {
  color: hsla(0deg, 0%, 100%, 0.5);
}
.conference-product a.list-columns__link:hover .list-columns__plus {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
}
.conference-product a.list-columns__link.clicked:hover .list-columns__plus {
  -webkit-transform: none;
  -ms-transform: none;
      transform: none;
}
.conference-product a.list-columns__link.clicked .list-columns__plus:after {
  content: "-";
}
.conference-product .conference-product__details {
  margin-bottom: 30px;
  transition: opacity 0.7s ease-out;
  height: auto;
  opacity: 1;
}
.conference-product .conference-product__details.hidden {
  height: 0px;
  overflow: hidden;
  margin-bottom: 0px;
  opacity: 0;
}

@media print, screen and (min-width: 46.875em) {
  .area-form {
    width: 300px;
    margin: 70px 0 0 15px;
  }
  .orderSummary tr.basket_item {
    display: table-row;
  }
  .orderSummary tr.basket_item td {
    display: table-cell;
    padding: 10px;
  }
  .orderSummary tr.basket_item td.priceTD {
    text-align: right;
  }
  .orderSummary tr.show-for-medium-up {
    display: table-row;
  }
  .orderSummary tbody {
    display: table-row-group;
  }
  .orderSummary .show-small {
    display: none;
  }
  .optionsList.doubleList ul {
    overflow: hidden;
  }
  .optionsList.doubleList ul li {
    width: 48%;
    float: left;
  }
  .conference-product h3 {
    margin-right: 150px;
  }
  .conference-product a.list-columns__link {
    position: absolute;
    top: 0px;
    right: 0px;
    margin: -4px 0 0 20px;
    float: right;
  }
}
@media print, screen and (min-width: 64em) {
  .area-form {
    width: 380px;
    margin: 70px 0 0 15px;
  }
}
.home-banner {
  background: #f7f7f7;
  margin: 0;
  padding: 0;
  position: relative;
  width: 100%;
  height: 620px;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner {
    height: 520px;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner {
    height: 820px;
  }
}
.home-banner .home-banner__slide {
  list-style: none;
  position: relative;
  width: 100%;
  min-height: 620px;
  background-image: url("../img/curves.d2e58ee85300.jpg");
  background-size: auto 100%;
  background-position: center bottom;
  padding: 0 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide {
    min-height: 520px;
    background-size: cover;
    background-position: bottom center;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide {
    min-height: 820px;
  }
}
.home-banner .home-banner__slide h1 {
  color: #ffffff;
  padding-top: 9.375rem;
  font-weight: 600;
  line-height: 1.3em;
  font-size: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide h1 {
    position: absolute;
    font-size: 1.75rem;
    left: 0;
    top: auto;
    bottom: 5rem;
    margin-right: 28.125rem;
    max-width: 37.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide h1 {
    font-size: 2.9375rem;
    bottom: 11.25rem;
    margin-right: 37.5rem;
  }
}
.home-banner .home-banner__slide h2 {
  position: relative;
  z-index: 32;
  margin-bottom: 0.5em;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.1em;
  color: #00a4b1;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide h2 {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide h2 {
    font-size: 2.6875rem;
  }
}
.home-banner .home-banner__slide p {
  position: relative;
  z-index: 32;
  margin-bottom: 0.5em;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide p {
    display: block;
    margin-bottom: 1em;
    font-size: 1.2em;
    line-height: 1.4em;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide p {
    display: block;
    margin-bottom: 1em;
    font-size: 1.4em;
    line-height: 1.5em;
  }
}
.home-banner .home-banner__slide a {
  z-index: 32;
  position: relative;
}
.home-banner .home-banner__slide .home-banner__container {
  width: 100%;
  max-width: 84.75rem;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  height: 620px;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide .home-banner__container {
    height: 520px;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide .home-banner__container {
    height: 820px;
  }
}
.home-banner .home-banner__slide .home-banner__container .orbit-container {
  width: 100%;
  position: absolute;
  bottom: 1.875rem;
  right: 0;
  list-style-type: none;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide .home-banner__container .orbit-container {
    bottom: 3.75rem;
    width: 25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide .home-banner__container .orbit-container {
    bottom: 6.25rem;
    width: 31.25rem;
  }
}
.home-banner .home-banner__slide .home-banner__content {
  padding: 1.25rem 1.25rem 1.875rem 1.25rem;
  background: #ffffff;
  width: 100%;
}
@media print, screen and (min-width: 46.875em) {
  .home-banner .home-banner__slide .home-banner__content {
    padding: 1.875rem 1.875rem 3.75rem 1.875rem;
    width: 25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .home-banner__slide .home-banner__content {
    padding: 2.5rem 2.5rem 4.375rem 2.5rem;
    width: 31.25rem;
  }
}
.home-banner .home-banner__slide .block-button--banner {
  color: #dd5829;
  background: transparent;
  font-size: 1.2em;
  padding-left: 0;
  font-weight: bold;
  font-size: 1.375rem;
}
.home-banner .home-banner__slide .block-button--banner:hover {
  color: #004990;
}

nav.slide-dots {
  display: none;
}

.home-featured {
  margin-bottom: 40px;
  position: relative;
  z-index: 20;
  padding: 40px 20px 0 20px;
  background-color: #f7f7f7;
}
@media print, screen and (min-width: 46.875em) {
  .home-featured {
    margin-bottom: 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .home-featured {
    padding: 2.5rem 1.875rem 2.5rem 1.875rem;
    margin-top: 10px;
  }
  .home-featured .blocks .columns {
    padding: 0;
    margin: 0;
  }
}
.home-featured .home-featured__content {
  max-width: 84.75rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  margin-left: auto;
  margin-right: auto;
}
.home-featured .blocks {
  z-index: 10;
  position: relative;
  padding: 0;
  margin: 0;
}
@media print, screen and (min-width: 46.875em) {
  .home-featured .blocks {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 20px;
  }
}
.home-featured .blocks .home-featured__columns {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
}
@media print, screen and (min-width: 64em) {
  .home-featured .blocks .home-featured__columns {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
  }
}
@media print, screen and (min-width: 64em) {
  .home-featured .blocks .home-featured__columns:nth-of-type(odd) {
    background: #ffffff;
  }
}
.home-featured .blocks .home-featured__columns .home-featured__block {
  position: relative;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
}
.home-featured .blocks .home-featured__columns .home-featured__block:hover .home-featured__image {
  opacity: 0.8;
}
.home-featured .blocks .home-featured__columns .home-featured__block:hover .home-featured__image:before {
  opacity: 0.2;
}
.home-featured .home-featured__image {
  min-height: 280px;
  background-size: cover;
  transition: opacity 0.25s;
  position: relative;
}
.home-featured .home-featured__image:before {
  content: "";
  display: block;
  background-color: #000;
  position: absolute;
  transition: opacity 0.25s;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.home-featured .home-featured__info {
  position: relative;
  padding: 1.25rem 3.125rem 1.25rem 1.25rem;
}
.home-featured .home-featured__info h3 {
  font-size: 1.625rem;
  margin: 0;
  line-height: 1.2em;
  color: #00a4b1;
}
.home-featured .home-featured__info a {
  font-size: 1.375rem;
}
.home-featured .home-featured__info p.block__featured {
  line-height: 1.2em;
  margin-top: 0.5em;
  display: block;
  font-size: 1.125rem;
}
.home-featured .home-featured__info .fa-angle-right {
  position: absolute;
  right: 1.25rem;
  top: 1.125rem;
  font-size: 1.4em;
  font-weight: bold;
}
.home-featured .home-featured__link {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.25s;
  z-index: 10;
}

.home-about {
  overflow: auto;
}
.home-about h2 {
  font-weight: bold;
}
@media print, screen and (min-width: 64em) {
  .home-about h2 {
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-about p,
.home-about ul,
.home-about ol {
    font-size: 1.25rem;
    line-height: 1.4em;
  }
}

.home-form {
  background: #f4f4f4;
  padding: 1.875rem 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .home-form {
    padding: 2.5rem 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-form {
    padding: 3.75rem 1.875rem;
  }
}
.home-form h2 {
  color: #00a4b1;
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 20px;
  font-size: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .home-form h2 {
    display: inline;
    font-size: 2.3125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .home-form h2 {
    font-size: 2.3125rem;
  }
}
.home-form span {
  font-size: 1.125rem;
  padding-left: 0.625rem;
}
.home-form form {
  margin: 20px 0;
}
.home-form form input {
  background-color: #ffffff;
  border: none;
  font-size: 1.4375rem;
  padding: 1.875rem 1.375rem;
}
.home-form form button.form__button {
  background: #00a4b1;
  line-height: 1.2em;
  padding: 0.625rem 1rem 0.625rem 1rem;
  font-size: 1.4375rem;
}
.home-form form button.form__button:hover {
  background-color: #003a73;
  border: solid 1px #003a73;
}
.home-form form button.form__button i {
  padding-left: 1.125rem;
}

.home-bottom {
  padding: 0;
}

.jt_job_position {
  padding-top: 30px;
  font-weight: 300;
  line-height: 1.2em;
  font-size: 1.94em;
  margin-bottom: 0.5em;
}

.jt_job_location:before {
  content: "Location: ";
}

.jt_job_company:before {
  content: "Company: ";
}

.jt_alljobs {
  margin-top: 1em;
}

@media print, screen and (min-width: 46.875em) {
  nav.slide-dots {
    display: block;
    width: 100%;
    margin: -40px auto 0 auto;
    padding: 0;
    position: relative;
    z-index: 32;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  nav.slide-dots .slide-dots__dot {
    cursor: pointer;
    display: block;
    height: 18px;
    width: 18px;
    margin-right: 8px;
    border: 2px solid #00a4b1;
    border-radius: 50%;
  }
  nav.slide-dots .is-active {
    background: #00a4b1;
  }
}
.wrapper--home .content__full {
  margin-left: 1.25rem;
  margin-right: 1.25rem;
  max-width: none;
}
@media screen and (min-width: 90em) {
  .wrapper--home .content__full {
    margin-left: auto;
    margin-right: auto;
  }
}

.key-facts {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .key-facts {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .key-facts {
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
  }
}

.about-stats {
  background: #004990;
  padding: 30px 0;
}
.about-stats h2 {
  color: #ffffff;
  font-weight: 300;
  font-size: 2.6em;
}
.about-stats p {
  color: #ffffff;
  margin-right: 30px;
  margin-bottom: 0px;
  margin-top: 10px;
  font-weight: 300;
}
.about-stats .stats {
  /*
  color: $secondary-color;
  letter-spacing: -1px;
  .stats__large {
    font-size: 100px;
  }
  .stats__small {
    font-size: 38px;
  }
  .stats__stack {
    width: 70px;
    line-height: 1em;
    display: inline-block;
    text-align: center;
    font-size: 30px;
  }
  */
  padding-top: 40%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.about-more {
  margin: 70px 0;
}

@media print, screen and (min-width: 46.875em) {
  .about-stats {
    padding: 50px 0;
  }
  .about-stats .stats__large {
    font-size: 130px;
  }
  .about-stats .stats__small {
    font-size: 56px;
  }
  .about-stats .stats__stack {
    width: 70px;
    line-height: 1em;
    font-size: 37px;
  }
}
@media print, screen and (min-width: 64em) {
  .about-stats {
    background: #004990;
  }
  .about-stats h2 {
    color: #ffffff;
    font-weight: 300;
  }
  .about-stats p {
    color: #ffffff;
    margin-right: 30px;
    font-weight: 300;
  }
  .about-stats .stats {
    color: #00a4b1;
  }
  .about-stats .stats .stats__large {
    font-size: 130px;
  }
  .about-stats .stats .stats__small {
    font-size: 56px;
  }
  .about-stats .stats .stats__stack {
    width: 70px;
    line-height: 1em;
    display: inline-block;
    text-align: center;
    font-size: 37px;
  }
}
.list-columns-intro h2, .list-columns-intro h3, .list-columns-intro h4 {
  color: #004990;
}
.list-columns-intro a {
  color: #004990;
  text-decoration: underline;
}

.list-columns-intro--teal h2, .list-columns-intro--teal h3, .list-columns-intro--teal h4 {
  color: #00a4b1;
}
.list-columns-intro--teal a {
  color: #00a4b1;
}

.list-columns-header:after {
  content: "";
  display: block;
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 10px;
  border-bottom: 1px solid #00a4b1;
}
.list-columns-header h2, .list-columns-header h3, .list-columns-header h4 {
  font-weight: 300;
}
.list-columns-header h3 {
  display: none;
}

ul.list-columns {
  margin: 0;
  padding: 0;
}
ul.list-columns li {
  list-style: none;
  border-bottom: 1px solid #00a4b1;
  padding: 10px 0;
  margin-bottom: 1em;
  font-weight: 300;
  font-size: 1.1em;
}
ul.list-columns li .list-columns__mobile {
  font-weight: 500;
}
ul.list-columns li a.list-columns__link {
  margin: 20px 0 0 20px;
  display: inline-block;
  background: #00a4b1;
  color: rgb(255, 255, 255);
  padding: 4px 8px;
  float: right;
}
ul.list-columns li a.list-columns__link .list-columns__plus {
  display: inline-block;
  line-height: 19px;
  font-weight: 400;
  font-size: 1.5em;
  margin-left: 10px;
  transition: all 0.5s ease-out;
}
ul.list-columns li a.list-columns__link:hover {
  color: rgba(255, 255, 255, 0.5);
}
ul.list-columns li a.list-columns__link:hover .list-columns__plus {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
ul.list-columns li:before {
  display: none;
}
ul.list-columns.list-columns__consultants li.list-item {
  background: #004990;
  padding: 0 0.625rem;
  color: #fff;
  margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  ul.list-columns.list-columns__consultants li.list-item {
    padding: 0 1.25rem;
  }
}
ul.list-columns.list-columns__consultants li.list-item h3 {
  color: #fff;
  margin-top: 0.75rem;
  margin-bottom: 0;
  font-size: 1.125rem;
}
@media print, screen and (min-width: 46.875em) {
  ul.list-columns.list-columns__consultants li.list-item h3 {
    font-size: 1.625rem;
  }
}
ul.list-columns.list-columns__consultants li.list-item p {
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 46.875em) {
  ul.list-columns.list-columns__consultants li.list-item p {
    font-size: 1.125rem;
  }
}
ul.list-columns.list-columns__consultants li.list-item .list-columns__link {
  font-size: 1.125rem;
  padding: 3px 8px 5px 8px;
  line-height: 1em;
  float: none;
  margin: 0 0 1.25rem 0;
}
@media print, screen and (min-width: 46.875em) {
  ul.list-columns.list-columns__consultants li.list-item .list-columns__link {
    float: right;
    margin: 1.25rem 0 1.25rem 0;
  }
}

ul.list-columns--teal {
  margin-bottom: 3em;
}
ul.list-columns--teal li {
  border-bottom: 1px dashed #00a4b1;
  line-height: 1.2em;
}
ul.list-columns--teal li a.list-columns__link {
  margin: 0 0 0 20px;
}
ul.list-columns--teal li a.list-columns__link i {
  margin-left: 0.625rem;
}
ul.list-columns--teal li h4 {
  color: #00a4b1;
  font-weight: 400;
  font-size: 1em;
  margin: 0;
  line-height: 1.2em;
}
ul.list-columns--teal li .list__date {
  display: block;
  font-size: 0.9em;
  margin-bottom: 1em;
}

ul.list-columns--filter {
  line-height: 1.2em;
  margin-bottom: 3em;
}
ul.list-columns--filter a {
  display: inline-block;
  color: #003a73;
  text-decoration: underline;
  font-weight: 400;
  margin: 0;
}
ul.list-columns--filter a:hover {
  color: #00a4b1;
}
ul.list-columns--filter a.list__more {
  display: block;
  text-align: right;
  text-decoration: none;
  margin: 1em 0;
}
ul.list-columns--filter a.list__more:hover {
  color: #00a4b1;
}

.list-pagination {
  float: right;
  font-size: 1.1em;
}
.list-pagination a.list-pagination__step {
  float: left;
  padding: 4px 10px;
  color: #58595b;
}
.list-pagination a.list-pagination__step:hover {
  color: #004990;
}
.list-pagination ul.list-pagination__numbers {
  margin: 0;
  padding: 0;
  float: left;
}
.list-pagination ul.list-pagination__numbers li {
  list-style: none;
  float: left;
  padding: 2px 10px;
}
.list-pagination ul.list-pagination__numbers li a {
  font-weight: 300;
  display: block;
  color: #58595b;
  width: 15px;
  text-align: center;
  transition: all 0.1s ease-out;
}
.list-pagination ul.list-pagination__numbers li a:hover {
  border-bottom: solid 2px #004990;
}
.list-pagination ul.list-pagination__numbers li a.selected {
  border-bottom: solid 2px #004990;
}

.back-to-top {
  color: #ffffff;
  background-color: #004990;
  padding: 8px 10px;
  margin-bottom: 25px;
  display: inline-block;
}
.back-to-top i {
  transition: all 0.1s ease-out;
  margin-left: 6px;
}
.back-to-top:hover {
  color: #ffffff;
  opacity: 0.8;
}
.back-to-top:hover i {
  -webkit-transform: translateY(-5px);
      -ms-transform: translateY(-5px);
          transform: translateY(-5px);
}

@media print, screen and (min-width: 46.875em) {
  .list-columns-header h3 {
    font-size: 2em;
    display: block;
  }
  .list-columns__mobile {
    display: none;
  }
}
#subnav > li.selected > a,
.menu > li.selected > a {
  color: #00a4b1;
}

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  padding-right: 0;
}

.mobile {
  z-index: 256;
  background: #003a73;
}
.mobile .mobile__search {
  display: block;
  width: 100%;
  position: relative;
}
.mobile .mobile__search label {
  display: none;
}
.mobile .mobile__search form [type=search] {
  color: white;
  background-color: rgba(255, 255, 255, 0.2);
  border: none;
}
.mobile .mobile__search i {
  position: absolute;
  right: 12px;
  top: 12px;
  color: #ffffff;
}
.mobile a.mobile__sign-in {
  display: block;
  color: #ffffff;
  height: 45px;
  line-height: 43px;
  padding: 0 18px;
  margin: 12px;
  background: #00a4b1;
}
.mobile a.mobile__sign-in:hover {
  background: #008c98;
}
.mobile .mobile__cart select {
  margin: 0 1rem;
  width: auto;
}
.mobile span.cart__amount {
  color: white;
  padding: 1rem;
  display: block;
}
.mobile span.cart__amount i {
  margin-right: 0.5em;
}
.mobile .mobile__nav-wrap {
  border-bottom: 1px solid #004990;
  padding: 4px 0 24px 0;
}
.mobile ul.mobile__main-nav li.is-submenu-parent-item,
.mobile ul.mobile__top-nav li.is-submenu-parent-item {
  font-weight: 500;
}
.mobile ul.mobile__main-nav li .login_required,
.mobile ul.mobile__top-nav li .login_required {
  padding: 0.7rem 1rem;
}
.mobile ul.mobile__main-nav li a,
.mobile ul.mobile__top-nav li a {
  color: #ffffff;
}
.mobile ul.mobile__main-nav li a:hover,
.mobile ul.mobile__top-nav li a:hover {
  color: #00a4b1;
}
.mobile ul.mobile__main-nav li.current > a,
.mobile ul.mobile__top-nav li.current > a {
  color: #00a4b1;
}
.mobile ul.mobile__main-nav li ul,
.mobile ul.mobile__top-nav li ul {
  background: #003a73;
}

ul.main__nav {
  display: none;
}
@media screen and (min-width: 81.25em) {
  ul.main__nav {
    display: block;
    z-index: 64;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  ul.main__nav > li {
    display: block;
    text-align: center;
    position: static;
  }
  ul.main__nav li {
    padding: 0;
    /*ul.is-dropdown-submenu {
      background: $rqa-dark-blue;
      min-width: 218px;
      border: none;
      padding: 25px 20px;
      li {
        border-bottom: 1px solid $rqa-blue;
        padding: 0 0 0.5em 0;
        margin: 0 0 0.5em 0;
        a {
          opacity: 1;
          font-size: 1em;
          text-align: left;
          margin: 0;
          padding: 0 !important;
          border: 0;
          &:hover {
            color: $rqa-teal;
          }
          &::before {
            display: none;
          }
        }
        span.login_required {
          color: #999;
        }
      }
    }*/
  }
  ul.main__nav li a {
    font-size: 1.125rem;
    font-weight: bold;
    text-transform: uppercase;
    color: #ffffff;
    position: relative;
    display: block;
    margin: 0 9px 0 9px;
    padding: 0.75em 0 2.625rem 0;
    transition: color 0.3s;
  }
}
@media screen and (min-width: 81.25em) and (max-height: 700px) {
  ul.main__nav li a {
    padding: 0.75em 0 1.375rem 0;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li a::after {
    display: none !important;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li a:before {
    content: "";
    position: absolute;
    bottom: 0.375rem;
    left: 0;
    width: 100%;
    height: 3px;
    background: #ffffff;
    -webkit-transform: scale3d(0, 1, 1);
    transform: scale3d(0, 1, 1);
    transition: -webkit-transform 0.1s;
    transition: transform 0.1s;
    transition: transform 0.1s, -webkit-transform 0.1s;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  ul.main__nav li a:before {
    bottom: 1.625rem;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li a:hover {
    color: #ffffff;
    opacity: 1;
  }
  ul.main__nav li a:hover::before {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 0.3s;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li ul.is-dropdown-submenu {
    margin-bottom: 0.5em;
  }
}
@media screen and (min-width: 81.25em) and (min-height: 700px) {
  ul.main__nav li ul.is-dropdown-submenu {
    margin-bottom: 1em;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li ul.is-dropdown-submenu .row {
    max-width: 84.75rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu {
    width: 100%;
    text-align: left;
    left: 0;
    padding: 0 1.875rem;
    position: absolute;
    top: 100%;
    background: rgb(255, 255, 255);
    background: rgba(255, 255, 255, 0.95);
    padding: 0;
    margin: 0;
  }
  ul.main__nav li ul.is-dropdown-submenu > a {
    position: relative;
    padding-right: 0;
  }
  ul.main__nav li ul.is-dropdown-submenu li {
    padding: 0;
    margin: 0;
    display: block;
  }
  ul.main__nav li ul.is-dropdown-submenu li a {
    font-size: 1.3125rem;
    padding: 0;
    text-transform: none;
    color: #00a4b1;
    padding: 0;
    margin: 0;
  }
  ul.main__nav li ul.is-dropdown-submenu li a:before {
    display: none;
  }
  ul.main__nav li ul.is-dropdown-submenu ul {
    display: block;
  }
  ul.main__nav li ul.is-dropdown-submenu ul li a {
    color: #00a4b1;
    font-size: 1rem;
    padding: 0;
    line-height: 1.1em;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) and (min-height: 800px) {
  ul.main__nav li ul.is-dropdown-submenu ul li a {
    font-size: 1.25rem;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu ul li a:hover {
    color: #004990;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu ul li.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    border: none;
    background: transparent;
    right: auto;
    left: 0;
    position: relative;
    margin-top: 0.2em;
  }
  ul.main__nav li ul.is-dropdown-submenu ul li.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu li a {
    margin: 0 0 0.2em 0;
    padding: 0;
    font-weight: normal;
    color: #004990;
  }
  ul.main__nav li ul.is-dropdown-submenu ul li.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu li a:hover {
    color: #00a4b1;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu > ul > li {
    -webkit-column-break-inside: avoid;
            break-inside: avoid;
    margin-bottom: 1em;
  }
  ul.main__nav li ul.is-dropdown-submenu .mega-menu.medium-9 > ul {
    -webkit-columns: 3;
            columns: 3;
    -webkit-column-gap: 2em;
            column-gap: 2em;
  }
  ul.main__nav li ul.is-dropdown-submenu .mega-menu.medium-6 > ul {
    -webkit-columns: 2;
            columns: 2;
    -webkit-column-gap: 2em;
            column-gap: 2em;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .row {
    padding: 0.9375rem 0;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) and (min-height: 800px) {
  ul.main__nav li ul.is-dropdown-submenu .row {
    padding: 1.875rem 0;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) and (min-height: 900px) {
  ul.main__nav li ul.is-dropdown-submenu .row {
    padding: 3.125rem 0;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta {
    max-width: 19.5rem;
  }
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta h2 {
    font-size: 1.5625rem;
    line-height: 1.2em;
    color: #00a4b1;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) and (min-height: 800px) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta h2 {
    font-size: 2.1875rem;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta p {
    font-size: 1.25rem;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta img {
    margin-bottom: 1em;
  }
}
@media screen and (min-width: 81.25em) and (min-width: 64em) {
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta .block-button {
    background: #dd5829;
    font-size: 1.375rem;
    font-weight: bold;
    padding: 0.625rem 1.875rem 0.625rem 1.25rem;
    margin-left: 0;
  }
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta .block-button:before {
    display: none;
  }
  ul.main__nav li ul.is-dropdown-submenu .mega-menu__cta .block-button:hover {
    background: #00a4b1;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li:last-child a {
    padding-right: 0;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li.current a {
    opacity: 1;
  }
  ul.main__nav li.current a::before {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 0.3s;
  }
}
@media screen and (min-width: 81.25em) {
  ul.main__nav li:last-child a {
    margin-right: 0;
  }
}
@media screen and (min-width: 90em) {
  ul.main__nav li a {
    font-size: 1.375rem;
    margin: 0 10px 12px 10px;
  }
}
@media screen and (min-width: 90em) {
  ul.main__nav {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
}

.productImage {
  display: none;
}

@media print, screen and (min-width: 46.875em) {
  .productImage {
    display: block;
    width: 200px;
    height: 200px;
    background-size: cover;
    border-radius: 50%;
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
  }
}
.sidebar__message {
  color: #cb0e34;
  display: none;
}
.sidebar__message.show-me {
  display: block;
}

.button--book.hide-me {
  display: none;
}

.content .content__border .regRoadmap h2 {
  background-color: #003a73;
  color: #fff;
  padding: 12px 60px 12px 10px;
  font-size: 1.4em;
  font-weight: 400;
  position: relative;
  line-height: 1.2em;
  min-height: 50px;
}
.content .content__border .regRoadmap h2 em {
  position: absolute;
  right: 0px;
  top: 0px;
  display: block;
  width: 50px;
  height: 50px;
  background-color: #000;
  /* Vertical line */
  /* horizontal line */
}
.content .content__border .regRoadmap h2 em:before, .content .content__border .regRoadmap h2 em:after {
  content: "";
  position: absolute;
  background-color: white;
  transition: -webkit-transform 0.25s ease-out;
  transition: transform 0.25s ease-out;
  transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}
.content .content__border .regRoadmap h2 em:before {
  top: 30%;
  left: 50%;
  width: 4px;
  height: 40%;
  margin-left: -2px;
}
.content .content__border .regRoadmap h2 em:after {
  top: 50%;
  left: 30%;
  width: 40%;
  height: 4px;
  margin-top: -2px;
}
.content .content__border .regRoadmap h2 span {
  float: right;
  font-size: 0.7em;
  display: block;
  margin-right: 60px;
  display: none;
}
.content .content__border .regRoadmap h2 a {
  color: #fff;
}
.content .content__border .regRoadmap h2:hover {
  background-color: #00a4b1;
}
.content .content__border .regRoadmap .mapStage ul.mapLists {
  list-style-type: none;
  clear: both;
  overflow: hidden;
}
.content .content__border .regRoadmap .mapStage ul.mapLists li {
  margin: 1px 0px;
  padding: 5px;
  background: #e9e9e9;
}
.content .content__border .regRoadmap .mapStage ul.mapLists li:before {
  display: none;
}
.content .content__border .regRoadmap .mapStage button.block-button {
  text-align: right;
  float: right;
  font-size: 1em;
  background: #003a73;
  padding-right: 10px;
}
.content .content__border .regRoadmap .mapStage button.block-button .fa {
  margin-left: 6px;
}
.content .content__border .regRoadmap .mapStage:after {
  content: "\f063";
  color: #003a73;
  width: 100%;
  text-align: center;
  display: inline-block;
  font: normal normal normal 3em/1 FontAwesome;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.content .content__border .regRoadmap .mapStage:last-of-type:after {
  content: "";
}
.content .content__border .regRoadmap .mapStage.openStage em:before {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
.content .content__border .regRoadmap .mapStage.openStage em:after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.content .content__border .regRoadmap .mapContent {
  overflow: hidden;
  padding: 1em 0px;
}
.content .content__border .regRoadmap .mapContent .row {
  padding-bottom: 0.75em;
  margin-bottom: 0.6em;
  border-bottom: 1px solid #e9e9e9;
}
.content .content__border .regRoadmap .mapContent .row .row {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
.content .content__border .regRoadmap .mapContent:last-of-type {
  border-bottom: none;
}
.content .content__border .regRoadmap .mapContent p {
  font-weight: 300;
  font-size: 1.2em;
  line-height: 1.3em;
}
.content .content__border .regRoadmap .mapContent h3 {
  font-size: 1.4em;
  font-weight: 400;
  padding: 0px 1em 0px 0px;
  margin-top: 0px;
}
.content .content__border .regRoadmap.memberSearch h2 {
  font-size: 1em;
  line-height: 1.5em;
  background-color: #004990;
  min-height: 76px;
  padding: 12px 80px 12px 10px;
}
.content .content__border .regRoadmap.memberSearch h2 strong {
  font-weight: 400;
  font-size: 1.4em;
}
.content .content__border .regRoadmap.memberSearch h2 em {
  width: 76px;
  height: 76px;
  background-color: #003a73;
}
.content .content__border .regRoadmap.memberSearch h2 em:before {
  top: 35%;
  height: 30%;
}
.content .content__border .regRoadmap.memberSearch h2 em:after {
  left: 35%;
  width: 30%;
}
.content .content__border .regRoadmap.memberSearch h2 span {
  margin-right: 80px;
  margin-top: -10px;
  font-size: 1em;
}
.content .content__border .regRoadmap.memberSearch .mapStage:after {
  display: none;
}
.content .content__border .regRoadmap.memberSearch .mapContent h3 {
  font-size: 1.2em;
  line-height: 1.3em;
}
.content .content__border .regRoadmap.memberSearch .mapContent strong {
  color: #004990;
  font-weight: 400;
}

@media print, screen and (min-width: 46.875em) {
  .content .content__border .regRoadmap .mapStage h2 {
    padding-right: 10px;
  }
  .content .content__border .regRoadmap .mapStage h2 span {
    display: block;
  }
  .content .content__border .regRoadmap .mapStage ul.mapLists li {
    width: 50%;
    float: left;
  }
  .content .content__border .regRoadmap .mapStage ul.mapLists li:nth-child(odd) {
    width: 49%;
    margin-right: 1%;
  }
  .content .content__border .regRoadmap .mapStage .mapContent .row {
    padding-bottom: 1.7em;
    margin-bottom: 1.4em;
  }
  .content .content__border .regRoadmap .mapStage .mapContent .row .row {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
/* Cookiebar */
#cookie-bar {
  background: #292929;
  height: auto;
  line-height: 24px;
  color: #fff;
  text-align: center;
  padding: 10px;
  z-index: 9999;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

#cookie-bar.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

#cookie-bar.fixed.bottom {
  bottom: 0;
  top: auto;
}

#cookie-bar p {
  margin: 0;
  padding: 0;
  line-height: 30px;
}

#cookie-bar a {
  color: #fff;
  display: inline-block;
  text-decoration: none;
  padding: 10px 19px;
  margin-left: 8px;
  transition: all 0.2s ease;
  line-height: 1em;
}

#cookie-bar .cb-enable {
  background: #004990;
  color: #fff;
  margin-left: 20px;
}

#cookie-bar .cb-enable:hover {
  background: #fff;
  color: #004990;
}

#cookie-bar .cb-policy {
  color: #00a4b1;
}

@media handheld, only screen and (max-width: 600px) {
  #cookie-bar p {
    line-height: 22px;
  }
  #cookie-bar a {
    padding: 10px;
    margin-left: 0px;
  }
  #cookie-bar .cb-enable {
    margin-left: 0px;
    display: block;
    margin-top: 15px;
    margin-bottom: 5px;
  }
}
.addressBlock p {
  background-color: #f7f7f7;
  padding: 1.5em;
  min-height: 330px;
  border-radius: 15px;
}

table.orderSummary {
  width: 95%;
  margin-top: 1em;
}

#membership_renewal_due {
  float: right;
  width: 300px;
  border: 1px dashed red;
  background-color: #feeae9;
  padding: 20px;
}

.content ul.tabs {
  border: none;
  border-bottom: #004990 1px solid;
  clear: both;
  padding: 0px 10px;
}
.content ul.tabs li {
  padding-left: 0px;
  margin-right: 2px;
}
.content ul.tabs li.tabs-title a {
  font-size: 1.2em;
}
.content ul.tabs li:before {
  display: none;
}
.content ul.tabs.tabs--filter {
  background: none;
  border-bottom: none;
}
.content .tabs-content {
  border: none;
}
.content .tabs-title {
  background-color: #efefef;
  color: #004990;
}
.content .tabs-title > a:focus, .content .tabs-title > a[aria-selected=true] {
  background-color: #004990;
  color: #fff;
}

ul.tabs.tabs--filter {
  background: none;
  border: none;
}
ul.tabs.tabs--filter li a, ul.tabs.tabs--filter li.tabs-title > a[aria-selected=true], ul.tabs.tabs--filter li.tabs-title > a:focus, ul.tabs.tabs--filter li.tabs-title > a:active, ul.tabs.tabs--filter li.tabs-title > a:visited {
  background: none;
}
ul.tabs.tabs--filter li.is-active {
  background: #fff;
  font-weight: 500;
}

.promoBanner {
  width: 100%;
  text-align: center;
  padding: 0.75em 50px 0.75em 0.75em;
  background-image: url("../img/kilts.9e17971b13b3.jpg");
  background-size: cover;
  background-color: #dd5829;
  position: relative;
  min-height: 10px;
  text-align: center;
  display: none;
}
.promoBanner .overlay {
  background-color: #fff;
  opacity: 0.75;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.promoBanner p {
  display: inline-block;
  padding: 0px;
  margin: 0px;
  position: relative;
  z-index: 2;
  font-weight: 500;
  font-size: 1em;
  line-height: 1.2em;
}
.promoBanner a {
  color: #004990;
}
.promoBanner a:hover {
  opacity: 0.7;
}
.promoBanner span {
  color: #004990;
  position: absolute;
  top: 50%;
  margin-top: -0.75em;
  right: 10px;
  font-size: 1.3em;
  z-index: 3;
}
.promoBanner .block-button {
  display: none;
  background-color: #dd5829;
  font-size: 1.1em;
  border: #fff solid 1px;
  margin-left: 5%;
  padding: 4px 10px;
}
.promoBanner .block-button:hover {
  opacity: 1;
}
.promoBanner .confLogo {
  display: none;
}

@media print, screen and (min-width: 64em) {
  .promoBanner {
    color: #fff;
    height: 60px;
    padding: 0.9em 3em 0.9em 200px;
  }
  .promoBanner .block-button {
    display: inline-block;
  }
  .promoBanner .overlay {
    display: none;
  }
  .promoBanner p {
    font-size: 1.2em;
  }
  .promoBanner a {
    color: #fff;
  }
  .promoBanner .confLogo {
    display: block;
    height: 60px;
    background-color: #fff;
    position: absolute;
    left: 0px;
    top: 0px;
  }
  .promoBanner .confLogo img {
    height: 60px;
  }
}
.renewal {
  text-align: center;
  padding: 5px 20px;
  background-color: #ffd3d3;
  border-bottom: red dashed 2px;
  border-top: red dashed 2px;
}

.feedback {
  background-color: #f7f7f7;
  padding: 1.25rem;
  text-align: center;
  position: relative;
  margin: 1.875rem 0;
}
.feedback h2 {
  margin-top: 0px;
}
.feedback .orbit-slide {
  padding: 0.625rem 1.25rem 0 1.25rem;
  width: 100%;
}
.feedback .orbit-slide:before {
  content: "";
}
.feedback .orbit-slide p:before {
  content: "“";
}
.feedback .orbit-slide p:after {
  content: "”";
}
.feedback .orbit-next, .feedback .orbit-previous {
  position: absolute;
  z-index: 10;
  font-size: 1.875rem;
  color: #c8c8c8;
}
.feedback .orbit-next:hover, .feedback .orbit-previous:hover {
  opacity: 0.6;
}
.feedback .orbit-next {
  right: 10px;
  top: calc(50% - 25px);
}
.feedback .orbit-previous {
  left: 10px;
  top: calc(50% - 25px);
}
.feedback .orbit-bullets button {
  cursor: pointer;
  display: inline-block;
  float: none;
  height: 12px;
  width: 12px;
  margin-right: 4px;
  border: 1px solid #00a4b1;
}
.feedback .orbit-bullets button.is-active {
  background: #00a4b1;
}

@media print, screen and (min-width: 46.875em) {
  .feedback .orbit-next, .feedback .orbit-previous {
    font-size: 3.125rem;
  }
  .feedback .orbit-next {
    right: 20px;
  }
  .feedback .orbit-previous {
    left: 20px;
  }
  .feedback .orbit-slide {
    padding: 0.625rem 3.125rem 0 3.125rem;
  }
}
.countdown {
  background-color: #b21268;
  color: #fff;
  padding: 1rem;
  position: relative;
  text-align: center;
}
.countdown .fa-times {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1.5rem;
  cursor: pointer;
  transition: opacity 0.5s;
  opacity: 1;
}
.countdown .fa-times:hover {
  opacity: 0.6;
}
.countdown.disabled {
  display: none;
}
.countdown .block-button {
  background-color: #00a4b1;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  .countdown .block-button {
    font-size: 1.375rem;
    vertical-align: middle;
  }
}
.countdown p {
  margin-bottom: 0px;
  margin-top: 0.625rem;
  line-height: 1.2em;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .countdown p {
    font-size: 1.5rem;
    display: inline-block;
    padding-left: 1.25rem;
    margin-top: 0;
    vertical-align: middle;
  }
}
.countdown p strong {
  font-weight: bold;
}
.countdown #clock {
  color: #fff;
}
@media print, screen and (min-width: 46.875em) {
  .countdown #clock {
    font-size: 1.25rem;
  }
}
.countdown #clock strong {
  font-weight: 400;
}
@media print, screen and (min-width: 46.875em) {
  .countdown #clock strong {
    font-size: 1.875rem;
  }
}
.countdown.countdown--purple {
  background-color: #ed207a;
}
.countdown.countdown--purple .block-button {
  background-color: #a3b42e;
}
.countdown.countdown--purple #clock {
  color: #ffffff;
}

.conf-home-nav {
  background-color: #00a4b1;
}
.conf-home-nav ul {
  padding: 0;
  margin: 0 auto;
  list-style-type: none;
  max-width: 70rem;
}
.conf-home-nav li {
  padding: 0;
  margin: 0;
  text-align: center;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-home-nav li {
    display: block;
    width: 33.333%;
    float: left;
    font-size: 1.125rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-home-nav li {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 90em) {
  .conf-home-nav li {
    font-size: 1.25rem;
  }
}
.conf-home-nav li a {
  background-color: #b21268;
  padding: 0.875rem;
  color: #fff;
  line-height: 1.2em;
  display: block;
  width: 100%;
  vertical-align: middle;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  .conf-home-nav li a {
    padding: 1rem 0.625rem;
  }
}
.conf-home-nav li a:hover {
  opacity: 0.8;
}
.conf-home-nav li:nth-child(1) a {
  background: #f1d50c;
  color: #72650b;
}
.conf-home-nav li:nth-child(2) a {
  background: #095058;
}
.conf-home-nav li:nth-child(3) a {
  background: #b21268;
}
.conf-home-nav li:nth-child(4) a {
  background: #72650b;
}
.conf-home-nav li:nth-child(5) a {
  background: #f1d50c;
  color: #72650b;
}
.conf-home-nav li:nth-child(5) a {
  background: #f1d50c;
  color: #72650b;
}
.conf-home-nav li:before {
  display: none;
}
.conf-home-nav:after {
  content: "";
  clear: both;
  display: table;
}

.conf-expand {
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.5s ease-out;
}
.conf-expand.expanded {
  max-height: 1000px;
}

.banner--container {
  max-width: 1400px;
  margin: auto;
}

.conf-Intro {
  background-image: url("../img/conferencepage/conference-2020-background.3c1412112b8d.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left center;
  text-align: center;
  position: relative;
  padding: 50% 0 0 0;
  /*iframe {
    display:none;
    @include breakpoint(medium) {
      display:block;
      position:absolute;
      z-index: 1;
      width:100%;
      height:100%;
      top:0px;
      left:0px;
    }
  }*/
}
@media screen and (min-width: 29.0625em) {
  .conf-Intro {
    padding: 13.75rem 10% 0 10%;
  }
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro {
    padding: 30.34% 0 0 0;
    background-position: center;
  }
}
.conf-Intro a {
  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 200;
}
.conf-Intro.conf-Intro--home {
  background: none;
  padding: 0;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--home {
    position: relative;
    max-width: 100%;
  }
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--home.conf-Intro--reduced {
    padding: 0 0 46% 0;
  }
}
.conf-Intro.conf-Intro--home .conf-Intro_title {
  position: absolute;
  left: 10%;
  right: 10%;
  top: 50%;
  margin-top: -204px;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--home .conf-Intro_title {
    width: 560px;
    left: 50%;
    margin-left: -280px;
  }
}
.conf-Intro p {
  max-width: 42.5rem;
  margin-left: auto;
  margin-right: auto;
}
.conf-Intro .conf-Intro_title {
  position: relative;
  z-index: 10;
  max-width: 560px;
  margin: 0 auto 0 auto;
}
.conf-Intro .conf-Intro_title h1 {
  font-size: 1.25rem;
  padding: 0.9375rem;
  background-color: #8b6aac;
  color: #fff;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro .conf-Intro_title h1 {
    font-size: 1.875rem;
    padding: 1.25rem;
  }
}
.conf-Intro .conf-Intro_title p {
  font-size: 0.9375rem;
  line-height: 1.4em;
  margin-top: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro .conf-Intro_title p {
    font-size: 1.375rem;
  }
}
.conf-Intro .conf-Intro__countdown {
  position: absolute;
  right: 0.625rem;
  top: 0;
  text-align: right;
}
@media only screen and (min-width: 1140px) {
  .conf-Intro .conf-Intro__countdown {
    left: 50%;
    right: auto;
    margin-left: -34.4375rem;
    width: 70rem;
  }
}
.conf-Intro #conf-Intro__clock {
  text-align: center;
}
.conf-Intro #conf-Intro__clock span {
  display: inline-block;
  background-color: rgba(0, 148, 165, 0.5);
  color: #fff;
  line-height: 1.4em;
  padding: 0.5rem 0.25rem 0.25rem 0.25rem;
  min-width: 2.75rem;
  font-size: 0.75rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro #conf-Intro__clock span {
    padding: 0.625rem 0.375rem 0.375rem 0.375rem;
    min-width: 3.375rem;
    font-size: 0.875rem;
  }
}
.conf-Intro #conf-Intro__clock span strong {
  display: block;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro #conf-Intro__clock span strong {
    font-size: 1.625rem;
  }
}
.conf-Intro.conf-Intro--home #slideshow > div {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.conf-Intro.conf-Intro--home #slideshow > div:before {
  content: "";
  position: absolute;
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
}
.conf-Intro.conf-Intro--home #slideshow > div.conf-carousel--day:before {
  background: rgba(0, 0, 0, 0.7);
}
.conf-Intro.conf-Intro--home .conf-Intro_title {
  max-width: 80%;
  width: 80%;
  margin: auto;
  margin: auto;
  margin-left: 0;
  margin-top: 0;
  left: auto;
  right: auto;
  bottom: auto;
  top: auto;
  background: transparent;
  border: solid #fff 2px;
}
@media print, screen and (min-width: 64em) {
  .conf-Intro.conf-Intro--home .conf-Intro_title {
    max-width: 53.75rem;
    width: 53.75rem;
  }
}
.conf-Intro.conf-Intro--home .conf-Intro_title p {
  color: #fff;
  line-height: 1.4em;
  text-transform: uppercase;
  max-width: 43.75rem;
  line-height: 1.4em;
  margin-top: 1.25rem;
  text-shadow: 0px 0px 104px rgb(0, 0, 0);
  font-size: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--home .conf-Intro_title p {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .conf-Intro.conf-Intro--home .conf-Intro_title p {
    font-size: 3.3125rem;
  }
}
.conf-Intro.conf-Intro--home .conf-Intro_title img {
  max-width: 11.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--home .conf-Intro_title img {
    margin-left: 10px;
    margin-right: 10px;
  }
}
.conf-Intro.conf-Intro--home .conf-Intro_title img.conf-logo--large {
  max-width: 15.625rem;
}
.conf-Intro #slideshow {
  position: relative;
  width: 100vw;
  height: 60vh;
}
.conf-Intro #slideshow > div {
  position: absolute;
  background-size: cover;
  background-repeat: no-repeat;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
}
.conf-Intro.conf-Intro--reduced h1 {
  z-index: 50;
  width: auto;
  height: auto;
  position: relative;
  font-size: 1.25rem;
  padding: 0.625rem;
  background-color: #dd5829;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .conf-Intro.conf-Intro--reduced h1 {
    position: absolute;
    font-size: 1.875rem;
    padding: 1.25rem;
    left: 0px;
    right: 50%;
    text-align: right;
  }
}
.conf-Intro.conf-Intro--reduced h1 a {
  position: relative;
  color: #fff;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--reduced .conf-Intro_title {
    margin-top: -177px;
  }
}
.conf-Intro.conf-Intro--reduced .conf-Intro__view {
  position: absolute;
  background-color: #8b6aac;
  text-align: center;
  height: 36px;
  line-height: 36px;
  top: auto;
  bottom: -36px;
  left: 50%;
  right: 0px;
  z-index: 60;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--reduced .conf-Intro__view {
    height: 50px;
    line-height: 50px;
    bottom: -50px;
  }
}
.conf-Intro.conf-Intro--reduced .conf-Intro__view a {
  color: #fff;
  position: relative;
}
@media print, screen and (min-width: 46.875em) {
  .conf-Intro.conf-Intro--reduced .conf-Intro__view a {
    font-size: 1.625rem;
  }
}

.conf-intro--text {
  padding: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-intro--text {
    padding: 6.25rem;
  }
}
.conf-intro--text p {
  max-width: 42.5rem;
  margin-left: auto;
  margin-right: auto;
}

.conf-sponsor {
  background-color: #f7f7f7;
  padding: 1.25rem;
  text-align: center;
}
@media print, screen and (min-width: 46.875em) {
  .conf-sponsor {
    padding: 3.75rem;
  }
}
.conf-sponsor p {
  font-size: 0.9375rem;
  color: #004990;
}
@media print, screen and (min-width: 46.875em) {
  .conf-sponsor p {
    font-size: 1.5rem;
  }
}

.conf-base .quotes-slider {
  padding: 1.25rem;
  background-color: #00a4b1;
  font-size: 1.125rem;
  color: #fff;
  text-align: center;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base .quotes-slider {
    padding: 4.375rem;
    font-size: 1.5rem;
  }
}
.conf-base .quotes-slider .orbit-wrapper {
  position: relative;
  max-width: 48.75rem;
  margin: auto;
  padding: 0;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base .quotes-slider .orbit-wrapper {
    padding: 0 5rem;
  }
}
.conf-base .quotes-slider ul {
  max-width: 42.5rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.conf-base .quotes-slider ul li {
  margin: 0;
  padding: 0;
  height: 100%;
}
.conf-base .quotes-slider ul li div {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}
.conf-base .quotes-slider ul li p {
  padding: 0;
  margin: 0;
  font-size: inherit;
}
.conf-base .quotes-slider ul li p:before {
  color: #fff;
  font-size: 1.5em;
  content: "“";
  position: relative;
}
.conf-base .quotes-slider ul li p:after {
  content: "”";
  font-size: 1.5em;
  line-height: 1em;
}
.conf-base .quotes-slider ul li:before {
  display: none;
}
.conf-base .quotes-slider .orbit-bullets button {
  cursor: pointer;
  display: inline-block;
  float: none;
  height: 12px;
  width: 12px;
  margin-right: 4px;
  border: 1px solid #fff;
  transition: opacity 0.5s;
  opacity: 1;
}
.conf-base .quotes-slider .orbit-bullets button.is-active {
  background: #fff;
}
.conf-base .quotes-slider .orbit-bullets button:hover {
  opacity: 0.6;
}

.twitter-block {
  background: #b21268;
  color: #fff;
  padding: 2.5rem 1.25rem;
  margin-bottom: 5rem;
  text-align: center;
}
.twitter-block:before {
  font-family: FontAwesome;
  content: "\f099";
  font-size: 3.125rem;
  text-align: center;
  width: 50px;
  height: 50px;
  line-height: 50px;
}
@media print, screen and (min-width: 46.875em) {
  .twitter-block {
    padding: 3.75rem 2.5rem;
  }
}
.twitter-block h3,
.twitter-block a {
  color: #ccffff;
}
.twitter-block a:hover {
  opacity: 0.6;
}
.twitter-block h3 {
  font-size: 1em;
  padding: 0px;
  margin: 1.25rem 0 0 0;
  font-weight: 400;
}
.twitter-block p {
  max-width: 25.625rem;
  margin: 0 auto 1.25rem auto;
}
@media print, screen and (min-width: 46.875em) {
  .twitter-block p {
    margin: 0 auto 2.5rem auto;
  }
}
.twitter-block a.all-tweets {
  color: #fff;
  transition: opacity 0.5s;
  display: inline-block;
  position: relative;
  padding-right: 1.25rem;
  transition: all 0.5s;
}
.twitter-block a.all-tweets:after {
  font-family: FontAwesome;
  content: "  \f105";
  font-size: 1.5em;
  line-height: 1em;
  position: absolute;
  right: 0;
  top: -1px;
  margin-right: 0px;
  transition: all 0.5s;
}
.twitter-block a.all-tweets:hover {
  opacity: 0.8;
}
.twitter-block a.all-tweets:hover:after {
  margin-right: -4px;
}

.booking {
  padding-top: 3.75rem;
}

.conf-booking,
.coloured-tabs {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
  text-align: center;
  /*ul.tabs {
    background-color: $medium-gray;
    border-bottom: none;
    margin-bottom: 0;
    padding:0;
    li {
      padding-right: 0;

    }
    .tabs-title {
      background-color: $conf-purple;
      text-align: center;
      position: relative;
      .session-attendance {
        position: absolute;
        top: 0px;
        background: #59c0c9;
        padding: 8px;
        left: 0px;
        font-size: 14px;
        color: #fff;
        width: 100%;
        transition: all 0.5s;

        &.attending {
          background: $green;
          color: #fff;
        }
      }
      a {
        color:#fff;
        padding: rem_calc(45 20 16 20);
        font-size: 1em;
        @include breakpoint(large) {
          padding: rem_calc(30 20 10 20);
        }
        &:hover {
          color:$dark-gray;
        }
      }
      > a[aria-selected='true'], a:hover {
        background: #fff;
        color: $dark-gray;
        strong {
          color: $conf-purple;
          &:before {
            content:">";
            display:inline-block;
            padding-right: 10px;
          }
        }
        &:nth-of-type(2n) strong {
          color: $rqa-orange;
        }
        &:nth-of-type(3n) strong {
          color: $rqa-pink;
        }
        &:nth-of-type(4n) strong {
          color: $rqa-blue;
        }
      }
      > a[aria-selected='true'] {
        strong {
          font-weight: 500;
        }
        @include breakpoint(large) {
          padding: rem_calc(25 20 16 20);
          .session-attendance {
            top:-10px;
          }
        }
      }
      strong {
        font-weight: 300;
        display:block;
        font-size: rem_calc(20);
        line-height: 1.4em;
        color:#fff;
        @include breakpoint(large) {
          font-size: rem_calc(26);
          line-height: 1.8em;
        }
      }
    }
  }

  .tabs-panel {
    padding:0;
    @include breakpoint(medium) {
      padding:1rem;
    }
  }

  .tabs-content {
    .tabs-content--date {
      color: $rqa-blue;
    }
    .tabs-content--heading {
      color: $conf-purple;
    }
    p, ul {
      @include breakpoint(medium) {
        font-size: rem_calc(20);
      }
    }
    h3 {
      font-size: rem_calc(26);
      margin-bottom: 0.4em;
      @include breakpoint(medium) {
        font-size: rem_calc(32);
        margin-bottom: 1em;
      }
    }
    h4 {
      font-size: rem_calc(24);
      font-weight: normal;
      margin:0px;
      @include breakpoint(medium) {
        margin:rem_calc( 0 0 10 0) ;
      }
    }
    .session_detail ul {
      list-style-type: disc;
      display: block;
      margin-left: 1em;
    }

    .session_detail ul li {
      display: list-item;


    }
  }
  */
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking,
.coloured-tabs {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .conf-booking,
.coloured-tabs {
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
  }
}
.conf-booking > .columns,
.coloured-tabs > .columns {
  padding: 0;
}
.conf-booking .conference-booking .text-right,
.coloured-tabs .conference-booking .text-right {
  text-align: right;
}
.conf-booking .conference-booking label,
.coloured-tabs .conference-booking label {
  position: relative;
  display: block;
  margin-bottom: 1rem;
  font-size: 0.9em;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .conference-booking label,
.coloured-tabs .conference-booking label {
    padding: 0.5em 2.625rem 0 1em;
    font-size: 1em;
    margin-bottom: 0;
    margin-top: 0.5rem;
  }
}
.conf-booking .conference-booking label i,
.coloured-tabs .conference-booking label i {
  font-style: normal;
}
.conf-booking .conference-booking input[type=checkbox],
.conf-booking .conference-booking input[type=radio],
.coloured-tabs .conference-booking input[type=checkbox],
.coloured-tabs .conference-booking input[type=radio] {
  display: none;
}
.conf-booking .conference-booking input[type=checkbox]:checked + .box:after,
.conf-booking .conference-booking input[type=radio]:checked + .box:after,
.coloured-tabs .conference-booking input[type=checkbox]:checked + .box:after,
.coloured-tabs .conference-booking input[type=radio]:checked + .box:after {
  opacity: 1;
}
.conf-booking .conference-booking .box,
.coloured-tabs .conference-booking .box {
  display: inline-block;
  box-sizing: content-box;
  width: 24px;
  height: 24px;
  transition: all 1.1s cubic-bezier(0.19, 1, 0.22, 1);
  border: #e9e9e9 solid 1px;
  background-color: #fff;
  vertical-align: middle;
  margin-left: 0.625rem;
  position: absolute;
  right: 0px;
  cursor: pointer;
}
.conf-booking .conference-booking .conf-booking--details .box,
.coloured-tabs .conference-booking .conf-booking--details .box {
  position: absolute;
  left: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .conference-booking .conf-booking--details .box,
.coloured-tabs .conference-booking .conf-booking--details .box {
    top: -3.6875rem;
    left: -0.625rem;
  }
}
.conf-booking .conference-booking .box:after,
.coloured-tabs .conference-booking .box:after {
  width: 90%;
  height: 40%;
  content: "";
  position: absolute;
  border-left: 7.5px solid;
  border-bottom: 7.5px solid;
  border-color: #dd5829;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg) translate3d(0, 0, 0);
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
  transition: all 1.1s cubic-bezier(0.19, 1, 0.22, 1);
  left: 10%;
  right: 0;
  opacity: 0;
  bottom: 50%;
  top: 0;
  margin: auto;
}
.conf-booking .row,
.coloured-tabs .row {
  max-width: 1200px;
  margin: auto;
}
.conf-booking h2.programme_heading,
.coloured-tabs h2.programme_heading {
  font-size: 1.375rem;
  padding: 1.125rem 1.875rem;
  background: #095058;
  color: white;
  text-align: center;
  cursor: pointer;
  margin: 0px;
  transition: opacity 0.5s;
  opacity: 1;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking h2.programme_heading,
.coloured-tabs h2.programme_heading {
    font-size: 1.875rem;
    padding: 1.125rem 1.875rem;
  }
}
.conf-booking h2.programme_heading.consertina-pink,
.coloured-tabs h2.programme_heading.consertina-pink {
  background: #a40475;
}
.conf-booking h2.programme_heading.consertina-teal,
.coloured-tabs h2.programme_heading.consertina-teal {
  background: #00a4b1;
}
.conf-booking h2.programme_heading.consertina-blue,
.coloured-tabs h2.programme_heading.consertina-blue {
  background: #004990;
}
.conf-booking h2.programme_heading.consertina-red,
.coloured-tabs h2.programme_heading.consertina-red {
  background: #cb0e34;
}
.conf-booking h2.programme_heading.consertina-orange,
.coloured-tabs h2.programme_heading.consertina-orange {
  background: #dd5829;
}
.conf-booking h2.programme_heading.consertina-dark-blue,
.coloured-tabs h2.programme_heading.consertina-dark-blue {
  background-color: #003a73;
}
.conf-booking h2.programme_heading.consertina-black,
.coloured-tabs h2.programme_heading.consertina-black {
  background-color: black;
}
.conf-booking h2.programme_heading.consertina-sage,
.coloured-tabs h2.programme_heading.consertina-sage {
  background-color: #8a996b;
}
.conf-booking h2.programme_heading.consertina-conf-purple,
.coloured-tabs h2.programme_heading.consertina-conf-purple {
  background: #8b6aac;
}
.conf-booking h2.programme_heading.consertina-conf-dark-green,
.coloured-tabs h2.programme_heading.consertina-conf-dark-green {
  background: #095058;
}
.conf-booking h2.programme_heading.consertina-conf-orange,
.coloured-tabs h2.programme_heading.consertina-conf-orange {
  background: #d18234;
}
.conf-booking h2.programme_heading.consertina-conf-light-green,
.coloured-tabs h2.programme_heading.consertina-conf-light-green {
  background: #a3b42e;
}
.conf-booking h2.programme_heading.consertina-conf-blue,
.coloured-tabs h2.programme_heading.consertina-conf-blue {
  background-color: #3e81a4;
}
.conf-booking h2.programme_heading.consertina-conf-brown,
.coloured-tabs h2.programme_heading.consertina-conf-brown {
  background-color: #72650b;
}
.conf-booking h2.programme_heading.consertina-conf-yellow,
.coloured-tabs h2.programme_heading.consertina-conf-yellow {
  background-color: #f1d50c;
  color: #72650b;
}
.conf-booking h2.programme_heading.consertina-conf-pink,
.coloured-tabs h2.programme_heading.consertina-conf-pink {
  background-color: #b21268;
}
.conf-booking h2.programme_heading.consertina-conf21-teal,
.coloured-tabs h2.programme_heading.consertina-conf21-teal {
  background: #09A890;
}
.conf-booking h2.programme_heading.consertina-conf21-purple,
.coloured-tabs h2.programme_heading.consertina-conf21-purple {
  background: #6E1661;
}
.conf-booking h2.programme_heading.consertina-conf21-yellow,
.coloured-tabs h2.programme_heading.consertina-conf21-yellow {
  background: #A28737;
}
.conf-booking h2.programme_heading.consertina-conf21-yellow,
.coloured-tabs h2.programme_heading.consertina-conf21-yellow {
  background: #A28737;
}
.conf-booking h2.programme_heading.consertina-conf22-mag,
.coloured-tabs h2.programme_heading.consertina-conf22-mag {
  background: #ED207A;
}
.conf-booking h2.programme_heading.consertina-conf22-green,
.coloured-tabs h2.programme_heading.consertina-conf22-green {
  background: #B2D235;
}
.conf-booking h2.programme_heading.consertina-conf22-orange,
.coloured-tabs h2.programme_heading.consertina-conf22-orange {
  background: #F15A22;
}
.conf-booking h2.programme_heading.consertina-conf22-light-orange,
.coloured-tabs h2.programme_heading.consertina-conf22-light-orange {
  background: #F9A01B;
}
.conf-booking h2.programme_heading.consertina-conf22-grey,
.coloured-tabs h2.programme_heading.consertina-conf22-grey {
  background: #707070;
}
.conf-booking h2.programme_heading span,
.coloured-tabs h2.programme_heading span {
  position: relative;
  padding: 0 2.875rem 0 0;
  display: inline-block;
}
@media print, screen and (min-width: 64em) {
  .conf-booking h2.programme_heading span,
.coloured-tabs h2.programme_heading span {
    min-width: 31.25rem;
    padding: 0 2.875rem;
  }
}
.conf-booking h2.programme_heading span:after,
.coloured-tabs h2.programme_heading span:after {
  font-family: FontAwesome;
  content: "\f107";
  font-size: 1em;
  text-align: center;
  width: 30px;
  height: 30px;
  line-height: 30px;
  transition: all 0.5s;
  position: absolute;
  color: #fff;
  top: 0;
  right: 0;
  z-index: 32;
  pointer-events: none;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking h2.programme_heading span:after,
.coloured-tabs h2.programme_heading span:after {
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
}
.conf-booking h2.programme_heading.open span:after,
.coloured-tabs h2.programme_heading.open span:after {
  content: "\f106";
}
.conf-booking h2.programme_heading:hover,
.coloured-tabs h2.programme_heading:hover {
  opacity: 0.8;
}
.conf-booking h2.programme_heading:hover span:after,
.coloured-tabs h2.programme_heading:hover span:after {
  top: 5px;
}
.conf-booking .programme_content,
.coloured-tabs .programme_content {
  position: relative;
  padding: 0 1.25rem;
}
.conf-booking .concertina-content .concertina-content__wrapper,
.coloured-tabs .concertina-content .concertina-content__wrapper {
  max-width: 56.25rem;
  padding: 1.25rem 0.625rem;
  font-size: 0.875rem;
  margin: auto;
  text-align: left;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .concertina-content .concertina-content__wrapper,
.coloured-tabs .concertina-content .concertina-content__wrapper {
    padding: 3.125rem 1.25rem;
    font-size: 1rem;
  }
}
.conf-booking .concertina-content table,
.coloured-tabs .concertina-content table {
  border: none;
  border-collapse: collapse;
}
.conf-booking .concertina-content table td,
.coloured-tabs .concertina-content table td {
  padding: 0.5em;
}
.conf-booking .day,
.coloured-tabs .day {
  margin-bottom: 10px;
  text-align: left;
  max-width: 62.5rem;
  margin: 0 auto 3.125rem auto;
}
.conf-booking .day .session-title,
.coloured-tabs .day .session-title {
  padding: 0.5rem 1.25rem;
}
.conf-booking .day .session-title h3,
.coloured-tabs .day .session-title h3 {
  color: #fff;
  padding: 0;
  margin: 0;
  font-weight: normal;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day .session-title h3,
.coloured-tabs .day .session-title h3 {
    font-size: 1.1875rem;
  }
}
.conf-booking .day .session-title h3 strong,
.coloured-tabs .day .session-title h3 strong {
  color: #fff;
  font-weight: normal;
  font-size: 1.375rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day .session-title h3 strong,
.coloured-tabs .day .session-title h3 strong {
    font-size: 1.75rem;
  }
}
.conf-booking .day .session-title h3 span,
.coloured-tabs .day .session-title h3 span {
  color: #fff;
  font-size: 1rem;
  font-weight: normal;
  padding-right: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day .session-title h3 span,
.coloured-tabs .day .session-title h3 span {
    font-size: 1.375rem;
  }
}
.conf-booking .day .session-title.attending-tab,
.coloured-tabs .day .session-title.attending-tab {
  position: relative;
}
.conf-booking .day .session-title.attending-tab:before,
.coloured-tabs .day .session-title.attending-tab:before {
  content: "";
  display: block;
  background-color: #00c300;
  width: 0.9375rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: -1.875rem;
}
.conf-booking .day .session_detail,
.coloured-tabs .day .session_detail {
  margin: 0.625rem;
  background: #fff;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day .session_detail,
.coloured-tabs .day .session_detail {
    margin: 0.625rem 1.875rem 1.875rem 1.875rem;
  }
}
.conf-booking .day.day1,
.coloured-tabs .day.day1 {
  background-color: #c4e6ea;
}
.conf-booking .day.day1 .day__title,
.coloured-tabs .day.day1 .day__title {
  background-color: #00a4b1;
}
.conf-booking .day.day1 .day__title h4,
.coloured-tabs .day.day1 .day__title h4 {
  color: #c4e6ea;
}
.conf-booking .day.day1 .session-title,
.coloured-tabs .day.day1 .session-title {
  background-color: #00a4b1;
}
.conf-booking .day.day1 .view_day_details,
.conf-booking .day.day1 .toggle_session_details,
.conf-booking .day.day1 .view_stream_details,
.coloured-tabs .day.day1 .view_day_details,
.coloured-tabs .day.day1 .toggle_session_details,
.coloured-tabs .day.day1 .view_stream_details {
  background: #37aebc;
}
.conf-booking .day.day1 .stream h3,
.conf-booking .day.day1 .stream h4,
.coloured-tabs .day.day1 .stream h3,
.coloured-tabs .day.day1 .stream h4 {
  color: #00a4b1;
}
.conf-booking .day.day2,
.coloured-tabs .day.day2 {
  background-color: #f1edf5;
}
.conf-booking .day.day2 .day__title,
.coloured-tabs .day.day2 .day__title {
  background-color: #b21268;
}
.conf-booking .day.day2 .session-title,
.coloured-tabs .day.day2 .session-title {
  background-color: #b21268;
}
.conf-booking .day.day2 .view_day_details,
.conf-booking .day.day2 .toggle_session_details,
.conf-booking .day.day2 .view_stream_details,
.coloured-tabs .day.day2 .view_day_details,
.coloured-tabs .day.day2 .toggle_session_details,
.coloured-tabs .day.day2 .view_stream_details {
  background: #d77bae;
}
.conf-booking .day.day2 .stream h3,
.conf-booking .day.day2 .stream h4,
.coloured-tabs .day.day2 .stream h3,
.coloured-tabs .day.day2 .stream h4 {
  color: #b21268;
}
.conf-booking .day.day3,
.coloured-tabs .day.day3 {
  background-color: #cfdddf;
}
.conf-booking .day.day3 .day__title,
.coloured-tabs .day.day3 .day__title {
  background-color: #095058;
}
.conf-booking .day.day3 .session-title,
.coloured-tabs .day.day3 .session-title {
  background-color: #095058;
}
.conf-booking .day.day3 .view_day_details,
.conf-booking .day.day3 .toggle_session_details,
.conf-booking .day.day3 .view_stream_details,
.coloured-tabs .day.day3 .view_day_details,
.coloured-tabs .day.day3 .toggle_session_details,
.coloured-tabs .day.day3 .view_stream_details {
  background: #49929a;
}
.conf-booking .day.day3 .stream h3,
.conf-booking .day.day3 .stream h4,
.coloured-tabs .day.day3 .stream h3,
.coloured-tabs .day.day3 .stream h4 {
  color: #095058;
}
.conf-booking .session_content,
.coloured-tabs .session_content {
  padding: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .session_content,
.coloured-tabs .session_content {
    padding: 1.25rem;
  }
}
.conf-booking .day__title,
.coloured-tabs .day__title {
  position: relative;
  padding: 0.625rem 0;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day__title,
.coloured-tabs .day__title {
    padding: 1rem 1.875rem;
  }
}
.conf-booking .day__title h3,
.coloured-tabs .day__title h3 {
  color: #fff;
  display: inline-block;
  font-weight: normal;
  cursor: pointer;
  margin: 0 0.625rem 0 1.25rem;
  font-size: 1.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day__title h3,
.coloured-tabs .day__title h3 {
    margin: 0 0.625rem 0 3.125rem;
    font-size: 2rem;
  }
}
.conf-booking .day__title h3 span,
.coloured-tabs .day__title h3 span {
  font-size: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day__title h3 span,
.coloured-tabs .day__title h3 span {
    font-size: 1.5rem;
  }
}
.conf-booking .day__title h4,
.coloured-tabs .day__title h4 {
  color: #fff;
  font-size: 1rem;
  margin: 0 0.625rem 0.625rem 1.25rem;
  font-weight: normal;
  display: block;
  cursor: pointer;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day__title h4,
.coloured-tabs .day__title h4 {
    display: inline-block;
    margin: 0 0.625rem 0 0;
    font-size: 1.375rem;
  }
}
.conf-booking .day__title label,
.coloured-tabs .day__title label {
  padding-left: 3.75rem;
  padding-right: 0.625rem;
  color: #fff;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .day__title label,
.coloured-tabs .day__title label {
    color: #58595b;
    position: absolute;
    padding-left: 0;
    left: 1.875rem;
    top: 4.75rem;
  }
}
.conf-booking .day__title.attending:before,
.coloured-tabs .day__title.attending:before {
  content: "";
  display: block;
  background-color: #00c300;
  width: 1.25rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: -1.875rem;
}
.conf-booking .stream,
.coloured-tabs .stream {
  border-bottom: 1px dashed #003a73;
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
}
.conf-booking .stream .text-right,
.coloured-tabs .stream .text-right {
  padding-top: 1.25rem;
}
.conf-booking .stream p,
.conf-booking .stream li,
.coloured-tabs .stream p,
.coloured-tabs .stream li {
  font-size: 0.875rem;
  margin-bottom: 0.5em;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .stream p,
.conf-booking .stream li,
.coloured-tabs .stream p,
.coloured-tabs .stream li {
    font-size: 1.125rem;
  }
}
.conf-booking .stream h4,
.coloured-tabs .stream h4 {
  font-weight: normal;
  font-size: 1.0625rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .stream h4,
.coloured-tabs .stream h4 {
    font-size: 1.5rem;
  }
}
.conf-booking .stream h3,
.coloured-tabs .stream h3 {
  cursor: pointer;
  margin-top: 0.625rem;
  font-size: 1.25rem;
  line-height: 1.4em;
  font-weight: normal;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .stream h3,
.coloured-tabs .stream h3 {
    font-size: 1.75rem;
  }
}
.conf-booking .stream label,
.coloured-tabs .stream label {
  padding-left: 1.875rem;
  padding-right: 0.625rem;
  line-height: 1.2em;
}
.conf-booking .stream .box,
.coloured-tabs .stream .box {
  right: auto;
  left: -0.625rem;
  top: 0;
  margin-left: 0;
  border: #a2a2a2 solid 1px;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .stream .box,
.coloured-tabs .stream .box {
    top: 0.5rem;
  }
}
.conf-booking .stream strong,
.coloured-tabs .stream strong {
  line-height: 1.8em;
}
.conf-booking .close_day_details,
.conf-booking .view_day_details,
.conf-booking .toggle_session_details,
.conf-booking .view_stream_details,
.coloured-tabs .close_day_details,
.coloured-tabs .view_day_details,
.coloured-tabs .toggle_session_details,
.coloured-tabs .view_stream_details {
  display: inline-block;
  background: #00a4b1;
  color: #fff;
  padding: 4px 8px;
  margin-top: 0.625rem;
  margin-right: -0.625rem;
  font-size: 1rem;
  transition: all 0.5s;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .close_day_details,
.conf-booking .view_day_details,
.conf-booking .toggle_session_details,
.conf-booking .view_stream_details,
.coloured-tabs .close_day_details,
.coloured-tabs .view_day_details,
.coloured-tabs .toggle_session_details,
.coloured-tabs .view_stream_details {
    margin-top: 1.25rem;
    margin-right: -0.9375rem;
    font-size: 1.125rem;
  }
}
.conf-booking .close_day_details:hover,
.conf-booking .view_day_details:hover,
.conf-booking .toggle_session_details:hover,
.conf-booking .view_stream_details:hover,
.coloured-tabs .close_day_details:hover,
.coloured-tabs .view_day_details:hover,
.coloured-tabs .toggle_session_details:hover,
.coloured-tabs .view_stream_details:hover {
  color: rgba(255, 255, 255, 0.5);
}
.conf-booking .additional_products,
.coloured-tabs .additional_products {
  display: none;
  text-align: left;
  max-width: 62.5rem;
  margin: 1.875rem auto 0.625rem auto;
  background: #c4e6ea;
}
.conf-booking .additional_products input,
.coloured-tabs .additional_products input {
  max-width: 3.125rem;
  display: inline-block;
  background: #fff;
}
.conf-booking .additional_products label,
.coloured-tabs .additional_products label {
  padding-right: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  .conf-booking .additional_products label,
.coloured-tabs .additional_products label {
    display: inline-block;
    padding-left: 1.625rem;
  }
}
.conf-booking .additional_products .box,
.coloured-tabs .additional_products .box {
  position: relative;
}
.conf-booking .additional_products h2,
.coloured-tabs .additional_products h2 {
  font-size: 2.25rem;
  font-weight: normal;
  margin: 0 0 0.625rem 0;
  background: #00a4b1;
  color: #fff;
  font-size: 1.625rem;
  padding: 0.625rem 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .additional_products h2,
.coloured-tabs .additional_products h2 {
    padding: 1.25rem 1.875rem;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .additional_products p,
.coloured-tabs .additional_products p {
    font-size: 1.125rem;
  }
}
.conf-booking .additional_products .additional_products__content,
.coloured-tabs .additional_products .additional_products__content {
  padding: 0.625rem 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .additional_products .additional_products__content,
.coloured-tabs .additional_products .additional_products__content {
    padding: 0.625rem 1.875rem;
  }
}
.conf-booking .next-button,
.coloured-tabs .next-button {
  margin: 1.25rem auto;
}
.conf-booking .twitter-block,
.coloured-tabs .twitter-block {
  margin-bottom: -3.75rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .conf-Intro,
.coloured-tabs .conf-Intro {
    margin-top: -5rem;
  }
}
.conf-booking .info-box,
.coloured-tabs .info-box {
  padding: 0.625rem 2.5rem 0.125rem 2.875rem;
  margin: 0.625rem 0 1em 0;
  position: relative;
  background-color: #e9e9e9;
  display: inline-block;
  min-height: 2.875rem;
  text-align: left;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .info-box,
.coloured-tabs .info-box {
    padding: 0.625rem 2.5rem 0.125rem 3.75rem;
  }
}
.conf-booking .info-box p,
.coloured-tabs .info-box p {
  font-size: 1rem;
  margin-bottom: 0.375rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .info-box p,
.coloured-tabs .info-box p {
    font-size: 1.125rem;
  }
}
.conf-booking .info-box:before,
.coloured-tabs .info-box:before {
  content: "";
  display: block;
  text-align: center;
  font-family: serif;
  font-style: italic;
  font-weight: 800;
  content: "i";
  font-size: 2em;
  line-height: 2rem;
  width: 2rem;
  height: 2rem;
  background-color: #dd5829;
  color: #fff;
  position: absolute;
  top: 0px;
  left: 0px;
}
@media print, screen and (min-width: 46.875em) {
  .conf-booking .info-box:before,
.coloured-tabs .info-box:before {
    line-height: 2.875rem;
    width: 2.875rem;
    height: 2.875rem;
  }
}
.conf-booking .info-box.error:before,
.coloured-tabs .info-box.error:before {
  content: "!";
  font-style: normal;
  background-color: #cb0e34;
}

.read-more-text {
  display: none;
  overflow: hidden;
}

.lazyload {
  transition: all 1s;
}

.fadeOut {
  opacity: 0;
}

.fadeIn {
  opacity: 1;
}

.conference-prices {
  padding-top: 1.25rem;
}
.conference-prices .conference-prices__day {
  border: #e9e9e9 solid 1px;
  margin-bottom: 2.5rem;
}
.conference-prices .conference-prices__day.conference-prices__day--delegate {
  margin-bottom: 0.625rem;
}
.conference-prices h2 {
  margin-top: 0px;
  margin-bottom: 0px;
  background-color: #dd5829;
  color: #fff;
  padding: 0.75rem;
  font-size: 1.5rem;
  font-weight: 400;
}
.conference-prices h3 {
  font-weight: 500;
  color: #58595b;
  padding: 0.625rem 0.625rem 0 0.625rem;
  margin: 0;
  line-height: 1.3em;
}
.conference-prices h3.reduced {
  font-size: 1.125rem;
}
.conference-prices p {
  padding: 0 0.625rem 0.75rem 0.625rem;
  margin: 0;
  line-height: 1.3em;
}
.conference-prices .conference-prices__grey {
  background-color: #e9e9e9;
}
.conference-prices .conference-prices__price {
  font-size: 1.625rem;
  font-weight: 500;
  color: #dd5829;
}
.conference-prices .conference-prices__price.reduced {
  font-size: 1.5rem;
}
.conference-prices .conference-prices__price.conference-prices__price--nopad {
  padding-bottom: 0;
  line-height: 1.2em;
}
.conference-prices .conference-prices__price.early span {
  font-size: 1.125rem;
  font-weight: 400;
}
.conference-prices .conference-prices__price .discount {
  font-size: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .conference-prices .conference-prices__price.early {
    font-size: 1.875rem;
  }
}
.conference-prices .conference-prices__cpd {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 46.875em) {
  .conference-prices .conference-prices__cpd {
    margin-top: -35px;
    position: relative;
    z-index: 10;
  }
}
@media print, screen and (min-width: 64em) {
  .conference-prices .conference-prices__cpd {
    text-align: right;
    margin-top: 0px;
    margin-bottom: -10px;
  }
}
@media screen and (min-width: 90em) {
  .conference-prices .conference-prices__cpd {
    margin-top: -35px;
    margin-right: -10px;
    margin-bottom: -20px;
  }
}
.conference-prices .conference-prices__cpd-text {
  color: #004990;
}
.conference-prices .conference-prices__discount {
  background: #cb0e34;
  color: #fff;
  padding: 0.5rem;
  max-width: 260px;
  margin: auto;
  -webkit-transform: rotate(-4deg);
      -ms-transform: rotate(-4deg);
          transform: rotate(-4deg);
  font-weight: 500;
}
.conference-prices .conference-prices__discount h4 {
  padding: 0;
  margin: 0;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 500;
}
.conference-prices .conference-prices__discount strong {
  font-size: 1.375rem;
  line-height: 1.4em;
}
.conference-prices .conference-prices__discount p {
  margin-bottom: 0px;
  padding-bottom: 3px;
}
.conference-prices .conference-prices__day--1day h2 {
  background-color: #00a4b1;
}
.conference-prices .conference-prices__day--1day .conference-prices__price {
  color: #00a4b1;
}
@media print, screen and (min-width: 46.875em) {
  .conference-prices .conference-prices__day--1day {
    margin-top: 7.5rem;
  }
}
.conference-prices .conference-prices__day--2day h2 {
  background-color: #a40475;
}
.conference-prices .conference-prices__day--2day .conference-prices__price {
  color: #a40475;
}
@media print, screen and (min-width: 46.875em) {
  .conference-prices .conference-prices__day--2day {
    margin-top: 7.5rem;
  }
}
.conference-prices span.each {
  font-size: 1.125rem;
}
.conference-prices .small-print {
  font-size: 0.6875rem;
}
.conference-prices .small-print.small-print--delegate {
  margin-bottom: 2.5rem;
}

.conf-basket {
  display: none;
  position: absolute;
  top: 6.25rem;
  background: #dedede;
  width: 18.75rem;
  z-index: 100;
  text-align: left;
  padding: 0.625rem 1.25rem 1.875rem 1.25rem;
  transition: all 0.25s ease-out;
  right: -18.75rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-basket {
    display: block;
  }
}
.conf-basket:before {
  background: #3e81a4;
  content: "";
  display: block;
  width: 90%;
  height: 5px;
  position: absolute;
  top: -5px;
  left: 0;
}
.conf-basket.is-fixed {
  position: fixed;
  top: 6.25rem;
}
.conf-basket.out {
  right: 0;
}
.conf-basket.out.hint {
  right: 0;
}
.conf-basket.hint {
  right: -18.125rem;
}
.conf-basket h3 {
  font-weight: normal;
  margin-bottom: 0;
  margin-top: 0.625rem;
}
.conf-basket h4 {
  color: #58595b;
  font-weight: 400;
  margin-bottom: 0;
  margin-top: 0.3125rem;
  font-size: 1.125rem;
  display: none;
}
.conf-basket .conf-basket__close {
  position: absolute;
  top: 0px;
  right: 0px;
  background: #afafaf;
  padding: 0.5rem;
  color: #fff;
  font-size: 0.75rem;
  transition: all 0.25s;
}
.conf-basket .conf-basket__close:after {
  font-family: FontAwesome;
  content: " \f105";
  font-size: 0.6875rem;
  position: relative;
  bottom: -1px;
  margin-left: 4px;
}
.conf-basket .conf-basket__close:hover {
  background: #3e81a4;
}
.conf-basket .conf-basket__session.selected h4 {
  display: block;
}
.conf-basket p {
  margin-bottom: 0;
  display: none;
  font-size: 1rem;
}
.conf-basket p.selected {
  display: block;
}
.conf-basket p.conf-basket__message {
  margin-top: 1.875rem;
}

.conf-basket__content {
  min-height: 9.375rem;
}

.conf-basket__button {
  font-size: 1.375rem;
  position: absolute;
  background-color: #3e81a4;
  padding: 0.625rem 1rem;
  min-height: 2.5rem;
  min-width: 8.75rem;
  color: #fff;
  left: -5.6875rem;
  top: 2.75rem;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.conf-basket__day1, .conf-basket__day2, .conf-basket__day3 {
  border-bottom: dashed 1px #58595b;
  padding-bottom: 0.625rem;
  display: none;
}
.conf-basket__day1.selected, .conf-basket__day2.selected, .conf-basket__day3.selected {
  display: block;
}

.conf-basket__day1 h3, .conf-basket__day1 p {
  color: #d18234;
}

.conf-basket__day2 h3, .conf-basket__day2 p {
  color: #8b6aac;
}

.conf-basket__day3 h3, .conf-basket__day3 p {
  color: #3e81a4;
}

.conf-basket__additional {
  padding-top: 0.625rem;
}

.conf-basket__summary {
  border-bottom: dashed 1px #58595b;
  padding: 0.625rem 0;
}
.conf-basket__summary strong {
  display: inline-block;
  text-align: right;
  width: 49%;
}
.conf-basket__summary span {
  display: inline-block;
  width: 49%;
}

.conf-basket__total {
  border-bottom: dashed 1px #58595b;
  padding: 0.625rem 0;
  margin-bottom: 0.625rem;
  font-weight: bold;
}
.conf-basket__total strong {
  display: inline-block;
  text-align: right;
  width: 49%;
  font-weight: bold;
}
.conf-basket__total span {
  display: inline-block;
  width: 49%;
}

.content .signup-box {
  display: none;
  background: #dd5829;
  position: fixed;
  z-index: 200;
  top: 400px;
  right: 0px;
  color: #fff;
  padding: 1rem 1.25rem 1.25rem 1.25rem;
  border-radius: 10px 0px 0px 10px;
  box-shadow: 0px 0px 18px 0px rgba(0, 0, 0, 0.5);
}
@media print, screen and (min-width: 64em) {
  .content .signup-box {
    display: block;
  }
}
.content .signup-box h4, .content .signup-box p {
  color: #fff;
  font-size: 1rem;
  margin: 0 0 0.4em 0;
}
.content .signup-box a.button {
  font-size: 1rem;
  padding: 0.375rem 0.625rem;
}

.content .pop-up-content {
  display: none;
  width: 100%;
}
.content .pop-up-content.visible {
  position: absolute !important;
  top: 20px;
  left: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 10 !important;
}
.content .pop-up-content .pop-up-container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 50rem;
  background: #fff;
  z-index: 130;
  border-radius: 1.125rem;
  box-shadow: 0px 0px 23px 2px rgba(0, 0, 0, 0.55);
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  .content .pop-up-content .pop-up-container {
    width: 80%;
    padding: 1.875rem;
  }
}
.content .pop-up-content .pop-up__close {
  font-size: 1.25rem;
  position: absolute !important;
  right: 0;
  top: 0;
  padding: 10px 15px;
  font-weight: bold;
  cursor: pointer;
}
.content .pop-up-content .pop-up__close i {
  font-size: 1.875rem;
  color: #00a4b1;
}

.pop-up-box {
  display: none;
}
.pop-up-box.visible {
  position: fixed !important;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1000 !important;
  width: 100%;
  height: 100vh;
}
.pop-up-box .pop-up-box__container {
  position: relative;
  overflow: scroll;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 50rem;
  max-height: calc(100vh - 100px);
  background: #fff;
  height: auto;
  border-radius: 1.125rem;
  box-shadow: 0px 0px 23px 2px rgba(0, 0, 0, 0.55);
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  .pop-up-box .pop-up-box__container {
    width: 80%;
    padding: 1.875rem;
  }
}
@media (max-height: 860px) {
  .pop-up-box .pop-up-box__container h1 {
    font-size: 1.625rem;
  }
}
@media (max-height: 860px) {
  .pop-up-box .pop-up-box__container p {
    font-size: 1rem;
  }
}
.pop-up-box .pop-up-box__close {
  font-size: 1.25rem;
  position: absolute;
  right: 0;
  top: 0;
  padding: 10px 15px;
  font-weight: bold;
  cursor: pointer;
}
.pop-up-box .pop-up-box__close i {
  font-size: 1.875rem;
  color: #00a4b1;
}

.events-filter-form {
  background: #f7f7f7;
  padding: 0.625rem 1.25rem 1.875rem 1.25rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .events-filter-form {
    margin-bottom: 3em;
    padding: 1.875rem 1.25rem 3.75rem 1.25rem;
  }
}
.events-filter-form .events-filter {
  background: transparent;
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
}
.events-filter-form .events-filter label {
  color: #00a4b1;
  font-weight: bold;
  font-size: 1.625rem;
}
.events-filter-form .events-filter select {
  background: #00a4b1;
  border: none;
  background-image: url("../img/down-arrow.e55d1a5277cc.png");
  background-repeat: no-repeat;
  background-position: 90% center;
  padding: 0.625rem;
  height: 3.75rem;
  color: #ffffff;
  font-weight: bold;
}
@media print, screen and (min-width: 46.875em) {
  .events-filter-form .events-filter .select-wrap {
    width: 16.875rem;
    padding-right: 1.875rem;
  }
}
@media print, screen and (min-width: 46.875em) {
  .events-filter-form .events-filter .events-filters__box {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
}
.events-filter-form .events-filter__heading {
  color: #00a4b1;
  margin-bottom: 0.5em;
}
@media print, screen and (min-width: 46.875em) {
  .events-filter-form .events-filter__heading {
    margin-bottom: 1em;
  }
}
.events-filter-form .events-filter__heading strong {
  color: #004990;
  font-size: 2rem;
}
.events-filter-form .events-filters__free-search {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.events-filter-form .events-filter__keywords {
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.events-filter-form .events-filter__keywords div {
  width: 100%;
}
.events-filter-form .events-filter__keywords input {
  border: none;
  background: #ffffff;
  padding: 0.625rem;
  height: 3.75rem;
  margin-bottom: 0;
}
.events-filter-form .events-filter__keywords .form__button {
  background: #00a4b1;
  padding: 1.125rem;
  height: 3.75rem;
  margin-left: 0.9375rem;
  margin-top: 0;
  width: 10rem;
  text-align: left;
  font-size: 1.4375rem;
  line-height: 1em;
}
.events-filter-form .events-filter__keywords .form__button i {
  line-height: 0.7em;
}
.events-filter-form .events-filter__keywords .form__button i.fa-close {
  font-size: 1.75rem;
  line-height: 0.8em;
}
.events-filter-form .events-filter__keywords .form__button:hover {
  background: #004990;
}
@media print, screen and (min-width: 64em) {
  .events-filter-form .events-filter__keywords .form__button:nth-child(2) {
    margin-left: 1.875rem;
  }
}

#event_results {
  padding: 0 0.625rem;
}
#event_results h3 {
  margin-top: 0;
  font-size: 1.5625rem;
  color: #00a4b1;
}
#event_results p {
  margin-bottom: 0;
  line-height: 1.4em;
}
#event_results .list-item {
  margin-bottom: 0.5em;
  border-bottom: #707070 dotted 1px;
}
#event_results .list-columns__link {
  font-size: 1.4375rem;
  padding: 0.75rem 1.5625rem;
}
#event_results .list-columns__link i {
  font-size: 1.2em;
  line-height: 1em;
}
#event_results .list-item--headings {
  border-bottom: #707070 solid 1px;
  display: none;
}
@media print, screen and (min-width: 64em) {
  #event_results .list-item--headings {
    display: block;
  }
}
#event_results .list-item--headings h3 {
  color: #004990;
}
#event_results .list-item--headings p {
  color: #004990;
  font-weight: bold;
}

.event-detail {
  padding-top: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail {
    padding-top: 0;
  }
}
.event-detail .event-detail__heading {
  margin-bottom: 1em;
}
.event-detail .event-detail__heading.has-accreditation {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.event-detail .event-detail__heading.has-accreditation .event-detail__accred {
  max-width: 2.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail .event-detail__heading.has-accreditation .event-detail__accred {
    max-width: none;
  }
}
.event-detail .event-detail__links {
  display: block;
  list-style-type: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.event-detail .event-detail__links li {
  padding-left: 0;
}
.event-detail .event-detail__links li:before {
  display: none;
}
.event-detail .event-detail__links a {
  background: #00a4b1;
  font-weight: bold;
  color: #ffffff;
  padding: 0.3125rem 0.625rem 1rem 0.625rem;
  display: block;
  margin: 0 0.3125rem 0.3125rem 0;
  position: relative;
}
.event-detail .event-detail__links a:hover {
  color: rgba(255, 255, 255, 0.5);
}
.event-detail .event-detail__links a:hover:after {
  border-bottom-color: rgba(255, 255, 255, 0.5);
  border-right-color: rgba(255, 255, 255, 0.5);
}
@media print, screen and (min-width: 46.875em) {
  .event-detail .event-detail__links a {
    max-width: none;
    padding: 0.625rem 1.25rem 1.875rem 1.25rem;
    margin: 0 0.375rem 0.375rem 0;
  }
}
.event-detail .event-detail__links a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0.5625rem;
  left: 50%;
  margin-left: -0.3125rem;
  width: 0.625rem;
  height: 0.625rem;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border-bottom: #ffffff solid 2px;
  border-right: #ffffff solid 2px;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail .event-detail__links a:after {
    border-bottom: #ffffff solid 3px;
    border-right: #ffffff solid 3px;
    bottom: 1.0625rem;
    width: 0.75rem;
    height: 0.75rem;
    margin-left: -0.375rem;
  }
}
.event-detail #dates-fees {
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #dates-fees {
    margin-bottom: 3em;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail #dates-fees {
    margin-bottom: 6em;
  }
}
.event-detail #dates-fees .block-button {
  background: #00a4b1;
  margin-bottom: 0.3125rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #dates-fees.dates-fees__has-image {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .event-detail #dates-fees.dates-fees__has-image div {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
  }
}
@media screen and (min-width: 75em) {
  .event-detail #dates-fees.dates-fees__has-image {
    margin-right: -6.25rem;
  }
}
.event-detail #dates-fees .dates-fees__image {
  padding-top: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #dates-fees .dates-fees__image img {
    padding-left: 3.125rem;
  }
}
.event-detail #information {
  background: #f7f7f7;
  padding: 1.875rem 1.25rem 1.875rem 1.25rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #information {
    padding: 3.75rem 0 3.75rem 0;
    margin-bottom: 3em;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail #information {
    margin-bottom: 5em;
  }
}
.event-detail #information .information__container {
  padding: 0 1.25rem 0 1.25rem;
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
}
.event-detail #tutors .tutors-container {
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.event-detail #tutors .tutor-items {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #tutors .tutor-items {
    padding-top: 1.25rem;
  }
}
.event-detail #tutors .tutor-item {
  position: relative;
  max-width: 18.5625rem;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  .event-detail #tutors .tutor-item {
    margin-bottom: 5em;
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}
.event-detail #tutors .tutor-item__pop {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.event-detail #programme {
  background: #f7f7f7;
  padding: 1.875rem 1.25rem 1.875rem 1.25rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #programme {
    padding: 3.75rem 0 3.75rem 0;
    margin-bottom: 3em;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail #programme {
    margin-bottom: 5em;
  }
}
.event-detail #programme .programme-container {
  padding: 0 1.25rem 0 1.25rem;
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #programme .programme-item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.event-detail #programme .programme-item > h3 {
  min-width: 10rem;
  color: #00a4b1;
}
.event-detail #programme .programme-item h4 {
  color: #58595b;
}
@media print, screen and (min-width: 64em) {
  .event-detail #programme .programme-item h4 {
    font-size: 1.4375rem;
  }
}
.event-detail #programme .programme-item p {
  line-height: 1.4em;
}
.event-detail #programme + .fullwidth-image-slider {
  margin-top: -1em;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #programme + .fullwidth-image-slider {
    margin-top: -3em;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail #programme + .fullwidth-image-slider {
    margin-top: -5em;
  }
}
.event-detail .fullwidth-image-slider + #extra-info {
  margin-top: -1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail .fullwidth-image-slider + #extra-info {
    margin-top: -3.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail .fullwidth-image-slider + #extra-info {
    margin-top: -5.625rem;
  }
}
.event-detail #extra-info {
  background: #f7f7f7;
  padding: 1.875rem 1.25rem 0 1.25rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #extra-info {
    padding: 3.75rem 0 0 0;
    margin-bottom: 3em;
  }
}
@media print, screen and (min-width: 64em) {
  .event-detail #extra-info {
    margin-bottom: 5em;
  }
}
.event-detail #extra-info .extra-info__container {
  padding: 0 1.25rem 0 1.25rem;
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
}
.event-detail #extra-info .tabs {
  margin: 1em -3.125rem 0 -3.125rem;
  padding: 0;
  width: calc(100% + 100px);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #extra-info .tabs {
    margin: 2em 0 0 0;
    width: auto;
  }
}
.event-detail #extra-info .tabs .tabs-title {
  display: block;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #extra-info .tabs .tabs-title {
    min-width: 20rem;
    padding-left: 1.875rem;
    padding-right: 1.875rem;
  }
}
.event-detail #extra-info .tabs .tabs-title > a[aria-selected=true] {
  color: #004990;
}
.event-detail #extra-info .tabs-panel {
  padding: 1.875rem 1.25rem 0 1.25rem;
  display: none;
  max-width: 84.75rem;
  margin-left: auto;
  margin-right: auto;
}
.event-detail #extra-info .tabs-panel.is-active {
  display: block;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail #extra-info .extra-info-item.has-image {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .event-detail #extra-info .extra-info-item.has-image div {
    width: 100%;
  }
  .event-detail #extra-info .extra-info-item.has-image div:nth-child(2) {
    text-align: right;
    width: auto;
    max-width: 50%;
    padding-left: 3.75rem;
    padding-bottom: 1.875rem;
    padding-top: 1.875rem;
  }
}
.event-detail #extra-info .extra-info-item h3 {
  color: #00a4b1;
}
@media print, screen and (min-width: 64em) {
  .event-detail #extra-info .extra-info-item h3 {
    font-size: 1.625rem;
    margin-bottom: 1em;
  }
}
.event-detail .cpd-points, .event-detail .development-level {
  display: inline-block;
  background: #f7f7f7;
  font-size: 1.4375rem;
  padding: 1.25rem 1.875rem;
  min-width: 16.625rem;
  margin-right: 0.625rem;
  margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  .event-detail .cpd-points, .event-detail .development-level {
    padding: 1.875rem 2.5rem;
    min-width: 16.625rem;
  }
}
.event-detail .cpd-points h3, .event-detail .development-level h3 {
  color: #00a4b1;
  margin-top: 0;
  font-size: 2rem;
}
.event-detail .cpd-points p, .event-detail .development-level p {
  margin-bottom: 0;
}
.event-detail .block-button {
  font-size: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .event-detail .block-button {
    font-size: 1.875rem;
  }
}

.sidebar__date-selection {
  background: #f7f7f7;
  padding: 1.25rem;
  font-size: 1.375rem;
}
.sidebar__date-selection label {
  font-size: 1.375rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 3.125rem;
  position: relative;
}
.sidebar__date-selection input[type=radio] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  -moz-appearance: none;
       appearance: none;
  /* For iOS < 15 */
  background-color: #CBCBCB;
  /* Not removed via appearance */
  margin: 0;
  position: absolute;
  left: 0;
  top: 0.3em;
  font: inherit;
  color: #0a0a0a;
  width: 1.15em;
  height: 1.15em;
  border-radius: 0;
  -webkit-transform: translateY(-0.075em);
      -ms-transform: translateY(-0.075em);
          transform: translateY(-0.075em);
  display: -ms-grid;
  display: grid;
  place-content: center;
}
.sidebar__date-selection input[type=radio]::before {
  content: "";
  width: 0.625rem;
  height: 1rem;
  border-radius: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  /* Windows High Contrast Mode */
  border-right: #58595b solid 4px;
  border-bottom: #58595b solid 4px;
}
.sidebar__date-selection input[type=radio]:checked::before {
  -webkit-transform: scale(1) rotate(45deg);
      -ms-transform: scale(1) rotate(45deg);
          transform: scale(1) rotate(45deg);
}
.sidebar__date-selection input[type=radio]:focus {
  background: #00a4b1;
}

@media print, screen and (min-width: 64em) {
  .sidebar__item--details--event h3.sidebar__title {
    font-size: 2rem;
    margin-bottom: 0.8em;
  }
}

.event-booking .block-button {
  background: #00a4b1;
  margin-bottom: 0;
}

.child_event_details strong, .child_event_details h3 {
  color: #00a4b1;
}
.child_event_details h3 {
  font-size: 1.5rem;
  margin-top: 0;
}
@media print, screen and (min-width: 64em) {
  .child_event_details h3 {
    font-size: 1.625rem;
  }
}
.child_event_details p {
  line-height: 1.3em;
}
@media print, screen and (min-width: 64em) {
  .child_event_details p {
    font-size: 1.375rem;
  }
}

.events-form label {
  font-size: 1.375rem;
  line-height: 1.2em;
}
.events-form textarea[rows], .events-form select {
  margin-top: 0.625rem;
  margin-bottom: 1.25rem;
}
.events-form #id_delegate_materials {
  text-align: center;
}

.conf-curve_mask {
  display: none;
}

.conf-base__header-top {
  background: #004990;
  padding: 1.25rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: 3;
}

.conf-base__header-mask {
  position: absolute;
  top: 0;
  right: -0.875rem;
  left: -0.125rem;
  z-index: 3;
  height: 28.8125rem;
  width: 69.5rem;
}
@media screen and (min-width: 75em) {
  .conf-base__header-mask {
    width: 97.375rem;
    height: 40.5rem;
  }
}
.conf-base__header-mask svg {
  width: 100%;
  height: 100%;
  display: block;
}

.conf-base__header-restraint {
  height: 28.125rem;
  width: 69.1875rem;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 75em) {
  .conf-base__header-restraint {
    width: 96.875rem;
    height: 39.875rem;
  }
}
.conf-base__header-restraint img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.conf-base__header-curves {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 68.5625rem;
}
@media screen and (min-width: 75em) {
  .conf-base__header-curves {
    width: 96.25rem;
    height: 39.625rem;
  }
}
.conf-base__header-curves svg {
  height: 100%;
  width: 100%;
  display: block;
}

.conf-base__header-video {
  position: relative;
  height: 26.25rem;
  z-index: 4;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__header-video {
    height: auto;
  }
}
.conf-base__header-video .video-wrapper {
  position: absolute;
  display: block;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  height: 0;
  padding-bottom: 56.25%;
}
@media screen and (min-width: 75em) {
  .conf-base__header-video .video-wrapper {
    width: 103.125rem;
    height: 58rem;
    padding-bottom: 0;
  }
}
.conf-base__header-video .video-wrapper iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  min-height: 100%;
}

.conf-base__squares {
  background: #e9e9e9;
  margin-bottom: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__squares {
    margin-bottom: 2.5rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base__squares {
    margin-bottom: 3.75rem;
  }
}

.conf-base__squares-boxs {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.conf-base__squares-boxs > div {
  width: 50%;
}

.conf-base__square:nth-child(2) .button {
  background: #5ce1e6;
}
.conf-base__square:nth-child(3) .button {
  background: #004990;
  color: #ffffff;
}
.conf-base__square:nth-child(4) .button {
  background: #58595b;
  color: #ffffff;
}
.conf-base__square a.button {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .conf-base__square a.button {
    padding: 1.625rem 1.25rem !important;
  }
}

.conf-base__square-image {
  height: 10rem;
  width: 100%;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__square-image {
    height: 17.5rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base__square-image {
    height: 19.375rem;
  }
}
.conf-base__square-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media print, screen and (min-width: 46.875em) {
  .conf-base__squares-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 100rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__squares-container > div {
    width: 50%;
  }
}
.conf-base__squares-container > div.conf-base__squares-text {
  padding: 1.875rem 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__squares-container > div.conf-base__squares-text {
    padding: 2.5rem 1.875rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base__squares-container > div.conf-base__squares-text {
    padding: 3.75rem 5rem 2.5rem 5rem;
  }
}
.conf-base__squares-container > div.conf-base__squares-text h3 {
  font-size: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__squares-container > div.conf-base__squares-text h3 {
    font-size: 1.875rem;
  }
}
.conf-base__squares-container > div.conf-base__squares-text p {
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  .conf-base__squares-container > div.conf-base__squares-text p {
    font-size: 1.125rem;
  }
}
.conf-base__squares-container > div.conf-base__squares-text p.conf-base__sponsor {
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-size: 1.125rem;
  font-weight: 600;
  font-family: "din-2014", sans-serif;
  color: #0a0a0a;
}
@media screen and (min-width: 75em) {
  .conf-base__squares-container > div.conf-base__squares-text p.conf-base__sponsor {
    margin-top: 2em;
  }
}
.conf-base__squares-container > div.conf-base__squares-text img {
  max-width: 50%;
}

.conf-base__squares + .conf-base__prices {
  margin-top: -1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__squares + .conf-base__prices {
    margin-top: -2.5rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base__squares + .conf-base__prices {
    margin-top: -3.75rem;
  }
}

.conf-base .conf-base__prices {
  padding: 3.75rem 1.25rem 3.75rem 1.25rem;
  text-align: center;
  position: relative;
  color: #ffffff;
  background-image: url("../img/conferencepage/prices-background.4d43bff81ca4.jpg");
  margin-bottom: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base .conf-base__prices {
    margin-bottom: 2.5rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base .conf-base__prices {
    margin-bottom: 3.75rem;
    padding: 6.25rem 1.25rem;
  }
}
.conf-base .conf-base__prices:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 73, 144, 0.8);
}
.conf-base .conf-base__prices * {
  position: relative;
  z-index: 2;
}
.conf-base .conf-base__prices h2 {
  color: #5ce1e6;
  margin-bottom: 0.1em;
}
.conf-base .conf-base__prices p {
  font-size: 1rem;
}

.conf-base__prices-container {
  max-width: 43.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-container {
    margin-bottom: 2em;
  }
}

.conf-base__prices-row {
  margin-bottom: 1.5em;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-row {
    margin-bottom: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.conf-base__prices-cell {
  padding: 0.125rem 0.625rem;
  text-align: left;
  font-family: "din-2014", sans-serif;
  font-weight: bold;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.conf-base__prices-cell strong {
  line-height: 1.2em;
  font-size: 1.1875rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-cell strong {
    font-size: 1.5625rem;
  }
}
.conf-base__prices-cell:first-child {
  margin-bottom: 0.5em;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-cell:first-child {
    width: 50%;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-cell:nth-child(2) {
    width: 21%;
  }
}
.conf-base__prices-cell:nth-child(3) {
  color: #5ce1e6;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__prices-cell:nth-child(3) {
    width: 29%;
  }
}

.conf-base__header-main--shallow {
  overflow: hidden;
  padding-right: 0 !important;
}
.conf-base__header-main--shallow:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1.875rem;
  display: block;
  background: #e9e9e9;
  z-index: 2;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__header-main--shallow:after {
    width: 30%;
    height: 3.125rem;
  }
}
.conf-base__header-main--shallow h1 {
  font-size: 1.875rem;
}
@media print, screen and (min-width: 64em) {
  .conf-base__header-main--shallow h1 {
    font-size: 1.875rem !important;
  }
}
@media screen and (min-width: 90em) {
  .conf-base__header-main--shallow h1 {
    font-size: 2.625rem !important;
  }
}
@media print, screen and (min-width: 64em) {
  .conf-base__header-main--shallow .conf-base__conf-logo {
    height: 11.25rem;
  }
}
@media screen and (min-width: 116.875em) {
  .conf-base__header-main--shallow .conf-base__conf-logo {
    height: 11.25rem !important;
  }
}
.conf-base__header-main--shallow .conf-base__header-video {
  padding-bottom: 30.3125rem;
  z-index: 3;
  position: relative;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__header-main--shallow .conf-base__header-video:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3.125rem;
    display: block;
    background: #e9e9e9;
    z-index: 2;
  }
}
.conf-base__header-main--shallow .row {
  padding-bottom: 0 !important;
}
.conf-base__header-main--shallow .conf-base__header-restraint {
  height: 28.125rem;
  width: 69.1875rem;
}
@media screen and (min-width: 75em) {
  .conf-base__header-main--shallow .conf-base__header-restraint {
    width: 96.875rem;
  }
}
@media screen and (min-width: 75em) {
  .conf-base__header-main--shallow .conf-base__header-curves {
    top: -9.375rem;
  }
}
.conf-base__header-main--shallow .conf-base__header-mask {
  z-index: -1;
}
@media screen and (min-width: 75em) {
  .conf-base__header-main--shallow .conf-base__header-mask {
    top: -9.375rem;
  }
}
.conf-base__header-main--shallow .conf-base__header-restraint {
  z-index: -2;
}
.conf-base__header-main--shallow .medium-3 {
  padding-bottom: 2.5rem;
}
@media print, screen and (min-width: 46.875em) {
  .conf-base__header-main--shallow .medium-3 {
    padding-bottom: 3.75rem;
    min-height: 26.5625rem !important;
  }
}
@media screen and (min-width: 116.875em) {
  .conf-base__header-main--shallow .medium-3 {
    padding-bottom: 6.25rem !important;
  }
}

body.conf-base {
  /*
  .conf-base__header {
    background-image: url("../img/conferencepage/conf-banner.5c0aaf28de1a.jpg");
    background-size: cover;
    background-position: center;
    position: relative;
    min-height: rem-calc(250);
  }

  .conf_base__logo-column {
    text-align: left;
  }
    */
  /*
  .conf-curve_mask {
    position: absolute;
    bottom: 0;
    z-index: 1;
    display: block;

    svg {
      display: block;
      width: 100%;
      height: 16%;
    }
    &.conf-curve_mask--one {
      width: 160%;
      right: -60%;
      bottom: -1px;
      svg {
        @include breakpoint(large) {
          height: rem-calc(186);
        }
      }
    }
    &.conf-curve_mask--two {
      top: 0;
      bottom: auto;
      width: 120%;
      left: -20%;
      svg {
        height: rem-calc(30);
        @include breakpoint(medium) {
          height: rem-calc(40);
        }
        @include breakpoint(large) {
          height: rem-calc(70);
        }
        @include breakpoint(xlarge) {
          height: rem-calc(100);
        }
      }
    }
    &.conf-curve_mask--three {
      width: 110%;
      left: -10%;

      svg {
        height: rem-calc(20);
        @include breakpoint(medium) {
          height: rem-calc(40);
        }
        @include breakpoint(large) {
          height: rem-calc(60);
        }
      }
    }
    &.conf-curve_mask--four {
      width: 100%;
      left: 0;
      top: 0;
      bottom: auto;
      svg {
        height: rem-calc(15);
        @include breakpoint(medium) {
          height: rem-calc(20);
        }
        @include breakpoint(large) {
          height: rem-calc(30);
        }
      }
    }
    &.conf-curve_mask--five {
      width: 100%;
      left: 0;

      svg {
        height: rem-calc(20);
        @include breakpoint(medium) {
          height: rem-calc(15);
        }
        @include breakpoint(large) {
          height: rem-calc(25);
        }
      }
    }
    &.conf-curve_mask--last {
      bottom: auto;
      top: 100%;
      width: 100%;
      svg {
        height: rem-calc(10);

        @include breakpoint(medium) {
          height: rem-calc(20);
        }
        @include breakpoint(large) {
          height: rem-calc(30);
        }
        path {
          fill: #f7f7f7;
        }
      }
    }
  }
    */
}
body.conf-base .wrapper {
  padding-top: 1.25rem;
}
body.conf-base p {
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base p {
    font-size: 1.125rem;
  }
}
body.conf-base h1 {
  font-family: "din-2014", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  color: #ea592d;
  margin-bottom: 0.6em;
  font-size: 1.625rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base h1 {
    font-size: 2.25rem;
  }
}
body.conf-base h2 {
  font-family: "din-2014", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  color: #003a73;
  margin-bottom: 0.6em;
  font-size: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base h2 {
    font-size: 2.25rem;
  }
}
body.conf-base h3 {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  margin-bottom: 0.6em;
  padding-top: 0.6em;
  text-transform: uppercase;
  color: #003a73;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base h3 {
    font-size: 1.5rem;
  }
}
body.conf-base h3 strong {
  color: #dd5829;
}
body.conf-base h4 {
  font-family: "din-2014", sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  margin-bottom: 0.6em;
  padding-top: 0.6em;
  text-transform: uppercase;
  color: #00a4b1;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base h4 {
    font-size: 1.25rem;
  }
}
body.conf-base strong {
  font-weight: 600;
}
body.conf-base .conf-base__cart {
  margin: 0;
  text-align: right;
  display: none;
  position: absolute;
  top: 0.625rem;
  right: 3.75rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-base__cart {
    position: relative;
    display: none;
    top: 0;
    right: 0;
  }
}
body.conf-base .conf-base__cart a {
  color: #ffffff;
  display: inline-block;
  padding: 0 0.875rem 0 0.25rem;
  font-size: 1rem;
  font-family: "din-2014", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
}
body.conf-base .conf-base__cart .fa {
  color: #ffffff;
}
body.conf-base .main__nav {
  padding-top: 0.375rem;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .main__nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media print, screen and (min-width: 64em) {
  body.conf-base .main__nav {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
}
body.conf-base .main__nav li {
  padding-bottom: 0;
  position: relative;
}
body.conf-base .main__nav a {
  color: #ffffff;
  font-size: 1.125rem;
  font-family: "din-2014", sans-serif;
  font-weight: 900;
  display: block;
  text-transform: uppercase;
  opacity: 1;
  margin: 0;
  padding: 0 0.75rem !important;
  display: inline-block;
}
body.conf-base .main__nav a:before, body.conf-base .main__nav a:after {
  display: none !important;
}
body.conf-base .main__nav a:hover {
  color: #5ce1e6;
  border-bottom: none;
}
body.conf-base .main__nav li ul.is-dropdown-submenu {
  background: rgba(0, 73, 144, 0.8);
  min-width: 18.75rem;
  border: 0;
  padding: 2.25rem 0 1.25rem 0;
}
body.conf-base .main__nav li ul.is-dropdown-submenu li {
  border-bottom: none;
  padding: 5px 0 5px 10px;
  margin: 0 0 0 0;
  position: relative;
  display: block;
  line-height: 1.2em;
  /*&:before {
    content: "\f104 ";
    font-family: FontAwesome;
    font-size: rem-calc(24);
    color: $rqa-pink;
    display: block;
    position: absolute;
    left: 0;
    top: -2px;
  }*/
}
body.conf-base .main__nav li ul.is-dropdown-submenu li a {
  color: #fff;
}
body.conf-base .main__nav li ul.is-dropdown-submenu li a:hover {
  background: transparent;
  color: #5ce1e6;
}
body.conf-base .main__nav .nav1 a {
  width: auto;
  font-family: "din-2014", sans-serif;
  opacity: 1;
  overflow: initial;
}
body.conf-base .main__nav .nav1 a:hover {
  color: #fff;
}
body.conf-base .main__nav .nav1 a:before {
  display: none;
}
body.conf-base .header {
  position: relative;
  background: transparent;
}
body.conf-base .header .menu-icon {
  top: 1.5rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .header .menu-icon {
    display: none;
  }
}
body.conf-base .header .menu-icon::after {
  background: #00a4b1;
  box-shadow: 0 12px 0 #00a4b1, 0 24px 0 #00a4b1;
}
body.conf-base .header .row {
  max-width: 91.25rem;
  padding-bottom: 0.625rem;
}
body.conf-base .header__main {
  background: transparent;
  /*
    .conf__logo {
      display: inline-block;
      position: relative;
      margin-top: rem-calc(10);
      z-index: 2;
      margin-bottom: rem-calc(20);
      @include breakpoint(medium) {
        margin-left: rem-calc(20);
        margin-top: rem-calc(20);
        margin-bottom: rem-calc(180);
      }
      @include breakpoint(xlarge) {
        margin-left: rem-calc(60);
        margin-top: rem-calc(40);
        margin-bottom: rem-calc(180);
      }
      svg {
        position: relative;
        z-index: 2;
        width: rem-calc(190);
        height: rem-calc(100);
        @include breakpoint(medium) {
          width: rem-calc(190);
          height: rem-calc(90);
        }
        @include breakpoint(large) {
          width: rem-calc(220);
          height: rem-calc(130);
        }
        @include breakpoint(xlarge) {
          width: auto;
          height: auto;
        }
      }

      &:before {
        content: "";
        display: block;
        width: rem-calc(200);
        height: rem-calc(200);
        background: rgb(255, 255, 255);
        background: radial-gradient(
          circle,
          rgba(255, 255, 255, 1) 0%,
          rgba(255, 255, 255, 0) 70%
        );
        background-size: contain;
        z-index: 1;
        position: absolute;
        left: rem-calc(-70);
        opacity: 0.7;
        margin: auto;
        top: rem-calc(-90);
        transform: scale(1, 0.5);
      }
    }
    */
}
body.conf-base .header__main .rqa__logo {
  position: relative;
  margin-top: 1.25rem;
  margin-left: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .header__main .rqa__logo {
    margin-left: 0;
  }
}
body.conf-base .header__main .rqa__logo svg,
body.conf-base .header__main .rqa__logo img {
  width: 6.25rem;
  height: 4.375rem;
}
@media screen and (min-width: 75em) {
  body.conf-base .header__main .rqa__logo svg,
body.conf-base .header__main .rqa__logo img {
    margin-left: 0;
  }
}
body.conf-base .conf-base__header-main.header__main {
  position: relative;
  /*&:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: rem-calc(140);
    width: 100%;
    background: rgb(0, 123, 189);
    background: linear-gradient(
      180deg,
      rgba(0, 123, 189, 1) 0%,
      rgba(0, 123, 189, 1) 20%,
      rgba(0, 123, 189, 0) 100%
    );
  }*/
}
body.conf-base .conf-base__header-main.header__main h1 {
  font-size: 1.875rem;
  text-transform: none;
  margin-bottom: 0;
  margin-top: 1em;
  color: #0a0a0a;
  line-height: 1.2em;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main h1 {
    font-size: 2.625rem;
  }
}
body.conf-base .conf-base__header-main.header__main h2 {
  font-size: 1.25rem;
  color: #0a0a0a;
  line-height: 1.2em;
  margin-bottom: 0;
  font-weight: 400;
  text-transform: none;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main h2 {
    font-size: 1.5rem;
  }
}
body.conf-base .conf-base__header-main.header__main h3 {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1em;
  color: #004990;
  margin-bottom: 0;
  text-transform: none;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main h3 {
    font-size: 1.5rem;
  }
}
body.conf-base .conf-base__header-main.header__main h4 {
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1em;
  color: #0a0a0a;
  text-transform: none;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main h4 {
    font-size: 1.3125rem;
  }
}
body.conf-base .conf-base__header-main.header__main h5 {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1em;
  color: #ea592d;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main h5 {
    font-size: 1.3125rem;
  }
}
body.conf-base .conf-base__header-main.header__main .conf-base__conf-logo {
  width: auto;
  height: 9.375rem;
  margin-left: -1.25rem;
  margin-bottom: -0.625rem;
  margin-top: 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-base__header-main.header__main .conf-base__conf-logo {
    position: absolute;
    bottom: -0.625rem;
    left: -1.25rem;
    margin-left: 0;
    margin-bottom: 0;
    height: 7.5rem;
    margin-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main .conf-base__conf-logo {
    height: 11.25rem;
  }
}
@media screen and (min-width: 116.875em) {
  body.conf-base .conf-base__header-main.header__main .conf-base__conf-logo {
    height: 17.875rem;
  }
}
body.conf-base .conf-base__header-main.header__main .medium-3 {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  float: none;
  position: relative;
  z-index: 4;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-base__header-main.header__main .medium-3 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    float: left;
    min-height: 28.8125rem;
    padding-bottom: 8.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-base__header-main.header__main .medium-3 {
    padding-bottom: 11.875rem;
    min-height: 41.5rem;
  }
}
@media screen and (min-width: 116.875em) {
  body.conf-base .conf-base__header-main.header__main .medium-3 {
    padding-bottom: 19.375rem;
  }
}
body.conf-base .conf-base__header-main.header__main .medium-9 {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  float: none;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-base__header-main.header__main .medium-9 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    float: right;
  }
}
body.conf-base .conf-base__header-main.header__main .row {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-base__header-main.header__main .row {
    display: block;
    max-width: none;
  }
}
body.conf-base .row {
  max-width: 91.25rem;
}
body.conf-base .row:first-child {
  position: relative;
  z-index: 2;
}
body.conf-base .content {
  max-width: 54.375rem;
  margin: auto;
  z-index: 3;
  padding-left: 1.875rem;
  padding-right: 1.875rem;
}
body.conf-base .conf-intro {
  position: relative;
  z-index: 2;
  background-color: #e9e9e9;
  padding: 5rem 1.875rem 5rem 1.875rem;
  margin-bottom: 3.125rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-intro {
    margin-bottom: 4.375rem;
    padding: 4.375rem 1.875rem 4.375rem 1.875rem;
  }
}
body.conf-base .conf-intro * {
  position: relative;
  z-index: 3;
}
body.conf-base .conf-intro .conf-intro__wrapper {
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  max-width: 54.375rem;
  margin: auto;
}
body.conf-base .conf-intro + .content .conf-programme {
  margin-top: -3.125rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-intro + .content .conf-programme {
    margin-top: -4.375rem;
  }
}
body.conf-base .conf-intro--text {
  position: relative;
  z-index: 6;
  padding: 0 1.875rem 1.25rem 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-intro--text {
    padding: 0 1.875rem 3.125rem 1.875rem;
  }
}
body.conf-base .conf-intro--text img {
  height: auto !important;
}
body.conf-base .conf-Intro__countdown {
  text-align: center;
}
body.conf-base .conf-Intro__countdown > div {
  color: #ffffff;
  font-size: 1.125rem;
  line-height: 1.2em;
  font-family: "din-2014", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  padding: 0 0.625rem 0 1.25rem;
}
body.conf-base .conf-Intro__countdown > div strong {
  font-weight: 900;
  text-transform: uppercase;
  color: #5ce1e6;
  font-size: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-Intro__countdown {
    text-align: right;
  }
  body.conf-base .conf-Intro__countdown > div {
    font-size: 1.125rem;
  }
  body.conf-base .conf-Intro__countdown > div strong {
    font-size: 1.875rem;
  }
}
body.conf-base .footer {
  background: #004990;
  padding: 3.75rem 0.625rem 1.875rem 0.625rem;
  position: relative;
  z-index: 4;
  color: #fff;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .footer {
    padding: 5rem 0.625rem 1.875rem 1.25rem;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .footer {
    padding: 7.5rem 0.625rem 1.875rem 1.25rem;
  }
}
body.conf-base .footer * {
  position: relative;
  z-index: 2;
}
body.conf-base .footer .conf__logo--footer {
  display: block;
  width: 9.375rem;
  margin-bottom: 1.875rem;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .footer .conf__logo--footer {
    margin-left: 0;
    margin-right: 0;
    margin-top: -1.875rem;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .footer .conf__logo--footer {
    width: 14.25rem;
    margin-top: -3.125rem;
  }
}
body.conf-base .footer .footer__links {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .footer .footer__links {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  body.conf-base .footer .footer__links li {
    width: 50%;
  }
  body.conf-base .footer .footer__links li a {
    text-transform: uppercase;
  }
}
body.conf-base .footer .footer__social {
  margin: 0;
  text-align: center;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .footer .footer__social {
    text-align: right;
  }
}
body.conf-base .footer .footer__social a i {
  font-size: 34px;
}
body.conf-base .footer .footer-copyright {
  text-align: center;
  padding-top: 1.25rem;
  margin: 0 0.25rem 0 0;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .footer .footer-copyright {
    text-align: right;
  }
}
body.conf-base a.button {
  background: #ea592d;
  color: #fff;
  font-family: "din-2014", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1.25rem;
  text-align: center;
  display: inline-block;
  padding: 0.5em 1em;
}
@media screen and (min-width: 75em) {
  body.conf-base a.button {
    padding: 0.6em 3em;
  }
}
body.conf-base a.button:hover {
  background: #00a4b1;
  color: #fff;
}
body.conf-base .quotes-slider {
  background: #f7f7f7;
  background-image: url("../img/conferencepage/prices-background.4d43bff81ca4.jpg");
  position: relative;
  z-index: 5;
  margin-bottom: 6.25rem;
  margin-top: 5rem;
  padding: 5rem 1.25rem 5rem 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .quotes-slider {
    margin-top: 7.5rem;
    margin-bottom: 11.25rem;
    padding: 6.25rem 1.25rem 6.25rem 1.25rem;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .quotes-slider {
    margin-top: 9.375rem;
    margin-bottom: 15.625rem;
  }
}
body.conf-base .quotes-slider:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 73, 144, 0.8);
}
body.conf-base .quotes-slider * {
  position: relative;
  z-index: 2;
}
body.conf-base .quotes-slider ul {
  list-style-type: none;
}
body.conf-base .quotes-slider ul li p {
  color: #ffffff;
  font-weight: 500;
}
body.conf-base .quotes-slider ul li p:before, body.conf-base .quotes-slider ul li p:after {
  position: absolute;
  color: #5ce1e6;
  font-size: 3em;
  line-height: 0.5em;
  top: -0.25em;
  padding-right: 0.9375rem;
}
@media print, screen and (min-width: 64em) {
  body.conf-base .quotes-slider ul li p:before, body.conf-base .quotes-slider ul li p:after {
    font-size: 4em;
  }
}
body.conf-base .quotes-slider ul li p:after {
  top: auto;
  bottom: -0.5em;
  padding-left: 0.9375rem;
}
body.conf-base .quotes-slider .orbit-bullets {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body.conf-base .quotes-slider .orbit-bullets button {
  border: none;
  background: #dd5829;
}
body.conf-base .quotes-slider .orbit-bullets button.is-active {
  background: #00a4b1;
}
body.conf-base .fullwidth-image-slider {
  position: relative;
  margin-top: 0;
}
body.conf-base .fullwidth-image-slider li {
  height: 0;
  padding-bottom: 78%;
}
body.conf-base .fullwidth-image-slider .orbit-previous {
  left: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .fullwidth-image-slider .orbit-previous {
    top: calc(50% + 50px);
  }
}
body.conf-base .fullwidth-image-slider .orbit-previous i {
  margin-right: 0.25rem;
  margin-bottom: 0.125rem;
}
body.conf-base .fullwidth-image-slider .orbit-next {
  right: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .fullwidth-image-slider .orbit-next {
    top: 50%;
  }
}
body.conf-base .fullwidth-image-slider .orbit-next i {
  margin-left: 0.25rem;
  margin-bottom: 0.125rem;
}
body.conf-base .fullwidth-image-slider .orbit-next,
body.conf-base .fullwidth-image-slider .orbit-previous {
  font-size: 2.5rem;
  line-height: 1em;
  width: 2.5rem;
  height: 2.5rem;
  color: #ffffff;
  opacity: 1;
  transition: opacity 0.5s;
  background-color: #ea592d;
  border-radius: 50%;
  border: #ea592d solid 2px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
}
body.conf-base .fullwidth-image-slider .orbit-next:hover,
body.conf-base .fullwidth-image-slider .orbit-previous:hover {
  opacity: 0.5;
}
body.conf-base .fullwidth-image-slider .orbit-bullets {
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body.conf-base .fullwidth-image-slider .orbit-bullets button {
  border: #00a4b1 solid 1px;
  margin-left: 0.25rem;
}
body.conf-base .fullwidth-image-slider .orbit-bullets button.is-active {
  background: #00a4b1;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .fullwidth-image-slider .orbit-bullets {
    z-index: 5;
  }
  body.conf-base .fullwidth-image-slider .orbit-bullets button {
    border: #ffffff solid 1px;
  }
  body.conf-base .fullwidth-image-slider .orbit-bullets button.is-active {
    background: #ffffff;
  }
}
body.conf-base .twitter-block {
  position: relative;
  background: #f7f7f7;
  color: #00a4b1;
  padding: 5rem 1.25rem 5rem 1.25rem;
  margin: 5rem 0 5rem 0;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .twitter-block {
    padding: 6.25rem 1.25rem 6.25rem 1.25rem;
    margin: 8.75rem 0 6.25rem 0;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .twitter-block {
    margin: 7.5rem 0 7.5rem 0;
    padding: 6.875rem 1.25rem 6.25rem 1.25rem;
  }
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .twitter-block .medium-6 {
    width: 33.33%;
  }
}
body.conf-base .twitter-block .row * {
  position: relative;
  z-index: 2;
}
body.conf-base .twitter-block a {
  color: #00a4b1;
}
body.conf-base .image-carousel--wide {
  padding-top: 0;
  padding-bottom: 0;
}
body.conf-base .conf-overview {
  position: relative;
  z-index: 2;
  background-color: #f7f7f7;
  margin: 0 0 5rem 0;
  padding-top: 5.625rem;
  padding-bottom: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-overview {
    margin: 0 0 5rem 0;
    padding-top: 6.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  body.conf-base .conf-overview {
    margin: 0 0 6.25rem 0;
    padding-top: 11.875rem;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .conf-overview {
    margin: 0 0 7.5rem 0;
    padding-top: 12.5rem;
    padding-bottom: 3.75rem;
  }
}
body.conf-base .conf-overview .conf-intro--text * {
  position: relative;
  z-index: 3;
}
body.conf-base .conf-speakers {
  position: relative;
  z-index: 5;
  background-color: #ea592d;
  margin: 9.375rem 0 5rem 0;
  padding: 1.875rem 1.25rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-speakers {
    margin: 6.25rem 0 6.25rem 0;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .conf-speakers {
    margin: 9.375rem 0 7.5rem 0;
    padding: 1.875rem 0;
  }
}
body.conf-base .conf-speakers .row {
  max-width: 73.5rem;
}
body.conf-base .conf-speakers .columns {
  padding: 0;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-speakers .columns p {
    padding-right: 1.875rem;
  }
}
body.conf-base .conf-speakers .columns a.button {
  background: #004990;
  width: 100%;
}
body.conf-base .conf-speakers .columns:nth-child(2) h3 {
  background: #004990;
  color: #ffffff;
}
body.conf-base .conf-speakers .columns:nth-child(3) h3 {
  background: #ffffff;
}
body.conf-base .conf-speakers .columns:nth-child(4) h3 {
  background: #58595b;
  color: #ffffff;
}
body.conf-base .conf-speakers * {
  position: relative;
  z-index: 3;
}
body.conf-base .conf-speakers .conf-speakers__image {
  width: 100%;
  height: 15.875rem;
  background-size: cover;
  background-position: center top;
  margin: 0 auto;
}
body.conf-base .conf-speakers h2 {
  text-align: center;
  margin-bottom: 0.6em;
  color: #ffffff;
}
body.conf-base .conf-speakers h3 {
  font-weight: 900;
  padding: 0.625rem 1.25rem 0.5rem 1.25rem;
  color: #003a73;
  background: #5ce1e6;
  width: 100%;
}
body.conf-base .conf-speakers p {
  color: #ffffff;
  font-size: 1rem;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .conf-speakers p {
    margin-bottom: 1.6em;
  }
}
body.conf-base .last-wide {
  min-height: 1.25rem;
}
body.conf-base .last-wide .twitter-block {
  margin: 7.5rem 0 0 0;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .last-wide .twitter-block {
    margin: 12.5rem 0 0 0;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .last-wide .twitter-block {
    margin: 18.75rem 0 0 0;
  }
}
body.conf-base .last-wide .quotes-slider {
  margin-bottom: 0;
  margin-top: 5rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .last-wide .quotes-slider {
    margin-top: 7.5rem;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 75em) {
  body.conf-base .last-wide .quotes-slider {
    margin-top: 9.375rem;
    margin-bottom: 0;
  }
}
body.conf-base .last-wide .conf-speakers {
  margin: 9.375rem 0 0 0;
  padding-top: 1.875rem;
}
@media print, screen and (min-width: 46.875em) {
  body.conf-base .last-wide .conf-speakers {
    margin: 6.25rem 0 0 0;
  }
}
body.conf-base .conference-product h3 {
  padding-top: 0;
}

body.conf-microsite-home.conf-base .conf-base__header {
  min-height: 21.875rem;
}
@media print, screen and (min-width: 64em) {
  body.conf-microsite-home.conf-base .conf-base__header {
    min-height: 15.625rem;
  }
}
@media screen and (min-width: 75em) {
  body.conf-microsite-home.conf-base .conf-base__header {
    min-height: 15.625rem;
  }
}
body.conf-microsite-home.conf-base .header__main {
  /*.conf__logo {
    @include breakpoint(large) {
      // margin-top: rem-calc(30);
    }
  }*/
}
body .content .conf-programme ul.tabs {
  border-bottom: none;
  padding-left: 0;
  padding-right: 0;
  max-width: 83.375rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  background: transparent;
}
@media print, screen and (min-width: 46.875em) {
  body .content .conf-programme ul.tabs {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
body .content .conf-programme ul.tabs li.tabs-title {
  width: 100%;
  margin-bottom: 1px;
}
@media print, screen and (min-width: 64em) {
  body .content .conf-programme ul.tabs li.tabs-title {
    width: auto;
    margin-bottom: 0;
  }
}
body .content .conf-programme ul.tabs li.tabs-title a {
  display: block;
  font-size: 1.0625rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media screen and (min-width: 75em) {
  body .content .conf-programme ul.tabs li.tabs-title a {
    font-size: 1.375rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

body .conf-programme {
  margin-bottom: 2.5rem;
  background: #e9e9e9;
}
body .conf-programme .tabs-content {
  background: #5ce1e6;
}
body .conf-programme .tabs-panel {
  display: none;
}
@media print, screen and (min-width: 46.875em) {
  body .conf-programme .tabs-panel {
    padding-top: 2.5rem;
  }
}
body .conf-programme .tabs-panel.is-active {
  max-width: 83.375rem;
  background: #5ce1e6;
  margin-left: auto;
  margin-right: auto;
  display: block !important;
}
body .conf-programme .tabs-title {
  background: #c8c8c8;
  color: #0a0a0a;
}
body .conf-programme .tabs-title.is-active a {
  background: #5ce1e6;
  color: #004990;
}
body .conf-programme .tabs-title a {
  color: #0a0a0a;
  font-size: 1rem;
  font-weight: bold;
}
body .conf-programme .tabs-title a:hover {
  background: #e9e9e9;
  color: #58595b;
}

body .conf-sessions {
  overflow: hidden;
}

body .conf-sessions__heading {
  background: #004990;
  padding: 0.5rem 1rem 0.5rem 1rem;
  border-top-left-radius: 0.625rem;
  border-top-right-radius: 0.625rem;
}
body .conf-sessions__heading h2 {
  font-size: 1.25rem;
  text-transform: initial;
  color: #ffffff;
  font-weight: bold;
}

body .conf-sessions__wrap {
  background: #e9e9e9;
  border-radius: 0.625rem;
  position: relative;
}
body .conf-sessions__wrap.has-type {
  padding-bottom: 3em;
}
body .conf-sessions__wrap h2,
body .conf-sessions__wrap h3 {
  font-size: 1.25rem;
  text-transform: initial;
  font-weight: bold;
  margin: 0 0 0.1875rem 0;
}

body .conf-sessions__session {
  padding: 0.75rem 1rem 0.125rem 1rem;
}
body .conf-sessions__session.has-topic {
  padding-bottom: 2.75rem;
}
body .conf-sessions__session.is-featured {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
body .conf-sessions__session.is-featured img.conf-sessions__speakerimage {
  margin-right: 0.625rem;
  margin-bottom: 0.625rem;
}
body .conf-sessions__session.is-featured .conf-sessions__speaker-name {
  font-weight: bold;
}
body .conf-sessions__session h2,
body .conf-sessions__session h3 {
  color: #004990;
  font-size: 1.25rem;
}
body .conf-sessions__session p {
  font-size: 1rem;
  line-height: 1.2em;
}

body .conf-sessions__container {
  margin-top: 0.625rem;
  background: #ffffff;
  margin-bottom: 0.625rem;
  border-radius: 1.5625rem;
  padding: 0.625rem 0.625rem;
  border-radius: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  body .conf-sessions__container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0.9375rem;
  }
}
body .conf-sessions__container .conf-sessions__wrap {
  margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  body .conf-sessions__container .conf-sessions__wrap {
    margin-left: 0.625rem;
    margin-bottom: 0;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
  }
}
@media print, screen and (min-width: 64em) {
  body .conf-sessions__container .conf-sessions__wrap:first-child {
    margin-left: 0;
  }
}

body .conf-sessions__speaker {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.375rem;
}
body .conf-sessions__speaker p {
  margin: 0;
  line-height: 1.2em;
}
body .conf-sessions__speaker img {
  width: 2.25rem;
  height: 2.25rem;
  margin-right: 0.625rem;
}

body .conf-sessions__time {
  background: #ffffff;
  color: #0a0a0a;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  padding: 0.5rem 1rem;
  margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 64em) {
  body .conf-sessions__time {
    margin-bottom: 0;
  }
}
body .conf-sessions__time p {
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  body .conf-sessions__time p {
    font-size: 1.5rem;
  }
}

body .conf-sessions__duration {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
body .conf-sessions__duration img {
  margin-right: 0.5rem;
}

body .conf-sessions__pop-up {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

body .conf-sessions__type {
  background: #c8c8c8;
  color: #0a0a0a;
  font-weight: bold;
  padding: 0.5rem 1rem;
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom-right-radius: 0.625rem;
}

/* body.conf-microsite-home {
  .conf-base__header {
    min-height: rem-calc(400);
    @include breakpoint(medium) {
      min-height: rem-calc(500);
    }
    @include breakpoint(large) {
      min-height: rem-calc(600);
    }
    @include breakpoint(xlarge) {
      min-height: rem-calc(720);
    }
  }
  .header {
    .conf-base__header-main {
      position: relative;
      min-height: rem-calc(400);
      margin-bottom: rem-calc(40);
      @include breakpoint(medium) {
        min-height: rem-calc(500);
        margin-bottom: rem-calc(80);
      }
      @include breakpoint(large) {
        min-height: rem-calc(600);
        margin-bottom: rem-calc(110);
      }
      @include breakpoint(xlarge) {
        min-height: rem-calc(780);
      }

      .rqa__logo {
        position: relative;
        margin-top: rem-calc(20);
      }
      .conf__logo {
        width: 240px;
        @include breakpoint(medium) {
          top: 24%;
          left: 18%;
          right: auto;
          width: auto;
        }
        svg {
          position: relative;
          z-index: 2;
          width: 240px;
          @include breakpoint(medium) {
            width: 360px;
          }
          @include breakpoint(large) {
            width: auto;
          }
        }
        &:before {
          content: "";
          width: rem-calc(200);
          display: block;
          height: rem-calc(200);
          background: rgb(255, 255, 255);
          background: radial-gradient(
            circle,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0) 70%
          );
          background-size: contain;
          z-index: 1;
          position: absolute;
          left: rem-calc(-80);
          right: 50%;
          transform: scale(1, 50%);
          top: rem-calc(-80);
          opacity: 0.7;
        }
      }
      .main__logo {
        padding-bottom: 3em;
        @include breakpoint(medium) {
          padding-bottom: 6em;
        }
      }
    }
  }
  .conf-overview {
    //padding-bottom:rem-calc(80);
    .conf-intro--text p {
      max-width: none;
    }
    @include breakpoint(medium) {
      div.medium-6:first-of-type {
        width: 38%;
      }
      div.medium-6:last-of-type {
        width: 58%;
      }
    }
  }
}
*/
@media print {
  .header__top {
    display: none;
  }
  .promoBanner a .fa {
    display: none;
  }
  ul.main__nav.menu {
    display: none;
  }
  .header .header__main .main__search.search {
    display: none;
  }
  .crumbs {
    display: none;
  }
  .footer__bottom {
    display: none;
  }
  .socials {
    display: none;
  }
  #cookie-bar {
    display: none;
  }
  .footer__logo:after, .header .header__main .main__logo:after {
    display: none;
  }
  .sidebar ul.sidebar__nav {
    display: none;
  }
  .content ul.tabs {
    display: none;
  }
  a.block-button {
    display: none;
  }
  .extend-left:before, .block-extend--left:before, .block-extend--right:before {
    display: none;
  }
  .home-featured {
    display: none;
  }
  .orbit, .about-stats {
    display: none;
  }
  section.home-bottom a:after {
    display: none;
  }
  .recommendedProducts a:after {
    display: none;
  }
  .home-form {
    display: none;
  }
  .google_translate_element {
    display: none;
  }
  ul.tabs.tabs--filter {
    display: none;
  }
  ul.list-columns--teal li a.list-columns__link:after {
    display: none;
  }
  .page-top--tall, .block-list .block-list__image {
    display: none;
  }
  .tabs-content .tabs-panel {
    display: block;
  }
  .home-about, .home-bottom {
    padding: 0px;
  }
  .header .header__main .main__logo img {
    border: #004990 solid 15px;
    width: 150px;
  }
  .block-list, .page-main--list.smallTitles .columns .block-list {
    height: auto;
  }
  .block-list .block-list__price {
    position: relative;
    padding: 0px;
  }
  .mapContent {
    display: block !important;
  }
  .content .content__border .regRoadmap .mapStage button.block-button, .content .content__border .regRoadmap .mapStage h2 span {
    display: none;
  }
  .extend-to-sidebar:before, .extend-right:after {
    background: none;
  }
  .footer__top img {
    border: #004990 solid 15px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCJfZ2xvYmFsLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NwaW4uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZmxpY2tpdHkvZGlzdC9mbGlja2l0eS5jc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2suc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2hvbWVwYWdlLnNjc3MiLCJjb21wb25lbnRzL19hYm91dC5zY3NzIiwiY29tcG9uZW50cy9fbGlzdC1jb2x1bW5zLnNjc3MiLCJjb21wb25lbnRzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvX3Byb2R1Y3QtZGV0YWlsLnNjc3MiLCJjb21wb25lbnRzL19yZWd1bGF0b3J5X3JvYWRtYXAuc2NzcyIsImNvbXBvbmVudHMvX2Nvb2tpZWJhci5zY3NzIiwiY29tcG9uZW50cy9fdXNlcmFkbWluLnNjc3MiLCJjb21wb25lbnRzL190YWJzLnNjc3MiLCJjb21wb25lbnRzL19wcm9tby1iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvX3JlbmV3YWxiYXIuc2NzcyIsImNvbXBvbmVudHMvX2ZlZWRiYWNrLnNjc3MiLCJjb21wb25lbnRzL19jb25mZXJlbmNlLnNjc3MiLCJjb21wb25lbnRzL19jb25mZXJlbmNlLWJhc2tldC5zY3NzIiwiY29tcG9uZW50cy9fam9pbi1wb3B1cC5zY3NzIiwiY29tcG9uZW50cy9fcG9wdXAuc2NzcyIsImNvbXBvbmVudHMvX2dsb2JhbC1wb3B1cC5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnRzLWZpbHRlci5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnRzLXJlc3VsdHMuc2NzcyIsImNvbXBvbmVudHMvX2V2ZW50LWRldGFpbHMuc2NzcyIsImNvbXBvbmVudHMvX2V2ZW50LWJvb2suc2NzcyIsImNvbmZlcmVuY2UvX2Jhc2Uuc2NzcyIsIl9wcmludG92ZXJpZGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUFBO0FDQUE7RUFDRSw2QkFBQTtDRlFEO0FHa0pLO0VEM0pOO0lBR0ksNEJBQUE7R0ZVRDtDQUNGOztBRVBEO0VBQ0UsbUJBQUE7RUFDQSxvQkFBQTtDRlVEO0FFVEM7RUFDRSx1QkFBQTtDRldIO0FFUkM7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0NGVUg7QUdpSUs7RUQ3SUo7SUFJSSxtQkFBQTtHRllIO0NBQ0Y7QUc0SEs7RUQ3SUo7SUFPSSxxQkFBQTtHRmNIO0NBQ0Y7QUVYQztFQUNFLGtCQUFBO0NGYUg7QUVYQztFQUNFLGVFK0JPO0VGOUJQLDhCQUFBO0NGYUg7QUVYQzs7O0VBR0UscUJBQUE7Q0ZhSDtBRzJHSztFRG5IQTtJQUVJLFdBQUE7R0ZVUDtDQUNGO0FHc0dLO0VEbkhBO0lBS0ksYUFBQTtHRllQO0NBQ0Y7QUdpR0s7RURuSEE7SUFRSSxXQUFBO0dGY1A7Q0FDRjtBRVRDO0VBQ0Usd0JBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQUFBO0VBQ0Esd0JBQUE7Q0ZXSDtBR3NGSztFRHJHSjtJQU1JLHFCQUFBO0lBQ0Esd0JBQUE7SUFDQSx3QkFBQTtHRmFIO0NBQ0Y7QUcrRUs7RURyR0o7SUFXSSxxQkFBQTtJQUNBLHdCQUFBO0dGZUg7Q0FDRjtBRWRHO0VBQ0UsbUJBQUE7Q0ZnQkw7QUVmSztFQUNFLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLE9BQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxXQUFBO0VBQ0EsK0JBQUE7Q0ZpQlA7QUVkRztFQUNFLHFCQUFBO0NGZ0JMO0FFZEc7RUFDRSxlRXpCSztFRjBCTCxtQkFBQTtDRmdCTDtBRWRHO0VBQ0Usb0JBQUE7RUFDQSxpQkFBQTtFQUNBLDBDQUFBO0VBQ0EsVUFBQTtFQUNBLGVFakNLO0NKaURWO0FHOENLO0VEbkVGO0lBT0ksbUJBQUE7R0ZrQkw7Q0FDRjtBRWZHO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsaUJBQUE7Q0ZpQkw7QUVmRztFQUNFLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLFVBQUE7Q0ZpQkw7QUVoQks7RUFDRSxtQkFBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSxzQkFBQTtFQUFBLHFCQUFBO0VBQUEsY0FBQTtFQUNBLDRCQUFBO01BQUEsdUJBQUE7VUFBQSxvQkFBQTtFQUNBLGdDQUFBO01BQUEsc0JBQUE7VUFBQSx3QkFBQTtDRmtCUDtBR3NCSztFRC9DQTtJQVNJLFdBQUE7R0ZvQlA7Q0FDRjtBR2lCSztFRC9DQTtJQVlJLGFBQUE7R0ZzQlA7Q0FDRjtBRXJCTztFQUNFLGNBQUE7Q0Z1QlQ7QUVyQk87RUFDRSxvQkFBQTtDRnVCVDtBRWpCQztFQUNFLG9CQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0VBQ0EscUJBQUE7RUFDQSx3QkFBQTtDRm1CSDtBR0RLO0VEdkJKO0lBT0ksb0JBQUE7SUFDQSx1QkFBQTtHRnFCSDtDQUNGO0FHUEs7RUR2Qko7SUFXSSxxQkFBQTtJQUNBLHdCQUFBO0dGdUJIO0NBQ0Y7QUVyQkc7RUFDRSxtQkFBQTtDRnVCTDtBRXJCRztFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7Q0Z1Qkw7QUV0Qks7RUFDRSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLG9CQUFBO0NGd0JQO0FFakJPO0VBQ0UsWUFBQTtDRm1CVDtBRWZHOztFQUVFLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLHlCQUFBO0VBQ0EsMEJFekhLO0NKMElWO0FFaEJLOztFQUNFLGFBQUE7Q0ZtQlA7QUVoQkc7RUFDRSxXQUFBO0VBQ0Esc0JBQUE7Q0ZrQkw7QUVoQkc7RUFDRSxVQUFBO0VBQ0Esc0JBQUE7Q0ZrQkw7QUVoQkc7RUFDRSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBQ0Esc0JBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7RUFDQSw0QkFBQTtNQUFBLHVCQUFBO1VBQUEsb0JBQUE7RUFDQSxnQ0FBQTtNQUFBLHNCQUFBO1VBQUEsd0JBQUE7Q0ZrQkw7QUVqQks7RUFDRSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSwwQkFBQTtFQUNBLHlCQUFBO0VBQ0EsV0FBQTtDRm1CUDtBRWxCTztFQUNFLG9CRXpKQztDSjZLVjtBRWxCTztFQUNFLGFBQUE7Q0ZvQlQ7O0FFWkQ7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7Q0ZlRDs7QUVaQztFQUNFLFlBQUE7RUFDQSxtQkFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0NGZUg7O0FFWkQ7RUFDRSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0NGZUQ7O0FFWkQ7RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0NGZUQ7O0FFWkQ7RUFDRSxnQkFBQTtFQUNBLGlCQUFBO0NGZUQ7O0FFWEM7RUFDRSx1QkFBQTtFQUNBLHdCQUFBO0NGY0g7O0FFVkQ7RUFDRSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUVuTlM7Q0pnT1Y7O0FFWEQ7O0VBRUUsV0FBQTtDRmNEO0FFWEs7O0VBQ0UsbUJBQUE7Q0ZjUDs7QUVSRDtFQUNFLHlCQUFBO0NGV0Q7O0FFUEQ7RUFDRSxtQkFBQTtDRlVEO0FFVEM7RUFDRSxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxPQUFBO0VBQ0Esb0JFakxTO0NKNExaO0FFVEM7RUFDRSxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxPQUFBO0VBQ0Esb0JFMUxTO0NKcU1aOztBRVJEO0VBQ0UsbUJBQUE7Q0ZXRDtBRVZDO0VBQ0UsWUFBQTtFQUNBLG1CQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsT0FBQTtFQUNBLG9CRXRNUztDSmtOWjtBRVZDO0VBQ0UsWUFBQTtFQUNBLG1CQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsT0FBQTtFQUNBLG9CRS9NUztDSjJOWjs7QUVSQztFQUNFLFlBQUE7RUFDQSxtQkFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLE9BQUE7RUFDQSxvQkUxTlM7Q0pxT1o7O0FFUEM7RUFDRSxvQkU3Uk87Q0p1U1Y7QUVSQztFQUNFLG9CRWhTTztDSjBTVjs7QUVOQztFQUNFLG9CRXBTTztDSjZTVjtBRVBDO0VBQ0Usb0JFdlNPO0NKZ1RWOztBRUxEO0VBQ0UsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLG1DQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0NGUUQ7QUd6Tks7RUQ0TU47SUFRSSxjQUFBO0dGU0Q7Q0FDRjtBRVJDO0VBQ0UsY0FBQTtDRlVIO0FHak9LO0VEc05KO0lBR0ksY0FBQTtHRllIO0NBQ0Y7QUVWQztFQUNFLG9CRXZVVztFRndVWCxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtDRllIO0FFVkM7RUFDRSxlRWpRSTtFRmtRSixtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsNENBQUE7RUFFQSw4Q0FBQTtDRldIO0FHL09LO0VEOE5KO0lBUUksc0NBQUE7R0ZhSDtDQUNGO0FFWEM7RUFDRSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlRS9RSTtDSjRSUDtBRy9QSztFRDhPSjtJQU1JLHFCQUFBO0dGZUg7Q0FDRjtBRWJDO0VBQ0UsbUJBQUE7RUFDQSxZQUFBO0VBQ0EsZUV2Ukk7Q0pzU1A7QUVaQztFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EseUJBQUE7RUFDQSw2QkFBQTtDRmNIO0FFYkc7RUFDRSxjQUFBO0NGZUw7QUViRztFQUNFLGVBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7Q0ZlTDs7QUVWRDtFQUNFLGNBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtDRmFEO0FFWkM7RUFDRSxZQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBRUEsWUFBQTtDRmFIO0FFWEM7RUFDRSxtQkFBQTtFQUNBLFVBQUE7RUFDQSx3Q0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtDRmFIO0FHN1NLO0VEMlJKO0lBT0ksdUNBQUE7R0ZlSDtDQUNGO0FFZEc7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7Q0ZnQkw7QUVmSztFQUNFLGVFN1lHO0NKOFpWO0FFZks7RUFDRSxlQUFBO0VBQ0EsZUVqWkc7RUZrWkgsYUFBQTtDRmlCUDtBRWJLO0VBQ0UsaUJBQUE7Q0ZlUDtBRWJLO0VBQ0UsWUFBQTtDRmVQOztBRVREO0VBQ0UsZ0JBQUE7Q0ZZRDtBRVhDO0VBQ0UsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLGVFcmFPO0NKa2JWO0FFWEM7RUFDRSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLGVFM2FPO0NKd2JWO0FFWEM7RUFDRSxtQkFBQTtDRmFIO0FFWkc7RUFDRSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLE9BQUE7RUFDQSxhQUFBO0NGY0w7QUVYQztFQUNFLG1CQUFBO0NGYUg7QUVYQztFQUNFLG9CQUFBO0NGYUg7QUVYQztFQUNFLGNBQUE7Q0ZhSDtBRVhDO0VBQ0UsaUJBQUE7RUFDQSxpQkFBQTtDRmFIO0FFWEM7RUFDRSxpQkFBQTtDRmFIO0FFWEM7RUFDRSxVQUFBO0VBQ0EsV0FBQTtDRmFIO0FFWkc7RUFDRSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlRWpkSztFRmtkTCxpQkFBQTtDRmNMO0FFWEM7RUFDRSxVQUFBO0VBQ0EsaUJBQUE7Q0ZhSDtBRVpHO0VBQ0UsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7Q0ZjTDtBRWJLO0VBQ0UscUJBQUE7Q0ZlUDtBRWRPO0VBQ0UsaUJBQUE7Q0ZnQlQ7QUVmUztFQUNFLGVBQUE7Q0ZpQlg7QUViVztFQUNFLGVFdGVIO0VGdWVHLGlCQUFBO0NGZWI7QUVWSztFQUNFLGVFOWVHO0NKMGZWO0FFWE87RUFDRSxlRS9lQztDSjRmVjtBRVZLO0VBQ0UsaUJBQUE7RUFDQSxlRXBmRztDSmdnQlY7QUVSQztFQUNFLFVBQUE7Q0ZVSDtBRVRHO0VBQ0UsWUFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7Q0ZXTDtBRVZLO0VBQ0UsZUU3YkE7RUY4YkEsZUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0NGWVA7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7QUVWSztFQUNFLG9CQUFBO0NGWVA7QUVYTztFQUNFLG9CQUFBO0NGYVQ7O0FFTkQ7RUFDRSxtQkFBQTtDRlNEO0FFUkM7RUFFRSxxQkFBQTtFQUNBLHNCQUFBO0NGU0g7QUd6ZEs7RUQ2Y0o7SUFLSSxrQkFBQTtJQUNBLG1CQUFBO0dGV0g7Q0FDRjtBRVRDO0VBQ0Usb0JBQUE7Q0ZXSDtBRVZHO0VBQ0UsY0FBQTtDRllMO0FFVEM7RUFFRSxlRW5rQk87RUZva0JQLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtDRlVIO0FHaGZLO0VEaWVKO0lBT0ksb0JBQUE7R0ZZSDtDQUNGO0FHcmZLO0VEaWVKO0lBVUkscUJBQUE7R0ZjSDtDQUNGO0FHMWZLO0VENmVGO0lBRUksb0JBQUE7SUFDQSxxQkFBQTtHRmVMO0NBQ0Y7QUVaQztFQUVFLGVFdGxCTztFRnVsQlAsaUJBQUE7RUFDQSx3QkFBQTtDRmFIO0FHcmdCSztFRG9mSjtJQU1JLG9CQUFBO0dGZUg7Q0FDRjtBRzFnQks7RURvZko7SUFTSSxnQkFBQTtHRmlCSDtDQUNGO0FFZkM7RUFFRSxlRWxtQk87RUZtbUJQLGlCQUFBO0VBQ0Esd0JBQUE7Q0ZnQkg7QUVkQztFQUVFLGVFeG1CTztFRnltQlAsaUJBQUE7RUFDQSx3QkFBQTtDRmVIO0FFYkM7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0NGZUg7QUc3aEJLO0VENGdCSjtJQUlJLG1CQUFBO0dGaUJIO0NBQ0Y7QUdsaUJLO0VENGdCSjtJQU9JLHFCQUFBO0dGbUJIO0NBQ0Y7QUVqQkM7RUFDRSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtDRm1CSDtBRy9pQks7RURzaEJKO0lBU0ksbUJBQUE7R0ZvQkg7Q0FDRjtBR3BqQks7RURzaEJKO0lBWUkscUJBQUE7R0ZzQkg7Q0FDRjtBRXJCRztFQUNFLG1CQUFBO0VBQ0EsbUJBQUE7Q0Z1Qkw7QUV0Qks7RUFDRSxZQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLG9CRS9vQkc7RUZncEJILG1CQUFBO0NGd0JQO0FFakJPO0VBQ0UsY0FBQTtDRm1CVDtBRWRDO0VBQ0UsaUJBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0NGZ0JIO0FHaGxCSztFRDZqQko7SUFLSSxtQkFBQTtHRmtCSDtDQUNGO0FHcmxCSztFRDZqQko7SUFRSSxxQkFBQTtJQUNBLGtCQUFBO0dGb0JIO0NBQ0Y7QUViRzs7RUFDRSxjQUFBO0NGZ0JMO0FFYkM7RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0NGZUg7QUViQztFQUNFLGNBQUE7Q0ZlSDtBRWJDO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0NGZUg7QUVkRztFQUNFLGVBQUE7RUFDQSxnQkFBQTtDRmdCTDtBRzltQks7RUQ0bEJGO0lBSUksb0JBQUE7R0ZrQkw7Q0FDRjtBR25uQks7RUQ0bEJGO0lBT0ksbUJBQUE7R0ZvQkw7Q0FDRjs7QUVoQkQ7RUFDRSxVQUFBO0VBQ0EsV0FBQTtDRm1CRDtBRWxCQztFQUNFLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGlDQUFBO0VBQ0EsbUJBQUE7Q0ZvQkg7QUVuQkc7RUFDRSxpQkFBQTtFQUNBLGVFbnRCSztFRm90QkwsaUJBQUE7Q0ZxQkw7QUVuQks7RUFDRSxlRXZ0Qkc7Q0o0dUJWO0FFbEJHO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7Q0ZvQkw7QUVsQkc7RUFDRSxpQkFBQTtFQUNBLG1CQUFBO0NGb0JMOztBRWZEO0VBQ0Usb0JFdnFCWTtDSnlyQmI7O0FFZkQ7RUFDRSxjQUFBO0NGa0JEO0FFakJDO0VBQ0UsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVFL3VCTztFRmd2QlAsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7Q0ZtQkg7O0FFaEJEO0VBQ0UsY0FBQTtDRm1CRDtBRWxCQztFQUNFLGtCQUFBO0VBQ0EsWUFBQTtDRm9CSDs7QUVqQkQ7RUFDRSxvQkUzckJNO0VGNHJCTixXQUFBO0NGb0JEOztBRWpCRDtFQUNFLGdCQUFBO0NGb0JEOztBRWxCRDtFQUNFLGVBQUE7Q0ZxQkQ7O0FFbkJEO0VBQ0UsVUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtDRnNCRDtBRXJCQztFQUNFLGVBQUE7RUFDQSx1QkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQ0FBQTtFQUNBLDhCQUFBO0NGdUJIO0FFdEJHO0VBQ0UscUJBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUU3eEJLO0VGOHhCTCxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7Q0Z3Qkw7QUV2Qks7RUFDRSxlQUFBO0VBQ0EscUJBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0NGeUJQO0FFdEJHO0VBQ0UsK0JBQUE7RUFDQSxpQkFBQTtDRndCTDtBRXZCSztFQUNFLHFCQUFBO0VBQ0EsaUJBQUE7Q0Z5QlA7QUVyQkM7RUFDRSxpQkFBQTtFQUNBLCtCQUFBO0NGdUJIOztBRW5CRDtFQUNFLG9CRTN2Qk07RUY0dkJOLGdCQUFBO0NGc0JEOztBRW5CRDtFQUNFLGVBQUE7RUFDQSxtQkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLDhCQUFBO0NGc0JEO0FFckJDO0VBQ0UsYUFBQTtFQUNBLGFBQUE7Q0Z1Qkg7QUV0Qkc7RUFDRSxnQkFBQTtFQUNBLGVFLzBCSztFRmcxQkwsZUFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtDRndCTDtBRXRCRztFQUNFLGFBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0NGd0JMOztBRXBCRDtFQUNFLGdCQUFBO0NGdUJEOztBRXJCRDtFQUNFLGFBQUE7Q0Z3QkQ7O0FFckJEO0VBQ0Usb0JFdHlCVztFRnV5QlgsZ0JBQUE7RUFDQSxtQkFBQTtDRndCRDs7QUVyQkQ7RUFDRSxZQUFBO0VBQ0EsY0FBQTtDRndCRDs7QUVyQkQ7RUFDRSxjQUFBO0NGd0JEOztBRXRCRDtFQUNFLGNBQUE7Q0Z5QkQ7QUczeUJLO0VEaXhCTjtJQUdJLGVBQUE7R0YyQkQ7Q0FDRjs7QUdoekJLO0VEdXhCTjtJQUVJLGNBQUE7R0Y0QkQ7Q0FDRjs7QUd0ekJLO0VENnhCSjtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7R0Y2QkQ7RUUzQkQ7SUFDRSxxQkFBQTtJQUNBLHNCQUFBO0dGNkJEO0VFM0JEO0lBQ0UsZ0JBQUE7SUFDQSxpQkFBQTtHRjZCRDtFRTFCQztJQUNFLGNBQUE7R0Y0Qkg7RUV6QkQ7SUFDRSxjQUFBO0dGMkJEO0VFMUJDO0lBQ0UsY0FBQTtJQUNBLHNCQUFBO0lBQ0EsWUFBQTtJQUNBLGlCQUFBO0dGNEJIO0VFekJEO0lBQ0UsY0FBQTtHRjJCRDtFRTFCQztJQUNFLG1CQUFBO0lBQ0EsWUFBQTtHRjRCSDtFRXpCRDtJQUNFLGlCQUFBO0dGMkJEO0VFMUJDO0lBQ0UsYUFBQTtHRjRCSDtFRTNCRztJQUNFLGFBQUE7R0Y2Qkw7RUV4QkM7SUFDRSxvQkFBQTtJQUNBLFlBQUE7SUFDQSxpQkFBQTtJQUNBLGlCQUFBO0dGMEJIO0VFdkJEO0lBQ0UsYUFBQTtHRnlCRDtFRXRCRDtJQUNFLGVBQUE7R0Z3QkQ7RUV0QkQ7SUFDRSxpQkFBQTtJQUNBLG1CQUFBO0dGd0JEO0VFdkJDO0lBQ0UsbUJBQUE7SUFDQSxtQkFBQTtHRnlCSDtFRXhCRztJQUNFLGVBQUE7R0YwQkw7RUV2QkM7SUFDRSxpQkFBQTtHRnlCSDtFRXZCQztJQUNFLGlCQUFBO0dGeUJIO0VFdkJDO0lBQ0UsaUJBQUE7R0Z5Qkg7RUV2QkM7SUFDRSxtQkFBQTtHRnlCSDtFRXhCRztJQUNFLGlCQUFBO0dGMEJMO0VFckJEO0lBQ0Usc0JBQUE7R0Z1QkQ7RUV0QkM7SUFDRSx1QkFBQTtHRndCSDtFRW5CQztJQUNFLHFCQUFBO0dGcUJIO0VFcEJHO0lBQ0UsZ0JBQUE7R0ZzQkw7RUVuQkM7SUFDRSxtQkFBQTtHRnFCSDtFRXBCRztJQUNFLGlCQUFBO0dGc0JMO0NBQ0Y7QUd6NUJLO0VEeTRCSjtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7R0ZtQkQ7RUVmQztJQUNFLGNBQUE7R0ZpQkg7RUVkRDtJQUNFLGNBQUE7R0ZnQkQ7RUVmQztJQUNFLG1CQUFBO0lBQ0EsWUFBQTtJQUNBLGlCQUFBO0dGaUJIO0VFYkM7SUFDRSxhQUFBO0dGZUg7RUVkRztJQUNFLGFBQUE7R0ZnQkw7RUVaRDtJQUNFLGFBQUE7R0ZjRDtFRVhDO0lBQ0UsZ0JBQUE7R0ZhSDtFRVhDO0lBQ0UsaUJBQUE7R0ZhSDtFRVhDO0lBQ0UsaUJBQUE7R0ZhSDtFRVhDO0lBQ0UsaUJBQUE7R0ZhSDtFRVZHO0lBQ0UsaUJBQUE7R0ZZTDtFRVBDO0lBQ0Usb0JBQUE7R0ZTSDtFRUxDO0lBQ0Usc0JBQUE7R0ZPSDtFRU5HO0lBQ0Usb0JBQUE7R0ZRTDtFRUpEO0lBQ0UsZUFBQTtHRk1EO0NBQ0Y7QUVKRDtFQUNFLFlBQUE7Q0ZNRDtBRUxDO0VBQ0UsZ0JBQUE7Q0ZPSDtBRUpDO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGVFai9CSTtFRmsvQkosbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsOEJBQUE7Q0ZNSDtBRUpHO0VBQ0UsY0FBQTtDRk1MO0FFSEc7RUFDRSwwQkFBQTtDRktMO0FFRkc7RUFDRSwwQkFBQTtDRklMO0FFREc7RUFDRSwwQkFBQTtDRkdMO0FFQUc7RUFDRSwwQkFBQTtDRkVMO0FFQ0c7RUFDRSwwQkFBQTtDRkNMO0FFRUc7RUFDRSwwQkFBQTtDRkFMO0FFR0c7RUFDRSwwQkFBQTtDRkRMO0FFSUc7RUFDRSwwQkUxbENLO0NKd2xDVjs7QUVPRDtFQUtFLG9CQUFBO0NGUkQ7QUVJQztFQUNFLGtCQUFBO0VBQ0EsaUJBQUE7Q0ZGSDtBRUtDO0VBQ0UsZUV0aUNRO0NKbWlDWDs7QUVNRDtFQUNFLGlCQUFBO0VBQ0Esb0JBQUE7Q0ZIRDs7QUVNRDtFQUNFLHFCQUFBO0NGSEQ7QUVJQztFQUNFLG9CRWpuQ087RUZrbkNQLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0NGRkg7QUVJQztFQUNFLFVBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0EsMEJBQUE7Q0ZGSDs7QUVNRDtFQUNFLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtDQUFBO01BQUEsOEJBQUE7VUFBQSwwQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSxhQUFBO0NGSEQ7QUc5aENLO0VEMGhDTjtJQVNJLFNBQUE7SUFDQSxhQUFBO0dGREQ7Q0FDRjtBRUVDO0VBQ0UsMEJFem9DUztFRjBvQ1Qsc0JBQUE7RUFDQSxZQUFBO0VBQ0EseUNBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLDZCQUFBO0NGQUg7QUVDRztFQUNFLG9CRXJwQ0s7RUZzcENMLFlBQUE7Q0ZDTDtBRUFLO0VBQ0UsWUFBQTtDRkVQO0FFQ0c7RUFDRSxtQkFBQTtFQUNBLHFCQUFBO0VBQ0Esc0JBQUE7Q0ZDTDs7QUVJRDtFQUNFLGFBQUE7Q0ZERDs7QUVJRDtFQUNFLHFCQUFBO0VBQ0Esd0JBQUE7RUFDQSxpQkFBQTtFQUNBLDBCRTdtQ1c7RUY4bUNYLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxlRy9uQ2dCO0VIZ29DaEIsbUJBQUE7Q0ZERDtBRzlrQ0s7RUR1a0NOO0lBVUksb0JBQUE7SUFDQSxrQkFBQTtJQUNBLHFCQUFBO0lBQ0Esd0JBQUE7R0ZDRDtDQUNGO0FHdGxDSztFRHVrQ047SUFnQkksa0JBQUE7SUFDQSxxQkFBQTtJQUNBLHFCQUFBO0lBQ0Esd0JBQUE7R0ZHRDtDQUNGO0FFRkM7RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7Q0ZJSDtBR3BtQ0s7RUQ0bENKO0lBTUksb0JBQUE7R0ZNSDtDQUNGO0FHem1DSztFRDRsQ0o7SUFTSSxnQkFBQTtHRlFIO0NBQ0Y7QUVOQztFQUNFLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0NGUUg7QUVQRztFQUNFLFVBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtDRlNMO0FFUks7RUFDRSxzQkFBQTtFQUFBLHFCQUFBO0VBQUEsY0FBQTtFQUNBLCtCQUFBO01BQUEsMkJBQUE7VUFBQSx1QkFBQTtFQUNBLGdDQUFBO01BQUEsc0JBQUE7VUFBQSx3QkFBQTtFQUNBLGFBQUE7Q0ZVUDtBRVJLO0VBQ0Usb0JBQUE7Q0ZVUDtBR2xvQ0s7RUR1bkNBO0lBR0ksa0JBQUE7R0ZZUDtDQUNGO0FHdm9DSztFRHVuQ0E7SUFNSSxxQkFBQTtHRmNQO0NBQ0Y7QUViTztFQUNFLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0NGZVQ7QUdqcENLO0VEK25DRTtJQUtJLHFCQUFBO0dGaUJUO0NBQ0Y7QUVmTztFQUNFLGFBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0NGaUJUO0FHM3BDSztFRHVvQ0U7SUFLSSxxQkFBQTtHRm1CVDtDQUNGO0FFaEJLO0VBQ0UsY0FBQTtDRmtCUDtBRWRDO0VBQ0Usc0JBQUE7RUFBQSxxQkFBQTtFQUFBLGNBQUE7RUFDQSw0QkFBQTtNQUFBLHVCQUFBO1VBQUEsb0JBQUE7RUFDQSxnQ0FBQTtNQUFBLHNCQUFBO1VBQUEsd0JBQUE7Q0ZnQkg7QUVkQztFQUNFLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0EsMEJBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsV0FBQTtDRmdCSDtBR3ByQ0s7RUQwcENKO0lBWUksYUFBQTtJQUNBLFlBQUE7SUFDQSwwQkFBQTtHRmtCSDtDQUNGO0FFakJHO0VBQ0Usb0JHNXRDWTtDTCt1Q2pCO0FFakJHO0VBQ0UsYUFBQTtDRm1CTDs7QU0veUNDLGlFQUFBO0FBR0U7Z0ZBQUE7QUFHQTs7Ozs7R0FBQTtBQU9BO0VBQ0Usd0JDMUNhLENEMENtQixPQUFBO0VBUTlCLGtCQUFBLENBQUEsT0FBQTtFQUVGLDJCQUFBLENBQUEsT0FBQTtFQUNBLCtCQUFBLENBQUEsT0FBQTtDTnN5Q0w7O0FNanlDRztnRkFBQTtBQUdBOztHQUFBO0FBSUE7RUFDRSxVQUFBO0NOa3lDTDs7QU0veENHOztHQUFBO0FBSUE7Ozs7OztFQU1FLGVBQUE7Q05peUNMOztBTTl4Q0c7OztHQUFBO0FBS0E7RUU5RUYsZUFBQTtFRnlGTSxpQkFBQTtDTnV4Q1A7O0FNanZDRztnRkFBQTtBQXdDQTs7R0FBQTtBQUlBOztFQUVFLGVBQUE7Q042c0NMOztBTTFzQ0c7O0dBQUE7QUFJQTtFQUtJLGlCQUFBO0NOd3NDUDs7QU1wc0NHOzs7R0FBQTtBQUtBO0VBQ0Usd0JBQUEsQ0FBQSxPQUFBO0VBQ0EsVUFBQSxDQUFBLE9BQUE7RUFDQSxrQkFBQSxDQUFBLE9BQUE7Q05zc0NMOztBTW5zQ0c7O0dBQUE7QUFJQTtFQUNFLGVBQUE7Q05xc0NMOztBTXZyQ0c7OztHQUFBO0FBS0E7RUFDRSxrQ0FBQSxDQUFBLE9BQUE7RUFDQSxlQUFBLENBQUEsT0FBQTtDTnlyQ0w7O0FNcHJDRztnRkFBQTtBQUdBOzs7R0FBQTtBQUtBO0VBQ0UsOEJBQUEsQ0FBQSxPQUFBO0VBQ0Esc0NBQUEsQ0FBQSxPQUFBO0NOcXJDTDs7QU1sckNHOzs7R0FBQTtBQUtBOztFQUVFLGlCQUFBO0NOb3JDTDs7QU0vcUNHO2dGQUFBO0FBR0E7OztHQUFBO0FBS0E7RUFDRSxvQkFBQSxDQUFBLE9BQUE7RUFDQSwyQkFBQSxDQUFBLE9BQUE7RUFDQSxrQ0FBQSxDQUFBLE9BQUE7Q05nckNMOztBTTdxQ0c7O0dBQUE7QUFJQTs7RUFFRSxxQkFBQTtDTitxQ0w7O0FNNXFDRzs7R0FBQTtBQUlBOztFQUVFLG9CQUFBO0NOOHFDTDs7QU0zcUNHOzs7R0FBQTtBQUtBOzs7RUFHRSxrQ0FBQSxDQUFBLE9BQUE7RUFDQSxlQUFBLENBQUEsT0FBQTtDTjZxQ0w7O0FNMXFDRzs7R0FBQTtBQUlBO0VBQ0UsbUJBQUE7Q040cUNMOztBTXpxQ0c7O0dBQUE7QUFJQTtFQUNFLHVCQUFBO0VBQ0EsWUFBQTtDTjJxQ0w7O0FNeHFDRzs7R0FBQTtBQUlBO0VBQ0UsZUFBQTtDTjBxQ0w7O0FNdnFDRzs7O0dBQUE7QUFLQTs7RUFFRSxlQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7Q055cUNMOztBTXRxQ0c7RUFDRSxnQkFBQTtDTnlxQ0w7O0FNdHFDRztFQUNFLFlBQUE7Q055cUNMOztBTXBxQ0c7Z0ZBQUE7QUFHQTs7R0FBQTtBQUlBOztFQUVFLHNCQUFBO0NOcXFDTDs7QU1scUNHOztHQUFBO0FBSUE7RUFDRSxjQUFBO0VBQ0EsVUFBQTtDTm9xQ0w7O0FNanFDRzs7R0FBQTtBQUlBO0VBQ0UsbUJBQUE7Q05tcUNMOztBTWhxQ0c7O0dBQUE7QUFJQTtFQUNFLGlCQUFBO0NOa3FDTDs7QU03cENHO2dGQUFBO0FBR0E7OztHQUFBO0FBS0E7Ozs7O0VBS0Usd0JDelphLENEeVptQixPQUFBO0VBQ2hDLGdCQUFBLENBQUEsT0FBQTtFQUtFLGtCQUFBLENBQUEsT0FBQTtFQUVGLFVBQUEsQ0FBQSxPQUFBO0NOeXBDTDs7QU10cENHOztHQUFBO0FBSUE7RUFDRSxrQkFBQTtDTndwQ0w7O0FNcnBDRzs7O0dBQUE7QUFLQTtTQUNTLE9BQUE7RUFDUCxxQkFBQTtDTnVwQ0w7O0FNcHBDRzs7OztHQUFBO0FBTUE7Ozs7RUFJRSwyQkFBQSxDQUFBLE9BQUE7Q05zcENMOztBTW5wQ0c7Ozs7RUFLRTs7S0FBQTtFQVNBOztLQUFBO0NOaXBDTDtBTXRwQ0s7Ozs7RUFDRSxtQkFBQTtFQUNBLFdBQUE7Q04ycENQO0FNcHBDSzs7OztFQUNFLCtCQUFBO0NOeXBDUDs7QU1ycENHOztHQUFBO0FBSUE7RUFDRSxrQkFBQTtDTnVwQ0w7O0FNcHBDRzs7O0dBQUE7QUFLQTs7RUFFRSx1QkFBQSxDQUFBLE9BQUE7RUFDQSxXQUFBLENBQUEsT0FBQTtDTnNwQ0w7O0FNbnBDRzs7R0FBQTtBQUlBOztFQUVFLGFBQUE7Q05xcENMOztBTWxwQ0c7OztHQUFBO0FBS0E7RUFDRSw4QkFBQSxDQUFBLE9BQUE7RUFDQSxxQkFBQSxDQUFBLE9BQUE7RUFFQTs7S0FBQTtDTnFwQ0w7QU1qcENLO0VBRUUseUJBQUE7Q05rcENQOztBTTlvQ0c7OztHQUFBO0FBS0E7RUFDRSwyQkFBQSxDQUFBLE9BQUE7RUFDQSxjQUFBLENBQUEsT0FBQTtDTmdwQ0w7O0FNN29DRzs7R0FBQTtBQUlBO0VBQ0UsMEJBQUE7RUFDQSxjQUFBO0VBQ0EsK0JBQUE7Q04rb0NMOztBTTVvQ0c7Ozs7O0dBQUE7QUFPQTtFQUNFLHVCQUFBLENBQUEsT0FBQTtFQUNBLGVBQUEsQ0FBQSxPQUFBO0VBQ0EsZ0JBQUEsQ0FBQSxPQUFBO0VBQ0EsV0FBQSxDQUFBLE9BQUE7RUFDQSxlQUFBLENBQUEsT0FBQTtFQUNBLG9CQUFBLENBQUEsT0FBQTtDTjhvQ0w7O0FNM29DRzs7O0dBQUE7QUFLQTtFQUNFLHNCQUFBLENBQUEsT0FBQTtFQUNBLHlCQUFBLENBQUEsT0FBQTtDTjZvQ0w7O0FNMW9DRzs7R0FBQTtBQUlBO0VBQ0UsZUFBQTtDTjRvQ0w7O0FNdm9DRztnRkFBQTtBQUdBOztHQUFBO0FBSUE7RUFDRSxlQUFBO0NOd29DTDs7QU1yb0NHOztHQUFBO0FBSUE7RUFDRSxtQkFBQTtDTnVvQ0w7O0FNcG9DRzs7R0FBQTtBQUlBO0VBQ0UsZUFBQTtDTnNvQ0w7O0FNN21DRztnRkFBQTtBQUdBOztHQUFBO0FBSUE7RUFDRSxzQkFBQTtDTjhtQ0w7O0FNM21DRzs7R0FBQTtBQUlBO0VBQ0UsY0FBQTtDTjZtQ0w7O0FNeG1DRztnRkFBQTtBQUdBOztHQUFBO0FBSUE7RUFDRSxjQUFBO0NOeW1DTDs7QUt0cERDO0VBQ0UscUtBQUE7Q0x5cERIOztBS3RwREM7RUFDRSx1QkFBQTtFQUNBLGdCRHpFZTtDSmt1RGxCOztBS3JwREM7OztFQUdFLG9CQUFBO0NMd3BESDs7QUtwcERDO0VBQ0UsVUFBQTtFQUNBLFdBQUE7RUFFQSxvQkRWSTtFQ1lKLDhERFRlO0VDVWYsb0JETm1CO0VDT25CLGlCRDFGZ0I7RUMyRmhCLGVEakJRO0VDb0JOLG9DQUFBO0VBQ0EsbUNBQUE7Q0xtcERMOztBSy9vREM7RUFFRSxzQkFBQTtFQUNBLHVCQUFBO0VBR0EsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsZ0NBQUE7Q0wrb0RIOztBSzNvREM7RUFDRSxhQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkQ3Qlk7Q0oycURmOztBSzFvREM7RUFDRSx1QkFBQTtFQUNBLFlBQUE7RUFDQSxpQkRwQ1k7Q0ppckRmOztBS3RvREc7Ozs7OztFQUdFLDJCQUFBO0NMNG9ETDs7QUt2b0RDO0VBR0UsV0FBQTtFQUVBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtFQUNBLFVBQUE7RUFDQSxpQkQxRFk7RUMyRFosd0JBQUE7RUFFQSxlQUFBO0NMc29ESDtBU3pwREM7RUFDRSxXQUFBO0NUMnBESDs7QUtyb0RDO0VBQ0UsZUFBQTtDTHdvREg7O0FLcG9EQztFQUNFLDBCQUFBO0NMdW9ESDs7QUtwb0RDO0VBQ0UseUJBQUE7Q0x1b0RIOztBVTl6REM7RUNzRUEsb0JQaERhO0VPYVgsbUJBQUE7RUFDQSxrQkFBQTtDWGd5REg7QVM5c0RDO0VBRUUsZUFBQTtFQUNBLGFBQUE7Q1Qrc0RIO0FTdnNEQztFQUNFLFlBQUE7Q1R5c0RIO0FVdDBESztFRVZGLGlCQUZVO0VBR1YsZ0JBSFU7Q1pzMURiO0FVcDBERztFQzhDQSx3QkFGUztFQUdULHVCQUhTO0NYNHhEWjtBR250REs7RU9ySEY7SUM4Q0EseUJBRlM7SUFHVCx3QkFIUztHWGl5RFY7Q0FDRjtBR3p0REs7RU9ySEY7SUM4Q0EseUJBRlM7SUFHVCx3QkFIUztHWHV5RFY7Q0FDRjtBVWoxREs7RUFDRSxnQkFBQTtFQUNBLGVBQUE7Q1ZtMURQO0FVOTBERztFQ2lERixnQkFIUztDWG15RFY7QVU5MERLO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtDVmcxRFA7QVU1MERHO0VDd0NGLGdCQUhTO0NYMHlEVjtBVXQwRFM7RUU1Q04sd0JBRlU7RUFHVix1QkFIVTtDWnczRGI7QVUxMERTO0VFNUNOLHlCQUZVO0VBR1Ysd0JBSFU7Q1o0M0RiOztBVXIwREM7RUc3REEsWUFBQTtFQzhDQSxZVHlDWTtFTy9FVix3QkFGVTtFQUdWLHVCQUhVO0NabTREYjtBRzV2REs7RU9oRko7SUVyREUseUJBRlU7SUFHVix3QkFIVTtHWnc0RFg7Q0FDRjtBYzExREc7RUFDRSxhVGtDUztDTDB6RGQ7QWVoM0RDO0VBQ0UsWVZvRFU7Q0w4ekRiOztBVTUwREM7RUFDRSxZQUFBO0NWKzBESDs7QVUzMERDO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtDVjgwREg7O0FVeDBESztFR3hGSixxQkFBQTtDYm82REQ7O0FVdDBETztFSzdGSixtQkFBQTtFQUNBLG9CQUhTO0NmMDZEWjs7QVV2MERPO0VLakdKLG1CQUFBO0VBQ0EscUJBSFM7Q2YrNkRaOztBVXAwREs7RUs5RUosZ0JBQUE7Q2ZzNUREOztBVTExREs7RUd4Rkosc0JBQUE7Q2JzN0REOztBVXgxRE87RUs3RkosbUJBQUE7RUFDQSxxQkFIUztDZjQ3RFo7O0FVejFETztFS2pHSixtQkFBQTtFQUNBLHNCQUhTO0NmaThEWjs7QVV0MURLO0VLOUVKLDJCQUFBO0NmdzZERDs7QVU1MkRLO0VHeEZKLFdBQUE7Q2J3OEREOztBVTEyRE87RUs3RkosbUJBQUE7RUFDQSxVQUhTO0NmODhEWjs7QVUzMkRPO0VLakdKLG1CQUFBO0VBQ0EsV0FIUztDZm05RFo7O0FVeDJESztFSzlFSiw0QkFBQTtDZjA3REQ7O0FVOTNESztFR3hGSixzQkFBQTtDYjA5REQ7O0FVNTNETztFSzdGSixtQkFBQTtFQUNBLHFCQUhTO0NmZytEWjs7QVU3M0RPO0VLakdKLG1CQUFBO0VBQ0Esc0JBSFM7Q2ZxK0RaOztBVTEzREs7RUs5RUosaUJBQUE7Q2Y0OEREOztBVWg1REs7RUd4Rkosc0JBQUE7Q2I0K0REOztBVTk0RE87RUs3RkosbUJBQUE7RUFDQSxxQkFIUztDZmsvRFo7O0FVLzRETztFS2pHSixtQkFBQTtFQUNBLHNCQUhTO0NmdS9EWjs7QVU1NERLO0VLOUVKLDRCQUFBO0NmODlERDs7QVVsNkRLO0VHeEZKLFdBQUE7Q2I4L0REOztBVWg2RE87RUs3RkosbUJBQUE7RUFDQSxVQUhTO0Nmb2dFWjs7QVVqNkRPO0VLakdKLG1CQUFBO0VBQ0EsV0FIUztDZnlnRVo7O0FVOTVESztFSzlFSiw0QkFBQTtDZmcvREQ7O0FVcDdESztFR3hGSixzQkFBQTtDYmdoRUQ7O0FVbDdETztFSzdGSixtQkFBQTtFQUNBLHFCQUhTO0Nmc2hFWjs7QVVuN0RPO0VLakdKLG1CQUFBO0VBQ0Esc0JBSFM7Q2YyaEVaOztBVWg3REs7RUs5RUosaUJBQUE7Q2ZrZ0VEOztBVXQ4REs7RUd4Rkosc0JBQUE7Q2JraUVEOztBVXA4RE87RUs3RkosbUJBQUE7RUFDQSxxQkFIUztDZndpRVo7O0FVcjhETztFS2pHSixtQkFBQTtFQUNBLHNCQUhTO0NmNmlFWjs7QVVsOERLO0VLOUVKLDRCQUFBO0Nmb2hFRDs7QVV4OURLO0VHeEZKLFdBQUE7Q2JvakVEOztBVXQ5RE87RUs3RkosbUJBQUE7RUFDQSxVQUhTO0NmMGpFWjs7QVV2OURPO0VLakdKLG1CQUFBO0VBQ0EsV0FIUztDZitqRVo7O0FVcDlESztFSzlFSiw0QkFBQTtDZnNpRUQ7O0FVMStESztFR3hGSixzQkFBQTtDYnNrRUQ7O0FVeCtETztFSzdGSixtQkFBQTtFQUNBLHFCQUhTO0NmNGtFWjs7QVV6K0RPO0VLakdKLG1CQUFBO0VBQ0Esc0JBSFM7Q2ZpbEVaOztBVXQrREs7RUs5RUosaUJBQUE7Q2Z3akVEOztBVTUvREs7RUd4Rkosc0JBQUE7Q2J3bEVEOztBVTEvRE87RUs3RkosbUJBQUE7RUFDQSxxQkFIUztDZjhsRVo7O0FVMy9ETztFS2pHSixtQkFBQTtFQUNBLHNCQUhTO0NmbW1FWjs7QVV4L0RLO0VLOUVKLDRCQUFBO0NmMGtFRDs7QVU5Z0VLO0VHeEZKLFlBQUE7Q2IwbUVEOztBVWhnRUs7RUs5RUosNEJBQUE7Q2ZrbEVEOztBZ0J2bUVDO0VBQ0UsWVgrRVU7RVc5RVYsWUFBQTtDaEIwbUVIO0FnQnBsRUc7RUFDRSxZQUFBO0NoQnNsRUw7QWdCbmxFRztFQUNFLFlBQUE7Q2hCcWxFTDtBZ0JsbEVHO0VBQ0UsWVgrQ1E7Q0xxaUViOztBZ0JybkVDO0VBQ0UsWVgrRVU7RVc5RVYsV0FBQTtDaEJ3bkVIO0FnQmxtRUc7RUFDRSxZQUFBO0NoQm9tRUw7QWdCam1FRztFQUNFLFlBQUE7Q2hCbW1FTDtBZ0JobUVHO0VBQ0UsWVgrQ1E7Q0xtakViOztBZ0Jub0VDO0VBQ0UsWVgrRVU7RVc5RVYsc0JBQUE7Q2hCc29FSDtBZ0JobkVHO0VBQ0UsWUFBQTtDaEJrbkVMO0FnQi9tRUc7RUFDRSxZQUFBO0NoQmluRUw7QWdCOW1FRztFQUNFLFlYK0NRO0NMaWtFYjs7QWdCanBFQztFQUNFLFlYK0VVO0VXOUVWLFdBQUE7Q2hCb3BFSDtBZ0I5bkVHO0VBQ0UsWUFBQTtDaEJnb0VMO0FnQjduRUc7RUFDRSxZQUFBO0NoQituRUw7QWdCNW5FRztFQUNFLFlYK0NRO0NMK2tFYjs7QWdCL3BFQztFQUNFLFlYK0VVO0VXOUVWLFdBQUE7Q2hCa3FFSDtBZ0I1b0VHO0VBQ0UsWUFBQTtDaEI4b0VMO0FnQjNvRUc7RUFDRSxZQUFBO0NoQjZvRUw7QWdCMW9FRztFQUNFLFlYK0NRO0NMNmxFYjs7QWdCN3FFQztFQUNFLFlYK0VVO0VXOUVWLHNCQUFBO0NoQmdyRUg7QWdCMXBFRztFQUNFLFlBQUE7Q2hCNHBFTDtBZ0J6cEVHO0VBQ0UsWUFBQTtDaEIycEVMO0FnQnhwRUc7RUFDRSxZWCtDUTtDTDJtRWI7O0FnQjNyRUM7RUFDRSxZWCtFVTtFVzlFVixzQkFBQTtDaEI4ckVIO0FnQnhxRUc7RUFDRSxZQUFBO0NoQjBxRUw7QWdCdnFFRztFQUNFLFlBQUE7Q2hCeXFFTDtBZ0J0cUVHO0VBQ0UsWVgrQ1E7Q0x5bkViOztBZ0J6c0VDO0VBQ0UsWVgrRVU7RVc5RVYsYUFBQTtDaEI0c0VIO0FnQnRyRUc7RUFDRSxZQUFBO0NoQndyRUw7QWdCcnJFRztFQUNFLFlBQUE7Q2hCdXJFTDtBZ0JwckVHO0VBQ0UsWVgrQ1E7Q0x1b0ViOztBVXRtRUs7RUVoSEYsaUJBRlU7RUFHVixnQkFIVTtDWjZ0RWI7QVV6bUVLO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0NWMm1FUDs7QVV2bUVHO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0NWMG1FTDs7QVV0bUVLO0VFOUhGLHdCQUZVO0VBR1YsdUJBSFU7Q1oydUViOztBVXZtRUc7RUtqSUEsbUJBQUE7RUFDQSxrQkFBQTtDZjR1RUg7QWVqdkVHO0VBQ0UsWUFBQTtFQUNBLFlBQUE7Q2ZtdkVMOztBVTNtRUc7OztFSzVIRixpQkFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7Q2Y2dUVEOztBR3RuRUs7RU9yREE7SUd4RkoscUJBQUE7R2J3d0VDO0VVMXFFSztJSzdGSixtQkFBQTtJQUNBLG9CQUhTO0dmNndFVjtFVTFxRUs7SUtqR0osbUJBQUE7SUFDQSxxQkFIUztHZml4RVY7RVV0cUVHO0lLOUVKLGdCQUFBO0dmdXZFQztFVTNyRUc7SUd4Rkosc0JBQUE7R2JzeEVDO0VVeHJFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmMnhFVjtFVXhyRUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZit4RVY7RVVwckVHO0lLOUVKLDJCQUFBO0dmcXdFQztFVXpzRUc7SUd4RkosV0FBQTtHYm95RUM7RVV0c0VLO0lLN0ZKLG1CQUFBO0lBQ0EsVUFIUztHZnl5RVY7RVV0c0VLO0lLakdKLG1CQUFBO0lBQ0EsV0FIUztHZjZ5RVY7RVVsc0VHO0lLOUVKLDRCQUFBO0dmbXhFQztFVXZ0RUc7SUd4Rkosc0JBQUE7R2JrekVDO0VVcHRFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmdXpFVjtFVXB0RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZjJ6RVY7RVVodEVHO0lLOUVKLGlCQUFBO0dmaXlFQztFVXJ1RUc7SUd4Rkosc0JBQUE7R2JnMEVDO0VVbHVFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmcTBFVjtFVWx1RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZnkwRVY7RVU5dEVHO0lLOUVKLDRCQUFBO0dmK3lFQztFVW52RUc7SUd4RkosV0FBQTtHYjgwRUM7RVVodkVLO0lLN0ZKLG1CQUFBO0lBQ0EsVUFIUztHZm0xRVY7RVVodkVLO0lLakdKLG1CQUFBO0lBQ0EsV0FIUztHZnUxRVY7RVU1dUVHO0lLOUVKLDRCQUFBO0dmNnpFQztFVWp3RUc7SUd4Rkosc0JBQUE7R2I0MUVDO0VVOXZFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmaTJFVjtFVTl2RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZnEyRVY7RVUxdkVHO0lLOUVKLGlCQUFBO0dmMjBFQztFVS93RUc7SUd4Rkosc0JBQUE7R2IwMkVDO0VVNXdFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmKzJFVjtFVTV3RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZm0zRVY7RVV4d0VHO0lLOUVKLDRCQUFBO0dmeTFFQztFVTd4RUc7SUd4RkosV0FBQTtHYnczRUM7RVUxeEVLO0lLN0ZKLG1CQUFBO0lBQ0EsVUFIUztHZjYzRVY7RVUxeEVLO0lLakdKLG1CQUFBO0lBQ0EsV0FIUztHZmk0RVY7RVV0eEVHO0lLOUVKLDRCQUFBO0dmdTJFQztFVTN5RUc7SUd4Rkosc0JBQUE7R2JzNEVDO0VVeHlFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmMjRFVjtFVXh5RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZis0RVY7RVVweUVHO0lLOUVKLGlCQUFBO0dmcTNFQztFVXp6RUc7SUd4Rkosc0JBQUE7R2JvNUVDO0VVdHpFSztJSzdGSixtQkFBQTtJQUNBLHFCQUhTO0dmeTVFVjtFVXR6RUs7SUtqR0osbUJBQUE7SUFDQSxzQkFIUztHZjY1RVY7RVVsekVHO0lLOUVKLDRCQUFBO0dmbTRFQztFVXYwRUc7SUd4RkosWUFBQTtHYms2RUM7RVV4ekVHO0lLOUVKLDRCQUFBO0dmeTRFQztFZ0I5NUVEO0lBQ0UsWVgrRVU7SVc5RVYsWUFBQTtHaEJnNkVEO0VnQjE0RUM7SUFDRSxZQUFBO0doQjQ0RUg7RWdCejRFQztJQUNFLFlBQUE7R2hCMjRFSDtFZ0J4NEVDO0lBQ0UsWVgrQ1E7R0wyMUVYO0VnQjM2RUQ7SUFDRSxZWCtFVTtJVzlFVixXQUFBO0doQjY2RUQ7RWdCdjVFQztJQUNFLFlBQUE7R2hCeTVFSDtFZ0J0NUVDO0lBQ0UsWUFBQTtHaEJ3NUVIO0VnQnI1RUM7SUFDRSxZWCtDUTtHTHcyRVg7RWdCeDdFRDtJQUNFLFlYK0VVO0lXOUVWLHNCQUFBO0doQjA3RUQ7RWdCcDZFQztJQUNFLFlBQUE7R2hCczZFSDtFZ0JuNkVDO0lBQ0UsWUFBQTtHaEJxNkVIO0VnQmw2RUM7SUFDRSxZWCtDUTtHTHEzRVg7RWdCcjhFRDtJQUNFLFlYK0VVO0lXOUVWLFdBQUE7R2hCdThFRDtFZ0JqN0VDO0lBQ0UsWUFBQTtHaEJtN0VIO0VnQmg3RUM7SUFDRSxZQUFBO0doQms3RUg7RWdCLzZFQztJQUNFLFlYK0NRO0dMazRFWDtFZ0JsOUVEO0lBQ0UsWVgrRVU7SVc5RVYsV0FBQTtHaEJvOUVEO0VnQjk3RUM7SUFDRSxZQUFBO0doQmc4RUg7RWdCNzdFQztJQUNFLFlBQUE7R2hCKzdFSDtFZ0I1N0VDO0lBQ0UsWVgrQ1E7R0wrNEVYO0VnQi85RUQ7SUFDRSxZWCtFVTtJVzlFVixzQkFBQTtHaEJpK0VEO0VnQjM4RUM7SUFDRSxZQUFBO0doQjY4RUg7RWdCMThFQztJQUNFLFlBQUE7R2hCNDhFSDtFZ0J6OEVDO0lBQ0UsWVgrQ1E7R0w0NUVYO0VnQjUrRUQ7SUFDRSxZWCtFVTtJVzlFVixzQkFBQTtHaEI4K0VEO0VnQng5RUM7SUFDRSxZQUFBO0doQjA5RUg7RWdCdjlFQztJQUNFLFlBQUE7R2hCeTlFSDtFZ0J0OUVDO0lBQ0UsWVgrQ1E7R0x5NkVYO0VnQnovRUQ7SUFDRSxZWCtFVTtJVzlFVixhQUFBO0doQjIvRUQ7RWdCcitFQztJQUNFLFlBQUE7R2hCdStFSDtFZ0JwK0VDO0lBQ0UsWUFBQTtHaEJzK0VIO0VnQm4rRUM7SUFDRSxZWCtDUTtHTHM3RVg7RVVyNUVHO0lFaEhGLGlCQUZVO0lBR1YsZ0JBSFU7R1oyZ0ZYO0VVdjVFRztJQUNFLGdCQUFBO0lBQ0EsZUFBQTtHVnk1RUw7RVVyNUVDO0lBQ0UsZ0JBQUE7SUFDQSxlQUFBO0dWdTVFSDtFVW41RUc7SUU5SEYseUJBRlU7SUFHVix3QkFIVTtHWnVoRlg7RVVuNUVDO0lLaklBLG1CQUFBO0lBQ0Esa0JBQUE7R2Z1aEZEO0VlNWhGQztJQUNFLFlBQUE7SUFDQSxZQUFBO0dmOGhGSDtFVXQ1RUM7OztJSzVIRixpQkFBQTtJQUNBLFlBQUE7SUFDQSxnQkFBQTtJQUNBLGVBQUE7R2Z1aEZDO0NBQ0Y7QUdqNkVLO0VPckRBO0lHeEZKLHFCQUFBO0dia2pGQztFVXA5RUs7SUs3RkosbUJBQUE7SUFDQSxvQkFIUztHZnVqRlY7RVVwOUVLO0lLakdKLG1CQUFBO0lBQ0EscUJBSFM7R2YyakZWO0VVaDlFRztJSzlFSixnQkFBQTtHZmlpRkM7RVVyK0VHO0lHeEZKLHNCQUFBO0diZ2tGQztFVWwrRUs7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZnFrRlY7RVVsK0VLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2Z5a0ZWO0VVOTlFRztJSzlFSiwyQkFBQTtHZitpRkM7RVVuL0VHO0lHeEZKLFdBQUE7R2I4a0ZDO0VVaC9FSztJSzdGSixtQkFBQTtJQUNBLFVBSFM7R2ZtbEZWO0VVaC9FSztJS2pHSixtQkFBQTtJQUNBLFdBSFM7R2Z1bEZWO0VVNStFRztJSzlFSiw0QkFBQTtHZjZqRkM7RVVqZ0ZHO0lHeEZKLHNCQUFBO0diNGxGQztFVTkvRUs7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZmltRlY7RVU5L0VLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2ZxbUZWO0VVMS9FRztJSzlFSixpQkFBQTtHZjJrRkM7RVUvZ0ZHO0lHeEZKLHNCQUFBO0diMG1GQztFVTVnRks7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZittRlY7RVU1Z0ZLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2ZtbkZWO0VVeGdGRztJSzlFSiw0QkFBQTtHZnlsRkM7RVU3aEZHO0lHeEZKLFdBQUE7R2J3bkZDO0VVMWhGSztJSzdGSixtQkFBQTtJQUNBLFVBSFM7R2Y2bkZWO0VVMWhGSztJS2pHSixtQkFBQTtJQUNBLFdBSFM7R2Zpb0ZWO0VVdGhGRztJSzlFSiw0QkFBQTtHZnVtRkM7RVUzaUZHO0lHeEZKLHNCQUFBO0dic29GQztFVXhpRks7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZjJvRlY7RVV4aUZLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2Yrb0ZWO0VVcGlGRztJSzlFSixpQkFBQTtHZnFuRkM7RVV6akZHO0lHeEZKLHNCQUFBO0dib3BGQztFVXRqRks7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZnlwRlY7RVV0akZLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2Y2cEZWO0VVbGpGRztJSzlFSiw0QkFBQTtHZm1vRkM7RVV2a0ZHO0lHeEZKLFdBQUE7R2JrcUZDO0VVcGtGSztJSzdGSixtQkFBQTtJQUNBLFVBSFM7R2Z1cUZWO0VVcGtGSztJS2pHSixtQkFBQTtJQUNBLFdBSFM7R2YycUZWO0VVaGtGRztJSzlFSiw0QkFBQTtHZmlwRkM7RVVybEZHO0lHeEZKLHNCQUFBO0diZ3JGQztFVWxsRks7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZnFyRlY7RVVsbEZLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2Z5ckZWO0VVOWtGRztJSzlFSixpQkFBQTtHZitwRkM7RVVubUZHO0lHeEZKLHNCQUFBO0diOHJGQztFVWhtRks7SUs3RkosbUJBQUE7SUFDQSxxQkFIUztHZm1zRlY7RVVobUZLO0lLakdKLG1CQUFBO0lBQ0Esc0JBSFM7R2Z1c0ZWO0VVNWxGRztJSzlFSiw0QkFBQTtHZjZxRkM7RVVqbkZHO0lHeEZKLFlBQUE7R2I0c0ZDO0VVbG1GRztJSzlFSiw0QkFBQTtHZm1yRkM7RWdCeHNGRDtJQUNFLFlYK0VVO0lXOUVWLFlBQUE7R2hCMHNGRDtFZ0JwckZDO0lBQ0UsWUFBQTtHaEJzckZIO0VnQm5yRkM7SUFDRSxZQUFBO0doQnFyRkg7RWdCbHJGQztJQUNFLFlYK0NRO0dMcW9GWDtFZ0JydEZEO0lBQ0UsWVgrRVU7SVc5RVYsV0FBQTtHaEJ1dEZEO0VnQmpzRkM7SUFDRSxZQUFBO0doQm1zRkg7RWdCaHNGQztJQUNFLFlBQUE7R2hCa3NGSDtFZ0IvckZDO0lBQ0UsWVgrQ1E7R0xrcEZYO0VnQmx1RkQ7SUFDRSxZWCtFVTtJVzlFVixzQkFBQTtHaEJvdUZEO0VnQjlzRkM7SUFDRSxZQUFBO0doQmd0Rkg7RWdCN3NGQztJQUNFLFlBQUE7R2hCK3NGSDtFZ0I1c0ZDO0lBQ0UsWVgrQ1E7R0wrcEZYO0VnQi91RkQ7SUFDRSxZWCtFVTtJVzlFVixXQUFBO0doQml2RkQ7RWdCM3RGQztJQUNFLFlBQUE7R2hCNnRGSDtFZ0IxdEZDO0lBQ0UsWUFBQTtHaEI0dEZIO0VnQnp0RkM7SUFDRSxZWCtDUTtHTDRxRlg7RWdCNXZGRDtJQUNFLFlYK0VVO0lXOUVWLFdBQUE7R2hCOHZGRDtFZ0J4dUZDO0lBQ0UsWUFBQTtHaEIwdUZIO0VnQnZ1RkM7SUFDRSxZQUFBO0doQnl1Rkg7RWdCdHVGQztJQUNFLFlYK0NRO0dMeXJGWDtFZ0J6d0ZEO0lBQ0UsWVgrRVU7SVc5RVYsc0JBQUE7R2hCMndGRDtFZ0JydkZDO0lBQ0UsWUFBQTtHaEJ1dkZIO0VnQnB2RkM7SUFDRSxZQUFBO0doQnN2Rkg7RWdCbnZGQztJQUNFLFlYK0NRO0dMc3NGWDtFZ0J0eEZEO0lBQ0UsWVgrRVU7SVc5RVYsc0JBQUE7R2hCd3hGRDtFZ0Jsd0ZDO0lBQ0UsWUFBQTtHaEJvd0ZIO0VnQmp3RkM7SUFDRSxZQUFBO0doQm13Rkg7RWdCaHdGQztJQUNFLFlYK0NRO0dMbXRGWDtFZ0JueUZEO0lBQ0UsWVgrRVU7SVc5RVYsYUFBQTtHaEJxeUZEO0VnQi93RkM7SUFDRSxZQUFBO0doQml4Rkg7RWdCOXdGQztJQUNFLFlBQUE7R2hCZ3hGSDtFZ0I3d0ZDO0lBQ0UsWVgrQ1E7R0xndUZYO0VVL3JGRztJRWhIRixpQkFGVTtJQUdWLGdCQUhVO0dacXpGWDtFVWpzRkc7SUFDRSxnQkFBQTtJQUNBLGVBQUE7R1Ztc0ZMO0VVL3JGQztJQUNFLGdCQUFBO0lBQ0EsZUFBQTtHVmlzRkg7RVU3ckZHO0lFOUhGLHlCQUZVO0lBR1Ysd0JBSFU7R1ppMEZYO0VVN3JGQztJS2pJQSxtQkFBQTtJQUNBLGtCQUFBO0dmaTBGRDtFZXQwRkM7SUFDRSxZQUFBO0lBQ0EsWUFBQTtHZncwRkg7RVVoc0ZDOzs7SUs1SEYsaUJBQUE7SUFDQSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxlQUFBO0dmaTBGQztDQUNGO0FVanNGQztFRTFGRSx1QkFEZ0I7Q1oreEZuQjtBWTV4Rkc7RUFDRSxpQkFBQTtDWjh4Rkw7QUdqdEZLO0VPVUo7SUUxRkUsd0JBRGdCO0dac3lGakI7RVlueUZDO0lBQ0UsaUJBQUE7R1pxeUZIO0NBQ0Y7O0FpQnJuRkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsVUFBQTtFQUNBLFdBQUE7Q2pCd25GSDs7QWlCcG5GQztFQUNFLG9CYnpFc0I7RWEyRXRCLG1CQUFBO0VBQ0EsaUJiN0VtQjtFYThFbkIsbUNiNUV1QjtDSmtzRjFCOztBaUJsbkZDOztFQUVFLG1CQUFBO0VBQ0EscUJBQUE7Q2pCcW5GSDs7QWlCam5GQzs7RUFFRSxrQmJuS2lCO0Vhb0tqQixxQkFBQTtDakJvbkZIOztBaUJobkZDO0VBQ0UsZWJuR2M7RWFvR2QscUJBQUE7Q2pCbW5GSDs7QWlCL21GQzs7Ozs7O0VBTUUsOERiekxlO0VhMExmLG1CYnZJZ0I7RWF3SWhCLGtCYnRMaUI7RWF1TGpCLGViak1RO0Vha01SLG1DYm5Ib0I7Q0pxdUZ2QjtBaUJobkZHOzs7Ozs7RUFDRSxlQUFBO0VBQ0EsZWJ2TVE7Q0o4ekZiOztBaUI5bUZPO0VBSUksa0JBRGlCO0VBYWpCLGlCQUFBO0VBUUEsY0FBQTtFQU9BLHNCQUFBO0NqQnNsRlg7O0FpQnJuRk87RUFJSSxtQkFEaUI7RUFhakIsaUJBQUE7RUFRQSxjQUFBO0VBT0Esc0JBQUE7Q2pCNmxGWDs7QWlCNW5GTztFQUlJLHFCQURpQjtFQWFqQixpQkFBQTtFQVFBLGNBQUE7RUFPQSxzQkFBQTtDakJvbUZYOztBaUJub0ZPO0VBSUksb0JBRGlCO0VBYWpCLGlCQUFBO0VBUUEsY0FBQTtFQU9BLHNCQUFBO0NqQjJtRlg7O0FpQjFvRk87RUFJSSxxQkFEaUI7RUFhakIsaUJBQUE7RUFRQSxjQUFBO0VBT0Esc0JBQUE7Q2pCa25GWDs7QWlCanBGTztFQUlJLGdCQURpQjtFQWFqQixpQkFBQTtFQVFBLGNBQUE7RUFPQSxzQkFBQTtDakJ5bkZYOztBR3gwRks7RWNnTEU7SUFJSSxnQkFEaUI7R2pCMHBGMUI7RWlCN3BGSztJQUlJLGtCQURpQjtHakI2cEYxQjtFaUJocUZLO0lBSUkscUJBRGlCO0dqQmdxRjFCO0VpQm5xRks7SUFJSSxxQkFEaUI7R2pCbXFGMUI7RWlCdHFGSztJQUlJLG1CQURpQjtHakJzcUYxQjtFaUJ6cUZLO0lBSUksZ0JBRGlCO0dqQnlxRjFCO0NBQ0Y7QWlCdG9GQztFQUNFLHFCQUFBO0VBQ0EsZUNyUWdCO0VEc1FoQixzQmI1SnFCO0VhOEpyQixnQkFBQTtDakJ1b0ZIO0FpQnJvRkc7RUFFRSxlYm5LZTtDSnl5RnBCO0FpQmhvRkc7RUFDRSxVQUFBO0NqQmtvRkw7O0FpQjduRkM7RUFDRSxZQUFBO0VBRUEsb0JielZXO0VhMFZYLFVBQUE7RUFDQSxxQmIvS1E7RWFpTFIsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUNicExRO0VhcUxSLGVBQUE7Q2pCOG5GSDs7QWlCMW5GQzs7O0VBR0Usb0Jiek1zQjtFYTBNdEIsNkJieExrQjtFYXlMbEIsaUJiNU1tQjtDSnkwRnRCOztBaUJ6bkZDO0VBQ0UsbUJBQUE7Q2pCNG5GSDs7QWlCeG5GQztFQUNFLHFCYmxNZTtFYW1NZixzQmJyTWM7Q0pnMEZqQjs7QWlCdm5GQztFQUNFLHFCYnhNZTtDSmswRmxCOztBaUJybkZHO0VBQ0UscUJiN01vQjtFYThNcEIsaUJBQUE7Q2pCd25GTDs7QWlCbm5GQztFQUNFLG9CYm5OcUI7Q0p5MEZ4QjtBaUJwbkZHO0VBQ0Usc0JicE53QjtFYXFOeEIsa0JiclRlO0NKMjZGcEI7O0FpQmpuRkM7RUFDRSxpQkFBQTtFQUNBLHVDYjFOaUI7RWEyTmpCLCtCYjFOZ0I7Q0o4MEZuQjtBaUJsbkZHO0VBQ0UsaUJieFBpQjtFYXlQakIsZWIzVU07Q0orN0ZYOztBaUIvbUZDO0VBQ0UsZUFBQTtFQUNBLHFCYnBPYTtFYXFPYixlYm5WUTtDSnE4Rlg7QWlCaG5GRztFQUNFLGNidE9nQjtDSncxRnJCOztBaUI3bUZDO0VBQ0Usa0NidE9hO0VhdU9iLGViN1ZRO0VhOFZSLGFBQUE7Q2pCZ25GSDs7QWlCNW1GQztFQUNFLFVBQUE7Q2pCK21GSDs7QWlCM21GQztFQUNFLHNDYjlRVztFYWdSWCwwQmJqUlU7RWFrUlYsMEJiOVdTO0VhZ1hULDZEYnBUb0I7RWFxVHBCLG9CYnJXbUI7RWFzV25CLGViOVdJO0NKMDlGUDs7QWlCeG1GQztFQUNFLFVBQUE7RUFDQSw0QmJqUWdCO0VhbVFoQiwwQmIxWFM7RWE0WFQsNkRiaFVvQjtFYWlVcEIsZWJ6WEk7Q0prK0ZQOztBbUJoakdDO0VBQ0UsbUJmNE1tQjtFZTNNbkIsc0JmNE1zQjtFZTFNdEIsb0Jma0ZtQjtFZWpGbkIsaUJmcU1tQjtFZXBNbkIsZWZ1RVE7Q0oyK0ZYOztBbUI5aUdDO0VBQ0UsZ0JmNkxhO0VlNUxiLGlCZjZMYztDSm8zRmpCOztBbUI3aUdDO0VBQ0Usa0JmOExhO0VlN0xiLGVBQUE7Q25CZ2pHSDtBbUI5aUdHO0VBQ0Usa0JBQUE7Q25CZ2pHTDs7QW1CM2lHQztFQUNFLGVBQUE7RUFDQSxpQkFBQTtDbkI4aUdIOztBb0IzbUdTO0VBQ0UsaUJBUlU7Q3BCc25HckI7O0FvQi9tR1M7RUFDRSxrQkFSVTtDcEIwbkdyQjs7QW9Cbm5HUztFQUNFLG1CQVJVO0NwQjhuR3JCOztBb0J2bkdTO0VBQ0Usb0JBUlU7Q3BCa29HckI7O0FHOStGSztFaUJsSkk7SUFDRSxpQkFIVTtHcEJ1b0duQjtFb0Jyb0dPO0lBQ0Usa0JBSFU7R3BCMG9HbkI7RW9CeG9HTztJQUNFLG1CQUhVO0dwQjZvR25CO0VvQjNvR087SUFDRSxvQkFIVTtHcEJncEduQjtDQUNGO0FHNy9GSztFaUJsSkk7SUFDRSxpQkFIVTtHcEJxcEduQjtFb0JucEdPO0lBQ0Usa0JBSFU7R3BCd3BHbkI7RW9CdHBHTztJQUNFLG1CQUhVO0dwQjJwR25CO0VvQnpwR087SUFDRSxvQkFIVTtHcEI4cEduQjtDQUNGO0FxQnpwR0M7RUFBa0IseUJBQUE7Q3JCNHBHbkI7O0FxQjFwR0M7RUFDRTtJQUVJLG1DQUFBO0lBR0YsNEJBQUE7SUFFQSx3QkFBQTtJQUNBLDZCQUFBO0dyQnlwR0g7RXFCdHBHQztJQUFrQiwwQkFBQTtHckJ5cEduQjtFcUJ4cEdDO0lBQWtCLHlCQUFBO0dyQjJwR25CO0VxQnpwR0M7SUFBdUIsMEJBQUE7R3JCNHBHeEI7RXFCM3BHQztJQUF1Qix1Q0FBQTtHckI4cEd4QjtFcUI3cEdDO0lBQXVCLG9DQUFBO0dyQmdxR3hCO0VxQi9wR0M7SUFBb0IsOEJBQUE7R3JCa3FHckI7RXFCanFHQztJQUFvQiwrQkFBQTtHckJvcUdyQjtFcUJucUdDO0lBQW9CLCtCQUFBO0dyQnNxR3JCO0VxQm5xR0M7O0lBQ1ksMkJBQUE7R3JCc3FHYjtFcUJwcUdHO0lBQWdCLDZCQUFBO0dyQnVxR25CO0VxQm5xR0M7OztJQUVxQixZQUFBO0dyQnNxR3RCO0VxQm5xR0M7SUFBb0IsOEJBQUE7R3JCc3FHckI7RXFCbnFHQzs7SUFFRSwwQkFBQTtJQUNBLHlCQUFBO0dyQnFxR0g7RXFCanFHQztJQUFRLDRCQUFBO0dyQm9xR1Q7RXFCbHFHQzs7SUFDTSx5QkFBQTtHckJxcUdQO0VxQm5xR0M7SUFBTSwyQkFBQTtHckJzcUdQO0VxQnBxR0M7SUFBUSxjQUFBO0dyQnVxR1Q7RXFCcnFHQzs7O0lBR0UsV0FBQTtJQUNBLFVBQUE7R3JCdXFHSDtFcUJucUdDOztJQUNLLHdCQUFBO0dyQnNxR047RXFCbnFHQztJQUNFLHdCQUFBO0dyQnFxR0g7Q0FDRjtBc0Jyb0dDOztFQXBDQSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBTFM7RUFNVCxpQkFBQTtFQUNBLGdCQUFBO0VBRUEsYWxCOFdhO0VrQjdXYixpQmxCZ0RjO0VrQi9DZCwyQ2xCeVdpQjtFa0J4V2pCLGlCbEI2V2E7RWtCM1diLDhEbEJzQ2lCO0VrQnJDakIsb0JsQm1XZ0I7RWtCbFdoQixpQmxCbVdrQjtFa0JsV2xCLGVsQitCTTtFa0I1QkosNERsQndXZTtFa0JuVmYseUJBQUE7S0FBQSxzQkFBQTtVQUFBLGlCQUFBO0N0QnFwR0g7QXNCdHFHQzs7RUFDRSxjQUFBO0VBQ0EsYWxCOFZpQjtFa0I3VmpCLDJDbEIwVnFCO0VrQnpWckIsaUJsQjhWaUI7RWtCM1ZmLDREbEI2VmE7Q0owMEZsQjs7QXNCenBHQztFQUNFLGdCQUFBO0N0QjRwR0g7QXNCMXBHRztFQUNFLGFBQUE7Q3RCNHBHTDs7QXNCcnBHRzs7RUFDRSxlbEJWTTtDSm1xR1g7O0FzQjFwR0c7O0VBQ0UsZWxCVk07Q0ptcUdYOztBc0IxcEdHOztFQUNFLGVsQlZNO0NKbXFHWDtBc0JycEdHOzs7RUFFRSwwQmxCbkJPO0VrQm9CUCxvQmxCMlRrQjtDSjYxRnZCOztBc0JucEdDOztFQUVFLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtFQUNBLGlCbEJkWTtDSm9xR2Y7O0FzQmxwR0M7RUFDRSx1QkFBQTtDdEJxcEdIOztBdUJ0eUdDOzs7RUFHRSxpQkFBQTtDdkJ5eUdIOztBdUJyeUdDOztFQUVFLHNCQUFBO0VBQ0EseUJBQUE7RUFFQSxvQkFBQTtFQUNBLG1CbkJ1Wlc7RW1CdFpYLGlCQUFBO0N2QnV5R0g7QXVCcnlHRzs7RUFDRSxnQkFBQTtDdkJ3eUdMOztBdUJueUdDOztFQUVFLHFCQUFBO0N2QnN5R0g7O0F1Qmx5R0M7RUFDRSxZQUFBO0N2QnF5R0g7O0F3Qmp5R0M7RUFqQkEsZUFBQTtFQUNBLFVBQUE7RUFFQSxvQnBCMFpxQjtFb0J6WnJCLG9CcEJ3R3FCO0VvQnZHckIsaUJwQjBadUI7RW9Celp2QixlcEI4Rk07Q0p1dEdQO0F3QnZ5R0c7RUFSRixpQkFBQTtFQUNBLGtCQUFBO0N4Qmt6R0Q7O0F5Qm4wR0M7RUFHRSxvQkFGYTtFQUdiLHFCckJzWmlCO0VxQnJaakIsbUJyQnNaa0I7RXFCclpsQixlckJrR0k7Q0prdUdQOztBMEJyMEdDO0VBQ0UsZUFBQTtFQUNBLFlBQUE7RUFDQSxvQnRCZ1pXO0NKdzdGZDtBMEJsMEdHO0VBQ0UsdUJBQUE7QzFCbzBHTDtBMEJoMEdLO0VBQ0UsdUJBQUE7QzFCazBHUDs7QTBCN3pHQzs7OztFQUNFLFVBQUE7RUFDQSxvQkFBQTtFQUdFLG9CQUFBO0VBQ0EsdUJBQUE7QzFCaTBHTDs7QTBCN3pHQztFQUVFLGdCQUFBO0VBQ0EsMEJ0QndYa0I7RXNCdlhsQixvQnRCNkRTO0VzQjNEVCxldEIrREk7RXNCOURKLG1CQUFBO0VBQ0Esb0JBQUE7RUFRRSxVQUFBO0VBQ0EsYUFBQTtDMUJ1ekdMO0EwQm56R0s7RUFDRSxnQkFBQTtDMUJxekdQO0EwQmx6R0s7RUFDRSxlQUFBO0MxQm96R1A7O0EwQi95R0M7RUFFRSxpQkFBQTtFQVFFLGlCQXpFSztDMUJtM0dWOztBMEJ0eUdDO0VBRUUsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7RUFNRSxVQUFBO0VBQ0EsYUFBQTtDMUJteUdMO0EwQmh5R0c7Ozs7RUFLRSxpQkFoR0s7RUFpR0wsZUFBQTtFQUNBLGtCQUFBO0VBRUEsb0J0Qm1VWTtDSjY5RmpCOztBMEIxeEdLO0VBQ0ksb0JBQUE7QzFCNnhHVDs7QTJCejNHQztFQUNFLFVBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtDM0I0M0dIOztBMkJ6M0dDO0VBQ0UsZ0JBQUE7RUFDQSxzQkFBQTtDM0I0M0dIOztBMkJ6M0dDO0VBekJBLG1CdkJrWmdCO0V1QmpaaEIsaUJ2QmdaaUI7RXVCL1lqQiwwQnZCOFlnQjtDSndnR2pCO0EyQnA1R0M7RUFFRSxVQUFBO0VBQ0Esd0JBQUE7RUFDQSxxQnZCMllhO0V1QjFZYixvQnZCNEZJO0NKeXpHUDs7QTRCdDJHQztFQTFEQSxrQkFGUztFQUdULGlCQUFBO0VBQ0EsZ0JBQUE7RUFFQSx5QkFBQTtLQUFBLHNCQUFBO1VBQUEsaUJBQUE7RUFDQSxheEJ3YWE7RXdCdmFiLGlCeEIwR2M7RXdCekdkLDBCeEJnR007RXdCOUZOLDhEeEJpR2lCO0V3QmhHakIsb0J4QjhaZ0I7RXdCN1poQixvQkFBQTtFQUNBLGV4QjBGTTtFS0NOLHNPQUFBO0VtQnZGRSwrQkFBQTtFQUNBLHdDQUFBO0VBQ0EsNkJBQUE7RUFDQSx5QkFBQTtFQUVBLHNCQUFBO0VBSUEsNER4QnlaZTtDSm1nR2xCO0FTNTBHQztFbUIvQ0E7SW5Ca0RJLHdXQUFBO0dUNjBHSDtDQUNGO0E0Qjc1R0M7RUFDRSxjQUFBO0VBQ0EsYXhCK1lpQjtFd0I5WWpCLDJDeEIyWXFCO0V3QjFZckIsaUJ4QitZaUI7RXdCNVlmLDREeEI4WWE7Q0orZ0dsQjtBNEJ4NUdDO0VBQ0UsMEJ4QndEUztFd0J2RFQsb0J4QnNZb0I7Q0pvaEd2QjtBNEJ0NUdDO0VBQ0UsY0FBQTtDNUJ3NUdIO0E0QnI1R0M7RUFDRSxhQUFBO0VBQ0EsdUJBQUE7QzVCdTVHSDs7QTZCdjdHQztFQUNFLHNCekJ3TnVCO0V5QnZOdkIsMEJBQUE7QzdCMDdHSDtBNkJ6N0dHO0VBQ0UsZXpCcU5xQjtDSnN1RzFCO0E2QjU3R0c7RUFDRSxlekJxTnFCO0NKc3VHMUI7QTZCNTdHRztFQUNFLGV6QnFOcUI7Q0pzdUcxQjs7QTZCajZHRztFQUNFLGV6QjJMcUI7Q0p5dUcxQjs7QTZCLzVHQztFQXpCQSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQnpCb1hhO0V5QmxYYixtQnpCNk1zQjtFeUI1TXRCLGtCekIwRW1CO0V5QnpFbkIsZXpCME1rQjtDSml2R25CO0E2QnI2R0c7RUFDRSxlQUFBO0M3QnU2R0w7O0E4QnIzR0M7RUFsRkEsZUFBQTtFQUNBLG9CMUJ5RU07RTBCeEVOLHNCQUFBO0M5QjI4R0Q7O0E4QnQ4R0M7RUFDRSx1QkFBQTtDOUJ5OEdIO0E4QnQ4R0M7RUFDRSx1QkFBQTtDOUJ3OEdIOztBOEIxM0dDO0VBbEVBLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLHNCMUJxTXVCO0UwQm5NdkIsMEIxQnFNeUI7RTBCcE16QixpQkFBQTtFQUVBLG1CMUI2TDBCO0UwQjVMMUIsZUFBQTtFQUNBLGVaMEJrQjtDbEJvNkduQjtBOEI1N0dDO0VBQ0UsaUMxQjZMdUI7RTBCNUx2Qix1QkFBQTtDOUI4N0dIO0E4QjM3R0M7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a0JuQ3dPYTtHSmc3SGQ7RXVDeG1JSztJQXhETix3QkFBQTtRQUFBLG9CQUFBO1lBQUEsZ0JBQUE7SUFDQSxXbkNxUHdCO0dKODZIdkI7RXVDN3BJRDtJQUNFLHFCbkN3T2E7R0p1N0hkO0NBQ0Y7QXdDL3hJQztFQWhGQSxVcEN5akJXO0VvQ3hqQlgsMEJBQUE7RUFDQSxvQnBDMERNO0VvQ3pETixzQkFBQTtDeENrM0lEO0FTdHlJQztFQUVFLGVBQUE7RUFDQSxhQUFBO0NUdXlJSDtBUy94SUM7RUFDRSxZQUFBO0NUaXlJSDs7QXdDcDNJQztFQUNFLGVBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtDeEN1M0lIOztBd0N2eUlHO0VBQ0UsV0FBQTtDeEMweUlMO0F3Q3h5SUs7RUFDRSx3QkFBQTtDeEMweUlQOztBd0NweUlDO0VBQ0Usb0JuQy9EWTtDTHMySWY7QXdDcnlJRztFQUNFLGVBQUE7Q3hDdXlJTDtBd0NyeUlLO0VBRUUsb0JBQUE7Q3hDc3lJUDs7QXdDanlJQztFQTFGQSxZQUFBO0N4QyszSUQ7QXdDNzNJQztFQUNFLGVBQUE7RUFDQSx3QnBDb2lCZTtFb0NuaUJmLG1CcENpaUJpQjtFb0NoaUJqQixlQUFBO0VBQ0EsZXRCY2dCO0NsQmkzSW5CO0F3QzczSUc7RUFDRSxvQnBDMEJFO0VvQ3pCRixlQUFBO0N4QyszSUw7QXdDNTNJRztFQUVFLG9CcENlTztFb0NkUCxldEJJYztDbEJ5M0luQjs7QXdDaHpJQztFQWxFQSwwQkFBQTtFQUNBLGNBQUE7RUFDQSxvQnBDTU07RW9DTE4sZXBDR1U7RW9DRlYsMEJBQUE7Q3hDczNJRDs7QXdDcHpJQztFQTNEQSwwQkFBQTtFQUNBLGVBQUE7Q3hDbTNJRDs7QXdDcnpJQztFQXZEQSxjQUFBO0VBQ0EsY3BDNmZvQjtDSm0zSHJCO0F3QzkySUM7RUFDRSxlQUFBO0N4Q2czSUg7O0F5Q2g4SUM7RUFDRSx5QkFBQTtDekNtOElIOztBeUNoOElDO0VBQ0UsbUJBQUE7Q3pDbThJSDs7QUdyMklLO0VzQy9FRjtJQTFCQSx5QkFBQTtHekNtOUlEO0NBQ0Y7O0F5Q3Yr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O0NKb3NUVjtBcUUvaVNLOztFQUNFLG9CakV2cEJHO0NKeXNUVjtBcUVoalNLOztFQUNFLG9CakUzcEJHO0NKOHNUVjtBcUVqalNLOztFQUNFLG9CakV6cEJFO0NKNnNUVDtBcUVsalNLOztFQUNFLG9CakU5cEJLO0NKbXRUWjtBcUVualNLOztFQUNFLDBCakVycUJRO0NKMnRUZjtBcUVwalNLOztFQUNFLHdCQUFBO0NyRXVqU1A7QXFFcmpTSzs7RUFDRSwwQkFBQTtDckV3alNQO0FxRXJqU0s7O0VBQ0Usb0JqRXJxQk07Q0o2dFRiO0FxRXRqU0s7O0VBQ0Usb0JqRXpwQlU7Q0prdFRqQjtBcUV2alNLOztFQUNFLG9CakVycUJNO0NKK3RUYjtBcUV4alNLOztFQUNFLG9CakVycUJXO0NKZ3VUbEI7QXFFempTSzs7RUFDRSwwQmpFOXFCSTtDSjB1VFg7QXFFMWpTSzs7RUFDRSwwQmpFL3BCSztDSjR0VFo7QXFFM2pTSzs7RUFDRSwwQmpFanFCTTtFaUVrcUJOLGVqRW5xQks7Q0ppdVRaO0FxRTVqU0s7O0VBQ0UsMEJqRXpxQkk7Q0p3dVRYO0FxRTNqU0s7O0VBQ0Usb0JqRXRxQk07Q0pvdVRiO0FxRTVqU0s7O0VBQ0Usb0JqRXhxQlE7Q0p1dVRmO0FxRTdqU0s7O0VBQ0Usb0JqRTFxQlE7Q0owdVRmO0FxRTlqU0s7O0VBQ0Usb0JqRTdxQlE7Q0o4dVRmO0FxRTdqU0s7O0VBQ0Usb0JqRTlxQks7Q0o4dVRaO0FxRTlqU0s7O0VBQ0Usb0JqRWxyQk87Q0ptdlRkO0FxRS9qU0s7O0VBQ0Usb0JqRW5yQlE7Q0pxdlRmO0FxRWhrU0s7O0VBQ0Usb0JqRXJyQmM7Q0p3dlRyQjtBcUVqa1NLOztFQUNFLG9CakV2ckJNO0NKMnZUYjtBcUVqa1NLOztFQUNFLG1CQUFBO0VBQ0Esd0JBQUE7RUFLQSxzQkFBQTtDckVna1NQO0FHN3NUSztFa0Vzb0JBOztJQUlJLG9CQUFBO0lBQ0Esb0JBQUE7R3JFd2tTUDtDQUNGO0FxRXRrU087O0VBQ0UseUJBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQU1BLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0NyRW9rU1Q7QUdydVRLO0VrRThvQkU7O0lBVUksWUFBQTtJQUNBLGFBQUE7SUFDQSxrQkFBQTtHckVrbFNUO0NBQ0Y7QXFFemtTSzs7RUFDRSxpQkFBQTtDckU0a1NQO0FxRTFrU0s7O0VBQ0UsYUFBQTtDckU2a1NQO0FxRTVrU087O0VBQ0UsU0FBQTtDckUra1NUO0FxRXprU0M7O0VBQ0UsbUJBQUE7RUFDQSxtQkFBQTtDckU0a1NIO0FxRXhrU0c7O0VBQ0Usb0JBQUE7RUFDQSwwQkFBQTtFQUNBLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLGlCQUFBO0NyRTJrU0w7QUd0d1RLO0VrRXNyQkY7O0lBT0ksMEJBQUE7SUFDQSxnQkFBQTtHckU4a1NMO0NBQ0Y7QXFFNWtTRzs7RUFDRSxhQUFBO0VBQ0EsMEJBQUE7Q3JFK2tTTDtBcUU5a1NLOztFQUNFLGVBQUE7Q3JFaWxTUDtBcUU1a1NDOztFQUNFLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLDZCQUFBO0NyRStrU0g7QXFFOWtTRzs7RUFDRSx3QkFBQTtDckVpbFNMO0FxRWhsU0s7O0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtDckVtbFNQO0FHenlUSztFa0VpdEJBOztJQU9JLHFCQUFBO0dyRXNsU1A7Q0FDRjtBcUVybFNPOztFQUNFLFlBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0NyRXdsU1Q7QUdyelRLO0VrRTB0QkU7O0lBS0ksbUJBQUE7R3JFMmxTVDtDQUNGO0FxRXhsU087O0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0VBSUEsb0JBQUE7RUFDQSx3QkFBQTtDckV3bFNUO0FHbDBUSztFa0VtdUJFOztJQUlJLG9CQUFBO0dyRWdtU1Q7Q0FDRjtBcUUzbFNLOztFQUNFLG1CQUFBO0NyRThsU1A7QXFFN2xTTzs7RUFDRSxZQUFBO0VBQ0EsZUFBQTtFQUNBLDBCakU5ekJVO0VpRSt6QlYsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxPQUFBO0VBQ0EsZ0JBQUE7Q3JFZ21TVDtBcUU1bFNHOztFQUNFLGlCQUFBO0VBQ0EsaUJBQUE7Q3JFK2xTTDtBRzUxVEs7RWtFMnZCRjs7SUFJSSw0Q0FBQTtHckVrbVNMO0NBQ0Y7QXFFaG1TRzs7RUFDRSwwQmpFM3lCVztDSjg0VGhCO0FxRWxtU0s7O0VBQ0UsMEJqRXAyQkc7Q0p5OFRWO0FxRXBtU087O0VBQ0UsZWpFL3lCTztDSnM1VGhCO0FxRXBtU0s7O0VBQ0UsMEJqRTEyQkc7Q0ppOVRWO0FxRXJtU0s7Ozs7OztFQUdFLG9CakV6ekJPO0NKbTZUZDtBcUV2bVNPOzs7O0VBRUUsZWpFcDNCQztDSis5VFY7QXFFdm1TRzs7RUFDRSwwQmpFNzFCWTtDSnU4VGpCO0FxRXptU0s7O0VBQ0UsMEJqRWoyQkk7Q0o2OFRYO0FxRTFtU0s7O0VBQ0UsMEJqRXAyQkk7Q0ppOVRYO0FxRTNtU0s7Ozs7OztFQUdFLG9CakV4MkJRO0NKdzlUZjtBcUU3bVNPOzs7O0VBRUUsZWpFOTJCRTtDSis5VFg7QXFFN21TRzs7RUFDRSwwQmpFcDNCa0I7Q0pvK1R2QjtBcUUvbVNLOztFQUNFLDBCakV4M0JVO0NKMCtUakI7QXFFaG5TSzs7RUFDRSwwQmpFMzNCVTtDSjgrVGpCO0FxRWpuU0s7Ozs7OztFQUdFLG9CakUvM0JjO0NKcS9UckI7QXFFbm5TTzs7OztFQUVFLGVqRXI0QlE7Q0o0L1RqQjtBcUVqblNDOztFQUNFLGtCQUFBO0NyRW9uU0g7QUd4N1RLO0VrRW0wQko7O0lBR0ksaUJBQUE7R3JFdW5TSDtDQUNGO0FxRXJuU0M7O0VBQ0UsbUJBQUE7RUFDQSxvQkFBQTtDckV3blNIO0FHbjhUSztFa0V5MEJKOztJQUlJLHVCQUFBO0dyRTJuU0g7Q0FDRjtBcUUxblNHOztFQUNFLFlBQUE7RUFDQSxzQkFBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSw2QkFBQTtFQUNBLG9CQUFB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c3lhRDtFK0VweWFEO0lBQ0UsY0FBQTtHL0VzeWFEO0UrRXB5YUQ7SUFDRSxjQUFBO0cvRXN5YUQ7RStFcHlhRDtJQUNFLGVBQUE7Ry9Fc3lhRDtFK0VweWFEO0lBQ0UsYUFBQTtHL0VzeWFEO0UrRXB5YUQ7SUFDRSwyQkFBQTtJQUNBLGFBQUE7Ry9Fc3lhRDtFK0VweWFEO0lBQ0UsYUFBQTtHL0VzeWFEO0UrRXB5YUQ7SUFDRSxtQkFBQTtJQUNBLGFBQUE7Ry9Fc3lhRDtFK0VweWFEO0lBQ0UsMEJBQUE7Ry9Fc3lhRDtFK0VweWFEO0lBQ0UsY0FBQTtHL0VzeWFEO0UrRXB5YUQ7SUFDRSxpQkFBQTtHL0VzeWFEO0UrRXB5YUQ7SUFDRSwyQkFBQTtHL0VzeWFEO0NBQ0YiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbmh0bWwge1xuICBzY3JvbGwtcGFkZGluZy10b3A6IDkuMzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaHRtbCB7XG4gICAgc2Nyb2xsLXBhZGRpbmctdG9wOiAxMi41cmVtO1xuICB9XG59XG5cbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGxldHRlci1zcGFjaW5nOiAwcHg7XG59XG5ib2R5IC53cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDEzLjg3NXJlbTtcbn1cbmJvZHkgcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSBwIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkgcCB7XG4gICAgZm9udC1zaXplOiAxLjQzNzVyZW07XG4gIH1cbn1cbmJvZHkgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5ib2R5IGEge1xuICBjb2xvcjogIzAwYTRiMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG5ib2R5IGgxLFxuYm9keSBoMixcbmJvZHkgaDMge1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyNWVtKSB7XG4gIGJvZHkgLmltYWdlLWNhcm91c2VsLmltYWdlLWNhcm91c2VsLS13aWRlIHVsIGxpIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keSAuaW1hZ2UtY2Fyb3VzZWwuaW1hZ2UtY2Fyb3VzZWwtLXdpZGUgdWwgbGkge1xuICAgIHdpZHRoOiAzMy4zJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSAuaW1hZ2UtY2Fyb3VzZWwuaW1hZ2UtY2Fyb3VzZWwtLXdpZGUgdWwgbGkge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbn1cbmJvZHkgLmltYWdlLWNhcm91c2VsIHtcbiAgcGFkZGluZzogMi41cmVtIDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkgLmltYWdlLWNhcm91c2VsIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDIuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSAuaW1hZ2UtY2Fyb3VzZWwge1xuICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtO1xuICB9XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCAubWVkaXVtLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCAubWVkaXVtLTQ6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMTBweDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMXB4O1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICMwMGE0YjE7XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCAubWVkaXVtLTgge1xuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbn1cbmJvZHkgLmltYWdlLWNhcm91c2VsIHAge1xuICBjb2xvcjogIzAwYTRiMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYm9keSAuaW1hZ2UtY2Fyb3VzZWwgaDIge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5IC5pbWFnZS1jYXJvdXNlbCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCAucm93IHtcbiAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkgLmltYWdlLWNhcm91c2VsIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAyMCAwO1xuICBtYXJnaW46IDA7XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCB1bCBsaSB7XG4gIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNi4yNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjVlbSkge1xuICBib2R5IC5pbWFnZS1jYXJvdXNlbCB1bCBsaSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkgLmltYWdlLWNhcm91c2VsIHVsIGxpIHtcbiAgICB3aWR0aDogMzMuMyU7XG4gIH1cbn1cbmJvZHkgLmltYWdlLWNhcm91c2VsIHVsIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5IC5pbWFnZS1jYXJvdXNlbCB1bCBsaSBpbWcge1xuICBtYXgtaGVpZ2h0OiA2LjI1cmVtO1xufVxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IDUuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDUuNjI1cmVtO1xuICB9XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciB1bCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHVsIGxpIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA2MCU7XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHVsIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0LFxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtcHJldmlvdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBmb250LXNpemU6IDIuMTI1cmVtO1xuICB3aWR0aDogMi4xMjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGE0YjE7XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0OmhvdmVyLFxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtcHJldmlvdXM6aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0IHtcbiAgcmlnaHQ6IDBweDtcbiAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xufVxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogY2FsYyg1MCUgLSAyNXB4KTtcbn1cbmJvZHkgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMS44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IDEycHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDBhNGIxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gIG9wYWNpdHk6IDE7XG59XG5ib2R5IC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xufVxuYm9keSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtYnVsbGV0cyBidXR0b246aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICBtYXJnaW4tcmlnaHQ6IC01MHZ3O1xufVxuXG4ubGFyZ2UtOSAuZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4jYWNjZXNzaWJpbGl0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAwZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc21hbGwtMTIuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuLnNtYWxsLTEyLmNvbHVtbnMtLW1vYmlsZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmZvb3RlciAuc21hbGwtMTIuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xufVxuXG4ucXVlc3Rpb24ge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzAwNDk5MDtcbn1cblxuLmVycm9ycyxcbnVsLmVycm9ybGlzdCBsaSB7XG4gIGNvbG9yOiByZWQ7XG59XG4uZXJyb3JzLmVycm9ycy1jZW50cmVkIHVsIGxpLFxudWwuZXJyb3JsaXN0IGxpLmVycm9ycy1jZW50cmVkIHVsIGxpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jY21zLXRvcCAuY21zLWRyYWdhcmVhLXN0YXRpYzpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmV4dGVuZC1sZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmV4dGVuZC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMjAwMHB4O1xuICBsZWZ0OiAtMTk3NXB4O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG4uZXh0ZW5kLWxlZnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuLmV4dGVuZC1yaWdodCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5leHRlbmQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cbi5leHRlbmQtcmlnaHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDIwMDBweDtcbiAgcmlnaHQ6IC0xOTg1cHg7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuLmV4dGVuZC10by1zaWRlYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNDVweDtcbiAgbGVmdDogLTQ1cHg7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuLmV4dGVuZC1sZWZ0LS1ibHVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG59XG4uZXh0ZW5kLWxlZnQtLWJsdWU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xufVxuXG4uZXh0ZW5kLWxlZnQtLXRlYWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbn1cbi5leHRlbmQtbGVmdC0tdGVhbDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5cbi5wYWdlLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAzMDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLWJhbm5lciB7XG4gICAgaGVpZ2h0OiA0MzBweDtcbiAgfVxufVxuLnBhZ2UtYmFubmVyLmRlZXBlciB7XG4gIGhlaWdodDogNDAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1iYW5uZXIuZGVlcGVyIHtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICB9XG59XG4ucGFnZS1iYW5uZXIgLnBhZ2UtYmFubmVyX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG4ucGFnZS1iYW5uZXIgLnBhZ2UtYmFubmVyX190ZXh0IHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzLjEyNXJlbTtcbiAgcGFkZGluZzogMS44NzVyZW0gMS44NzVyZW0gMS44NzVyZW0gMS4yNXJlbTtcbiAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTlweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucGFnZS1iYW5uZXIgLnBhZ2UtYmFubmVyX190ZXh0IHtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbSAxLjg3NXJlbSAxLjg3NXJlbSAwO1xuICB9XG59XG4ucGFnZS1iYW5uZXIgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMi40ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1iYW5uZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAzLjkzNzVyZW07XG4gIH1cbn1cbi5wYWdlLWJhbm5lciBwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzMjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4ucGFnZS1iYW5uZXIuaXMtd3JhcHBlZCB7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMjAuMjUlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4ucGFnZS1iYW5uZXIuaXMtd3JhcHBlZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucGFnZS1iYW5uZXIuaXMtd3JhcHBlZCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xufVxuXG4uY3J1bWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ3cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jcnVtYnM6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTY7XG59XG4uY3J1bWJzIHVsLmNydW1ic19fbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjdlbSAxLjg3NXJlbSAwLjdlbSAxLjU2MjVyZW07XG4gIHotaW5kZXg6IDMyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY3J1bWJzIHVsLmNydW1ic19fbGlzdCB7XG4gICAgcGFkZGluZzogMC43ZW0gMS44NzVyZW0gMC43ZW0gMC4zNzVyZW07XG4gIH1cbn1cbi5jcnVtYnMgdWwuY3J1bWJzX19saXN0IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uY3J1bWJzIHVsLmNydW1ic19fbGlzdCBsaSBhIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4uY3J1bWJzIHVsLmNydW1ic19fbGlzdCBsaTphZnRlciB7XG4gIG1hcmdpbjogMCAxMHB4O1xuICBjb2xvcjogIzAwNDk5MDtcbiAgY29udGVudDogXCI+XCI7XG59XG4uY3J1bWJzIHVsLmNydW1ic19fbGlzdCBsaTpsYXN0LWNoaWxkIGEge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmNydW1icyB1bC5jcnVtYnNfX2xpc3QgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5zaWRlYmFyIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuLnNpZGViYXIgaDMge1xuICBmb250LXNpemU6IDEuNmVtO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbi5zaWRlYmFyIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4uc2lkZWJhciAuc2lkZWJhcl9fYm9yZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpZGViYXIgLnNpZGViYXJfX2JvcmRlcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMTVweDtcbn1cbi5zaWRlYmFyIC5ibG9jay1idXR0b24ge1xuICBtYXJnaW46IDAgMCA0MHB4IDA7XG59XG4uc2lkZWJhciAuc2lkZWJhcl9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4uc2lkZWJhciAuc2lkZWJhcl9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnNpZGViYXIgLnNpZGViYXJfX3RleHQge1xuICBmb250LXNpemU6IDEuM2VtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuLnNpZGViYXIgLnNpZGViYXJfX3N1YiB7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fbGlzdCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19uYXYge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCAwIDA7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19uYXYgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDEuM2VtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fbmF2IGxpIHVsIHtcbiAgbWFyZ2luOiA0cHggMCAwIDIwcHg7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19uYXYgbGkgdWwgbGkge1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fbmF2IGxpIHVsIGxpIGxpIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19uYXYgbGkgdWwgbGkuc2VsZWN0ZWQgPiBhIHtcbiAgY29sb3I6ICMwMGE0YjE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19uYXYgbGkgYSB7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fbmF2IGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX25hdiBsaSBhLmN1cnJlbnQge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCB7XG4gIG1hcmdpbjogMDtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgNHB4IDhweCAwO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fc29jaWFsIGxpIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSBhLmxpbmtlZGluIHtcbiAgYmFja2dyb3VuZDogIzIwODVjNztcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSBhLmxpbmtlZGluOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNiOWVkZjtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSBhLnR3aXR0ZXIge1xuICBiYWNrZ3JvdW5kOiAjNzhjZGYwO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fc29jaWFsIGxpIGEudHdpdHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNhNmRlZjU7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19zb2NpYWwgbGkgYS5mYWNlYm9vayB7XG4gIGJhY2tncm91bmQ6ICM1MzdiYmQ7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19zb2NpYWwgbGkgYS5mYWNlYm9vazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM3ODk3Y2I7XG59XG4uc2lkZWJhciB1bC5zaWRlYmFyX19zb2NpYWwgbGkgYS55b3V0dWJlIHtcbiAgYmFja2dyb3VuZDogI2U5NjU0Yjtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSBhLnlvdXR1YmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWY4Yzc4O1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fc29jaWFsIGxpIGEuZ29vZ2xlLXBsdXMge1xuICBiYWNrZ3JvdW5kOiAjNGM0YzRiO1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fc29jaWFsIGxpIGEuZ29vZ2xlLXBsdXM6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNjY2NjY0O1xufVxuLnNpZGViYXIgdWwuc2lkZWJhcl9fc29jaWFsIGxpIGEucnNzIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbn1cbi5zaWRlYmFyIHVsLnNpZGViYXJfX3NvY2lhbCBsaSBhLnJzczpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwMDYzYzM7XG59XG5cbi5jb250ZW50IHtcbiAgbWFyZ2luOiAwIDAgNjBweCAwO1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2Z1bGwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29udGVudCAuY29udGVudF9fZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIHtcbiAgcGFkZGluZzogNDBweCAwIDAgMDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgPiBoMiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29udGVudCBoMSB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbnRlbnQgaDEge1xuICAgIGZvbnQtc2l6ZTogMi42MjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50IGgxIHtcbiAgICBmb250LXNpemU6IDMuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQgaDEuYm9va2luZy1oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuOGVtO1xuICB9XG59XG4uY29udGVudCBoMiB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXNpemU6IDEuNmVtO1xuICBtYXJnaW46IDAuOGVtIDAgMC4yZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50IGgyIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG4uY29udGVudCBoMyB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXNpemU6IDEuNGVtO1xuICBtYXJnaW46IDAuOGVtIDAgMC4yZW0gMDtcbn1cbi5jb250ZW50IGg0IHtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIG1hcmdpbjogMC44ZW0gMCAwLjJlbSAwO1xufVxuLmNvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxLjQzNzVyZW07XG4gIH1cbn1cbi5jb250ZW50IHVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAgMCAxZW0gMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb250ZW50IHVsIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50IHVsIHtcbiAgICBmb250LXNpemU6IDEuNDM3NXJlbTtcbiAgfVxufVxuLmNvbnRlbnQgdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb250ZW50IHVsIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMC42ZW07XG4gIHdpZHRoOiAwLjNlbTtcbiAgaGVpZ2h0OiAwLjNlbTtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmNvbnRlbnQgI2lkX2NvbmNlc3Npb24gdWwgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb250ZW50IG9sIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDEuMzc1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbnRlbnQgb2wge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQgb2wge1xuICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICB9XG59XG4uY29udGVudCAuY29udGVudF9fbGlzdCBsaTpiZWZvcmUsXG4uY29udGVudCBvbCBsaTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNvbnRlbnQgaWZyYW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmNvbnRlbnQgLmJsb2NrLWV4dGVuZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNvbnRlbnQgdGFibGUge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4uY29udGVudCB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGVudCB0YWJsZSB0ZCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQgdGFibGUgdGQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG51bC5jb250ZW50X19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxudWwuY29udGVudF9fbGlzdCBsaSB7XG4gIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgcGFkZGluZzogMCAwIDFyZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwMDQ5OTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbnVsLmNvbnRlbnRfX2xpc3QgbGkgaDMge1xuICBmb250LXNpemU6IDEuNGVtO1xuICBjb2xvcjogIzAwNDk5MDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbnVsLmNvbnRlbnRfX2xpc3QgbGkgaDMgYSB7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxudWwuY29udGVudF9fbGlzdCBsaSAubGlzdF9fZGF0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjNlbTtcbn1cbnVsLmNvbnRlbnRfX2xpc3QgbGkgcCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuLndyYXBwZXItLWdyYXkge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xufVxuXG4ucGFnZS10b3Age1xuICBoZWlnaHQ6IDEzNHB4O1xufVxuLnBhZ2UtdG9wIGgyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDEzNHB4O1xuICBjb2xvcjogIzAwNDk5MDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLnBhZ2UtdG9wLS10YWxsIHtcbiAgaGVpZ2h0OiAxODBweDtcbn1cbi5wYWdlLXRvcC0tdGFsbCBoMiB7XG4gIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnBhZ2UtbWFpbiB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLW1haW4tLWJsb2NrIHtcbiAgcGFkZGluZzogNjBweCAwO1xufVxuXG4uc21hbGwtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udGFicy0tZmlsdGVyIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGFicy0tZmlsdGVyIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG4udGFicy0tZmlsdGVyIGxpIGEge1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgcGFkZGluZzogMCA0cHg7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnRhYnMtLWZpbHRlciBsaSBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBhdHRyKHRpdGxlKTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGhlaWdodDogMXB4O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cbi50YWJzLS1maWx0ZXIgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4udGFicy0tZmlsdGVyIGxpOmhvdmVyIGEge1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi50YWJzLS1maWx0ZXIgbGkuc2VsZWN0IHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xufVxuXG4ucGFnZS1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogNzBweCAwO1xufVxuXG4ucGFnZS10b3BfX3NlYXJjaCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB3aWR0aDogNTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG4ucGFnZS10b3BfX3NlYXJjaCAuc2VhcmNoX193cmFwIHtcbiAgd2lkdGg6IDI5MHB4O1xuICBmbG9hdDogcmlnaHQ7XG59XG4ucGFnZS10b3BfX3NlYXJjaCAuc2VhcmNoX193cmFwIGkge1xuICBmb250LXNpemU6IDQwcHg7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmbG9hdDogbGVmdDtcbn1cbi5wYWdlLXRvcF9fc2VhcmNoIC5zZWFyY2hfX3dyYXAgaW5wdXQge1xuICB3aWR0aDogMjMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc2VhcmNoLXRvZ2dsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNlYXJjaC1leHBhbmRlZCB7XG4gIHdpZHRoOiAyOTBweDtcbn1cblxuLmZpbHRlci13cmFwIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgcGFkZGluZzogMzBweCAwO1xuICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG5cbiNtYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNjBweDtcbn1cblxuLnNob3ctZm9yLWxhcmdlLXVwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNob3ctZm9yLW1lZGl1bS11cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS11cCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5zaG93LXNtYWxsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuc21hbGwtMTIuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICB9XG4gIC5wYWdlLW1haW4tLWxpc3QgLnNtYWxsLTEyLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC4ycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMnJlbTtcbiAgfVxuICAuc21hbGwtMTIuY29sdW1ucy0tbW9iaWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuZXh0ZW5kLWxlZnQ6YmVmb3JlIHtcbiAgICBsZWZ0OiAtMTk4NXB4O1xuICB9XG4gIC5wYWdlLXRvcCB7XG4gICAgaGVpZ2h0OiAxMzRweDtcbiAgfVxuICAucGFnZS10b3AgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gIH1cbiAgLnBhZ2UtdG9wLS10YWxsIHtcbiAgICBoZWlnaHQ6IDE4MHB4O1xuICB9XG4gIC5wYWdlLXRvcC0tdGFsbCBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDE4MHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5wYWdlLXRvcF9fc2VhcmNoIHtcbiAgICBtYXJnaW4tdG9wOiA2OHB4O1xuICB9XG4gIC5wYWdlLXRvcF9fc2VhcmNoIC5zZWFyY2hfX3dyYXAge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgfVxuICAucGFnZS10b3BfX3NlYXJjaCAuc2VhcmNoX193cmFwIGlucHV0IHtcbiAgICB3aWR0aDogMzQwcHg7XG4gIH1cbiAgLnRhYnMtLWZpbHRlciBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDI2MHB4O1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gIH1cbiAgLnNlYXJjaC1leHBhbmRlZCB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICB9XG4gIC5jcnVtYnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zaWRlYmFyIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICAuc2lkZWJhciAuc2lkZWJhcl9fYm9yZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5zaWRlYmFyIC5zaWRlYmFyX19ib3JkZXI6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zaWRlYmFyIC5zaWRlYmFyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgfVxuICAuc2lkZWJhciAuc2lkZWJhcl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgfVxuICAuc2lkZWJhciAuc2lkZWJhcl9fc3ViIHtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICB9XG4gIC5zaWRlYmFyIHVsLnNpZGViYXJfX25hdiB7XG4gICAgcGFkZGluZzogMCAwIDNlbSAwO1xuICB9XG4gIC5zaWRlYmFyIHVsLnNpZGViYXJfX25hdiBsaSB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuICAuY29udGVudCB7XG4gICAgbWFyZ2luOiA2MHB4IDAgNjBweCAwO1xuICB9XG4gIC5jb250ZW50IC5jb250ZW50X19ib3JkZXIge1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDMwcHg7XG4gIH1cbiAgLnJvdy0tbWVkaXVtLXN0YWNrIC5jb250ZW50IHtcbiAgICBtYXJnaW46IDBweCAwIDYwcHggMDtcbiAgfVxuICAucm93LS1tZWRpdW0tc3RhY2sgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIC5yb3ctLW1lZGl1bS1zdGFjayB1bC5zaWRlYmFyX19uYXYge1xuICAgIHBhZGRpbmc6IDAgMCAzZW0gMDtcbiAgfVxuICAucm93LS1tZWRpdW0tc3RhY2sgdWwuc2lkZWJhcl9fbmF2IGxpIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc21hbGwtMTIuY29sdW1ucy0tbW9iaWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbiAgLmV4dGVuZC1sZWZ0OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wYWdlLXRvcC0tdGFsbCB7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgfVxuICAucGFnZS10b3AtLXRhbGwgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxODBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICB9XG4gIC5wYWdlLXRvcF9fc2VhcmNoIC5zZWFyY2hfX3dyYXAge1xuICAgIHdpZHRoOiA0NjBweDtcbiAgfVxuICAucGFnZS10b3BfX3NlYXJjaCAuc2VhcmNoX193cmFwIGlucHV0IHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbiAgLnNlYXJjaC1leHBhbmRlZCB7XG4gICAgd2lkdGg6IDQ2MHB4O1xuICB9XG4gIC5zaWRlYmFyIC5zaWRlYmFyX19ib3JkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuc2lkZWJhciAuc2lkZWJhcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gIH1cbiAgLnNpZGViYXIgLnNpZGViYXJfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gIH1cbiAgLnNpZGViYXIgLnNpZGViYXJfX3N1YiB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgfVxuICAuc2lkZWJhciB1bC5zaWRlYmFyX19uYXYgbGkge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciB7XG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgfVxuICAucm93LS1tZWRpdW0tc3RhY2sgLmNvbnRlbnQge1xuICAgIG1hcmdpbjogODBweCAwIDYwcHggMDtcbiAgfVxuICAucm93LS1tZWRpdW0tc3RhY2sgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciB7XG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgfVxuICAuc2hvdy1mb3ItbGFyZ2UtdXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uc29jaWFscyB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNvY2lhbHMgaDMge1xuICBtYXJnaW4tdG9wOiAyZW07XG59XG4uc29jaWFscyAuZmEge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xufVxuLnNvY2lhbHMgLmZhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC43NTtcbn1cbi5zb2NpYWxzIC5mYS5mYS12aW1lbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGFkZWY7XG59XG4uc29jaWFscyAuZmEuZmEtbGlua2VkaW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA4NWM3O1xufVxuLnNvY2lhbHMgLmZhLmZhLXR3aXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzhjZGYwO1xufVxuLnNvY2lhbHMgLmZhLmZhLWZhY2Vib29rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzN2JiZDtcbn1cbi5zb2NpYWxzIC5mYS5mYS15b3V0dWJlLXBsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTk2NTRiO1xufVxuLnNvY2lhbHMgLmZhLmZhLWdvb2dsZS1wbHVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRjNGM0Yjtcbn1cbi5zb2NpYWxzIC5mYS5mYS1yc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0OTkwO1xufVxuLnNvY2lhbHMgLmZhLmZhLWVudmVsb3BlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbn1cblxuLnRydXN0cGlsb3RzaGFyZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4udHJ1c3RwaWxvdHNoYXJlIHAge1xuICBtYXJnaW4tdG9wOiAwLjhlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi50cnVzdHBpbG90c2hhcmUgYSB7XG4gIGNvbG9yOiAjNTg1OTViO1xufVxuXG4ubWFwIHtcbiAgcGFkZGluZy10b3A6IDUwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLnJvdyAubmV3LW1lbWJlci1zaWdudXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cbi5yb3cgLm5ldy1tZW1iZXItc2lnbnVwIGgyIHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cbi5yb3cgLm5ldy1tZW1iZXItc2lnbnVwIC5yb3cge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiAxZW07XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7XG59XG5cbi5oZWxwLWJ1dHRvbi1tYWluIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogLTYuMTI1cmVtO1xuICBib3R0b206IDExLjg3NXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgd2lkdGg6IDEzLjEyNXJlbTtcbiAgbWluLWhlaWdodDogMy43NXJlbTtcbiAgei1pbmRleDogMTMwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTUuNjI1ZW0pIHtcbiAgLmhlbHAtYnV0dG9uLW1haW4ge1xuICAgIHRvcDogMjAlO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuLmhlbHAtYnV0dG9uLW1haW4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDU4Mjk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNjI1cmVtIDFyZW0gMC42MjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcbn1cbi5oZWxwLWJ1dHRvbi1tYWluIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5oZWxwLWJ1dHRvbi1tYWluIGE6aG92ZXIgaSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmhlbHAtYnV0dG9uLW1haW4gYSBpIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgei1pbmRleDogMjUwO1xufVxuXG4ucXVvdGVzLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDBhNGIxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLnF1b3Rlcy1zbGlkZXIge1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtIDA7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luLXRvcDogMy4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5xdW90ZXMtc2xpZGVyIHtcbiAgICBwYWRkaW5nOiA0LjM3NXJlbTtcbiAgICBmb250LXNpemU6IDIuMzEyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTtcbiAgfVxufVxuLnF1b3Rlcy1zbGlkZXIgLm9yYml0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNjkuNzVyZW07XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAucXVvdGVzLXNsaWRlciAub3JiaXQtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMCAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnF1b3Rlcy1zbGlkZXIgLm9yYml0LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAgNXJlbTtcbiAgfVxufVxuLnF1b3Rlcy1zbGlkZXIgdWwge1xuICBtYXgtd2lkdGg6IDY5Ljc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucXVvdGVzLXNsaWRlciB1bCBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnF1b3Rlcy1zbGlkZXIgdWwgbGkgZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5xdW90ZXMtc2xpZGVyIHVsIGxpIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5xdW90ZXMtc2xpZGVyIHVsIGxpIHAge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucXVvdGVzLXNsaWRlciB1bCBsaSBwIHtcbiAgICBmb250LXNpemU6IDIuMzEyNXJlbTtcbiAgfVxufVxuLnF1b3Rlcy1zbGlkZXIgdWwgbGkgcDpiZWZvcmUge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBjb250ZW50OiBcIuKAnFwiO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucXVvdGVzLXNsaWRlciB1bCBsaSBwOmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAyLjMxMjVyZW07XG4gIH1cbn1cbi5xdW90ZXMtc2xpZGVyIHVsIGxpIHA6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKAnVwiO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnF1b3Rlcy1zbGlkZXIgdWwgbGkgcDphZnRlciB7XG4gICAgZm9udC1zaXplOiAyLjMxMjVyZW07XG4gIH1cbn1cbi5xdW90ZXMtc2xpZGVyIHVsIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucXVvdGVzLXNsaWRlciAub3JiaXQtYnVsbGV0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnF1b3Rlcy1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMnB4O1xuICBtYXJnaW46IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwYTRiMTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucXVvdGVzLXNsaWRlciAub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICAgIGhlaWdodDogMThweDtcbiAgICB3aWR0aDogMThweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDBhNGIxO1xuICB9XG59XG4ucXVvdGVzLXNsaWRlciAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbn1cbi5xdW90ZXMtc2xpZGVyIC5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAqL1xuICAvKipcbiAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgKi9cbn1cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuICAvKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG59XG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZzbWFsbGlzaD0yNWVtJnNtYWxsbWVkPTMxLjI1ZW0mbWVkaXVtPTQ2Ljg3NWVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZWlzaD04MS4yNWVtJnh4bGFyZ2U9OTBlbSZ4eHhsYXJnZT05NS42MjVlbSZ4eHh4bGFyZ2U9MTE2Ljg3NWVtXCI7XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLnJvdzo6YmVmb3JlLCAucm93OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5yb3c6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4ucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnJvdyAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICB9XG59XG4ucm93IC5yb3cuY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnJvdy5leHBhbmRlZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4ucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbi5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLnNtYWxsLXB1c2gtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzUlO1xufVxuXG4uc21hbGwtcHVsbC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7XG59XG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlO1xufVxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDIwJTtcbn1cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbn1cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xufVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLnNtYWxsLWNlbnRlcmVkLCAuc21hbGwtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiBub25lO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVuY2VudGVyZWQsXG4uc21hbGwtcHVzaC0wLFxuLnNtYWxsLXB1bGwtMCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxuICAubWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsXG4ubWVkaXVtLXB1c2gtMCxcbi5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4ubGFyZ2UtcHVzaC0wLFxuLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5oMSBzbWFsbCxcbmgyIHNtYWxsLFxuaDMgc21hbGwsXG5oNCBzbWFsbCxcbmg1IHNtYWxsLFxuaDYgc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbiAgY29sb3I6ICNlOWU5ZTk7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYTpob3ZlciwgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMDAzZjdjO1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogODQuNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWU5ZTk7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAycmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTllOWU5O1xufVxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM1ODU5NWI7XG59XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjNTg1OTViO1xufVxuY2l0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAlCBcIjtcbn1cblxuYWJiciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U5ZTllOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjNTg1OTViO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wICsgLnN0YXQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cblxuLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbmFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbmFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlLFxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzU4NTk1YjtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbmltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207XG4gIH1cbiAgcCxcbmgyLFxuaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICB9XG59XG5bdHlwZT10ZXh0XSwgW3R5cGU9cGFzc3dvcmRdLCBbdHlwZT1kYXRlXSwgW3R5cGU9ZGF0ZXRpbWVdLCBbdHlwZT1kYXRldGltZS1sb2NhbF0sIFt0eXBlPW1vbnRoXSwgW3R5cGU9d2Vla10sIFt0eXBlPWVtYWlsXSwgW3R5cGU9bnVtYmVyXSwgW3R5cGU9c2VhcmNoXSwgW3R5cGU9dGVsXSwgW3R5cGU9dGltZV0sIFt0eXBlPXVybF0sIFt0eXBlPWNvbG9yXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNTYyNXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5bdHlwZT10ZXh0XTpmb2N1cywgW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCBbdHlwZT1kYXRlXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLCBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIFt0eXBlPW1vbnRoXTpmb2N1cywgW3R5cGU9d2Vla106Zm9jdXMsIFt0eXBlPWVtYWlsXTpmb2N1cywgW3R5cGU9bnVtYmVyXTpmb2N1cywgW3R5cGU9c2VhcmNoXTpmb2N1cywgW3R5cGU9dGVsXTpmb2N1cywgW3R5cGU9dGltZV06Zm9jdXMsIFt0eXBlPXVybF06Zm9jdXMsIFt0eXBlPWNvbG9yXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzU4NTk1Yjtcbn1cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cblt0eXBlPXN1Ym1pdF0sXG5bdHlwZT1idXR0b25dIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuW3R5cGU9ZmlsZV0sXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbCxcblt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U5ZTllOTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDIuNjI1cmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGhlaWdodDogMi42MjVyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllOWU5O1xufVxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNTYyNXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4ODgsIDg5LCA5MSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDAgKSB7XG4gIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgfVxufVxuc2VsZWN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZWRlYjtcbn1cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdmN2Y3O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xufVxuLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGNvbnRlbnQ6IFwiK1wiO1xufVxuLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCTXCI7XG59XG5cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjNTg1OTViO1xufVxuOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3O1xufVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzU4NTk1YjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5tZW51ID4gbGkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAubWVudSA+IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51ID4gbGkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5tZW51IGlucHV0LFxuLm1lbnUgc2VsZWN0LFxuLm1lbnUgYSxcbi5tZW51IGJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ubWVudSA+IGxpID4gYSBpbWcsXG4ubWVudSA+IGxpID4gYSBpLFxuLm1lbnUgPiBsaSA+IGEgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5tZW51ID4gbGkgPiBhIGltZyArIHNwYW4sXG4ubWVudSA+IGxpID4gYSBpICsgc3Bhbixcbi5tZW51ID4gbGkgPiBhIHN2ZyArIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lbnUgPiBsaSA+IGEgaW1nLFxuLm1lbnUgPiBsaSA+IGEgaSxcbi5tZW51ID4gbGkgPiBhIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUgPiBsaSwgLm1lbnUuaG9yaXpvbnRhbCA+IGxpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cbi5tZW51LmV4cGFuZGVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuLm1lbnUuZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubWVudS52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1lbnUuc2ltcGxlIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5tZW51LnNpbXBsZSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi5tZW51LnNpbXBsZSBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4ubWVudS5zaW1wbGUuYWxpZ24tcmlnaHQgbGkge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUuYWxpZ24tcmlnaHQ6OmJlZm9yZSwgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4ubWVudS5hbGlnbi1yaWdodCA+IGxpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5pY29uLXRvcCA+IGxpID4gYSBpbWcsXG4ubWVudS5pY29uLXRvcCA+IGxpID4gYSBpLFxuLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07XG59XG4ubWVudS5pY29uLXRvcC52ZXJ0aWNhbCBhID4gc3BhbiB7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUgLmFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5tZW51Lm1lbnUtYm9yZGVyZWQgbGkge1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5tZW51Lm1lbnUtYm9yZGVyZWQgbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wOiAwO1xufVxuLm1lbnUubWVudS1ob3ZlciBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWVudS10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1lbnUtY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjZmZmZmZmLCAwIDE0cHggMCAjZmZmZmZmO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICBib3gtc2hhZG93OiAwIDdweCAwICNlOWU5ZTksIDAgMTRweCAwICNlOWU5ZTk7XG59XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTg1OTViO1xuICBib3gtc2hhZG93OiAwIDdweCAwICM1ODU5NWIsIDAgMTRweCAwICM1ODU5NWI7XG59XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaXMtZHJpbGxkb3duIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG59XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG59XG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDQ5OTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDQ5OTAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMXJlbTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTllOWU5O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzAwNDk5MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDQ5OTAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDQ5OTA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzAwNDk5MCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA0OTkwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDA0OTkwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDQ5OTAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDQ5OTAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwNDk5MDtcbiAgfVxufVxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7XG59XG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U5ZTllOTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDA0OTkwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDQ5OTA7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4ucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbi5mbGV4LXZpZGVvIGlmcmFtZSxcbi5mbGV4LXZpZGVvIG9iamVjdCxcbi5mbGV4LXZpZGVvIGVtYmVkLFxuLmZsZXgtdmlkZW8gdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4uZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyNC45Mzc1ZW0pIHtcbiAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24uYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTA7XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTA7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAyNTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5wb3NpdGlvbi1sZWZ0LmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4ucG9zaXRpb24tcmlnaHQuaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbn1cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2g6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDFweDtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cbi5wb3NpdGlvbi10b3AuaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2g6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cbi5wb3NpdGlvbi1ib3R0b20uaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbiAgY29udGVudDogXCIgXCI7XG59XG4ucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi50YWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjMDA1MmEyO1xufVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbi50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDAzZjdjO1xufVxuLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdmN2Y3O1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLnRhYnMtcGFuZWxbYXJpYS1oaWRkZW49ZmFsc2VdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyNC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ2LjgxMjVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDYuODEyNWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03O1xufVxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7XG4gIH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpO1xuICB9XG59XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47XG59XG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjtcbn1cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gIH1cbn1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZztcbn1cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTtcbiAgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTtcbiAgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4vKiEgRmxpY2tpdHkgdjIuMi4yXG5odHRwczovL2ZsaWNraXR5Lm1ldGFmaXp6eS5jb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZsaWNraXR5LWVuYWJsZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mbGlja2l0eS1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIGRyYWdnYWJsZSAqL1xuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydC5pcy1wb2ludGVyLWRvd24ge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi8qIC0tLS0gZmxpY2tpdHktYnV0dG9uIC0tLS0gKi9cbi5mbGlja2l0eS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IGhzbGEoMCwgMCUsIDEwMCUsIDAuNzUpO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCAjMTlGO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uOmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMztcbiAgY3Vyc29yOiBhdXRvO1xuICAvKiBwcmV2ZW50IGRpc2FibGVkIGJ1dHRvbiBmcm9tIGNhcHR1cmluZyBwb2ludGVyIHVwIGV2ZW50LiAjNzE2ICovXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi8qIC0tLS0gcHJldmlvdXMvbmV4dCBidXR0b25zIC0tLS0gKi9cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLyogdmVydGljYWxseSBjZW50ZXIgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICByaWdodDogMTBweDtcbn1cblxuLyogcmlnaHQgdG8gbGVmdCAqL1xuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4O1xufVxuXG4uZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTBweDtcbn1cblxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24gLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAyMCU7XG4gIHRvcDogMjAlO1xuICB3aWR0aDogNjAlO1xuICBoZWlnaHQ6IDYwJTtcbn1cblxuLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luOiAwIDhweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdC5pcy1zZWxlY3RlZCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyODtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYigzMSwgNzMsIDEzOSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMzEsIDczLCAxMzksIDAuOCk7XG59XG4uaGVhZGVyIC5yb3cge1xuICBtYXgtd2lkdGg6IDkxLjI1cmVtO1xufVxuLmhlYWRlciAubWFpbl9fbG9nbyB7XG4gIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiA3LjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVhZGVyIC5tYWluX19sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmhlYWRlciAubWFpbl9fbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAuaGVhZGVyIC5tYWluX19sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgei1pbmRleDogMTI4O1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgdWwgbGkgYSB7XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAudG9wX19jYXJ0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCAudG9wX19jYXJ0IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjYTQwNDc1O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAudG9wX19jYXJ0IHNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmZmZmZmY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBoZWlnaHQ6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBmb250LXNpemU6IDAuOWVtO1xuICBwYWRkaW5nOiAwIDAgMCA0cHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgLnRvcF9fY2FydCBzZWxlY3Q6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhlYWRlciAuaGVhZGVyX190b3AgLnRvcF9fY2FydCBzZWxlY3Qge1xuICAgIHBhZGRpbmc6IDAgMjZweCAwIDRweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvc3RhdGljL2ltYWdlcy9kcm9wLWFycm93LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCAudG9wX19jYXJ0IHNlbGVjdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3N0YXRpYy9pbWFnZXMvZHJvcC1hcnJvdy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIC50b3BfX2NhcnQgc2VsZWN0IG9wdGlvbiB7XG4gIGNvbG9yOiBibGFjaztcbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIHVsLm1lbnUtLXRvcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCB1bC5tZW51LS10b3Age1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIHVsLm1lbnUtLXRvcCBsaSBhIHtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5oZWFkZXIgLmhlYWRlcl9fdG9wIHVsLm1lbnUtLXRvcCBsaSBhIHtcbiAgICBtaW4taGVpZ2h0OiAzLjEyNXJlbTtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCB1bC5tZW51LS10b3AgbGkgYSB7XG4gICAgbWluLWhlaWdodDogNC41cmVtO1xuICAgIHBhZGRpbmc6IDEuNTYyNXJlbTtcbiAgfVxufVxuLmhlYWRlciAuaGVhZGVyX190b3AgdWwubWVudS0tdG9wIGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIHVsLm1lbnUtLXRvcCBsaS5tZW51X19hY2NvdW50IGEge1xuICBiYWNrZ3JvdW5kOiAjZGQ1ODI5O1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgdWwubWVudS0tdG9wIGxpLm1lbnVfX2VsZWFybmluZyBhIHtcbiAgYmFja2dyb3VuZDogIzhCQzM0QTtcbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIC5tYWluX19zZWFyY2gge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCAubWFpbl9fc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDE4Ljc1cmVtO1xuICB9XG4gIC5oZWFkZXIgLmhlYWRlcl9fdG9wIC5tYWluX19zZWFyY2ggLnNlYXJjaF9fd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIH1cbiAgLmhlYWRlciAuaGVhZGVyX190b3AgLm1haW5fX3NlYXJjaCAuc2VhcmNoX193cmFwIGlucHV0LnNlYXJjaF9faW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgbWluLWhlaWdodDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLWhlaWdodDogNzAwcHgpIHtcbiAgLmhlYWRlciAuaGVhZGVyX190b3AgLm1haW5fX3NlYXJjaCAuc2VhcmNoX193cmFwIGlucHV0LnNlYXJjaF9faW5wdXQge1xuICAgIHBhZGRpbmc6IDEuMzEyNXJlbTtcbiAgICBtaW4taGVpZ2h0OiA0LjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgLmhlYWRlciAuaGVhZGVyX190b3AgLm1haW5fX3NlYXJjaCAuc2VhcmNoX193cmFwIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5oZWFkZXIgLmhlYWRlcl9fdG9wIC5tYWluX19zZWFyY2ggLnNlYXJjaF9fd3JhcCBpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAyLjU2MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNTYyNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDIuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgfVxufVxuLmhlYWRlciAuaGVhZGVyX190b3AgLmRyb3Bkb3duLXBhbmUge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTczO1xuICB3aWR0aDogMTIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgLmRyb3Bkb3duLXBhbmUgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAuZHJvcGRvd24tcGFuZSB1bCBsaSB7XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIC5kcm9wZG93bi1wYW5lIHVsIGxpIGEge1xuICBib3JkZXI6IDA7XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAuZHJvcGRvd24tcGFuZSB1bCBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAuY2FydF9fYW1vdW50X19vdXRlciB7XG4gIGJhY2tncm91bmQ6ICNhNDA0NzU7XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAuY2FydF9fYW1vdW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCAuY2FydF9fYW1vdW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlcl9fdG9wIC5jYXJ0X19hbW91bnQgLmZhIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX3RvcCAuY2FydF9fYW1vdW50IC5mYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXJfX3RvcCAuY2FydF9fYW1vdW50IGEge1xuICBwYWRkaW5nLWxlZnQ6IDhweCAhaW1wb3J0YW50O1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgYS50b3BfX3NpZ24taW4ge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xufVxuLmhlYWRlciAuaGVhZGVyX190b3AgYS50b3BfX3NpZ24taW46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA4Yzk4O1xuICBjb2xvcjogI2ZmZjtcbn1cbi5oZWFkZXIgLmhlYWRlcl9fbWFpbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaGVhZGVyIC5oZWFkZXJfX21haW4ge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAuaGVhZGVyIC5oZWFkZXJfX21haW4ge1xuICAgIG1pbi1oZWlnaHQ6IDEzLjU2MjVyZW07XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlcl9fbWFpbiAubWVudS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxLjI1cmVtO1xuICByaWdodDogMS44NzVyZW07XG59XG4uaGVhZGVyIC5oZWFkZXJfX21haW4gLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDVweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAxMnB4IDAgI2ZmZmZmZiwgMCAyNHB4IDAgI2ZmZmZmZjtcbiAgY29udGVudDogXCJcIjtcbn1cbi5oZWFkZXIgLmhlYWRlcl9fbWFpbiAubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAwICMwMGE0YjEsIDAgMjRweCAwICMwMGE0YjE7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIC5oZWFkZXIgLmhlYWRlcl9fbWFpbiAubWVudS1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyIGltZyB7XG4gIHdpZHRoOiA5LjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cztcbn1cbi5oZWFkZXIuZml4ZWQgLm1haW5fX2xvZ28ge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oZWFkZXIuZml4ZWQgLm1haW5fX2xvZ28ge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLWhlaWdodDogNzAwcHgpIHtcbiAgLmhlYWRlci5maXhlZCAubWFpbl9fbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmhlYWRlci5maXhlZCAubWFpbl9fbG9nbyBpbWcge1xuICAgIHdpZHRoOiA2LjYyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGVhZGVyLmZpeGVkIC5tYWluX19sb2dvIGltZyB7XG4gICAgd2lkdGg6IDcuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICAuaGVhZGVyLmZpeGVkIHVsLm1haW5fX25hdiBsaSBhIHtcbiAgICBwYWRkaW5nOiAwLjE1ZW0gMCAxLjM3NXJlbSAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1heC1oZWlnaHQ6IDcwMHB4KSB7XG4gIC5oZWFkZXIuZml4ZWQgdWwubWFpbl9fbmF2IGxpIGEge1xuICAgIHBhZGRpbmc6IDAuMTVlbSAwIDEuMzc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgLmhlYWRlci5maXhlZCB1bC5tYWluX19uYXYgbGkgYTpiZWZvcmUge1xuICAgIGJvdHRvbTogMC4zNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLWhlaWdodDogNzAwcHgpIHtcbiAgLmhlYWRlci5maXhlZCB1bC5tYWluX19uYXYgbGkgYTpiZWZvcmUge1xuICAgIGJvdHRvbTogMC43NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAuaGVhZGVyLmZpeGVkIC5oZWFkZXJfX21haW4ge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzMTVweDtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cblxuLmZvb3Rlcl9fdG9wIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uZm9vdGVyX190b3AgLmZvb3Rlcl9fYnJhbmQge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX3RvcCAuZm9vdGVyX19icmFuZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLmZvb3Rlcl9fdG9wIGltZyB7XG4gIG1hcmdpbjogMzZweCAwIDIwcHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDBweDtcbn1cbi5mb290ZXJfX3RvcCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwcHggMCAyMHB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fbGlua3Mge1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG59XG4uZm9vdGVyX19ib3R0b20gdWwuZm9vdGVyX19saW5rcyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX2xpbmtzIGxpIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX3NvY2lhbCB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEge1xuICBwYWRkaW5nOiAwIDhweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uZm9vdGVyX19ib3R0b20gdWwuZm9vdGVyX19zb2NpYWwgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEudHJ1c3RwaWxvdC1zdGFyIHtcbiAgcGFkZGluZzogMDtcbn1cbi5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX3NvY2lhbCBsaSBhLnRydXN0cGlsb3Qtc3RhciBzdmcge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEudHJ1c3RwaWxvdC1zdGFyIHN2ZyBwb2x5Z29uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG4uZm9vdGVyX19ib3R0b20gdWwuZm9vdGVyX19zb2NpYWwgbGkgYS50cnVzdHBpbG90LXN0YXI6aG92ZXIgc3ZnIHBvbHlnb24ge1xuICBmaWxsOiAjMDBhNGIxO1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEueC1sb2dvIHtcbiAgcGFkZGluZzogMDtcbn1cbi5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX3NvY2lhbCBsaSBhLngtbG9nbyBzdmcge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEueC1sb2dvIHN2ZyBwYXRoIHtcbiAgZmlsbDogI2ZmZmZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG4uZm9vdGVyX19ib3R0b20gdWwuZm9vdGVyX19zb2NpYWwgbGkgYS54LWxvZ286aG92ZXIgc3ZnIHBhdGgge1xuICBmaWxsOiAjMDBhNGIxO1xufVxuLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fc29jaWFsIGxpIGEgaSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cbi5mb290ZXJfX2JvdHRvbSAuc2l0ZUJ5IHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgY29sb3I6ICNmZmY7XG59XG4uZm9vdGVyX19ib3R0b20gLnNpdGVCeSBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5mb290ZXJfX2JvdHRvbSAuc2l0ZUJ5IGE6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5mb290ZXJfX2JvdHRvbSAudmF0TWVzc2FnZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG5cbmRpdiNnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5kaXYjZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50IHNlbGVjdC5nb29nLXRlLWNvbWJvIHtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogI2Q4ZDhkOCBzb2xpZCAxcHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZm9vdGVyX19ib3R0b20gLmZvb3Rlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX2xpbmtzIHtcbiAgICBtYXJnaW46IDAgNDBweCAyMHB4IDA7XG4gIH1cbiAgLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fbGlua3MgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX3NvY2lhbCB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gIH1cbiAgLmZvb3Rlcl9fYm90dG9tIC52YXRNZXNzYWdlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fdG9wIC5mb290ZXJfX2JyYW5kIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE2MHB4O1xuICB9XG4gIC5mb290ZXJfX3RvcCBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMzZweCAwIDU0cHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuZm9vdGVyX190b3Agc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIG1hcmdpbjogNTBweCAwIDAgNDBweDtcbiAgfVxuICAuZm9vdGVyX19ib3R0b20gdWwuZm9vdGVyX19saW5rcyB7XG4gICAgbWFyZ2luOiAwIDYwcHggNDBweCAwO1xuICB9XG4gIC5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX2xpbmtzIGxpIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cbiAgLmZvb3Rlcl9fYm90dG9tIHVsLmZvb3Rlcl9fbGlua3MgbGkgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIC5mb290ZXJfX2JvdHRvbSB1bC5mb290ZXJfX3NvY2lhbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luOiA1MHB4IDAgMCAwO1xuICB9XG59XG4uYmxvY2stNTAtLWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJsb2NrLTUwLS1zaG9ydCB7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBhZGRpbmc6IDAgMzBweDtcbn1cbi5ibG9jay01MC0tc2hvcnQgaDIge1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMTAwcHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5ibG9jay01MC0tc2hvcnQgLmJsb2NrX19hcnJvdyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbn1cblxuLmJsb2NrX19hcnJvdyB7XG4gIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IHNvbGlkIDJweCAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYmxvY2tfX2Fycm93IGkge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzhweDtcbiAgYW5pbWF0aW9uOiBhcnJvd2JvYiAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBhcnJvd2JvYiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbn1cbi5ibG9jay1leHRlbmQge1xuICBoZWlnaHQ6IDk2cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xufVxuLmJsb2NrLWV4dGVuZCBoMiB7XG4gIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICBmb250LXNpemU6IDIuMTg3NXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDEuMjVyZW0gMCAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5ibG9jay1leHRlbmQgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmJsb2NrLWV4dGVuZCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmJsb2NrLWV4dGVuZCBpLmZhLWFuZ2xlLXJpZ2h0IHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZsb2F0OiByaWdodDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuNGVtO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICBhbmltYXRpb246IGFycm93c2xpZGUgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG4uYmxvY2stZXh0ZW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMjAwMHB4O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG59XG4uYmxvY2stZXh0ZW5kOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyMHB4O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG59XG5cbi5ibG9jay1leHRlbmQtLXRlYWwge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xufVxuLmJsb2NrLWV4dGVuZC0tdGVhbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xufVxuLmJsb2NrLWV4dGVuZC0tdGVhbDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5cbi5ibG9jay1leHRlbmQtLXBpbmsge1xuICBiYWNrZ3JvdW5kOiAjYTQwNDc1O1xufVxuLmJsb2NrLWV4dGVuZC0tcGluazpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjYTQwNDc1O1xufVxuLmJsb2NrLWV4dGVuZC0tcGluazphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNhNDA0NzU7XG59XG4uYmxvY2stZXh0ZW5kLS1waW5rIGgzIHtcbiAgY29sb3I6ICNhNDA0NzU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYmxvY2stZXh0ZW5kLS1waW5rIGEge1xuICBjb2xvcjogI2E0MDQ3NTtcbn1cblxuLmJsb2NrLWV4dGVuZC0tb3JhbmdlIHtcbiAgYmFja2dyb3VuZDogI2RkNTgyOTtcbn1cbi5ibG9jay1leHRlbmQtLW9yYW5nZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZGQ1ODI5O1xufVxuLmJsb2NrLWV4dGVuZC0tb3JhbmdlOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2RkNTgyOTtcbn1cblxuLmJsb2NrLWV4dGVuZC0tZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjNWJiZTgyO1xufVxuLmJsb2NrLWV4dGVuZC0tZ3JlZW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzViYmU4Mjtcbn1cbi5ibG9jay1leHRlbmQtLWdyZWVuOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzViYmU4Mjtcbn1cblxuLmJsb2NrLWV4dGVuZC0tbGVmdDpiZWZvcmUge1xuICBsZWZ0OiAtMjAwMHB4O1xufVxuLmJsb2NrLWV4dGVuZC0tbGVmdDphZnRlciB7XG4gIHJpZ2h0OiAtMjBweDtcbn1cblxuLmJsb2NrLWV4dGVuZC0tcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uYmxvY2stZXh0ZW5kLS1yaWdodDpiZWZvcmUge1xuICByaWdodDogLTIwMDBweDtcbn1cbi5ibG9jay1leHRlbmQtLXJpZ2h0OmFmdGVyIHtcbiAgbGVmdDogLTIwcHg7XG59XG5cbi5ibG9jay01MC0tYmx1ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG59XG5cbi5ibG9jay01MC0tdGVhbCB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5cbi5ibG9jay01MC0tZ3JleSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi5ibG9jay01MCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xufVxuLmJsb2NrLTUwOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmJsb2NrcyAuYmxvY2sgLm5ld3MtbGluayB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxuLmJsb2NrcyAuYmxvY2sgLm5ld3MtbGluayAuZmEtYW5nbGUtcmlnaHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICAvKiY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDNweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9Ki9cbn1cbi5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXIgLmJsb2NrX19pbmZvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTIzcHg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlciAuYmxvY2tfX2luZm8gc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjZmZmO1xuICB0b3A6IC0zMHB4O1xuICBsZWZ0OiAzMHB4O1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlciAuYmxvY2tfX2luZm8gaDMge1xuICBmb250LXNpemU6IDEuOGVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tb3JhbmdlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNkZDU4Mjk7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tb3JhbmdlIGgyIHtcbiAgY29sb3I6ICNkZDU4Mjk7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tb3JhbmdlIC5ibG9ja19fbW9yZSB7XG4gIGJhY2tncm91bmQ6ICNkZDU4Mjk7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tcGluazpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjYTQwNDc1O1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdGV4dC5ibG9jay1ib3JkZXItLXBpbmsgLmp0X2pvYl9wb3NpdGlvbixcbi5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLXRleHQuYmxvY2stYm9yZGVyLS1waW5rIGgyIHtcbiAgY29sb3I6ICNhNDA0NzU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tcGluayAuanRfam9iX2xvY2F0aW9uLFxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdGV4dC5ibG9jay1ib3JkZXItLXBpbmsgLmp0X2pvYl9jb21wYW55IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdGV4dC5ibG9jay1ib3JkZXItLXBpbmsgLmp0X2FsbGpvYnMge1xuICBmb250LXNpemU6IDEuNDM3NXJlbTtcbn1cbi5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLXRleHQuYmxvY2stYm9yZGVyLS1waW5rIGEge1xuICBjb2xvcjogI2E0MDQ3NTtcbn1cbi5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLXRleHQuYmxvY2stYm9yZGVyLS1waW5rIC5ibG9ja19fbW9yZSB7XG4gIGJhY2tncm91bmQ6ICNhNDA0NzU7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tdGVhbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdGV4dC5ibG9jay1ib3JkZXItLXRlYWwgaDIge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLXRleHQuYmxvY2stYm9yZGVyLS10ZWFsIC5ibG9ja19fbW9yZSB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5cbi5ibG9jay1ib3JkZXItLWZlYXR1cmUge1xuICBoZWlnaHQ6IDEyM3B4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJsb2NrX19tb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogIzAwMmY1ZDtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbn1cbi5ibG9ja19fbW9yZSAubW9yZV9fd3JhcCB7XG4gIHdpZHRoOiAxNDVweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmJsb2NrX19tb3JlIC5tb3JlX190ZXh0IHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHdpZHRoOiAxMDlweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xufVxuLmJsb2NrX19tb3JlIC5tb3JlX19wbHVzIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDMuMTI1cmVtO1xuICBoZWlnaHQ6IDM4cHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbn1cbi5ibG9ja19fbW9yZTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB3aWR0aDogMTQ1cHg7XG4gIHJpZ2h0OiAwcHg7XG59XG4uYmxvY2tfX21vcmU6aG92ZXIgLm1vcmVfX3RleHQge1xuICBvcGFjaXR5OiAxO1xufVxuLmJsb2NrX19tb3JlOmhvdmVyIC5tb3JlX19wbHVzIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4ud2hhdGlucHV0LXR5cGVzLXRvdWNoIC5ibG9ja19fbW9yZTpob3ZlciB7XG4gIHdpZHRoOiAzNnB4O1xufVxuXG4uYmxvY2stbGlzdDpob3ZlciAuYmxvY2tfX21vcmUsXG4uYm9va2xldC1saXN0OmhvdmVyIC5ibG9ja19fbW9yZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB3aWR0aDogMTQ1cHg7XG4gIHJpZ2h0OiAwcHg7XG59XG4uYmxvY2stbGlzdDpob3ZlciAuYmxvY2tfX21vcmUgLm1vcmVfX3RleHQsXG4uYm9va2xldC1saXN0OmhvdmVyIC5ibG9ja19fbW9yZSAubW9yZV9fdGV4dCB7XG4gIG9wYWNpdHk6IDE7XG59XG4uYmxvY2stbGlzdDpob3ZlciAuYmxvY2tfX21vcmUgLm1vcmVfX3BsdXMsXG4uYm9va2xldC1saXN0OmhvdmVyIC5ibG9ja19fbW9yZSAubW9yZV9fcGx1cyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cblxuLmJsb2NrX19tb3JlLS1saXN0IHtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xufVxuLmJsb2NrX19tb3JlLS1saXN0IC5tb3JlX193cmFwIHtcbiAgd2lkdGg6IDE0MXB4O1xufVxuLmJsb2NrX19tb3JlLS1saXN0IC5tb3JlX190ZXh0IHtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbn1cbi5ibG9ja19fbW9yZS0tbGlzdCAubW9yZV9fcGx1cyB7XG4gIGhlaWdodDogMzJweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xufVxuLmJsb2NrX19tb3JlLS1saXN0OmhvdmVyIHtcbiAgd2lkdGg6IDE0MXB4O1xufVxuXG4uYmxvY2tfX21vcmUtLWNvbnRlbnQge1xuICByaWdodDogMDtcbiAgYm90dG9tOiAtNHB4O1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xufVxuLmJsb2NrX19tb3JlLS1jb250ZW50OmhvdmVyIHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5ibG9jay1ib3JkZXItLXRleHQge1xuICBwYWRkaW5nOiAwIDEuMjVyZW0gMCAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmJsb2NrLWJvcmRlci0tdGV4dCBoMiB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG59XG4uYmxvY2stYm9yZGVyLS10ZXh0IGgzIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42ZW07XG59XG4uYmxvY2stYm9yZGVyLS10ZXh0IGg0IHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbi5ibG9jay1ib3JkZXItLXRleHQgLmJsb2NrX19tb3JlIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWV4dGVuZC5ibG9jay1leHRlbmQtLXJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwIDIuNXJlbSA1cmVtIDIuNXJlbTtcbiAgfVxufVxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdHdpdHRlciwgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tam9icyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10d2l0dGVyIDpiZWZvcmUsIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLWpvYnMgOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMjAwMHB4O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG4uYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10d2l0dGVyLmJsb2NrLWJvcmRlci0tdGV4dCwgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tam9icy5ibG9jay1ib3JkZXItLXRleHQge1xuICBwYWRkaW5nOiAwIDIuNXJlbSAyLjVyZW0gMi41cmVtO1xuICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdHdpdHRlci5ibG9jay1ib3JkZXItLXRleHQsIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLWpvYnMuYmxvY2stYm9yZGVyLS10ZXh0IHtcbiAgICBwYWRkaW5nOiAwIDIuNXJlbSAyLjVyZW0gMi41cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2tzIC5ibG9jayAuYmxvY2stYm9yZGVyLS10d2l0dGVyLmJsb2NrLWJvcmRlci0tdGV4dCwgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tam9icy5ibG9jay1ib3JkZXItLXRleHQge1xuICAgIHBhZGRpbmc6IDAgMi41cmVtIDVyZW0gMi41cmVtO1xuICB9XG59XG5cbi5ibG9jay1ib3JkZXItLXN0YWNrIHtcbiAgbWFyZ2luLXRvcDogNDVweDtcbn1cblxuLmJsb2NrX190d2l0dGVyIGg0IHtcbiAgZm9udC1zaXplOiAxLjQzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYmxvY2tfX3R3aXR0ZXIgLnR3aXR0ZXJfX25hbWUge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5ibG9ja19fdHdpdHRlciAudHdpdHRlcl9fdHdlZXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZS1tYWluLS1saXN0IHtcbiAgcGFkZGluZzogMzVweCAwIDAgMDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5wYWdlLW1haW4tLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1tYWluLS1saXN0IHtcbiAgICBwYWRkaW5nOiA0LjM3NXJlbSAwIDIuNXJlbSAwO1xuICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtO1xuICB9XG59XG4ucGFnZS1tYWluLS1saXN0LnNtYWxsVGl0bGVzIC5jb2x1bW5zIC5ibG9jay1saXN0IHtcbiAgaGVpZ2h0OiAzMDBweDtcbn1cbi5wYWdlLW1haW4tLWxpc3Quc21hbGxUaXRsZXMgLmNvbHVtbnMgLmJsb2NrLWxpc3QgLmJsb2NrLWxpc3RfX2luZm8gaDMge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5wYWdlLW1haW4tLWxpc3QgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnBhZ2UtbWFpbi0tbGlzdCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4ucGFnZS1tYWluLS1saXN0IC5yb3cge1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1tYWluLS1saXN0IC53aWR0aC0zIC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMlO1xuICB9XG4gIC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTMgLmNvbHVtbnMgLmJsb2NrLWxpc3Qge1xuICAgIGhlaWdodDogMzQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTUgLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnBhZ2UtbWFpbi0tbGlzdCAud2lkdGgtNSAuY29sdW1ucyAuYmxvY2stbGlzdCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgIGhlaWdodDogMjMwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgfVxuICAucGFnZS1tYWluLS1saXN0IC53aWR0aC01IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgfVxuICAucGFnZS1tYWluLS1saXN0IC53aWR0aC01IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIGgzIHtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgfVxuICAucGFnZS1tYWluLS1saXN0IC53aWR0aC01IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgdG9wOiAwLjU2MjVyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLmJvb2tsZXQtbGlzdC0tYm9va2xldHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uYm9va2xldC1saXN0LS1ib29rbGV0cyAuYm9va2xldC1saXN0IHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDElO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzEuMjVlbSkge1xuICAuYm9va2xldC1saXN0LS1ib29rbGV0cyAuYm9va2xldC1saXN0IHtcbiAgICBmbGV4LWJhc2lzOiA0OSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ib29rbGV0LWxpc3QtLWJvb2tsZXRzIC5ib29rbGV0LWxpc3Qge1xuICAgIGZsZXgtYmFzaXM6IDMyJTtcbiAgfVxufVxuLmJvb2tsZXQtbGlzdC0tYm9va2xldHMgLmJvb2tsZXQtbGlzdCBhLmJvb2tsZXQtbGlzdF9fTGluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5ib29rbGV0LWxpc3QtLWJvb2tsZXRzIC5ib29rbGV0LWxpc3QgLmJvb2tsZXQtbGlzdF9faW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxMi41cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cbi5ib29rbGV0LWxpc3QtLWJvb2tsZXRzIC5ib29rbGV0LWxpc3QgLmJvb2tsZXQtbGlzdF9faW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMXJlbSAyLjc1cmVtIDFyZW0gMS41cmVtO1xufVxuLmJvb2tsZXQtbGlzdC0tYm9va2xldHMgLmJvb2tsZXQtbGlzdCAuYm9va2xldC1saXN0X19pbmZvIGgzIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBtYXJnaW4tdG9wOiAwcHg7XG59XG4uYm9va2xldC1saXN0LS1ib29rbGV0cyAuYm9va2xldC1saXN0IC5ib29rbGV0LWxpc3RfX2luZm8gLmZhLWFuZ2xlLXJpZ2h0IHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuNjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxLjVyZW07XG4gIHRvcDogMXJlbTtcbn1cbi5ib29rbGV0LWxpc3QtLWJvb2tsZXRzIC5ib29rbGV0LWxpc3QgLmJvb2tsZXQtbGlzdF9fcHJpY2Uge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICBwYWRkaW5nOiAwLjMxMjVyZW0gMC42MjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3Qge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTMge1xuICBtYXJnaW4tbGVmdDogLTFyZW07XG4gIG1hcmdpbi1yaWdodDogLTFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC0zIC5jb2x1bW5zIC5ibG9jay1saXN0IHtcbiAgICBoZWlnaHQ6IDI5MHB4O1xuICB9XG59XG4ubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC00IHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjg3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmxhcmdlLTkgLnBhZ2UtbWFpbi0tbGlzdCAud2lkdGgtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTkgLnBhZ2UtbWFpbi0tbGlzdCAud2lkdGgtNCAuY29sdW1ucyAuYmxvY2stbGlzdCB7XG4gICAgaGVpZ2h0OiAyMTBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgfVxuICAubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC00IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgfVxuICAubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC00IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIGgzIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuICAubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC00IC5jb2x1bW5zIC5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgcmlnaHQ6IDEuMjVyZW07XG4gICAgdG9wOiAwLjYyNXJlbTtcbiAgfVxufVxuLmxhcmdlLTkgLnBhZ2UtbWFpbi0tbGlzdCAud2lkdGgtNSB7XG4gIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07XG4gIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtOSAucGFnZS1tYWluLS1saXN0IC53aWR0aC01IHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3QgLndpZHRoLTUgLmNvbHVtbnMgLmJsb2NrLWxpc3Qge1xuICAgIGhlaWdodDogMTgwcHg7XG4gIH1cbiAgLmxhcmdlLTkgLnBhZ2UtbWFpbi0tbGlzdCAud2lkdGgtNSAuY29sdW1ucyAuYmxvY2stbGlzdCAuYmxvY2stbGlzdF9faW5mbyBoMyB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgfVxufVxuXG4uYmxvY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyOHB4KTtcbiAgaGVpZ2h0OiAzMTJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC44NzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC44NzVyZW07XG59XG4uYmxvY2stbGlzdCBhLmJsb2NrLWxpc3RfX0xpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYmxvY2stbGlzdCAuYmxvY2stbGlzdF9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG4uYmxvY2stbGlzdCAuYmxvY2stbGlzdF9faW5mbyB7XG4gIHBhZGRpbmc6IDFyZW0gMi43NXJlbSAxcmVtIDEuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzO1xufVxuLmJsb2NrLWxpc3QgLmJsb2NrLWxpc3RfX2luZm8gaDMge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cbi5ibG9jay1saXN0IC5ibG9jay1saXN0X19pbmZvIC5mYS1hbmdsZS1yaWdodCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMS41cmVtO1xuICB0b3A6IDFyZW07XG59XG4uYmxvY2stbGlzdDpob3ZlciAuYmxvY2stbGlzdF9faW5mbyB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG4uYmxvY2stbGlzdCAuYmxvY2stbGlzdF9fcHJpY2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDdweCA3cHggNHB4IDdweDtcbn1cblxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuYmxvY2s6bnRoLWNoaWxkKDRuKzEpIC5ibG9jay1ib3JkZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2RkNTgyOTtcbn1cbi5ob21lLWZlYXR1cmVkIC5ibG9ja3MgLmJsb2NrOm50aC1jaGlsZCg0bisxKSAuYmxvY2stYm9yZGVyIC5ibG9ja19faW5mbyB7XG4gIGJhY2tncm91bmQ6ICNkZDU4Mjk7XG59XG4uaG9tZS1mZWF0dXJlZCAuYmxvY2tzIC5ibG9jazpudGgtY2hpbGQoNG4rMSkgLmJsb2NrLWJvcmRlciAuYmxvY2tfX21vcmUge1xuICBiYWNrZ3JvdW5kOiAjYjY0NTFkO1xufVxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuYmxvY2s6bnRoLWNoaWxkKDRuKzIpIC5ibG9jay1ib3JkZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbn1cbi5ob21lLWZlYXR1cmVkIC5ibG9ja3MgLmJsb2NrOm50aC1jaGlsZCg0bisyKSAuYmxvY2stYm9yZGVyIC5ibG9ja19faW5mbyB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG4uaG9tZS1mZWF0dXJlZCAuYmxvY2tzIC5ibG9jazpudGgtY2hpbGQoNG4rMikgLmJsb2NrLWJvcmRlciAuYmxvY2tfX21vcmUge1xuICBiYWNrZ3JvdW5kOiAjMDA3NTdlO1xufVxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuYmxvY2s6bnRoLWNoaWxkKDRuKzMpIC5ibG9jay1ib3JkZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2E0MDQ3NTtcbn1cbi5ob21lLWZlYXR1cmVkIC5ibG9ja3MgLmJsb2NrOm50aC1jaGlsZCg0biszKSAuYmxvY2stYm9yZGVyIC5ibG9ja19faW5mbyB7XG4gIGJhY2tncm91bmQ6ICNhNDA0NzU7XG59XG4uaG9tZS1mZWF0dXJlZCAuYmxvY2tzIC5ibG9jazpudGgtY2hpbGQoNG4rMykgLmJsb2NrLWJvcmRlciAuYmxvY2tfX21vcmUge1xuICBiYWNrZ3JvdW5kOiAjNzIwMzUxO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmJsb2NrLWJvcmRlci0tZmVhdHVyZSB7XG4gICAgaGVpZ2h0OiAzMThweDtcbiAgfVxuICAuYmxvY2stNTAge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmJsb2NrLTUwLS1lbXB0eSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLm5ld3MtbGluayB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgfVxuICAuYmxvY2tzIC5ibG9jayAubmV3cy1saW5rIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9ja19fcGFkZGluZyB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1leHRlbmQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLTUwLS1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay01MC0tdGVhbCB7XG4gICAgYmFja2dyb3VuZDogIzAwYTRiMTtcbiAgfVxuICAuYmxvY2tzIC5ibG9jayAuYmxvY2stNTAtLWdyZXkge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLTUwLS1zaG9ydCB7XG4gICAgaGVpZ2h0OiAxMTZweDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLTUwLS1zaG9ydCBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMTE2cHg7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuYmxvY2tzIC5ibG9jayAuYmxvY2stNTAtLXNob3J0IC5ibG9ja19fYXJyb3cge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICAuYmxvY2tzIC5ibG9jayAuYmxvY2tfX2Fycm93IHtcbiAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICB3aWR0aDogNThweDtcbiAgICBoZWlnaHQ6IDU4cHg7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrX19hcnJvdyBpIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWJvcmRlci0tdGV4dCB7XG4gICAgcGFkZGluZzogMCAyLjVyZW0gMCAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2tzIC5ibG9jayAuYmxvY2tfX3BhZGRpbmcge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWV4dGVuZCBoMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWV4dGVuZCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrLWV4dGVuZCBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogOTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1leHRlbmQgaS5mYS1hbmdsZS1yaWdodCB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIGFuaW1hdGlvbjogYXJyb3dzbGlkZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxuICAuYmxvY2tzIC5ibG9jayAuYmxvY2stZXh0ZW5kLS1yaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXIgLmJsb2NrX19pbmZvIHtcbiAgICB3aWR0aDogMzkwcHg7XG4gICAgcGFkZGluZzogMjBweCAyNnB4O1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXIgLmJsb2NrX19pbmZvIGgzIHtcbiAgICBmb250LXNpemU6IDIuM2VtO1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9ja19fbW9yZSB7XG4gICAgcmlnaHQ6IDExMHB4O1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9ja19fbW9yZTpob3ZlciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLm1vcmVfX3dyYXAge1xuICAgIHdpZHRoOiAxNDVweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmJsb2NrcyAuYmxvY2sgLmJsb2NrX19tb3JlLS1saXN0LFxuLmJsb2NrcyAuYmxvY2sgLmJsb2NrX19tb3JlLS1jb250ZW50IHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYmxvY2tzIC5ibG9jayAuYmxvY2stZXh0ZW5kIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5ibG9ja3MgLmJsb2NrIC5ibG9jay1ib3JkZXItLXRleHQge1xuICAgIHBhZGRpbmc6IDAgMi41cmVtIDAgMDtcbiAgfVxufVxuLmZvcm1fX2J1dHRvbiwgZm9ybVtuYW1lPWdtX2Zvcm1dIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZmZmZmZjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuLmZvcm1fX2J1dHRvbiBpLCBmb3JtW25hbWU9Z21fZm9ybV0gaW5wdXRbdHlwZT1zdWJtaXRdIGkge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgZm9udC1zaXplOiAxLjRlbTtcbn1cbi5mb3JtX19idXR0b246aG92ZXIsIGZvcm1bbmFtZT1nbV9mb3JtXSBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAzYTczO1xufVxuXG5hLmJsb2NrLWJ1dHRvbiwgYnV0dG9uLmJsb2NrLWJ1dHRvbiwgaW5wdXQuYmxvY2stYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuNjI1cmVtO1xuICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0OTkwO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbn1cbmEuYmxvY2stYnV0dG9uIGksIGEuYmxvY2stYnV0dG9uIGVtLCBidXR0b24uYmxvY2stYnV0dG9uIGksIGJ1dHRvbi5ibG9jay1idXR0b24gZW0sIGlucHV0LmJsb2NrLWJ1dHRvbiBpLCBpbnB1dC5ibG9jay1idXR0b24gZW0ge1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gIGFuaW1hdGlvbjogYXJyb3dzbGlkZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbkBrZXlmcmFtZXMgYXJyb3dzbGlkZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5hLmJsb2NrLWJ1dHRvbjpob3ZlciwgYnV0dG9uLmJsb2NrLWJ1dHRvbjpob3ZlciwgaW5wdXQuYmxvY2stYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuYS5ibG9jay1idXR0b24tLWNvbnRlbnQsIGJ1dHRvbi5ibG9jay1idXR0b24tLWNvbnRlbnQsIGlucHV0LmJsb2NrLWJ1dHRvbi0tY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbmEuYmxvY2stYnV0dG9uLS1jb250ZW50IHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmEuYmxvY2stYnV0dG9uLS1hcnJvdywgYnV0dG9uLmJsb2NrLWJ1dHRvbi0tYXJyb3csIGlucHV0LmJsb2NrLWJ1dHRvbi0tYXJyb3cge1xuICBmb250LXNpemU6IDEuM2VtO1xufVxuYS5ibG9jay1idXR0b24tLWFycm93IGksIGEuYmxvY2stYnV0dG9uLS1hcnJvdyBlbSwgYnV0dG9uLmJsb2NrLWJ1dHRvbi0tYXJyb3cgaSwgYnV0dG9uLmJsb2NrLWJ1dHRvbi0tYXJyb3cgZW0sIGlucHV0LmJsb2NrLWJ1dHRvbi0tYXJyb3cgaSwgaW5wdXQuYmxvY2stYnV0dG9uLS1hcnJvdyBlbSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICBhbmltYXRpb246IGFycm93Ym9ic21hbGwgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGFycm93Ym9ic21hbGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICB9XG59XG5cbmEuYmxvY2stYnV0dG9uLS10b3AsIGJ1dHRvbi5ibG9jay1idXR0b24tLXRvcCwgaW5wdXQuYmxvY2stYnV0dG9uLS10b3Age1xuICBmb250LXNpemU6IDEuOGVtO1xufVxuYS5ibG9jay1idXR0b24tLXRvcCBpLCBhLmJsb2NrLWJ1dHRvbi0tdG9wIGVtLCBidXR0b24uYmxvY2stYnV0dG9uLS10b3AgaSwgYnV0dG9uLmJsb2NrLWJ1dHRvbi0tdG9wIGVtLCBpbnB1dC5ibG9jay1idXR0b24tLXRvcCBpLCBpbnB1dC5ibG9jay1idXR0b24tLXRvcCBlbSB7XG4gIGFuaW1hdGlvbjogYXJyb3dib2J1cCAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbkBrZXlmcmFtZXMgYXJyb3dib2J1cCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICB9XG59XG5cbmEuYmxvY2stYnV0dG9uLS1kYXJrIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuM2VtO1xuICBoZWlnaHQ6IDM4cHg7XG4gIHdpZHRoOiAyMDVweDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuYS5ibG9jay1idXR0b24tLWRhcmsgLmJsb2NrLWJ1dHRvbl9fcGx1cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMzhweDtcbiAgd2lkdGg6IDM4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMDtcbn1cbmEuYmxvY2stYnV0dG9uLS1kYXJrIC5ibG9jay1idXR0b25fX3BsdXMgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG59XG5hLmJsb2NrLWJ1dHRvbi0tZGFyazpob3ZlciAuYmxvY2stYnV0dG9uX19wbHVzIHNwYW4ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5kZWxldGUsIC5lZGl0IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG4uZGVsZXRlOmJlZm9yZSwgLmVkaXQ6YmVmb3JlIHtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXFxmMWY4XCI7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMS42ZW07XG4gIGNvbG9yOiAjMDBhNGIxO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5kZWxldGU6aG92ZXI6YmVmb3JlLCAuZWRpdDpob3ZlcjpiZWZvcmUge1xuICBjb2xvcjogIzAwNDk5MDtcbn1cblxuLmVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDBcIjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGEuYmxvY2stYnV0dG9uLS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00NXB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBhLmJsb2NrLWJ1dHRvbi0tZGFyayB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7XG59XG5cbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuXG4ub3JkZXJTdW1tYXJ5IHNlbGVjdCwgLm9yZGVyU3VtbWFyeSBbdHlwZT10ZXh0XSwgLm9yZGVyU3VtbWFyeSBbdHlwZT1wYXNzd29yZF0sIC5vcmRlclN1bW1hcnkgW3R5cGU9ZGF0ZV0sIC5vcmRlclN1bW1hcnkgW3R5cGU9ZGF0ZXRpbWVdLCAub3JkZXJTdW1tYXJ5IFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgLm9yZGVyU3VtbWFyeSBbdHlwZT1tb250aF0sIC5vcmRlclN1bW1hcnkgW3R5cGU9d2Vla10sIC5vcmRlclN1bW1hcnkgW3R5cGU9ZW1haWxdLCAub3JkZXJTdW1tYXJ5IFt0eXBlPW51bWJlcl0sIC5vcmRlclN1bW1hcnkgW3R5cGU9c2VhcmNoXSwgLm9yZGVyU3VtbWFyeSBbdHlwZT10ZWxdLCAub3JkZXJTdW1tYXJ5IFt0eXBlPXRpbWVdLCAub3JkZXJTdW1tYXJ5IFt0eXBlPXVybF0sIC5vcmRlclN1bW1hcnkgW3R5cGU9Y29sb3JdLCAub3JkZXJTdW1tYXJ5IHRleHRhcmVhLCBmb3JtIHNlbGVjdCwgZm9ybSBbdHlwZT10ZXh0XSwgZm9ybSBbdHlwZT1wYXNzd29yZF0sIGZvcm0gW3R5cGU9ZGF0ZV0sIGZvcm0gW3R5cGU9ZGF0ZXRpbWVdLCBmb3JtIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgZm9ybSBbdHlwZT1tb250aF0sIGZvcm0gW3R5cGU9d2Vla10sIGZvcm0gW3R5cGU9ZW1haWxdLCBmb3JtIFt0eXBlPW51bWJlcl0sIGZvcm0gW3R5cGU9c2VhcmNoXSwgZm9ybSBbdHlwZT10ZWxdLCBmb3JtIFt0eXBlPXRpbWVdLCBmb3JtIFt0eXBlPXVybF0sIGZvcm0gW3R5cGU9Y29sb3JdLCBmb3JtIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YjliO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxNjtcbiAgbWFyZ2luOiAwIDAgMC41ZW0gMDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm9yZGVyU3VtbWFyeSBbdHlwZT1udW1iZXJdLCBmb3JtIFt0eXBlPW51bWJlcl0ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4ub3JkZXJTdW1tYXJ5IFt0eXBlPWNoZWNrYm94XSwgZm9ybSBbdHlwZT1jaGVja2JveF0ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG4ub3JkZXJTdW1tYXJ5IGlucHV0I2lkX3F1YW50aXR5LCAub3JkZXJTdW1tYXJ5IGlucHV0LnF1YW50aXR5LCBmb3JtIGlucHV0I2lkX3F1YW50aXR5LCBmb3JtIGlucHV0LnF1YW50aXR5IHtcbiAgbWF4LXdpZHRoOiA2MHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuLm9yZGVyU3VtbWFyeSAjaWRfY29uY2Vzc2lvbiwgZm9ybSAjaWRfY29uY2Vzc2lvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5vcmRlclN1bW1hcnkgbGFiZWwsIGZvcm0gbGFiZWwge1xuICBmb250LXNpemU6IDFlbTtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY2xlYXI6IHJpZ2h0O1xufVxuLm9yZGVyU3VtbWFyeSB1bCwgZm9ybSB1bCB7XG4gIHBhZGRpbmc6IDBweDtcbiAgbWFyZ2luOiAwcHg7XG59XG4ub3JkZXJTdW1tYXJ5IHVsIGxpLCBmb3JtIHVsIGxpIHtcbiAgcGFkZGluZzogMHB4O1xuICBtYXJnaW46IDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm9yZGVyU3VtbWFyeSB1bCBsaSBsYWJlbCwgZm9ybSB1bCBsaSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5vcmRlclN1bW1hcnkgdWwgbGkgaW5wdXQsIGZvcm0gdWwgbGkgaW5wdXQge1xuICB3aWR0aDogYXV0bztcbn1cbi5vcmRlclN1bW1hcnkgdWw6YmVmb3JlLCBmb3JtIHVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub3JkZXJTdW1tYXJ5IC5vcHRpb25zTGlzdCB1bCwgZm9ybSAub3B0aW9uc0xpc3QgdWwge1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbn1cbi5vcmRlclN1bW1hcnkgLm9wdGlvbnNMaXN0IHVsIGxpLCBmb3JtIC5vcHRpb25zTGlzdCB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ub3JkZXJTdW1tYXJ5IC5vcHRpb25zTGlzdCB1bCBsaSBsYWJlbCwgZm9ybSAub3B0aW9uc0xpc3QgdWwgbGkgbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xufVxuLm9yZGVyU3VtbWFyeSAub3B0aW9uc0xpc3QgdWwgbGkgbGFiZWwgaW5wdXQsIGZvcm0gLm9wdGlvbnNMaXN0IHVsIGxpIGxhYmVsIGlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMThweDtcbn1cbi5vcmRlclN1bW1hcnkgLnByaWNlVEQsIGZvcm0gLnByaWNlVEQge1xuICBtaW4td2lkdGg6IDEzMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5vcmRlclN1bW1hcnkgdGgsIGZvcm0gdGgge1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZTRlNGU0O1xuICBib3JkZXItYm90dG9tOiAjZmZmIHNvbGlkIDRweDtcbn1cbi5vcmRlclN1bW1hcnkgdHIuYmFza2V0X2l0ZW0sIGZvcm0gdHIuYmFza2V0X2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogI2ZmZiBzb2xpZCA0cHg7XG4gIG1heC13aWR0aDogMzc4cHg7XG59XG4ub3JkZXJTdW1tYXJ5IHRyLmJhc2tldF9pdGVtIHRkLCBmb3JtIHRyLmJhc2tldF9pdGVtIHRkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAwcHggMTBweDtcbn1cbi5vcmRlclN1bW1hcnkgdHIuYmFza2V0X2l0ZW0gdGQucHJpY2VURCwgZm9ybSB0ci5iYXNrZXRfaXRlbSB0ZC5wcmljZVREIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ub3JkZXJTdW1tYXJ5IHRyLm1lbWJlcnNoaXBfcmVuZXdhbF9kdWVfaGVhZCwgZm9ybSB0ci5tZW1iZXJzaGlwX3JlbmV3YWxfZHVlX2hlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlYWU5O1xuICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG59XG4ub3JkZXJTdW1tYXJ5IHRyLm1lbWJlcnNoaXBfcmVuZXdhbF9kdWUsIGZvcm0gdHIubWVtYmVyc2hpcF9yZW5ld2FsX2R1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWVhZTk7XG59XG4ub3JkZXJTdW1tYXJ5IHRib2R5LCBmb3JtIHRib2R5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmEuZW1wdHkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb250ZW50IGZvcm0gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuLmNvbnRlbnQgZm9ybSBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNvbnRlbnQgZm9ybSBpbnB1dDpmb2N1cywgLmNvbnRlbnQgZm9ybSBzZWxlY3Q6Zm9jdXMsIC5jb250ZW50IGZvcm0gW3R5cGU9dGV4dF06Zm9jdXMsIC5jb250ZW50IGZvcm0gW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPWRhdGVdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPWRhdGV0aW1lXTpmb2N1cywgLmNvbnRlbnQgZm9ybSBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIC5jb250ZW50IGZvcm0gW3R5cGU9bW9udGhdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPXdlZWtdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPWVtYWlsXTpmb2N1cywgLmNvbnRlbnQgZm9ybSBbdHlwZT1udW1iZXJdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPXNlYXJjaF06Zm9jdXMsIC5jb250ZW50IGZvcm0gW3R5cGU9dGVsXTpmb2N1cywgLmNvbnRlbnQgZm9ybSBbdHlwZT10aW1lXTpmb2N1cywgLmNvbnRlbnQgZm9ybSBbdHlwZT11cmxdOmZvY3VzLCAuY29udGVudCBmb3JtIFt0eXBlPWNvbG9yXTpmb2N1cywgLmNvbnRlbnQgZm9ybSB0ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5YjliOWI7XG59XG4uY29udGVudCBmb3JtIC5mb3JtTWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGNvbG9yOiAjOTk5O1xufVxuLmNvbnRlbnQgZm9ybSBhLnBvc3Rjb2RlX2FueXdoZXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY29udGVudCBmb3JtIC5mb3JtVGFibGUgdHIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb250ZW50IGZvcm0gLmZvcm1UYWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmRpdi5yZXF1aXJlZF9ub3RpY2UsIGRpdi52YXRfbm90aWNlIHtcbiAgbWFyZ2luOiAxZW0gYXV0bztcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmFyZWEtZm9ybSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMCAwO1xufVxuLmFyZWEtZm9ybSAuc2VsZWN0LXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmFyZWEtZm9ybSAuc2VsZWN0LXdyYXA6YWZ0ZXIge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAzMjtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uYXJlYS1mb3JtIC5zZWxlY3Qtd3JhcCBzZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDA0OTkwO1xuICBjb2xvcjogIzliOWI5YjtcbiAgZm9udC1zaXplOiAxLjhlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTY7XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZmlsdGVyLWZvcm0gbGFiZWwsIC5jb250YWN0LWZvcm0gbGFiZWwge1xuICBmb250LXNpemU6IDIycHg7XG4gIGNvbG9yOiAjNTg1OTViO1xufVxuLmZpbHRlci1mb3JtIC5zZWxlY3Qtd3JhcCwgLmNvbnRhY3QtZm9ybSAuc2VsZWN0LXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuLmZpbHRlci1mb3JtIC5zZWxlY3Qtd3JhcDphZnRlciwgLmNvbnRhY3QtZm9ybSAuc2VsZWN0LXdyYXA6YWZ0ZXIge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDMyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG59XG4uZmlsdGVyLWZvcm0gLnNlbGVjdC13cmFwOmhvdmVyOmFmdGVyLCAuY29udGFjdC1mb3JtIC5zZWxlY3Qtd3JhcDpob3ZlcjphZnRlciB7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuLmZpbHRlci1mb3JtIC5zZWxlY3Qtd3JhcC0tbGFyZ2U6YWZ0ZXIsIC5jb250YWN0LWZvcm0gLnNlbGVjdC13cmFwLS1sYXJnZTphZnRlciB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG59XG4uZmlsdGVyLWZvcm0gc2VsZWN0LCAuZmlsdGVyLWZvcm0gaW5wdXQsIC5jb250YWN0LWZvcm0gc2VsZWN0LCAuY29udGFjdC1mb3JtIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjOWI5YjliO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YjliO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxNjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZmlsdGVyLWZvcm0gLnN1Ym1pdC13cmFwLCAuY29udGFjdC1mb3JtIC5zdWJtaXQtd3JhcCB7XG4gIHBhZGRpbmc6IDUwcHggMCAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmZpbHRlci1mb3JtIC5zdWJtaXQtd3JhcCBidXR0b24gaSwgLmNvbnRhY3QtZm9ybSAuc3VibWl0LXdyYXAgYnV0dG9uIGkge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbn1cbi5maWx0ZXItZm9ybSAuc3VibWl0LXdyYXAgYnV0dG9uOmhvdmVyLCAuY29udGFjdC1mb3JtIC5zdWJtaXQtd3JhcCBidXR0b246aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG4uZmlsdGVyLWZvcm0gLnN1Ym1pdC13cmFwIGJ1dHRvbjpob3ZlciBpLCAuY29udGFjdC1mb3JtIC5zdWJtaXQtd3JhcCBidXR0b246aG92ZXIgaSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG59XG4uZmlsdGVyLWZvcm0gLmZvcm1fX2J1dHRvbiwgLmNvbnRhY3QtZm9ybSAuZm9ybV9fYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBib3JkZXI6IG5vbmU7XG4gIHotaW5kZXg6IDY0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZmlsdGVyLWZvcm0gLmZvcm1fX2J1dHRvbjpob3ZlciwgLmNvbnRhY3QtZm9ybSAuZm9ybV9fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3Mztcbn1cblxuLmNvbnRhY3QtZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG4uY29udGFjdC1mb3JtIC5hZGRyZXNzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbnRhY3QtZm9ybSAuYWRkcmVzcyBhIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmNvbnRhY3QtZm9ybSAuYWRkcmVzcyBhIC5mYSB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDNhNzM7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmNvbnRhY3QtZm9ybSAuYWRkcmVzcyBzcGFuIHtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG59XG4uY29udGFjdC1mb3JtIC5hZGRyZXNzIHNwYW4gYSB7XG4gIGZsb2F0OiBub25lO1xufVxuLmNvbnRhY3QtZm9ybSAuYWRkcmVzczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDNhNzM7XG59XG5cbiNpZF9vdGhlcl9yZXF1aXJlbWVudHMsICNpZF9kaWV0YXJ5X3JlcXVpcmVtZW50cywgI2lkX3JlbGV2YW50X2V4cGVyaWVuY2Uge1xuICBoZWlnaHQ6IDkwcHg7XG59XG5cbi5jb25mZXJlbmNlLXByb2R1Y3Qge1xuICBwYWRkaW5nOiAwcHggMCAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzAwYTRiMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbmZlcmVuY2UtcHJvZHVjdCBmb3JtIHtcbiAgcGFkZGluZzogMjBweCAwIDAgMDtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgZm9ybSBbdHlwZT1jaGVja2JveF0gKyBsYWJlbCwgLmNvbmZlcmVuY2UtcHJvZHVjdCBmb3JtIFt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmNvbmZlcmVuY2UtcHJvZHVjdCBhLmxpc3QtY29sdW1uc19fbGluayB7XG4gIG1hcmdpbjogMTBweCAwIDIwcHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogNHB4IDMycHggNHB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgYS5saXN0LWNvbHVtbnNfX2xpbmsgaSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgYS5saXN0LWNvbHVtbnNfX2xpbmsgLmxpc3QtY29sdW1uc19fcGx1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIHJpZ2h0OiA2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS43ZW07XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgYS5saXN0LWNvbHVtbnNfX2xpbmsgLmxpc3QtY29sdW1uc19fcGx1czphZnRlciB7XG4gIGNvbnRlbnQ6IFwiK1wiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgYS5saXN0LWNvbHVtbnNfX2xpbms6aG92ZXIge1xuICBjb2xvcjogaHNsYSgwZGVnLCAwJSwgMTAwJSwgMC41KTtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3QgYS5saXN0LWNvbHVtbnNfX2xpbms6aG92ZXIgLmxpc3QtY29sdW1uc19fcGx1cyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4uY29uZmVyZW5jZS1wcm9kdWN0IGEubGlzdC1jb2x1bW5zX19saW5rLmNsaWNrZWQ6aG92ZXIgLmxpc3QtY29sdW1uc19fcGx1cyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4uY29uZmVyZW5jZS1wcm9kdWN0IGEubGlzdC1jb2x1bW5zX19saW5rLmNsaWNrZWQgLmxpc3QtY29sdW1uc19fcGx1czphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xufVxuLmNvbmZlcmVuY2UtcHJvZHVjdCAuY29uZmVyZW5jZS1wcm9kdWN0X19kZXRhaWxzIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjdzIGVhc2Utb3V0O1xuICBoZWlnaHQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG59XG4uY29uZmVyZW5jZS1wcm9kdWN0IC5jb25mZXJlbmNlLXByb2R1Y3RfX2RldGFpbHMuaGlkZGVuIHtcbiAgaGVpZ2h0OiAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgb3BhY2l0eTogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5hcmVhLWZvcm0ge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDcwcHggMCAwIDE1cHg7XG4gIH1cbiAgLm9yZGVyU3VtbWFyeSB0ci5iYXNrZXRfaXRlbSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICB9XG4gIC5vcmRlclN1bW1hcnkgdHIuYmFza2V0X2l0ZW0gdGQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICAub3JkZXJTdW1tYXJ5IHRyLmJhc2tldF9pdGVtIHRkLnByaWNlVEQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5vcmRlclN1bW1hcnkgdHIuc2hvdy1mb3ItbWVkaXVtLXVwIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cbiAgLm9yZGVyU3VtbWFyeSB0Ym9keSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB9XG4gIC5vcmRlclN1bW1hcnkgLnNob3ctc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9wdGlvbnNMaXN0LmRvdWJsZUxpc3QgdWwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLm9wdGlvbnNMaXN0LmRvdWJsZUxpc3QgdWwgbGkge1xuICAgIHdpZHRoOiA0OCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmNvbmZlcmVuY2UtcHJvZHVjdCBoMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNTBweDtcbiAgfVxuICAuY29uZmVyZW5jZS1wcm9kdWN0IGEubGlzdC1jb2x1bW5zX19saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBtYXJnaW46IC00cHggMCAwIDIwcHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXJlYS1mb3JtIHtcbiAgICB3aWR0aDogMzgwcHg7XG4gICAgbWFyZ2luOiA3MHB4IDAgMCAxNXB4O1xuICB9XG59XG4uaG9tZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjIwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtYmFubmVyIHtcbiAgICBoZWlnaHQ6IDUyMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIge1xuICAgIGhlaWdodDogODIwcHg7XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNjIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jdXJ2ZXMuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgcGFkZGluZzogMCAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSB7XG4gICAgbWluLWhlaWdodDogNTIwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSB7XG4gICAgbWluLWhlaWdodDogODIwcHg7XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIGgxIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmctdG9wOiA5LjM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSBoMSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAyOC4xMjVyZW07XG4gICAgbWF4LXdpZHRoOiAzNy41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSBoMSB7XG4gICAgZm9udC1zaXplOiAyLjkzNzVyZW07XG4gICAgYm90dG9tOiAxMS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDM3LjVyZW07XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIGgyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzMjtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSBoMiB7XG4gICAgZm9udC1zaXplOiAyLjY4NzVyZW07XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIHAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDMyO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSBwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgfVxufVxuLmhvbWUtYmFubmVyIC5ob21lLWJhbm5lcl9fc2xpZGUgYSB7XG4gIHotaW5kZXg6IDMyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSAuaG9tZS1iYW5uZXJfX2NvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGhlaWdodDogNjIwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtYmFubmVyIC5ob21lLWJhbm5lcl9fc2xpZGUgLmhvbWUtYmFubmVyX19jb250YWluZXIge1xuICAgIGhlaWdodDogNTIwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIC5ob21lLWJhbm5lcl9fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDgyMHB4O1xuICB9XG59XG4uaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSAuaG9tZS1iYW5uZXJfX2NvbnRhaW5lciAub3JiaXQtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxLjg3NXJlbTtcbiAgcmlnaHQ6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSAuaG9tZS1iYW5uZXJfX2NvbnRhaW5lciAub3JiaXQtY29udGFpbmVyIHtcbiAgICBib3R0b206IDMuNzVyZW07XG4gICAgd2lkdGg6IDI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSAuaG9tZS1iYW5uZXJfX2NvbnRhaW5lciAub3JiaXQtY29udGFpbmVyIHtcbiAgICBib3R0b206IDYuMjVyZW07XG4gICAgd2lkdGg6IDMxLjI1cmVtO1xuICB9XG59XG4uaG9tZS1iYW5uZXIgLmhvbWUtYmFubmVyX19zbGlkZSAuaG9tZS1iYW5uZXJfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtYmFubmVyIC5ob21lLWJhbm5lcl9fc2xpZGUgLmhvbWUtYmFubmVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbSAxLjg3NXJlbSAzLjc1cmVtIDEuODc1cmVtO1xuICAgIHdpZHRoOiAyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUtYmFubmVyIC5ob21lLWJhbm5lcl9fc2xpZGUgLmhvbWUtYmFubmVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMi41cmVtIDQuMzc1cmVtIDIuNXJlbTtcbiAgICB3aWR0aDogMzEuMjVyZW07XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIC5ibG9jay1idXR0b24tLWJhbm5lciB7XG4gIGNvbG9yOiAjZGQ1ODI5O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbn1cbi5ob21lLWJhbm5lciAuaG9tZS1iYW5uZXJfX3NsaWRlIC5ibG9jay1idXR0b24tLWJhbm5lcjpob3ZlciB7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxuXG5uYXYuc2xpZGUtZG90cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ob21lLWZlYXR1cmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyMDtcbiAgcGFkZGluZzogNDBweCAyMHB4IDAgMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuaG9tZS1mZWF0dXJlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUtZmVhdHVyZWQge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAxLjg3NXJlbSAyLjVyZW0gMS44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuICAuaG9tZS1mZWF0dXJlZCAuYmxvY2tzIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmhvbWUtZmVhdHVyZWQgLmhvbWUtZmVhdHVyZWRfX2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5ob21lLWZlYXR1cmVkIC5ibG9ja3Mge1xuICB6LWluZGV4OiAxMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuaG9tZS1mZWF0dXJlZF9fY29sdW1ucyB7XG4gIGZsZXgtYmFzaXM6IDUwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ob21lLWZlYXR1cmVkIC5ibG9ja3MgLmhvbWUtZmVhdHVyZWRfX2NvbHVtbnMge1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuaG9tZS1mZWF0dXJlZF9fY29sdW1uczpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB9XG59XG4uaG9tZS1mZWF0dXJlZCAuYmxvY2tzIC5ob21lLWZlYXR1cmVkX19jb2x1bW5zIC5ob21lLWZlYXR1cmVkX19ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuaG9tZS1mZWF0dXJlZF9fY29sdW1ucyAuaG9tZS1mZWF0dXJlZF9fYmxvY2s6aG92ZXIgLmhvbWUtZmVhdHVyZWRfX2ltYWdlIHtcbiAgb3BhY2l0eTogMC44O1xufVxuLmhvbWUtZmVhdHVyZWQgLmJsb2NrcyAuaG9tZS1mZWF0dXJlZF9fY29sdW1ucyAuaG9tZS1mZWF0dXJlZF9fYmxvY2s6aG92ZXIgLmhvbWUtZmVhdHVyZWRfX2ltYWdlOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuMjtcbn1cbi5ob21lLWZlYXR1cmVkIC5ob21lLWZlYXR1cmVkX19pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDI4MHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaG9tZS1mZWF0dXJlZCAuaG9tZS1mZWF0dXJlZF9faW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xufVxuLmhvbWUtZmVhdHVyZWQgLmhvbWUtZmVhdHVyZWRfX2luZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMy4xMjVyZW0gMS4yNXJlbSAxLjI1cmVtO1xufVxuLmhvbWUtZmVhdHVyZWQgLmhvbWUtZmVhdHVyZWRfX2luZm8gaDMge1xuICBmb250LXNpemU6IDEuNjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG4uaG9tZS1mZWF0dXJlZCAuaG9tZS1mZWF0dXJlZF9faW5mbyBhIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbn1cbi5ob21lLWZlYXR1cmVkIC5ob21lLWZlYXR1cmVkX19pbmZvIHAuYmxvY2tfX2ZlYXR1cmVkIHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4uaG9tZS1mZWF0dXJlZCAuaG9tZS1mZWF0dXJlZF9faW5mbyAuZmEtYW5nbGUtcmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxLjI1cmVtO1xuICB0b3A6IDEuMTI1cmVtO1xuICBmb250LXNpemU6IDEuNGVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5ob21lLWZlYXR1cmVkIC5ob21lLWZlYXR1cmVkX19saW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmhvbWUtYWJvdXQge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5ob21lLWFib3V0IGgyIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1hYm91dCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1hYm91dCBwLFxuLmhvbWUtYWJvdXQgdWwsXG4uaG9tZS1hYm91dCBvbCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgfVxufVxuXG4uaG9tZS1mb3JtIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgcGFkZGluZzogMS44NzVyZW0gMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtZm9ybSB7XG4gICAgcGFkZGluZzogMi41cmVtIDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ob21lLWZvcm0ge1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gMS44NzVyZW07XG4gIH1cbn1cbi5ob21lLWZvcm0gaDIge1xuICBjb2xvcjogIzAwYTRiMTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmhvbWUtZm9ybSBoMiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZvbnQtc2l6ZTogMi4zMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1mb3JtIGgyIHtcbiAgICBmb250LXNpemU6IDIuMzEyNXJlbTtcbiAgfVxufVxuLmhvbWUtZm9ybSBzcGFuIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbi5ob21lLWZvcm0gZm9ybSB7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuLmhvbWUtZm9ybSBmb3JtIGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDEuNDM3NXJlbTtcbiAgcGFkZGluZzogMS44NzVyZW0gMS4zNzVyZW07XG59XG4uaG9tZS1mb3JtIGZvcm0gYnV0dG9uLmZvcm1fX2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMXJlbSAwLjYyNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuNDM3NXJlbTtcbn1cbi5ob21lLWZvcm0gZm9ybSBidXR0b24uZm9ybV9fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwM2E3MztcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzAwM2E3Mztcbn1cbi5ob21lLWZvcm0gZm9ybSBidXR0b24uZm9ybV9fYnV0dG9uIGkge1xuICBwYWRkaW5nLWxlZnQ6IDEuMTI1cmVtO1xufVxuXG4uaG9tZS1ib3R0b20ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uanRfam9iX3Bvc2l0aW9uIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZm9udC1zaXplOiAxLjk0ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4uanRfam9iX2xvY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiTG9jYXRpb246IFwiO1xufVxuXG4uanRfam9iX2NvbXBhbnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJDb21wYW55OiBcIjtcbn1cblxuLmp0X2FsbGpvYnMge1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBuYXYuc2xpZGUtZG90cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAtNDBweCBhdXRvIDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzMjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIG5hdi5zbGlkZS1kb3RzIC5zbGlkZS1kb3RzX19kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzAwYTRiMTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cbiAgbmF2LnNsaWRlLWRvdHMgLmlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogIzAwYTRiMTtcbiAgfVxufVxuLndyYXBwZXItLWhvbWUgLmNvbnRlbnRfX2Z1bGwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC53cmFwcGVyLS1ob21lIC5jb250ZW50X19mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmtleS1mYWN0cyB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAua2V5LWZhY3RzIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmtleS1mYWN0cyB7XG4gICAgbWFyZ2luLXRvcDogNC4zNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG4gIH1cbn1cblxuLmFib3V0LXN0YXRzIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuLmFib3V0LXN0YXRzIGgyIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMi42ZW07XG59XG4uYWJvdXQtc3RhdHMgcCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbi5hYm91dC1zdGF0cyAuc3RhdHMge1xuICAvKlxuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIC5zdGF0c19fbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gIH1cbiAgLnN0YXRzX19zbWFsbCB7XG4gICAgZm9udC1zaXplOiAzOHB4O1xuICB9XG4gIC5zdGF0c19fc3RhY2sge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbiAgKi9cbiAgcGFkZGluZy10b3A6IDQwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uYWJvdXQtbW9yZSB7XG4gIG1hcmdpbjogNzBweCAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmFib3V0LXN0YXRzIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gIH1cbiAgLmFib3V0LXN0YXRzIC5zdGF0c19fbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTMwcHg7XG4gIH1cbiAgLmFib3V0LXN0YXRzIC5zdGF0c19fc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgfVxuICAuYWJvdXQtc3RhdHMgLnN0YXRzX19zdGFjayB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICBmb250LXNpemU6IDM3cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1zdGF0cyB7XG4gICAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgfVxuICAuYWJvdXQtc3RhdHMgaDIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgLmFib3V0LXN0YXRzIHAge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG4gIC5hYm91dC1zdGF0cyAuc3RhdHMge1xuICAgIGNvbG9yOiAjMDBhNGIxO1xuICB9XG4gIC5hYm91dC1zdGF0cyAuc3RhdHMgLnN0YXRzX19sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxMzBweDtcbiAgfVxuICAuYWJvdXQtc3RhdHMgLnN0YXRzIC5zdGF0c19fc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgfVxuICAuYWJvdXQtc3RhdHMgLnN0YXRzIC5zdGF0c19fc3RhY2sge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDM3cHg7XG4gIH1cbn1cbi5saXN0LWNvbHVtbnMtaW50cm8gaDIsIC5saXN0LWNvbHVtbnMtaW50cm8gaDMsIC5saXN0LWNvbHVtbnMtaW50cm8gaDQge1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbi5saXN0LWNvbHVtbnMtaW50cm8gYSB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmxpc3QtY29sdW1ucy1pbnRyby0tdGVhbCBoMiwgLmxpc3QtY29sdW1ucy1pbnRyby0tdGVhbCBoMywgLmxpc3QtY29sdW1ucy1pbnRyby0tdGVhbCBoNCB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuLmxpc3QtY29sdW1ucy1pbnRyby0tdGVhbCBhIHtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG5cbi5saXN0LWNvbHVtbnMtaGVhZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDBhNGIxO1xufVxuLmxpc3QtY29sdW1ucy1oZWFkZXIgaDIsIC5saXN0LWNvbHVtbnMtaGVhZGVyIGgzLCAubGlzdC1jb2x1bW5zLWhlYWRlciBoNCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4ubGlzdC1jb2x1bW5zLWhlYWRlciBoMyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbnVsLmxpc3QtY29sdW1ucyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbnVsLmxpc3QtY29sdW1ucyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDBhNGIxO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cbnVsLmxpc3QtY29sdW1ucyBsaSAubGlzdC1jb2x1bW5zX19tb2JpbGUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxudWwubGlzdC1jb2x1bW5zIGxpIGEubGlzdC1jb2x1bW5zX19saW5rIHtcbiAgbWFyZ2luOiAyMHB4IDAgMCAyMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIGZsb2F0OiByaWdodDtcbn1cbnVsLmxpc3QtY29sdW1ucyBsaSBhLmxpc3QtY29sdW1uc19fbGluayAubGlzdC1jb2x1bW5zX19wbHVzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTlweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xufVxudWwubGlzdC1jb2x1bW5zIGxpIGEubGlzdC1jb2x1bW5zX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbnVsLmxpc3QtY29sdW1ucyBsaSBhLmxpc3QtY29sdW1uc19fbGluazpob3ZlciAubGlzdC1jb2x1bW5zX19wbHVzIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxudWwubGlzdC1jb2x1bW5zIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG51bC5saXN0LWNvbHVtbnMubGlzdC1jb2x1bW5zX19jb25zdWx0YW50cyBsaS5saXN0LWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgdWwubGlzdC1jb2x1bW5zLmxpc3QtY29sdW1uc19fY29uc3VsdGFudHMgbGkubGlzdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gIH1cbn1cbnVsLmxpc3QtY29sdW1ucy5saXN0LWNvbHVtbnNfX2NvbnN1bHRhbnRzIGxpLmxpc3QtaXRlbSBoMyB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIHVsLmxpc3QtY29sdW1ucy5saXN0LWNvbHVtbnNfX2NvbnN1bHRhbnRzIGxpLmxpc3QtaXRlbSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgfVxufVxudWwubGlzdC1jb2x1bW5zLmxpc3QtY29sdW1uc19fY29uc3VsdGFudHMgbGkubGlzdC1pdGVtIHAge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIHVsLmxpc3QtY29sdW1ucy5saXN0LWNvbHVtbnNfX2NvbnN1bHRhbnRzIGxpLmxpc3QtaXRlbSBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG51bC5saXN0LWNvbHVtbnMubGlzdC1jb2x1bW5zX19jb25zdWx0YW50cyBsaS5saXN0LWl0ZW0gLmxpc3QtY29sdW1uc19fbGluayB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDNweCA4cHggNXB4IDhweDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICB1bC5saXN0LWNvbHVtbnMubGlzdC1jb2x1bW5zX19jb25zdWx0YW50cyBsaS5saXN0LWl0ZW0gLmxpc3QtY29sdW1uc19fbGluayB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMS4yNXJlbSAwIDEuMjVyZW0gMDtcbiAgfVxufVxuXG51bC5saXN0LWNvbHVtbnMtLXRlYWwge1xuICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG51bC5saXN0LWNvbHVtbnMtLXRlYWwgbGkge1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICMwMGE0YjE7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbnVsLmxpc3QtY29sdW1ucy0tdGVhbCBsaSBhLmxpc3QtY29sdW1uc19fbGluayB7XG4gIG1hcmdpbjogMCAwIDAgMjBweDtcbn1cbnVsLmxpc3QtY29sdW1ucy0tdGVhbCBsaSBhLmxpc3QtY29sdW1uc19fbGluayBpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xufVxudWwubGlzdC1jb2x1bW5zLS10ZWFsIGxpIGg0IHtcbiAgY29sb3I6ICMwMGE0YjE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbnVsLmxpc3QtY29sdW1ucy0tdGVhbCBsaSAubGlzdF9fZGF0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbnVsLmxpc3QtY29sdW1ucy0tZmlsdGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAzZW07XG59XG51bC5saXN0LWNvbHVtbnMtLWZpbHRlciBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzAwM2E3MztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMDtcbn1cbnVsLmxpc3QtY29sdW1ucy0tZmlsdGVyIGE6aG92ZXIge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbnVsLmxpc3QtY29sdW1ucy0tZmlsdGVyIGEubGlzdF9fbW9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBtYXJnaW46IDFlbSAwO1xufVxudWwubGlzdC1jb2x1bW5zLS1maWx0ZXIgYS5saXN0X19tb3JlOmhvdmVyIHtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG5cbi5saXN0LXBhZ2luYXRpb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG59XG4ubGlzdC1wYWdpbmF0aW9uIGEubGlzdC1wYWdpbmF0aW9uX19zdGVwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xuICBjb2xvcjogIzU4NTk1Yjtcbn1cbi5saXN0LXBhZ2luYXRpb24gYS5saXN0LXBhZ2luYXRpb25fX3N0ZXA6aG92ZXIge1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbi5saXN0LXBhZ2luYXRpb24gdWwubGlzdC1wYWdpbmF0aW9uX19udW1iZXJzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmbG9hdDogbGVmdDtcbn1cbi5saXN0LXBhZ2luYXRpb24gdWwubGlzdC1wYWdpbmF0aW9uX19udW1iZXJzIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDJweCAxMHB4O1xufVxuLmxpc3QtcGFnaW5hdGlvbiB1bC5saXN0LXBhZ2luYXRpb25fX251bWJlcnMgbGkgYSB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzU4NTk1YjtcbiAgd2lkdGg6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG59XG4ubGlzdC1wYWdpbmF0aW9uIHVsLmxpc3QtcGFnaW5hdGlvbl9fbnVtYmVycyBsaSBhOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICMwMDQ5OTA7XG59XG4ubGlzdC1wYWdpbmF0aW9uIHVsLmxpc3QtcGFnaW5hdGlvbl9fbnVtYmVycyBsaSBhLnNlbGVjdGVkIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICMwMDQ5OTA7XG59XG5cbi5iYWNrLXRvLXRvcCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0OTkwO1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmJhY2stdG8tdG9wIGkge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLW91dDtcbiAgbWFyZ2luLWxlZnQ6IDZweDtcbn1cbi5iYWNrLXRvLXRvcDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBvcGFjaXR5OiAwLjg7XG59XG4uYmFjay10by10b3A6aG92ZXIgaSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5saXN0LWNvbHVtbnMtaGVhZGVyIGgzIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubGlzdC1jb2x1bW5zX19tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiNzdWJuYXYgPiBsaS5zZWxlY3RlZCA+IGEsXG4ubWVudSA+IGxpLnNlbGVjdGVkID4gYSB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5tb2JpbGUge1xuICB6LWluZGV4OiAyNTY7XG4gIGJhY2tncm91bmQ6ICMwMDNhNzM7XG59XG4ubW9iaWxlIC5tb2JpbGVfX3NlYXJjaCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1vYmlsZSAubW9iaWxlX19zZWFyY2ggbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1vYmlsZSAubW9iaWxlX19zZWFyY2ggZm9ybSBbdHlwZT1zZWFyY2hdIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5tb2JpbGUgLm1vYmlsZV9fc2VhcmNoIGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMnB4O1xuICB0b3A6IDEycHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLm1vYmlsZSBhLm1vYmlsZV9fc2lnbi1pbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgaGVpZ2h0OiA0NXB4O1xuICBsaW5lLWhlaWdodDogNDNweDtcbiAgcGFkZGluZzogMCAxOHB4O1xuICBtYXJnaW46IDEycHg7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG4ubW9iaWxlIGEubW9iaWxlX19zaWduLWluOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwOGM5ODtcbn1cbi5tb2JpbGUgLm1vYmlsZV9fY2FydCBzZWxlY3Qge1xuICBtYXJnaW46IDAgMXJlbTtcbiAgd2lkdGg6IGF1dG87XG59XG4ubW9iaWxlIHNwYW4uY2FydF9fYW1vdW50IHtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5tb2JpbGUgc3Bhbi5jYXJ0X19hbW91bnQgaSB7XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG4ubW9iaWxlIC5tb2JpbGVfX25hdi13cmFwIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDQ5OTA7XG4gIHBhZGRpbmc6IDRweCAwIDI0cHggMDtcbn1cbi5tb2JpbGUgdWwubW9iaWxlX19tYWluLW5hdiBsaS5pcy1zdWJtZW51LXBhcmVudC1pdGVtLFxuLm1vYmlsZSB1bC5tb2JpbGVfX3RvcC1uYXYgbGkuaXMtc3VibWVudS1wYXJlbnQtaXRlbSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ubW9iaWxlIHVsLm1vYmlsZV9fbWFpbi1uYXYgbGkgLmxvZ2luX3JlcXVpcmVkLFxuLm1vYmlsZSB1bC5tb2JpbGVfX3RvcC1uYXYgbGkgLmxvZ2luX3JlcXVpcmVkIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4ubW9iaWxlIHVsLm1vYmlsZV9fbWFpbi1uYXYgbGkgYSxcbi5tb2JpbGUgdWwubW9iaWxlX190b3AtbmF2IGxpIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5tb2JpbGUgdWwubW9iaWxlX19tYWluLW5hdiBsaSBhOmhvdmVyLFxuLm1vYmlsZSB1bC5tb2JpbGVfX3RvcC1uYXYgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuLm1vYmlsZSB1bC5tb2JpbGVfX21haW4tbmF2IGxpLmN1cnJlbnQgPiBhLFxuLm1vYmlsZSB1bC5tb2JpbGVfX3RvcC1uYXYgbGkuY3VycmVudCA+IGEge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5tb2JpbGUgdWwubW9iaWxlX19tYWluLW5hdiBsaSB1bCxcbi5tb2JpbGUgdWwubW9iaWxlX190b3AtbmF2IGxpIHVsIHtcbiAgYmFja2dyb3VuZDogIzAwM2E3Mztcbn1cblxudWwubWFpbl9fbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgdWwubWFpbl9fbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiA2NDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgdWwubWFpbl9fbmF2ID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG4gIHVsLm1haW5fX25hdiBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICAvKnVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgYmFja2dyb3VuZDogJHJxYS1kYXJrLWJsdWU7XG4gICAgICBtaW4td2lkdGg6IDIxOHB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgICAgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJxYS1ibHVlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMC41ZW0gMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC41ZW0gMDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4ubG9naW5fcmVxdWlyZWQge1xuICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSovXG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDlweCAwIDlweDtcbiAgICBwYWRkaW5nOiAwLjc1ZW0gMCAyLjYyNXJlbSAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1heC1oZWlnaHQ6IDcwMHB4KSB7XG4gIHVsLm1haW5fX25hdiBsaSBhIHtcbiAgICBwYWRkaW5nOiAwLjc1ZW0gMCAxLjM3NXJlbSAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIGE6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuMzc1cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMSwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjFzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjFzO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi1oZWlnaHQ6IDcwMHB4KSB7XG4gIHVsLm1haW5fX25hdiBsaSBhOmJlZm9yZSB7XG4gICAgYm90dG9tOiAxLjYyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICB1bC5tYWluX19uYXYgbGkgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB1bC5tYWluX19uYXYgbGkgYTpob3Zlcjo6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLWhlaWdodDogNzAwcHgpIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSAucm93IHtcbiAgICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwIDEuODc1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYSB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBjb2xvcjogIzAwYTRiMTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgdWwgbGkgYSB7XG4gICAgY29sb3I6ICMwMGE0YjE7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4taGVpZ2h0OiA4MDBweCkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSB1bCBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwNDk5MDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgdWwgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDAuMmVtO1xuICB9XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IHVsIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYSB7XG4gICAgbWFyZ2luOiAwIDAgMC4yZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY29sb3I6ICMwMDQ5OTA7XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgdWwgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwYTRiMTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLm1lZ2EtbWVudSA+IHVsID4gbGkge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZWdhLW1lbnUubWVkaXVtLTkgPiB1bCB7XG4gICAgY29sdW1uczogMztcbiAgICBjb2x1bW4tZ2FwOiAyZW07XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLm1lZ2EtbWVudS5tZWRpdW0tNiA+IHVsIHtcbiAgICBjb2x1bW5zOiAyO1xuICAgIGNvbHVtbi1nYXA6IDJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLnJvdyB7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi1oZWlnaHQ6IDgwMHB4KSB7XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5yb3cge1xuICAgIHBhZGRpbmc6IDEuODc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi1oZWlnaHQ6IDkwMHB4KSB7XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5yb3cge1xuICAgIHBhZGRpbmc6IDMuMTI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZWdhLW1lbnVfX2N0YSB7XG4gICAgbWF4LXdpZHRoOiAxOS41cmVtO1xuICB9XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZWdhLW1lbnVfX2N0YSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgIGNvbG9yOiAjMDBhNGIxO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4taGVpZ2h0OiA4MDBweCkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSAubWVnYS1tZW51X19jdGEgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4xODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSAubWVnYS1tZW51X19jdGEgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLm1lZ2EtbWVudV9fY3RhIGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICB1bC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSAubWVnYS1tZW51X19jdGEgLmJsb2NrLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogI2RkNTgyOTtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuODc1cmVtIDAuNjI1cmVtIDEuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgdWwubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLm1lZ2EtbWVudV9fY3RhIC5ibG9jay1idXR0b246YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHVsLm1haW5fX25hdiBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZWdhLW1lbnVfX2N0YSAuYmxvY2stYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIHVsLm1haW5fX25hdiBsaTpsYXN0LWNoaWxkIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgdWwubWFpbl9fbmF2IGxpLmN1cnJlbnQgYSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB1bC5tYWluX19uYXYgbGkuY3VycmVudCBhOjpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MS4yNWVtKSB7XG4gIHVsLm1haW5fX25hdiBsaTpsYXN0LWNoaWxkIGEge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICB1bC5tYWluX19uYXYgbGkgYSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBtYXJnaW46IDAgMTBweCAxMnB4IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgdWwubWFpbl9fbmF2IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4ucHJvZHVjdEltYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5wcm9kdWN0SW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4uc2lkZWJhcl9fbWVzc2FnZSB7XG4gIGNvbG9yOiAjY2IwZTM0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNpZGViYXJfX21lc3NhZ2Uuc2hvdy1tZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYnV0dG9uLS1ib29rLmhpZGUtbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIGgyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwM2E3MztcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEycHggNjBweCAxMnB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCBoMiBlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgdG9wOiAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAvKiBWZXJ0aWNhbCBsaW5lICovXG4gIC8qIGhvcml6b250YWwgbGluZSAqL1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCBoMiBlbTpiZWZvcmUsIC5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgaDIgZW06YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1vdXQ7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIGgyIGVtOmJlZm9yZSB7XG4gIHRvcDogMzAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogNDAlO1xuICBtYXJnaW4tbGVmdDogLTJweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgaDIgZW06YWZ0ZXIge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMzAlO1xuICB3aWR0aDogNDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgaDIgc3BhbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAwLjdlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNjBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgaDIgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCBoMjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGE0YjE7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZSB1bC5tYXBMaXN0cyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZSB1bC5tYXBMaXN0cyBsaSB7XG4gIG1hcmdpbjogMXB4IDBweDtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgdWwubWFwTGlzdHMgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcFN0YWdlIGJ1dHRvbi5ibG9jay1idXR0b24ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDFlbTtcbiAgYmFja2dyb3VuZDogIzAwM2E3MztcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcFN0YWdlIGJ1dHRvbi5ibG9jay1idXR0b24gLmZhIHtcbiAgbWFyZ2luLWxlZnQ6IDZweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcFN0YWdlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbiAgY29sb3I6ICMwMDNhNzM7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgM2VtLzEgRm9udEF3ZXNvbWU7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcFN0YWdlOmxhc3Qtb2YtdHlwZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZS5vcGVuU3RhZ2UgZW06YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2Uub3BlblN0YWdlIGVtOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcENvbnRlbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxZW0gMHB4O1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwQ29udGVudCAucm93IHtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42ZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllOWU5O1xufVxuLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwQ29udGVudCAucm93IC5yb3cge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcENvbnRlbnQ6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcENvbnRlbnQgcCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAgLm1hcENvbnRlbnQgaDMge1xuICBmb250LXNpemU6IDEuNGVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAwcHggMWVtIDBweCAwcHg7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAubWVtYmVyU2VhcmNoIGgyIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDk5MDtcbiAgbWluLWhlaWdodDogNzZweDtcbiAgcGFkZGluZzogMTJweCA4MHB4IDEycHggMTBweDtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAubWVtYmVyU2VhcmNoIGgyIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS40ZW07XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwLm1lbWJlclNlYXJjaCBoMiBlbSB7XG4gIHdpZHRoOiA3NnB4O1xuICBoZWlnaHQ6IDc2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDNhNzM7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwLm1lbWJlclNlYXJjaCBoMiBlbTpiZWZvcmUge1xuICB0b3A6IDM1JTtcbiAgaGVpZ2h0OiAzMCU7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwLm1lbWJlclNlYXJjaCBoMiBlbTphZnRlciB7XG4gIGxlZnQ6IDM1JTtcbiAgd2lkdGg6IDMwJTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAubWVtYmVyU2VhcmNoIGgyIHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAubWVtYmVyU2VhcmNoIC5tYXBTdGFnZTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwLm1lbWJlclNlYXJjaCAubWFwQ29udGVudCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cbi5jb250ZW50IC5jb250ZW50X19ib3JkZXIgLnJlZ1JvYWRtYXAubWVtYmVyU2VhcmNoIC5tYXBDb250ZW50IHN0cm9uZyB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgaDIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgaDIgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgdWwubWFwTGlzdHMgbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgdWwubWFwTGlzdHMgbGk6bnRoLWNoaWxkKG9kZCkge1xuICAgIHdpZHRoOiA0OSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxJTtcbiAgfVxuICAuY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZSAubWFwQ29udGVudCAucm93IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS43ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS40ZW07XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgLm1hcENvbnRlbnQgLnJvdyAucm93IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4vKiBDb29raWViYXIgKi9cbiNjb29raWUtYmFyIHtcbiAgYmFja2dyb3VuZDogIzI5MjkyOTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweDtcbiAgei1pbmRleDogOTk5OTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4jY29va2llLWJhci5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2Nvb2tpZS1iYXIuZml4ZWQuYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICB0b3A6IGF1dG87XG59XG5cbiNjb29raWUtYmFyIHAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuXG4jY29va2llLWJhciBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAxMHB4IDE5cHg7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4jY29va2llLWJhciAuY2ItZW5hYmxlIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4jY29va2llLWJhciAuY2ItZW5hYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG5cbiNjb29raWUtYmFyIC5jYi1wb2xpY3kge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cblxuQG1lZGlhIGhhbmRoZWxkLCBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgI2Nvb2tpZS1iYXIgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIH1cbiAgI2Nvb2tpZS1iYXIgYSB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG4gICNjb29raWUtYmFyIC5jYi1lbmFibGUge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbn1cbi5hZGRyZXNzQmxvY2sgcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDEuNWVtO1xuICBtaW4taGVpZ2h0OiAzMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbn1cblxudGFibGUub3JkZXJTdW1tYXJ5IHtcbiAgd2lkdGg6IDk1JTtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4jbWVtYmVyc2hpcF9yZW5ld2FsX2R1ZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDMwMHB4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgcmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlYWU5O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4uY29udGVudCB1bC50YWJzIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAjMDA0OTkwIDFweCBzb2xpZDtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDBweCAxMHB4O1xufVxuLmNvbnRlbnQgdWwudGFicyBsaSB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDJweDtcbn1cbi5jb250ZW50IHVsLnRhYnMgbGkudGFicy10aXRsZSBhIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cbi5jb250ZW50IHVsLnRhYnMgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb250ZW50IHVsLnRhYnMudGFicy0tZmlsdGVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5jb250ZW50IC50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7XG59XG4uY29udGVudCAudGFicy10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIGNvbG9yOiAjMDA0OTkwO1xufVxuLmNvbnRlbnQgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAuY29udGVudCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ5OTA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG51bC50YWJzLnRhYnMtLWZpbHRlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cbnVsLnRhYnMudGFicy0tZmlsdGVyIGxpIGEsIHVsLnRhYnMudGFicy0tZmlsdGVyIGxpLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0sIHVsLnRhYnMudGFicy0tZmlsdGVyIGxpLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCB1bC50YWJzLnRhYnMtLWZpbHRlciBsaS50YWJzLXRpdGxlID4gYTphY3RpdmUsIHVsLnRhYnMudGFicy0tZmlsdGVyIGxpLnRhYnMtdGl0bGUgPiBhOnZpc2l0ZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxudWwudGFicy50YWJzLS1maWx0ZXIgbGkuaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnByb21vQmFubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC43NWVtIDUwcHggMC43NWVtIDAuNzVlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9raWx0cy5qcGcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ1ODI5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wcm9tb0Jhbm5lciAub3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuLnByb21vQmFubmVyIHAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDBweDtcbiAgbWFyZ2luOiAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbi5wcm9tb0Jhbm5lciBhIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4ucHJvbW9CYW5uZXIgYTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5wcm9tb0Jhbm5lciBzcGFuIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0wLjc1ZW07XG4gIHJpZ2h0OiAxMHB4O1xuICBmb250LXNpemU6IDEuM2VtO1xuICB6LWluZGV4OiAzO1xufVxuLnByb21vQmFubmVyIC5ibG9jay1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ1ODI5O1xuICBmb250LXNpemU6IDEuMWVtO1xuICBib3JkZXI6ICNmZmYgc29saWQgMXB4O1xuICBtYXJnaW4tbGVmdDogNSU7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xufVxuLnByb21vQmFubmVyIC5ibG9jay1idXR0b246aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLnByb21vQmFubmVyIC5jb25mTG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wcm9tb0Jhbm5lciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmc6IDAuOWVtIDNlbSAwLjllbSAyMDBweDtcbiAgfVxuICAucHJvbW9CYW5uZXIgLmJsb2NrLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5wcm9tb0Jhbm5lciAub3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucHJvbW9CYW5uZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuICAucHJvbW9CYW5uZXIgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLnByb21vQmFubmVyIC5jb25mTG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDBweDtcbiAgICB0b3A6IDBweDtcbiAgfVxuICAucHJvbW9CYW5uZXIgLmNvbmZMb2dvIGltZyB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICB9XG59XG4ucmVuZXdhbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNXB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmQzZDM7XG4gIGJvcmRlci1ib3R0b206IHJlZCBkYXNoZWQgMnB4O1xuICBib3JkZXItdG9wOiByZWQgZGFzaGVkIDJweDtcbn1cblxuLmZlZWRiYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMS44NzVyZW0gMDtcbn1cbi5mZWVkYmFjayBoMiB7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cbi5mZWVkYmFjayAub3JiaXQtc2xpZGUge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtIDAgMS4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZmVlZGJhY2sgLm9yYml0LXNsaWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZmVlZGJhY2sgLm9yYml0LXNsaWRlIHA6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJxcIjtcbn1cbi5mZWVkYmFjayAub3JiaXQtc2xpZGUgcDphZnRlciB7XG4gIGNvbnRlbnQ6IFwi4oCdXCI7XG59XG4uZmVlZGJhY2sgLm9yYml0LW5leHQsIC5mZWVkYmFjayAub3JiaXQtcHJldmlvdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBjb2xvcjogI2M4YzhjODtcbn1cbi5mZWVkYmFjayAub3JiaXQtbmV4dDpob3ZlciwgLmZlZWRiYWNrIC5vcmJpdC1wcmV2aW91czpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cbi5mZWVkYmFjayAub3JiaXQtbmV4dCB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG59XG4uZmVlZGJhY2sgLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xufVxuLmZlZWRiYWNrIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgaGVpZ2h0OiAxMnB4O1xuICB3aWR0aDogMTJweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMGE0YjE7XG59XG4uZmVlZGJhY2sgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZmVlZGJhY2sgLm9yYml0LW5leHQsIC5mZWVkYmFjayAub3JiaXQtcHJldmlvdXMge1xuICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07XG4gIH1cbiAgLmZlZWRiYWNrIC5vcmJpdC1uZXh0IHtcbiAgICByaWdodDogMjBweDtcbiAgfVxuICAuZmVlZGJhY2sgLm9yYml0LXByZXZpb3VzIHtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG4gIC5mZWVkYmFjayAub3JiaXQtc2xpZGUge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDMuMTI1cmVtIDAgMy4xMjVyZW07XG4gIH1cbn1cbi5jb3VudGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjIxMjY4O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY291bnRkb3duIC5mYS10aW1lcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xuICBvcGFjaXR5OiAxO1xufVxuLmNvdW50ZG93biAuZmEtdGltZXM6aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG4uY291bnRkb3duLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb3VudGRvd24gLmJsb2NrLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGE0YjE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY291bnRkb3duIC5ibG9jay1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuLmNvdW50ZG93biBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb3VudGRvd24gcCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cbi5jb3VudGRvd24gcCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5jb3VudGRvd24gI2Nsb2NrIHtcbiAgY29sb3I6ICNmZmY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvdW50ZG93biAjY2xvY2sge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuLmNvdW50ZG93biAjY2xvY2sgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY291bnRkb3duICNjbG9jayBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIH1cbn1cbi5jb3VudGRvd24uY291bnRkb3duLS1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQyMDdhO1xufVxuLmNvdW50ZG93bi5jb3VudGRvd24tLXB1cnBsZSAuYmxvY2stYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYjQyZTtcbn1cbi5jb3VudGRvd24uY291bnRkb3duLS1wdXJwbGUgI2Nsb2NrIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5jb25mLWhvbWUtbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbn1cbi5jb25mLWhvbWUtbmF2IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWF4LXdpZHRoOiA3MHJlbTtcbn1cbi5jb25mLWhvbWUtbmF2IGxpIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ob21lLW5hdiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29uZi1ob21lLW5hdiBsaSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jb25mLWhvbWUtbmF2IGxpIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbi5jb25mLWhvbWUtbmF2IGxpIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjIxMjY4O1xuICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLWhvbWUtbmF2IGxpIGEge1xuICAgIHBhZGRpbmc6IDFyZW0gMC42MjVyZW07XG4gIH1cbn1cbi5jb25mLWhvbWUtbmF2IGxpIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG4uY29uZi1ob21lLW5hdiBsaTpudGgtY2hpbGQoMSkgYSB7XG4gIGJhY2tncm91bmQ6ICNmMWQ1MGM7XG4gIGNvbG9yOiAjNzI2NTBiO1xufVxuLmNvbmYtaG9tZS1uYXYgbGk6bnRoLWNoaWxkKDIpIGEge1xuICBiYWNrZ3JvdW5kOiAjMDk1MDU4O1xufVxuLmNvbmYtaG9tZS1uYXYgbGk6bnRoLWNoaWxkKDMpIGEge1xuICBiYWNrZ3JvdW5kOiAjYjIxMjY4O1xufVxuLmNvbmYtaG9tZS1uYXYgbGk6bnRoLWNoaWxkKDQpIGEge1xuICBiYWNrZ3JvdW5kOiAjNzI2NTBiO1xufVxuLmNvbmYtaG9tZS1uYXYgbGk6bnRoLWNoaWxkKDUpIGEge1xuICBiYWNrZ3JvdW5kOiAjZjFkNTBjO1xuICBjb2xvcjogIzcyNjUwYjtcbn1cbi5jb25mLWhvbWUtbmF2IGxpOm50aC1jaGlsZCg1KSBhIHtcbiAgYmFja2dyb3VuZDogI2YxZDUwYztcbiAgY29sb3I6ICM3MjY1MGI7XG59XG4uY29uZi1ob21lLW5hdiBsaTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNvbmYtaG9tZS1uYXY6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5jb25mLWV4cGFuZCB7XG4gIG1heC1oZWlnaHQ6IDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzIGVhc2Utb3V0O1xufVxuLmNvbmYtZXhwYW5kLmV4cGFuZGVkIHtcbiAgbWF4LWhlaWdodDogMTAwMHB4O1xufVxuXG4uYmFubmVyLS1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uY29uZi1JbnRybyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY29uZmVyZW5jZXBhZ2UvY29uZmVyZW5jZS0yMDIwLWJhY2tncm91bmQuanBnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1MCUgMCAwIDA7XG4gIC8qaWZyYW1lIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB0b3A6MHB4O1xuICAgICAgbGVmdDowcHg7XG4gICAgfVxuICB9Ki9cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI5LjA2MjVlbSkge1xuICAuY29uZi1JbnRybyB7XG4gICAgcGFkZGluZzogMTMuNzVyZW0gMTAlIDAgMTAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtSW50cm8ge1xuICAgIHBhZGRpbmc6IDMwLjM0JSAwIDAgMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbn1cbi5jb25mLUludHJvIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAyMDA7XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtSW50cm8uY29uZi1JbnRyby0taG9tZS5jb25mLUludHJvLS1yZWR1Y2VkIHtcbiAgICBwYWRkaW5nOiAwIDAgNDYlIDA7XG4gIH1cbn1cbi5jb25mLUludHJvLmNvbmYtSW50cm8tLWhvbWUgLmNvbmYtSW50cm9fdGl0bGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwJTtcbiAgcmlnaHQ6IDEwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0yMDRweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIC5jb25mLUludHJvX3RpdGxlIHtcbiAgICB3aWR0aDogNTYwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjgwcHg7XG4gIH1cbn1cbi5jb25mLUludHJvIHAge1xuICBtYXgtd2lkdGg6IDQyLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uY29uZi1JbnRybyAuY29uZi1JbnRyb190aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG4gIG1heC13aWR0aDogNTYwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcbn1cbi5jb25mLUludHJvIC5jb25mLUludHJvX3RpdGxlIGgxIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YjZhYWM7XG4gIGNvbG9yOiAjZmZmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLUludHJvIC5jb25mLUludHJvX3RpdGxlIGgxIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cbn1cbi5jb25mLUludHJvIC5jb25mLUludHJvX3RpdGxlIHAge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLUludHJvIC5jb25mLUludHJvX3RpdGxlIHAge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIH1cbn1cbi5jb25mLUludHJvIC5jb25mLUludHJvX19jb3VudGRvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjYyNXJlbTtcbiAgdG9wOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE0MHB4KSB7XG4gIC5jb25mLUludHJvIC5jb25mLUludHJvX19jb3VudGRvd24ge1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogLTM0LjQzNzVyZW07XG4gICAgd2lkdGg6IDcwcmVtO1xuICB9XG59XG4uY29uZi1JbnRybyAjY29uZi1JbnRyb19fY2xvY2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29uZi1JbnRybyAjY29uZi1JbnRyb19fY2xvY2sgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxNDgsIDE2NSwgMC41KTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgcGFkZGluZzogMC41cmVtIDAuMjVyZW0gMC4yNXJlbSAwLjI1cmVtO1xuICBtaW4td2lkdGg6IDIuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRybyAjY29uZi1JbnRyb19fY2xvY2sgc3BhbiB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC4zNzVyZW0gMC4zNzVyZW0gMC4zNzVyZW07XG4gICAgbWluLXdpZHRoOiAzLjM3NXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICB9XG59XG4uY29uZi1JbnRybyAjY29uZi1JbnRyb19fY2xvY2sgc3BhbiBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLUludHJvICNjb25mLUludHJvX19jbG9jayBzcGFuIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgfVxufVxuLmNvbmYtSW50cm8uY29uZi1JbnRyby0taG9tZSAjc2xpZGVzaG93ID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lICNzbGlkZXNob3cgPiBkaXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmNvbmYtSW50cm8uY29uZi1JbnRyby0taG9tZSAjc2xpZGVzaG93ID4gZGl2LmNvbmYtY2Fyb3VzZWwtLWRheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIC5jb25mLUludHJvX3RpdGxlIHtcbiAgbWF4LXdpZHRoOiA4MCU7XG4gIHdpZHRoOiA4MCU7XG4gIG1hcmdpbjogYXV0bztcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCAjZmZmIDJweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLUludHJvLmNvbmYtSW50cm8tLWhvbWUgLmNvbmYtSW50cm9fdGl0bGUge1xuICAgIG1heC13aWR0aDogNTMuNzVyZW07XG4gICAgd2lkdGg6IDUzLjc1cmVtO1xuICB9XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIC5jb25mLUludHJvX3RpdGxlIHAge1xuICBjb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXgtd2lkdGg6IDQzLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40ZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIHRleHQtc2hhZG93OiAwcHggMHB4IDEwNHB4IHJnYigwLCAwLCAwKTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLUludHJvLmNvbmYtSW50cm8tLWhvbWUgLmNvbmYtSW50cm9fdGl0bGUgcCB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbmYtSW50cm8uY29uZi1JbnRyby0taG9tZSAuY29uZi1JbnRyb190aXRsZSBwIHtcbiAgICBmb250LXNpemU6IDMuMzEyNXJlbTtcbiAgfVxufVxuLmNvbmYtSW50cm8uY29uZi1JbnRyby0taG9tZSAuY29uZi1JbnRyb190aXRsZSBpbWcge1xuICBtYXgtd2lkdGg6IDExLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIC5jb25mLUludHJvX3RpdGxlIGltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1ob21lIC5jb25mLUludHJvX3RpdGxlIGltZy5jb25mLWxvZ28tLWxhcmdlIHtcbiAgbWF4LXdpZHRoOiAxNS42MjVyZW07XG59XG4uY29uZi1JbnRybyAjc2xpZGVzaG93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogNjB2aDtcbn1cbi5jb25mLUludHJvICNzbGlkZXNob3cgPiBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRvcDogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGJvdHRvbTogMHB4O1xufVxuLmNvbmYtSW50cm8uY29uZi1JbnRyby0tcmVkdWNlZCBoMSB7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDU4Mjk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLUludHJvLmNvbmYtSW50cm8tLXJlZHVjZWQgaDEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgbGVmdDogMHB4O1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbi5jb25mLUludHJvLmNvbmYtSW50cm8tLXJlZHVjZWQgaDEgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtSW50cm8uY29uZi1JbnRyby0tcmVkdWNlZCAuY29uZi1JbnRyb190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogLTE3N3B4O1xuICB9XG59XG4uY29uZi1JbnRyby5jb25mLUludHJvLS1yZWR1Y2VkIC5jb25mLUludHJvX192aWV3IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGI2YWFjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtMzZweDtcbiAgbGVmdDogNTAlO1xuICByaWdodDogMHB4O1xuICB6LWluZGV4OiA2MDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRyby5jb25mLUludHJvLS1yZWR1Y2VkIC5jb25mLUludHJvX192aWV3IHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgYm90dG9tOiAtNTBweDtcbiAgfVxufVxuLmNvbmYtSW50cm8uY29uZi1JbnRyby0tcmVkdWNlZCAuY29uZi1JbnRyb19fdmlldyBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1JbnRyby5jb25mLUludHJvLS1yZWR1Y2VkIC5jb25mLUludHJvX192aWV3IGEge1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gIH1cbn1cblxuLmNvbmYtaW50cm8tLXRleHQge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWludHJvLS10ZXh0IHtcbiAgICBwYWRkaW5nOiA2LjI1cmVtO1xuICB9XG59XG4uY29uZi1pbnRyby0tdGV4dCBwIHtcbiAgbWF4LXdpZHRoOiA0Mi41cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29uZi1zcG9uc29yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLXNwb25zb3Ige1xuICAgIHBhZGRpbmc6IDMuNzVyZW07XG4gIH1cbn1cbi5jb25mLXNwb25zb3IgcCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1zcG9uc29yIHAge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbi5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNGIxO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIge1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4uY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIC5vcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDQ4Ljc1cmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciAub3JiaXQtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMCA1cmVtO1xuICB9XG59XG4uY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHVsIHtcbiAgbWF4LXdpZHRoOiA0Mi41cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHVsIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHVsIGxpIGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHVsIGxpIHAge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgdWwgbGkgcDpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgY29udGVudDogXCLigJxcIjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciB1bCBsaSBwOmFmdGVyIHtcbiAgY29udGVudDogXCLigJ1cIjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbn1cbi5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgdWwgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xuICBvcGFjaXR5OiAxO1xufVxuLmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4udHdpdHRlci1ibG9jayB7XG4gIGJhY2tncm91bmQ6ICNiMjEyNjg7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAyLjVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnR3aXR0ZXItYmxvY2s6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICBmb250LXNpemU6IDMuMTI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC50d2l0dGVyLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDIuNXJlbTtcbiAgfVxufVxuLnR3aXR0ZXItYmxvY2sgaDMsXG4udHdpdHRlci1ibG9jayBhIHtcbiAgY29sb3I6ICNjY2ZmZmY7XG59XG4udHdpdHRlci1ibG9jayBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC42O1xufVxuLnR3aXR0ZXItYmxvY2sgaDMge1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMHB4O1xuICBtYXJnaW46IDEuMjVyZW0gMCAwIDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4udHdpdHRlci1ibG9jayBwIHtcbiAgbWF4LXdpZHRoOiAyNS42MjVyZW07XG4gIG1hcmdpbjogMCBhdXRvIDEuMjVyZW0gYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAudHdpdHRlci1ibG9jayBwIHtcbiAgICBtYXJnaW46IDAgYXV0byAyLjVyZW0gYXV0bztcbiAgfVxufVxuLnR3aXR0ZXItYmxvY2sgYS5hbGwtdHdlZXRzIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzO1xufVxuLnR3aXR0ZXItYmxvY2sgYS5hbGwtdHdlZXRzOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIiAgXFxmMTA1XCI7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzO1xufVxuLnR3aXR0ZXItYmxvY2sgYS5hbGwtdHdlZXRzOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuLnR3aXR0ZXItYmxvY2sgYS5hbGwtdHdlZXRzOmhvdmVyOmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xufVxuXG4uYm9va2luZyB7XG4gIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xufVxuXG4uY29uZi1ib29raW5nLFxuLmNvbG91cmVkLXRhYnMge1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyp1bC50YWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6MDtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgfVxuICAgIC50YWJzLXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLXB1cnBsZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC5zZXNzaW9uLWF0dGVuZGFuY2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNTljMGM5O1xuICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICYuYXR0ZW5kaW5nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICBwYWRkaW5nOiByZW1fY2FsYyg0NSAyMCAxNiAyMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoMzAgMjAgMTAgMjApO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10sIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBjb2xvcjogJGNvbmYtcHVycGxlO1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6XCI+XCI7XG4gICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMm4pIHN0cm9uZyB7XG4gICAgICAgICAgY29sb3I6ICRycWEtb3JhbmdlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLW9mLXR5cGUoM24pIHN0cm9uZyB7XG4gICAgICAgICAgY29sb3I6ICRycWEtcGluaztcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDRuKSBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDI1IDIwIDE2IDIwKTtcbiAgICAgICAgICAuc2Vzc2lvbi1hdHRlbmRhbmNlIHtcbiAgICAgICAgICAgIHRvcDotMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjApO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDI2KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgcGFkZGluZzowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgLnRhYnMtY29udGVudC0tZGF0ZSB7XG4gICAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgIH1cbiAgICAudGFicy1jb250ZW50LS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiAkY29uZi1wdXJwbGU7XG4gICAgfVxuICAgIHAsIHVsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDI2KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNGVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygzMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNCk7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luOjBweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjpyZW1fY2FsYyggMCAwIDEwIDApIDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlc3Npb25fZGV0YWlsIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICB9XG5cbiAgICAuc2Vzc2lvbl9kZXRhaWwgdWwgbGkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuXG5cbiAgICB9XG4gIH1cbiAgKi9cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nLFxuLmNvbG91cmVkLXRhYnMge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29uZi1ib29raW5nLFxuLmNvbG91cmVkLXRhYnMge1xuICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nID4gLmNvbHVtbnMsXG4uY29sb3VyZWQtdGFicyA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZzogMDtcbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyAudGV4dC1yaWdodCxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBsYWJlbCxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBsYWJlbCxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgbGFiZWwge1xuICAgIHBhZGRpbmc6IDAuNWVtIDIuNjI1cmVtIDAgMWVtO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5jb25mZXJlbmNlLWJvb2tpbmcgbGFiZWwgaSxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgbGFiZWwgaSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBpbnB1dFt0eXBlPXJhZGlvXSxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgaW5wdXRbdHlwZT1jaGVja2JveF0sXG4uY29sb3VyZWQtdGFicyAuY29uZmVyZW5jZS1ib29raW5nIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgLmJveDphZnRlcixcbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgLmJveDphZnRlcixcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIC5ib3g6YWZ0ZXIsXG4uY29sb3VyZWQtdGFicyAuY29uZmVyZW5jZS1ib29raW5nIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyAuYm94OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyAuYm94LFxuLmNvbG91cmVkLXRhYnMgLmNvbmZlcmVuY2UtYm9va2luZyAuYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDEuMXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICBib3JkZXI6ICNlOWU5ZTkgc29saWQgMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNvbmYtYm9va2luZyAuY29uZmVyZW5jZS1ib29raW5nIC5jb25mLWJvb2tpbmctLWRldGFpbHMgLmJveCxcbi5jb2xvdXJlZC10YWJzIC5jb25mZXJlbmNlLWJvb2tpbmcgLmNvbmYtYm9va2luZy0tZGV0YWlscyAuYm94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5jb25mZXJlbmNlLWJvb2tpbmcgLmNvbmYtYm9va2luZy0tZGV0YWlscyAuYm94LFxuLmNvbG91cmVkLXRhYnMgLmNvbmZlcmVuY2UtYm9va2luZyAuY29uZi1ib29raW5nLS1kZXRhaWxzIC5ib3gge1xuICAgIHRvcDogLTMuNjg3NXJlbTtcbiAgICBsZWZ0OiAtMC42MjVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmNvbmZlcmVuY2UtYm9va2luZyAuYm94OmFmdGVyLFxuLmNvbG91cmVkLXRhYnMgLmNvbmZlcmVuY2UtYm9va2luZyAuYm94OmFmdGVyIHtcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiA0MCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLWxlZnQ6IDcuNXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tOiA3LjVweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZGQ1ODI5O1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMS4xcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gIGxlZnQ6IDEwJTtcbiAgcmlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGJvdHRvbTogNTAlO1xuICB0b3A6IDA7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5jb25mLWJvb2tpbmcgLnJvdyxcbi5jb2xvdXJlZC10YWJzIC5yb3cge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZyxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgcGFkZGluZzogMS4xMjVyZW0gMS44NzVyZW07XG4gIGJhY2tncm91bmQ6ICMwOTUwNTg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMHB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZyxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMTI1cmVtIDEuODc1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtcGluayxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtcGluayB7XG4gIGJhY2tncm91bmQ6ICNhNDA0NzU7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtdGVhbCxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtdGVhbCB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtYmx1ZSxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtYmx1ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtcmVkLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1yZWQge1xuICBiYWNrZ3JvdW5kOiAjY2IwZTM0O1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLW9yYW5nZSxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtb3JhbmdlIHtcbiAgYmFja2dyb3VuZDogI2RkNTgyOTtcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1kYXJrLWJsdWUsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWRhcmstYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDNhNzM7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtYmxhY2ssXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtc2FnZSxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTk5NmI7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi1wdXJwbGUsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYtcHVycGxlIHtcbiAgYmFja2dyb3VuZDogIzhiNmFhYztcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mLWRhcmstZ3JlZW4sXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYtZGFyay1ncmVlbiB7XG4gIGJhY2tncm91bmQ6ICMwOTUwNTg7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi1vcmFuZ2UsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYtb3JhbmdlIHtcbiAgYmFja2dyb3VuZDogI2QxODIzNDtcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mLWxpZ2h0LWdyZWVuLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mLWxpZ2h0LWdyZWVuIHtcbiAgYmFja2dyb3VuZDogI2EzYjQyZTtcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mLWJsdWUsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYtYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZTgxYTQ7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi1icm93bixcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi1icm93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MjY1MGI7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi15ZWxsb3csXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYteWVsbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZDUwYztcbiAgY29sb3I6ICM3MjY1MGI7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZi1waW5rLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mLXBpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjIxMjY4O1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMS10ZWFsLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mMjEtdGVhbCB7XG4gIGJhY2tncm91bmQ6ICMwOUE4OTA7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXB1cnBsZSxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXB1cnBsZSB7XG4gIGJhY2tncm91bmQ6ICM2RTE2NjE7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXllbGxvdyxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXllbGxvdyB7XG4gIGJhY2tncm91bmQ6ICNBMjg3Mzc7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXllbGxvdyxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIxLXllbGxvdyB7XG4gIGJhY2tncm91bmQ6ICNBMjg3Mzc7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIyLW1hZyxcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIyLW1hZyB7XG4gIGJhY2tncm91bmQ6ICNFRDIwN0E7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nLmNvbnNlcnRpbmEtY29uZjIyLWdyZWVuLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mMjItZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjQjJEMjM1O1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMi1vcmFuZ2UsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMi1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiAjRjE1QTIyO1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMi1saWdodC1vcmFuZ2UsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMi1saWdodC1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiAjRjlBMDFCO1xufVxuLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZy5jb25zZXJ0aW5hLWNvbmYyMi1ncmV5LFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcuY29uc2VydGluYS1jb25mMjItZ3JleSB7XG4gIGJhY2tncm91bmQ6ICM3MDcwNzA7XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nIHNwYW4sXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZyBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDIuODc1cmVtIDAgMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbmYtYm9va2luZyBoMi5wcm9ncmFtbWVfaGVhZGluZyBzcGFuLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcgc3BhbiB7XG4gICAgbWluLXdpZHRoOiAzMS4yNXJlbTtcbiAgICBwYWRkaW5nOiAwIDIuODc1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nIHNwYW46YWZ0ZXIsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZyBzcGFuOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICNmZmY7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDMyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIGgyLnByb2dyYW1tZV9oZWFkaW5nIHNwYW46YWZ0ZXIsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZyBzcGFuOmFmdGVyIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmcub3BlbiBzcGFuOmFmdGVyLFxuLmNvbG91cmVkLXRhYnMgaDIucHJvZ3JhbW1lX2hlYWRpbmcub3BlbiBzcGFuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGYxMDZcIjtcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmc6aG92ZXIsXG4uY29sb3VyZWQtdGFicyBoMi5wcm9ncmFtbWVfaGVhZGluZzpob3ZlciB7XG4gIG9wYWNpdHk6IDAuODtcbn1cbi5jb25mLWJvb2tpbmcgaDIucHJvZ3JhbW1lX2hlYWRpbmc6aG92ZXIgc3BhbjphZnRlcixcbi5jb2xvdXJlZC10YWJzIGgyLnByb2dyYW1tZV9oZWFkaW5nOmhvdmVyIHNwYW46YWZ0ZXIge1xuICB0b3A6IDVweDtcbn1cbi5jb25mLWJvb2tpbmcgLnByb2dyYW1tZV9jb250ZW50LFxuLmNvbG91cmVkLXRhYnMgLnByb2dyYW1tZV9jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDEuMjVyZW07XG59XG4uY29uZi1ib29raW5nIC5jb25jZXJ0aW5hLWNvbnRlbnQgLmNvbmNlcnRpbmEtY29udGVudF9fd3JhcHBlcixcbi5jb2xvdXJlZC10YWJzIC5jb25jZXJ0aW5hLWNvbnRlbnQgLmNvbmNlcnRpbmEtY29udGVudF9fd3JhcHBlciB7XG4gIG1heC13aWR0aDogNTYuMjVyZW07XG4gIHBhZGRpbmc6IDEuMjVyZW0gMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5jb25jZXJ0aW5hLWNvbnRlbnQgLmNvbmNlcnRpbmEtY29udGVudF9fd3JhcHBlcixcbi5jb2xvdXJlZC10YWJzIC5jb25jZXJ0aW5hLWNvbnRlbnQgLmNvbmNlcnRpbmEtY29udGVudF9fd3JhcHBlciB7XG4gICAgcGFkZGluZzogMy4xMjVyZW0gMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmNvbmNlcnRpbmEtY29udGVudCB0YWJsZSxcbi5jb2xvdXJlZC10YWJzIC5jb25jZXJ0aW5hLWNvbnRlbnQgdGFibGUge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4uY29uZi1ib29raW5nIC5jb25jZXJ0aW5hLWNvbnRlbnQgdGFibGUgdGQsXG4uY29sb3VyZWQtdGFicyAuY29uY2VydGluYS1jb250ZW50IHRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC41ZW07XG59XG4uY29uZi1ib29raW5nIC5kYXksXG4uY29sb3VyZWQtdGFicyAuZGF5IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWF4LXdpZHRoOiA2Mi41cmVtO1xuICBtYXJnaW46IDAgYXV0byAzLjEyNXJlbSBhdXRvO1xufVxuLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbi10aXRsZSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xufVxuLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbi10aXRsZSBoMyB7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5kYXkgLnNlc3Npb24tdGl0bGUgaDMsXG4uY29sb3VyZWQtdGFicyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzIHtcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzIHN0cm9uZyxcbi5jb2xvdXJlZC10YWJzIC5kYXkgLnNlc3Npb24tdGl0bGUgaDMgc3Ryb25nIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzIHN0cm9uZyxcbi5jb2xvdXJlZC10YWJzIC5kYXkgLnNlc3Npb24tdGl0bGUgaDMgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmRheSAuc2Vzc2lvbi10aXRsZSBoMyBzcGFuLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbi10aXRsZSBoMyBzcGFuIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzIHNwYW4sXG4uY29sb3VyZWQtdGFicyAuZGF5IC5zZXNzaW9uLXRpdGxlIGgzIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmRheSAuc2Vzc2lvbi10aXRsZS5hdHRlbmRpbmctdGFiLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbi10aXRsZS5hdHRlbmRpbmctdGFiIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbmYtYm9va2luZyAuZGF5IC5zZXNzaW9uLXRpdGxlLmF0dGVuZGluZy10YWI6YmVmb3JlLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbi10aXRsZS5hdHRlbmRpbmctdGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjMzAwO1xuICB3aWR0aDogMC45Mzc1cmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMS44NzVyZW07XG59XG4uY29uZi1ib29raW5nIC5kYXkgLnNlc3Npb25fZGV0YWlsLFxuLmNvbG91cmVkLXRhYnMgLmRheSAuc2Vzc2lvbl9kZXRhaWwge1xuICBtYXJnaW46IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmRheSAuc2Vzc2lvbl9kZXRhaWwsXG4uY29sb3VyZWQtdGFicyAuZGF5IC5zZXNzaW9uX2RldGFpbCB7XG4gICAgbWFyZ2luOiAwLjYyNXJlbSAxLjg3NXJlbSAxLjg3NXJlbSAxLjg3NXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuZGF5LmRheTEsXG4uY29sb3VyZWQtdGFicyAuZGF5LmRheTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRlNmVhO1xufVxuLmNvbmYtYm9va2luZyAuZGF5LmRheTEgLmRheV9fdGl0bGUsXG4uY29sb3VyZWQtdGFicyAuZGF5LmRheTEgLmRheV9fdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNGIxO1xufVxuLmNvbmYtYm9va2luZyAuZGF5LmRheTEgLmRheV9fdGl0bGUgaDQsXG4uY29sb3VyZWQtdGFicyAuZGF5LmRheTEgLmRheV9fdGl0bGUgaDQge1xuICBjb2xvcjogI2M0ZTZlYTtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkxIC5zZXNzaW9uLXRpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkxIC5zZXNzaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkxIC52aWV3X2RheV9kZXRhaWxzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTEgLnRvZ2dsZV9zZXNzaW9uX2RldGFpbHMsXG4uY29uZi1ib29raW5nIC5kYXkuZGF5MSAudmlld19zdHJlYW1fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MSAudmlld19kYXlfZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MSAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MSAudmlld19zdHJlYW1fZGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICMzN2FlYmM7XG59XG4uY29uZi1ib29raW5nIC5kYXkuZGF5MSAuc3RyZWFtIGgzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTEgLnN0cmVhbSBoNCxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MSAuc3RyZWFtIGgzLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkxIC5zdHJlYW0gaDQge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkyLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZWRmNTtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkyIC5kYXlfX3RpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkyIC5kYXlfX3RpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyMTI2ODtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkyIC5zZXNzaW9uLXRpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkyIC5zZXNzaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IyMTI2ODtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkyIC52aWV3X2RheV9kZXRhaWxzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTIgLnRvZ2dsZV9zZXNzaW9uX2RldGFpbHMsXG4uY29uZi1ib29raW5nIC5kYXkuZGF5MiAudmlld19zdHJlYW1fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MiAudmlld19kYXlfZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MiAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MiAudmlld19zdHJlYW1fZGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICNkNzdiYWU7XG59XG4uY29uZi1ib29raW5nIC5kYXkuZGF5MiAuc3RyZWFtIGgzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTIgLnN0cmVhbSBoNCxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MiAuc3RyZWFtIGgzLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkyIC5zdHJlYW0gaDQge1xuICBjb2xvcjogI2IyMTI2ODtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkzLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZGRkZjtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkzIC5kYXlfX3RpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkzIC5kYXlfX3RpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5NTA1ODtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkzIC5zZXNzaW9uLXRpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkzIC5zZXNzaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5NTA1ODtcbn1cbi5jb25mLWJvb2tpbmcgLmRheS5kYXkzIC52aWV3X2RheV9kZXRhaWxzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTMgLnRvZ2dsZV9zZXNzaW9uX2RldGFpbHMsXG4uY29uZi1ib29raW5nIC5kYXkuZGF5MyAudmlld19zdHJlYW1fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MyAudmlld19kYXlfZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MyAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MyAudmlld19zdHJlYW1fZGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICM0OTkyOWE7XG59XG4uY29uZi1ib29raW5nIC5kYXkuZGF5MyAuc3RyZWFtIGgzLFxuLmNvbmYtYm9va2luZyAuZGF5LmRheTMgLnN0cmVhbSBoNCxcbi5jb2xvdXJlZC10YWJzIC5kYXkuZGF5MyAuc3RyZWFtIGgzLFxuLmNvbG91cmVkLXRhYnMgLmRheS5kYXkzIC5zdHJlYW0gaDQge1xuICBjb2xvcjogIzA5NTA1ODtcbn1cbi5jb25mLWJvb2tpbmcgLnNlc3Npb25fY29udGVudCxcbi5jb2xvdXJlZC10YWJzIC5zZXNzaW9uX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5zZXNzaW9uX2NvbnRlbnQsXG4uY29sb3VyZWQtdGFicyAuc2Vzc2lvbl9jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5kYXlfX3RpdGxlLFxuLmNvbG91cmVkLXRhYnMgLmRheV9fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5X190aXRsZSxcbi5jb2xvdXJlZC10YWJzIC5kYXlfX3RpdGxlIHtcbiAgICBwYWRkaW5nOiAxcmVtIDEuODc1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5kYXlfX3RpdGxlIGgzLFxuLmNvbG91cmVkLXRhYnMgLmRheV9fdGl0bGUgaDMge1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMCAwLjYyNXJlbSAwIDEuMjVyZW07XG4gIGZvbnQtc2l6ZTogMS42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5X190aXRsZSBoMyxcbi5jb2xvdXJlZC10YWJzIC5kYXlfX3RpdGxlIGgzIHtcbiAgICBtYXJnaW46IDAgMC42MjVyZW0gMCAzLjEyNXJlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmRheV9fdGl0bGUgaDMgc3Bhbixcbi5jb2xvdXJlZC10YWJzIC5kYXlfX3RpdGxlIGgzIHNwYW4ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5X190aXRsZSBoMyBzcGFuLFxuLmNvbG91cmVkLXRhYnMgLmRheV9fdGl0bGUgaDMgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmRheV9fdGl0bGUgaDQsXG4uY29sb3VyZWQtdGFicyAuZGF5X190aXRsZSBoNCB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbjogMCAwLjYyNXJlbSAwLjYyNXJlbSAxLjI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmRheV9fdGl0bGUgaDQsXG4uY29sb3VyZWQtdGFicyAuZGF5X190aXRsZSBoNCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAwLjYyNXJlbSAwIDA7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuZGF5X190aXRsZSBsYWJlbCxcbi5jb2xvdXJlZC10YWJzIC5kYXlfX3RpdGxlIGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgY29sb3I6ICNmZmY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuZGF5X190aXRsZSBsYWJlbCxcbi5jb2xvdXJlZC10YWJzIC5kYXlfX3RpdGxlIGxhYmVsIHtcbiAgICBjb2xvcjogIzU4NTk1YjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxlZnQ6IDEuODc1cmVtO1xuICAgIHRvcDogNC43NXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuZGF5X190aXRsZS5hdHRlbmRpbmc6YmVmb3JlLFxuLmNvbG91cmVkLXRhYnMgLmRheV9fdGl0bGUuYXR0ZW5kaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjMzAwO1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogLTEuODc1cmVtO1xufVxuLmNvbmYtYm9va2luZyAuc3RyZWFtLFxuLmNvbG91cmVkLXRhYnMgLnN0cmVhbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgIzAwM2E3MztcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xufVxuLmNvbmYtYm9va2luZyAuc3RyZWFtIC50ZXh0LXJpZ2h0LFxuLmNvbG91cmVkLXRhYnMgLnN0cmVhbSAudGV4dC1yaWdodCB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xufVxuLmNvbmYtYm9va2luZyAuc3RyZWFtIHAsXG4uY29uZi1ib29raW5nIC5zdHJlYW0gbGksXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIHAsXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIGxpIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuc3RyZWFtIHAsXG4uY29uZi1ib29raW5nIC5zdHJlYW0gbGksXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIHAsXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIGxpIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5zdHJlYW0gaDQsXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIGg0IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuc3RyZWFtIGg0LFxuLmNvbG91cmVkLXRhYnMgLnN0cmVhbSBoNCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLnN0cmVhbSBoMyxcbi5jb2xvdXJlZC10YWJzIC5zdHJlYW0gaDMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5zdHJlYW0gaDMsXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLnN0cmVhbSBsYWJlbCxcbi5jb2xvdXJlZC10YWJzIC5zdHJlYW0gbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuLmNvbmYtYm9va2luZyAuc3RyZWFtIC5ib3gsXG4uY29sb3VyZWQtdGFicyAuc3RyZWFtIC5ib3gge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogLTAuNjI1cmVtO1xuICB0b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6ICNhMmEyYTIgc29saWQgMXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLnN0cmVhbSAuYm94LFxuLmNvbG91cmVkLXRhYnMgLnN0cmVhbSAuYm94IHtcbiAgICB0b3A6IDAuNXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuc3RyZWFtIHN0cm9uZyxcbi5jb2xvdXJlZC10YWJzIC5zdHJlYW0gc3Ryb25nIHtcbiAgbGluZS1oZWlnaHQ6IDEuOGVtO1xufVxuLmNvbmYtYm9va2luZyAuY2xvc2VfZGF5X2RldGFpbHMsXG4uY29uZi1ib29raW5nIC52aWV3X2RheV9kZXRhaWxzLFxuLmNvbmYtYm9va2luZyAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbi5jb25mLWJvb2tpbmcgLnZpZXdfc3RyZWFtX2RldGFpbHMsXG4uY29sb3VyZWQtdGFicyAuY2xvc2VfZGF5X2RldGFpbHMsXG4uY29sb3VyZWQtdGFicyAudmlld19kYXlfZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC50b2dnbGVfc2Vzc2lvbl9kZXRhaWxzLFxuLmNvbG91cmVkLXRhYnMgLnZpZXdfc3RyZWFtX2RldGFpbHMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiA0cHggOHB4O1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuY2xvc2VfZGF5X2RldGFpbHMsXG4uY29uZi1ib29raW5nIC52aWV3X2RheV9kZXRhaWxzLFxuLmNvbmYtYm9va2luZyAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbi5jb25mLWJvb2tpbmcgLnZpZXdfc3RyZWFtX2RldGFpbHMsXG4uY29sb3VyZWQtdGFicyAuY2xvc2VfZGF5X2RldGFpbHMsXG4uY29sb3VyZWQtdGFicyAudmlld19kYXlfZGV0YWlscyxcbi5jb2xvdXJlZC10YWJzIC50b2dnbGVfc2Vzc2lvbl9kZXRhaWxzLFxuLmNvbG91cmVkLXRhYnMgLnZpZXdfc3RyZWFtX2RldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmNsb3NlX2RheV9kZXRhaWxzOmhvdmVyLFxuLmNvbmYtYm9va2luZyAudmlld19kYXlfZGV0YWlsczpob3Zlcixcbi5jb25mLWJvb2tpbmcgLnRvZ2dsZV9zZXNzaW9uX2RldGFpbHM6aG92ZXIsXG4uY29uZi1ib29raW5nIC52aWV3X3N0cmVhbV9kZXRhaWxzOmhvdmVyLFxuLmNvbG91cmVkLXRhYnMgLmNsb3NlX2RheV9kZXRhaWxzOmhvdmVyLFxuLmNvbG91cmVkLXRhYnMgLnZpZXdfZGF5X2RldGFpbHM6aG92ZXIsXG4uY29sb3VyZWQtdGFicyAudG9nZ2xlX3Nlc3Npb25fZGV0YWlsczpob3Zlcixcbi5jb2xvdXJlZC10YWJzIC52aWV3X3N0cmVhbV9kZXRhaWxzOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5jb25mLWJvb2tpbmcgLmFkZGl0aW9uYWxfcHJvZHVjdHMsXG4uY29sb3VyZWQtdGFicyAuYWRkaXRpb25hbF9wcm9kdWN0cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1heC13aWR0aDogNjIuNXJlbTtcbiAgbWFyZ2luOiAxLjg3NXJlbSBhdXRvIDAuNjI1cmVtIGF1dG87XG4gIGJhY2tncm91bmQ6ICNjNGU2ZWE7XG59XG4uY29uZi1ib29raW5nIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIGlucHV0LFxuLmNvbG91cmVkLXRhYnMgLmFkZGl0aW9uYWxfcHJvZHVjdHMgaW5wdXQge1xuICBtYXgtd2lkdGg6IDMuMTI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uY29uZi1ib29raW5nIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIGxhYmVsLFxuLmNvbG91cmVkLXRhYnMgLmFkZGl0aW9uYWxfcHJvZHVjdHMgbGFiZWwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmFkZGl0aW9uYWxfcHJvZHVjdHMgbGFiZWwsXG4uY29sb3VyZWQtdGFicyAuYWRkaXRpb25hbF9wcm9kdWN0cyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMS42MjVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLmFkZGl0aW9uYWxfcHJvZHVjdHMgLmJveCxcbi5jb2xvdXJlZC10YWJzIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIC5ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY29uZi1ib29raW5nIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIGgyLFxuLmNvbG91cmVkLXRhYnMgLmFkZGl0aW9uYWxfcHJvZHVjdHMgaDIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDAuNjI1cmVtIDA7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuNjI1cmVtO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmFkZGl0aW9uYWxfcHJvZHVjdHMgaDIsXG4uY29sb3VyZWQtdGFicyAuYWRkaXRpb25hbF9wcm9kdWN0cyBoMiB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjg3NXJlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIHAsXG4uY29sb3VyZWQtdGFicyAuYWRkaXRpb25hbF9wcm9kdWN0cyBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIC5hZGRpdGlvbmFsX3Byb2R1Y3RzX19jb250ZW50LFxuLmNvbG91cmVkLXRhYnMgLmFkZGl0aW9uYWxfcHJvZHVjdHMgLmFkZGl0aW9uYWxfcHJvZHVjdHNfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmFkZGl0aW9uYWxfcHJvZHVjdHMgLmFkZGl0aW9uYWxfcHJvZHVjdHNfX2NvbnRlbnQsXG4uY29sb3VyZWQtdGFicyAuYWRkaXRpb25hbF9wcm9kdWN0cyAuYWRkaXRpb25hbF9wcm9kdWN0c19fY29udGVudCB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMS44NzVyZW07XG4gIH1cbn1cbi5jb25mLWJvb2tpbmcgLm5leHQtYnV0dG9uLFxuLmNvbG91cmVkLXRhYnMgLm5leHQtYnV0dG9uIHtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG59XG4uY29uZi1ib29raW5nIC50d2l0dGVyLWJsb2NrLFxuLmNvbG91cmVkLXRhYnMgLnR3aXR0ZXItYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAtMy43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1ib29raW5nIC5jb25mLUludHJvLFxuLmNvbG91cmVkLXRhYnMgLmNvbmYtSW50cm8ge1xuICAgIG1hcmdpbi10b3A6IC01cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5pbmZvLWJveCxcbi5jb2xvdXJlZC10YWJzIC5pbmZvLWJveCB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDIuNXJlbSAwLjEyNXJlbSAyLjg3NXJlbTtcbiAgbWFyZ2luOiAwLjYyNXJlbSAwIDFlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMi44NzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYm9va2luZyAuaW5mby1ib3gsXG4uY29sb3VyZWQtdGFicyAuaW5mby1ib3gge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDIuNXJlbSAwLjEyNXJlbSAzLjc1cmVtO1xuICB9XG59XG4uY29uZi1ib29raW5nIC5pbmZvLWJveCBwLFxuLmNvbG91cmVkLXRhYnMgLmluZm8tYm94IHAge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmluZm8tYm94IHAsXG4uY29sb3VyZWQtdGFicyAuaW5mby1ib3ggcCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuaW5mby1ib3g6YmVmb3JlLFxuLmNvbG91cmVkLXRhYnMgLmluZm8tYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogODAwO1xuICBjb250ZW50OiBcImlcIjtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ1ODI5O1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJvb2tpbmcgLmluZm8tYm94OmJlZm9yZSxcbi5jb2xvdXJlZC10YWJzIC5pbmZvLWJveDpiZWZvcmUge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjg3NXJlbTtcbiAgICB3aWR0aDogMi44NzVyZW07XG4gICAgaGVpZ2h0OiAyLjg3NXJlbTtcbiAgfVxufVxuLmNvbmYtYm9va2luZyAuaW5mby1ib3guZXJyb3I6YmVmb3JlLFxuLmNvbG91cmVkLXRhYnMgLmluZm8tYm94LmVycm9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYjBlMzQ7XG59XG5cbi5yZWFkLW1vcmUtdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5sYXp5bG9hZCB7XG4gIHRyYW5zaXRpb246IGFsbCAxcztcbn1cblxuLmZhZGVPdXQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZmFkZUluIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNvbmZlcmVuY2UtcHJpY2VzIHtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kYXkge1xuICBib3JkZXI6ICNlOWU5ZTkgc29saWQgMXB4O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kYXkuY29uZmVyZW5jZS1wcmljZXNfX2RheS0tZGVsZWdhdGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyBoMiB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ1ODI5O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uY29uZmVyZW5jZS1wcmljZXMgaDMge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzU4NTk1YjtcbiAgcGFkZGluZzogMC42MjVyZW0gMC42MjVyZW0gMCAwLjYyNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgaDMucmVkdWNlZCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgcCB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW0gMC43NXJlbSAwLjYyNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX3ByaWNlIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICNkZDU4Mjk7XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19wcmljZS5yZWR1Y2VkIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19wcmljZS5jb25mZXJlbmNlLXByaWNlc19fcHJpY2UtLW5vcGFkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX3ByaWNlLmVhcmx5IHNwYW4ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fcHJpY2UgLmRpc2NvdW50IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fcHJpY2UuZWFybHkge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIH1cbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2NwZCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fY3BkIHtcbiAgICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2NwZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2NwZCB7XG4gICAgbWFyZ2luLXRvcDogLTM1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbiAgfVxufVxuLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fY3BkLXRleHQge1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2Rpc2NvdW50IHtcbiAgYmFja2dyb3VuZDogI2NiMGUzNDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWF4LXdpZHRoOiAyNjBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNGRlZyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kaXNjb3VudCBoNCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kaXNjb3VudCBzdHJvbmcge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40ZW07XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kaXNjb3VudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xufVxuLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fZGF5LS0xZGF5IGgyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2RheS0tMWRheSAuY29uZmVyZW5jZS1wcmljZXNfX3ByaWNlIHtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmZlcmVuY2UtcHJpY2VzIC5jb25mZXJlbmNlLXByaWNlc19fZGF5LS0xZGF5IHtcbiAgICBtYXJnaW4tdG9wOiA3LjVyZW07XG4gIH1cbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2RheS0tMmRheSBoMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNDA0NzU7XG59XG4uY29uZmVyZW5jZS1wcmljZXMgLmNvbmZlcmVuY2UtcHJpY2VzX19kYXktLTJkYXkgLmNvbmZlcmVuY2UtcHJpY2VzX19wcmljZSB7XG4gIGNvbG9yOiAjYTQwNDc1O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mZXJlbmNlLXByaWNlcyAuY29uZmVyZW5jZS1wcmljZXNfX2RheS0tMmRheSB7XG4gICAgbWFyZ2luLXRvcDogNy41cmVtO1xuICB9XG59XG4uY29uZmVyZW5jZS1wcmljZXMgc3Bhbi5lYWNoIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuc21hbGwtcHJpbnQge1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbn1cbi5jb25mZXJlbmNlLXByaWNlcyAuc21hbGwtcHJpbnQuc21hbGwtcHJpbnQtLWRlbGVnYXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuXG4uY29uZi1iYXNrZXQge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNi4yNXJlbTtcbiAgYmFja2dyb3VuZDogI2RlZGVkZTtcbiAgd2lkdGg6IDE4Ljc1cmVtO1xuICB6LWluZGV4OiAxMDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICByaWdodDogLTE4Ljc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2tldCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5jb25mLWJhc2tldDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjM2U4MWE0O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNXB4O1xuICBsZWZ0OiAwO1xufVxuLmNvbmYtYmFza2V0LmlzLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDYuMjVyZW07XG59XG4uY29uZi1iYXNrZXQub3V0IHtcbiAgcmlnaHQ6IDA7XG59XG4uY29uZi1iYXNrZXQub3V0LmhpbnQge1xuICByaWdodDogMDtcbn1cbi5jb25mLWJhc2tldC5oaW50IHtcbiAgcmlnaHQ6IC0xOC4xMjVyZW07XG59XG4uY29uZi1iYXNrZXQgaDMge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbn1cbi5jb25mLWJhc2tldCBoNCB7XG4gIGNvbG9yOiAjNTg1OTViO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY29uZi1iYXNrZXQgLmNvbmYtYmFza2V0X19jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGJhY2tncm91bmQ6ICNhZmFmYWY7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xufVxuLmNvbmYtYmFza2V0IC5jb25mLWJhc2tldF9fY2xvc2U6YWZ0ZXIge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIGNvbnRlbnQ6IFwiIFxcZjEwNVwiO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3R0b206IC0xcHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG59XG4uY29uZi1iYXNrZXQgLmNvbmYtYmFza2V0X19jbG9zZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzZTgxYTQ7XG59XG4uY29uZi1iYXNrZXQgLmNvbmYtYmFza2V0X19zZXNzaW9uLnNlbGVjdGVkIGg0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY29uZi1iYXNrZXQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5jb25mLWJhc2tldCBwLnNlbGVjdGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY29uZi1iYXNrZXQgcC5jb25mLWJhc2tldF9fbWVzc2FnZSB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtO1xufVxuXG4uY29uZi1iYXNrZXRfX2NvbnRlbnQge1xuICBtaW4taGVpZ2h0OiA5LjM3NXJlbTtcbn1cblxuLmNvbmYtYmFza2V0X19idXR0b24ge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZTgxYTQ7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDFyZW07XG4gIG1pbi1oZWlnaHQ6IDIuNXJlbTtcbiAgbWluLXdpZHRoOiA4Ljc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgbGVmdDogLTUuNjg3NXJlbTtcbiAgdG9wOiAyLjc1cmVtO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4uY29uZi1iYXNrZXRfX2RheTEsIC5jb25mLWJhc2tldF9fZGF5MiwgLmNvbmYtYmFza2V0X19kYXkzIHtcbiAgYm9yZGVyLWJvdHRvbTogZGFzaGVkIDFweCAjNTg1OTViO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY29uZi1iYXNrZXRfX2RheTEuc2VsZWN0ZWQsIC5jb25mLWJhc2tldF9fZGF5Mi5zZWxlY3RlZCwgLmNvbmYtYmFza2V0X19kYXkzLnNlbGVjdGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb25mLWJhc2tldF9fZGF5MSBoMywgLmNvbmYtYmFza2V0X19kYXkxIHAge1xuICBjb2xvcjogI2QxODIzNDtcbn1cblxuLmNvbmYtYmFza2V0X19kYXkyIGgzLCAuY29uZi1iYXNrZXRfX2RheTIgcCB7XG4gIGNvbG9yOiAjOGI2YWFjO1xufVxuXG4uY29uZi1iYXNrZXRfX2RheTMgaDMsIC5jb25mLWJhc2tldF9fZGF5MyBwIHtcbiAgY29sb3I6ICMzZTgxYTQ7XG59XG5cbi5jb25mLWJhc2tldF9fYWRkaXRpb25hbCB7XG4gIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbn1cblxuLmNvbmYtYmFza2V0X19zdW1tYXJ5IHtcbiAgYm9yZGVyLWJvdHRvbTogZGFzaGVkIDFweCAjNTg1OTViO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xufVxuLmNvbmYtYmFza2V0X19zdW1tYXJ5IHN0cm9uZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiA0OSU7XG59XG4uY29uZi1iYXNrZXRfX3N1bW1hcnkgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDQ5JTtcbn1cblxuLmNvbmYtYmFza2V0X190b3RhbCB7XG4gIGJvcmRlci1ib3R0b206IGRhc2hlZCAxcHggIzU4NTk1YjtcbiAgcGFkZGluZzogMC42MjVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmNvbmYtYmFza2V0X190b3RhbCBzdHJvbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogNDklO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5jb25mLWJhc2tldF9fdG90YWwgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDQ5JTtcbn1cblxuLmNvbnRlbnQgLnNpZ251cC1ib3gge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZGQ1ODI5O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDIwMDtcbiAgdG9wOiA0MDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbSAxLjI1cmVtIDEuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMHB4IDBweCAxMHB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDE4cHggMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50IC5zaWdudXAtYm94IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmNvbnRlbnQgLnNpZ251cC1ib3ggaDQsIC5jb250ZW50IC5zaWdudXAtYm94IHAge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW46IDAgMCAwLjRlbSAwO1xufVxuLmNvbnRlbnQgLnNpZ251cC1ib3ggYS5idXR0b24ge1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNjI1cmVtO1xufVxuXG4uY29udGVudCAucG9wLXVwLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb250ZW50IC5wb3AtdXAtY29udGVudC52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogMjBweDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwICFpbXBvcnRhbnQ7XG59XG4uY29udGVudCAucG9wLXVwLWNvbnRlbnQgLnBvcC11cC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiA5MCU7XG4gIG1heC13aWR0aDogNTByZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHotaW5kZXg6IDEzMDtcbiAgYm9yZGVyLXJhZGl1czogMS4xMjVyZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjNweCAycHggcmdiYSgwLCAwLCAwLCAwLjU1KTtcbiAgcGFkZGluZzogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50IC5wb3AtdXAtY29udGVudCAucG9wLXVwLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgfVxufVxuLmNvbnRlbnQgLnBvcC11cC1jb250ZW50IC5wb3AtdXBfX2Nsb3NlIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNvbnRlbnQgLnBvcC11cC1jb250ZW50IC5wb3AtdXBfX2Nsb3NlIGkge1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBjb2xvcjogIzAwYTRiMTtcbn1cblxuLnBvcC11cC1ib3gge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBvcC11cC1ib3gudmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuLnBvcC11cC1ib3ggLnBvcC11cC1ib3hfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgd2lkdGg6IDkwJTtcbiAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAxLjEyNXJlbTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAyM3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvcC11cC1ib3ggLnBvcC11cC1ib3hfX2NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA4NjBweCkge1xuICAucG9wLXVwLWJveCAucG9wLXVwLWJveF9fY29udGFpbmVyIGgxIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC1oZWlnaHQ6IDg2MHB4KSB7XG4gIC5wb3AtdXAtYm94IC5wb3AtdXAtYm94X19jb250YWluZXIgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ucG9wLXVwLWJveCAucG9wLXVwLWJveF9fY2xvc2Uge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBvcC11cC1ib3ggLnBvcC11cC1ib3hfX2Nsb3NlIGkge1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBjb2xvcjogIzAwYTRiMTtcbn1cblxuLmV2ZW50cy1maWx0ZXItZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudHMtZmlsdGVyLWZvcm0ge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbSAxLjI1cmVtIDMuNzVyZW0gMS4yNXJlbTtcbiAgfVxufVxuLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlciBsYWJlbCB7XG4gIGNvbG9yOiAjMDBhNGIxO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbn1cbi5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXIgc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZG93bi1hcnJvdy5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBoZWlnaHQ6IDMuNzVyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZXZlbnRzLWZpbHRlci1mb3JtIC5ldmVudHMtZmlsdGVyIC5zZWxlY3Qtd3JhcCB7XG4gICAgd2lkdGg6IDE2Ljg3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXIgLmV2ZW50cy1maWx0ZXJzX19ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXJfX2hlYWRpbmcge1xuICBjb2xvcjogIzAwYTRiMTtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlcl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG59XG4uZXZlbnRzLWZpbHRlci1mb3JtIC5ldmVudHMtZmlsdGVyX19oZWFkaW5nIHN0cm9uZyB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXNpemU6IDJyZW07XG59XG4uZXZlbnRzLWZpbHRlci1mb3JtIC5ldmVudHMtZmlsdGVyc19fZnJlZS1zZWFyY2gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXJfX2tleXdvcmRzIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlcl9fa2V5d29yZHMgZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZXZlbnRzLWZpbHRlci1mb3JtIC5ldmVudHMtZmlsdGVyX19rZXl3b3JkcyBpbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGhlaWdodDogMy43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXJfX2tleXdvcmRzIC5mb3JtX19idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICBwYWRkaW5nOiAxLjEyNXJlbTtcbiAgaGVpZ2h0OiAzLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB3aWR0aDogMTByZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xufVxuLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlcl9fa2V5d29yZHMgLmZvcm1fX2J1dHRvbiBpIHtcbiAgbGluZS1oZWlnaHQ6IDAuN2VtO1xufVxuLmV2ZW50cy1maWx0ZXItZm9ybSAuZXZlbnRzLWZpbHRlcl9fa2V5d29yZHMgLmZvcm1fX2J1dHRvbiBpLmZhLWNsb3NlIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMC44ZW07XG59XG4uZXZlbnRzLWZpbHRlci1mb3JtIC5ldmVudHMtZmlsdGVyX19rZXl3b3JkcyAuZm9ybV9fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ldmVudHMtZmlsdGVyLWZvcm0gLmV2ZW50cy1maWx0ZXJfX2tleXdvcmRzIC5mb3JtX19idXR0b246bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07XG4gIH1cbn1cblxuI2V2ZW50X3Jlc3VsdHMge1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xufVxuI2V2ZW50X3Jlc3VsdHMgaDMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG4jZXZlbnRfcmVzdWx0cyBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNGVtO1xufVxuI2V2ZW50X3Jlc3VsdHMgLmxpc3QtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICBib3JkZXItYm90dG9tOiAjNzA3MDcwIGRvdHRlZCAxcHg7XG59XG4jZXZlbnRfcmVzdWx0cyAubGlzdC1jb2x1bW5zX19saW5rIHtcbiAgZm9udC1zaXplOiAxLjQzNzVyZW07XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41NjI1cmVtO1xufVxuI2V2ZW50X3Jlc3VsdHMgLmxpc3QtY29sdW1uc19fbGluayBpIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbn1cbiNldmVudF9yZXN1bHRzIC5saXN0LWl0ZW0tLWhlYWRpbmdzIHtcbiAgYm9yZGVyLWJvdHRvbTogIzcwNzA3MCBzb2xpZCAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZXZlbnRfcmVzdWx0cyAubGlzdC1pdGVtLS1oZWFkaW5ncyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiNldmVudF9yZXN1bHRzIC5saXN0LWl0ZW0tLWhlYWRpbmdzIGgzIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4jZXZlbnRfcmVzdWx0cyAubGlzdC1pdGVtLS1oZWFkaW5ncyBwIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZXZlbnQtZGV0YWlsIHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2hlYWRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG4uZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2hlYWRpbmcuaGFzLWFjY3JlZGl0YXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2hlYWRpbmcuaGFzLWFjY3JlZGl0YXRpb24gLmV2ZW50LWRldGFpbF9fYWNjcmVkIHtcbiAgbWF4LXdpZHRoOiAyLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAuZXZlbnQtZGV0YWlsX19oZWFkaW5nLmhhcy1hY2NyZWRpdGF0aW9uIC5ldmVudC1kZXRhaWxfX2FjY3JlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2xpbmtzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmV2ZW50LWRldGFpbCAuZXZlbnQtZGV0YWlsX19saW5rcyBsaSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5ldmVudC1kZXRhaWwgLmV2ZW50LWRldGFpbF9fbGlua3MgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5ldmVudC1kZXRhaWwgLmV2ZW50LWRldGFpbF9fbGlua3MgYSB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtIDFyZW0gMC42MjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMC4zMTI1cmVtIDAuMzEyNXJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2xpbmtzIGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLmV2ZW50LWRldGFpbCAuZXZlbnQtZGV0YWlsX19saW5rcyBhOmhvdmVyOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZXZlbnQtZGV0YWlsIC5ldmVudC1kZXRhaWxfX2xpbmtzIGEge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtIDEuODc1cmVtIDEuMjVyZW07XG4gICAgbWFyZ2luOiAwIDAuMzc1cmVtIDAuMzc1cmVtIDA7XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgLmV2ZW50LWRldGFpbF9fbGlua3MgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMC41NjI1cmVtO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMTI1cmVtO1xuICB3aWR0aDogMC42MjVyZW07XG4gIGhlaWdodDogMC42MjVyZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgYm9yZGVyLWJvdHRvbTogI2ZmZmZmZiBzb2xpZCAycHg7XG4gIGJvcmRlci1yaWdodDogI2ZmZmZmZiBzb2xpZCAycHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAuZXZlbnQtZGV0YWlsX19saW5rcyBhOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAjZmZmZmZmIHNvbGlkIDNweDtcbiAgICBib3JkZXItcmlnaHQ6ICNmZmZmZmYgc29saWQgM3B4O1xuICAgIGJvdHRvbTogMS4wNjI1cmVtO1xuICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIGhlaWdodDogMC43NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuMzc1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICNkYXRlcy1mZWVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI2RhdGVzLWZlZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZGF0ZXMtZmVlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICNkYXRlcy1mZWVzIC5ibG9jay1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZGF0ZXMtZmVlcy5kYXRlcy1mZWVzX19oYXMtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmV2ZW50LWRldGFpbCAjZGF0ZXMtZmVlcy5kYXRlcy1mZWVzX19oYXMtaW1hZ2UgZGl2IHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZGF0ZXMtZmVlcy5kYXRlcy1mZWVzX19oYXMtaW1hZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogLTYuMjVyZW07XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgI2RhdGVzLWZlZXMgLmRhdGVzLWZlZXNfX2ltYWdlIHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI2RhdGVzLWZlZXMgLmRhdGVzLWZlZXNfX2ltYWdlIGltZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuLmV2ZW50LWRldGFpbCAjaW5mb3JtYXRpb24ge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAxLjg3NXJlbSAxLjI1cmVtIDEuODc1cmVtIDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZXZlbnQtZGV0YWlsICNpbmZvcm1hdGlvbiB7XG4gICAgcGFkZGluZzogMy43NXJlbSAwIDMuNzVyZW0gMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI2luZm9ybWF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgI2luZm9ybWF0aW9uIC5pbmZvcm1hdGlvbl9fY29udGFpbmVyIHtcbiAgcGFkZGluZzogMCAxLjI1cmVtIDAgMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiA4NC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5ldmVudC1kZXRhaWwgI3R1dG9ycyAudHV0b3JzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogODQuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbn1cbi5ldmVudC1kZXRhaWwgI3R1dG9ycyAudHV0b3ItaXRlbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI3R1dG9ycyAudHV0b3ItaXRlbXMge1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICN0dXRvcnMgLnR1dG9yLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTguNTYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjdHV0b3JzIC50dXRvci1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICN0dXRvcnMgLnR1dG9yLWl0ZW1fX3BvcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xufVxuLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS44NzVyZW0gMS4yNXJlbSAxLjg3NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIHtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDAgMy43NXJlbSAwO1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgI3Byb2dyYW1tZSAucHJvZ3JhbW1lLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMS4yNXJlbSAwIDEuMjVyZW07XG4gIG1heC13aWR0aDogODQuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIC5wcm9ncmFtbWUtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIC5wcm9ncmFtbWUtaXRlbSA+IGgzIHtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG4uZXZlbnQtZGV0YWlsICNwcm9ncmFtbWUgLnByb2dyYW1tZS1pdGVtIGg0IHtcbiAgY29sb3I6ICM1ODU5NWI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZXZlbnQtZGV0YWlsICNwcm9ncmFtbWUgLnByb2dyYW1tZS1pdGVtIGg0IHtcbiAgICBmb250LXNpemU6IDEuNDM3NXJlbTtcbiAgfVxufVxuLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lIC5wcm9ncmFtbWUtaXRlbSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNGVtO1xufVxuLmV2ZW50LWRldGFpbCAjcHJvZ3JhbW1lICsgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIge1xuICBtYXJnaW4tdG9wOiAtMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI3Byb2dyYW1tZSArIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtM2VtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZXZlbnQtZGV0YWlsICNwcm9ncmFtbWUgKyAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogLTVlbTtcbiAgfVxufVxuLmV2ZW50LWRldGFpbCAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciArICNleHRyYS1pbmZvIHtcbiAgbWFyZ2luLXRvcDogLTEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgKyAjZXh0cmEtaW5mbyB7XG4gICAgbWFyZ2luLXRvcDogLTMuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ldmVudC1kZXRhaWwgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgKyAjZXh0cmEtaW5mbyB7XG4gICAgbWFyZ2luLXRvcDogLTUuNjI1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS44NzVyZW0gMS4yNXJlbSAwIDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIHtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDAgMCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNWVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIC5leHRyYS1pbmZvX19jb250YWluZXIge1xuICBwYWRkaW5nOiAwIDEuMjVyZW0gMCAxLjI1cmVtO1xuICBtYXgtd2lkdGg6IDg0Ljc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyAudGFicyB7XG4gIG1hcmdpbjogMWVtIC0zLjEyNXJlbSAwIC0zLjEyNXJlbTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDEwMHB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyAudGFicyB7XG4gICAgbWFyZ2luOiAyZW0gMCAwIDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgI2V4dHJhLWluZm8gLnRhYnMgLnRhYnMtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyAudGFicyAudGFicy10aXRsZSB7XG4gICAgbWluLXdpZHRoOiAyMHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIC50YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4uZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIC50YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMS44NzVyZW0gMS4yNXJlbSAwIDEuMjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogODQuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uZXZlbnQtZGV0YWlsICNleHRyYS1pbmZvIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgI2V4dHJhLWluZm8gLmV4dHJhLWluZm8taXRlbS5oYXMtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyAuZXh0cmEtaW5mby1pdGVtLmhhcy1pbWFnZSBkaXYge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5ldmVudC1kZXRhaWwgI2V4dHJhLWluZm8gLmV4dHJhLWluZm8taXRlbS5oYXMtaW1hZ2UgZGl2Om50aC1jaGlsZCgyKSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIH1cbn1cbi5ldmVudC1kZXRhaWwgI2V4dHJhLWluZm8gLmV4dHJhLWluZm8taXRlbSBoMyB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmV2ZW50LWRldGFpbCAjZXh0cmEtaW5mbyAuZXh0cmEtaW5mby1pdGVtIGgzIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxufVxuLmV2ZW50LWRldGFpbCAuY3BkLXBvaW50cywgLmV2ZW50LWRldGFpbCAuZGV2ZWxvcG1lbnQtbGV2ZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuODc1cmVtO1xuICBtaW4td2lkdGg6IDE2LjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZXZlbnQtZGV0YWlsIC5jcGQtcG9pbnRzLCAuZXZlbnQtZGV0YWlsIC5kZXZlbG9wbWVudC1sZXZlbCB7XG4gICAgcGFkZGluZzogMS44NzVyZW0gMi41cmVtO1xuICAgIG1pbi13aWR0aDogMTYuNjI1cmVtO1xuICB9XG59XG4uZXZlbnQtZGV0YWlsIC5jcGQtcG9pbnRzIGgzLCAuZXZlbnQtZGV0YWlsIC5kZXZlbG9wbWVudC1sZXZlbCBoMyB7XG4gIGNvbG9yOiAjMDBhNGIxO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDJyZW07XG59XG4uZXZlbnQtZGV0YWlsIC5jcGQtcG9pbnRzIHAsIC5ldmVudC1kZXRhaWwgLmRldmVsb3BtZW50LWxldmVsIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmV2ZW50LWRldGFpbCAuYmxvY2stYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5ldmVudC1kZXRhaWwgLmJsb2NrLWJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgfVxufVxuXG4uc2lkZWJhcl9fZGF0ZS1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xufVxuLnNpZGViYXJfX2RhdGUtc2VsZWN0aW9uIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpZGViYXJfX2RhdGUtc2VsZWN0aW9uIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgLyogQWRkIGlmIG5vdCB1c2luZyBhdXRvcHJlZml4ZXIgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKiBSZW1vdmUgbW9zdCBhbGwgbmF0aXZlIGlucHV0IHN0eWxlcyAqL1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAvKiBGb3IgaU9TIDwgMTUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI0NCQ0JDQjtcbiAgLyogTm90IHJlbW92ZWQgdmlhIGFwcGVhcmFuY2UgKi9cbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMC4zZW07XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB3aWR0aDogMS4xNWVtO1xuICBoZWlnaHQ6IDEuMTVlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjA3NWVtKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtY29udGVudDogY2VudGVyO1xufVxuLnNpZGViYXJfX2RhdGUtc2VsZWN0aW9uIGlucHV0W3R5cGU9cmFkaW9dOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMC42MjVyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLyogV2luZG93cyBIaWdoIENvbnRyYXN0IE1vZGUgKi9cbiAgYm9yZGVyLXJpZ2h0OiAjNTg1OTViIHNvbGlkIDRweDtcbiAgYm9yZGVyLWJvdHRvbTogIzU4NTk1YiBzb2xpZCA0cHg7XG59XG4uc2lkZWJhcl9fZGF0ZS1zZWxlY3Rpb24gaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoNDVkZWcpO1xufVxuLnNpZGViYXJfX2RhdGUtc2VsZWN0aW9uIGlucHV0W3R5cGU9cmFkaW9dOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzAwYTRiMTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZGViYXJfX2l0ZW0tLWRldGFpbHMtLWV2ZW50IGgzLnNpZGViYXJfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC44ZW07XG4gIH1cbn1cblxuLmV2ZW50LWJvb2tpbmcgLmJsb2NrLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jaGlsZF9ldmVudF9kZXRhaWxzIHN0cm9uZywgLmNoaWxkX2V2ZW50X2RldGFpbHMgaDMge1xuICBjb2xvcjogIzAwYTRiMTtcbn1cbi5jaGlsZF9ldmVudF9kZXRhaWxzIGgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2hpbGRfZXZlbnRfZGV0YWlscyBoMyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgfVxufVxuLmNoaWxkX2V2ZW50X2RldGFpbHMgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jaGlsZF9ldmVudF9kZXRhaWxzIHAge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIH1cbn1cblxuLmV2ZW50cy1mb3JtIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuLmV2ZW50cy1mb3JtIHRleHRhcmVhW3Jvd3NdLCAuZXZlbnRzLWZvcm0gc2VsZWN0IHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4uZXZlbnRzLWZvcm0gI2lkX2RlbGVnYXRlX21hdGVyaWFscyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvbmYtY3VydmVfbWFzayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb25mLWJhc2VfX2hlYWRlci10b3Age1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbn1cblxuLmNvbmYtYmFzZV9faGVhZGVyLW1hc2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0wLjg3NXJlbTtcbiAgbGVmdDogLTAuMTI1cmVtO1xuICB6LWluZGV4OiAzO1xuICBoZWlnaHQ6IDI4LjgxMjVyZW07XG4gIHdpZHRoOiA2OS41cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29uZi1iYXNlX19oZWFkZXItbWFzayB7XG4gICAgd2lkdGg6IDk3LjM3NXJlbTtcbiAgICBoZWlnaHQ6IDQwLjVyZW07XG4gIH1cbn1cbi5jb25mLWJhc2VfX2hlYWRlci1tYXNrIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29uZi1iYXNlX19oZWFkZXItcmVzdHJhaW50IHtcbiAgaGVpZ2h0OiAyOC4xMjVyZW07XG4gIHdpZHRoOiA2OS4xODc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLXJlc3RyYWludCB7XG4gICAgd2lkdGg6IDk2Ljg3NXJlbTtcbiAgICBoZWlnaHQ6IDM5Ljg3NXJlbTtcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLXJlc3RyYWludCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb25mLWJhc2VfX2hlYWRlci1jdXJ2ZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMztcbiAgd2lkdGg6IDY4LjU2MjVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci1jdXJ2ZXMge1xuICAgIHdpZHRoOiA5Ni4yNXJlbTtcbiAgICBoZWlnaHQ6IDM5LjYyNXJlbTtcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLWN1cnZlcyBzdmcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbmYtYmFzZV9faGVhZGVyLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDI2LjI1cmVtO1xuICB6LWluZGV4OiA0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci12aWRlbyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4uY29uZi1iYXNlX19oZWFkZXItdmlkZW8gLnZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci12aWRlbyAudmlkZW8td3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMy4xMjVyZW07XG4gICAgaGVpZ2h0OiA1OHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLXZpZGVvIC52aWRlby13cmFwcGVyIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4uY29uZi1iYXNlX19zcXVhcmVzIHtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1iYXNlX19zcXVhcmVzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9fc3F1YXJlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTtcbiAgfVxufVxuXG4uY29uZi1iYXNlX19zcXVhcmVzLWJveHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmNvbmYtYmFzZV9fc3F1YXJlcy1ib3hzID4gZGl2IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmNvbmYtYmFzZV9fc3F1YXJlOm50aC1jaGlsZCgyKSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzVjZTFlNjtcbn1cbi5jb25mLWJhc2VfX3NxdWFyZTpudGgtY2hpbGQoMykgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmNvbmYtYmFzZV9fc3F1YXJlOm50aC1jaGlsZCg0KSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzU4NTk1YjtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uY29uZi1iYXNlX19zcXVhcmUgYS5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZSBhLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMS42MjVyZW0gMS4yNXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jb25mLWJhc2VfX3NxdWFyZS1pbWFnZSB7XG4gIGhlaWdodDogMTByZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNy41cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxOS4zNzVyZW07XG4gIH1cbn1cbi5jb25mLWJhc2VfX3NxdWFyZS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZXMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogMTAwcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZXMtY29udGFpbmVyID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4uY29uZi1iYXNlX19zcXVhcmVzLWNvbnRhaW5lciA+IGRpdi5jb25mLWJhc2VfX3NxdWFyZXMtdGV4dCB7XG4gIHBhZGRpbmc6IDEuODc1cmVtIDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9fc3F1YXJlcy1jb250YWluZXIgPiBkaXYuY29uZi1iYXNlX19zcXVhcmVzLXRleHQge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAxLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29uZi1iYXNlX19zcXVhcmVzLWNvbnRhaW5lciA+IGRpdi5jb25mLWJhc2VfX3NxdWFyZXMtdGV4dCB7XG4gICAgcGFkZGluZzogMy43NXJlbSA1cmVtIDIuNXJlbSA1cmVtO1xuICB9XG59XG4uY29uZi1iYXNlX19zcXVhcmVzLWNvbnRhaW5lciA+IGRpdi5jb25mLWJhc2VfX3NxdWFyZXMtdGV4dCBoMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZXMtY29udGFpbmVyID4gZGl2LmNvbmYtYmFzZV9fc3F1YXJlcy10ZXh0IGgzIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICB9XG59XG4uY29uZi1iYXNlX19zcXVhcmVzLWNvbnRhaW5lciA+IGRpdi5jb25mLWJhc2VfX3NxdWFyZXMtdGV4dCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbmYtYmFzZV9fc3F1YXJlcy1jb250YWluZXIgPiBkaXYuY29uZi1iYXNlX19zcXVhcmVzLXRleHQgcCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuLmNvbmYtYmFzZV9fc3F1YXJlcy1jb250YWluZXIgPiBkaXYuY29uZi1iYXNlX19zcXVhcmVzLXRleHQgcC5jb25mLWJhc2VfX3Nwb25zb3Ige1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9fc3F1YXJlcy1jb250YWluZXIgPiBkaXYuY29uZi1iYXNlX19zcXVhcmVzLXRleHQgcC5jb25mLWJhc2VfX3Nwb25zb3Ige1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgfVxufVxuLmNvbmYtYmFzZV9fc3F1YXJlcy1jb250YWluZXIgPiBkaXYuY29uZi1iYXNlX19zcXVhcmVzLXRleHQgaW1nIHtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5jb25mLWJhc2VfX3NxdWFyZXMgKyAuY29uZi1iYXNlX19wcmljZXMge1xuICBtYXJnaW4tdG9wOiAtMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1iYXNlX19zcXVhcmVzICsgLmNvbmYtYmFzZV9fcHJpY2VzIHtcbiAgICBtYXJnaW4tdG9wOiAtMi41cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3NxdWFyZXMgKyAuY29uZi1iYXNlX19wcmljZXMge1xuICAgIG1hcmdpbi10b3A6IC0zLjc1cmVtO1xuICB9XG59XG5cbi5jb25mLWJhc2UgLmNvbmYtYmFzZV9fcHJpY2VzIHtcbiAgcGFkZGluZzogMy43NXJlbSAxLjI1cmVtIDMuNzVyZW0gMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29uZmVyZW5jZXBhZ2UvcHJpY2VzLWJhY2tncm91bmQuanBnXCIpO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2UgLmNvbmYtYmFzZV9fcHJpY2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvbmYtYmFzZSAuY29uZi1iYXNlX19wcmljZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgcGFkZGluZzogNi4yNXJlbSAxLjI1cmVtO1xuICB9XG59XG4uY29uZi1iYXNlIC5jb25mLWJhc2VfX3ByaWNlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA3MywgMTQ0LCAwLjgpO1xufVxuLmNvbmYtYmFzZSAuY29uZi1iYXNlX19wcmljZXMgKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5jb25mLWJhc2UgLmNvbmYtYmFzZV9fcHJpY2VzIGgyIHtcbiAgY29sb3I6ICM1Y2UxZTY7XG4gIG1hcmdpbi1ib3R0b206IDAuMWVtO1xufVxuLmNvbmYtYmFzZSAuY29uZi1iYXNlX19wcmljZXMgcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmNvbmYtYmFzZV9fcHJpY2VzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNDMuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAuY29uZi1iYXNlX19wcmljZXMtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cbn1cblxuLmNvbmYtYmFzZV9fcHJpY2VzLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3ByaWNlcy1yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uY29uZi1iYXNlX19wcmljZXMtY2VsbCB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4uY29uZi1iYXNlX19wcmljZXMtY2VsbCBzdHJvbmcge1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3ByaWNlcy1jZWxsIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIH1cbn1cbi5jb25mLWJhc2VfX3ByaWNlcy1jZWxsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9fcHJpY2VzLWNlbGw6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX3ByaWNlcy1jZWxsOm50aC1jaGlsZCgyKSB7XG4gICAgd2lkdGg6IDIxJTtcbiAgfVxufVxuLmNvbmYtYmFzZV9fcHJpY2VzLWNlbGw6bnRoLWNoaWxkKDMpIHtcbiAgY29sb3I6ICM1Y2UxZTY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9fcHJpY2VzLWNlbGw6bnRoLWNoaWxkKDMpIHtcbiAgICB3aWR0aDogMjklO1xuICB9XG59XG5cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93OmFmdGVyIHtcbiAgICB3aWR0aDogMzAlO1xuICAgIGhlaWdodDogMy4xMjVyZW07XG4gIH1cbn1cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IGgxIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IGgxIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgaDEge1xuICAgIGZvbnQtc2l6ZTogMi42MjVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgLmNvbmYtYmFzZV9fY29uZi1sb2dvIHtcbiAgICBoZWlnaHQ6IDExLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgLmNvbmYtYmFzZV9fY29uZi1sb2dvIHtcbiAgICBoZWlnaHQ6IDExLjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IC5jb25mLWJhc2VfX2hlYWRlci12aWRlbyB7XG4gIHBhZGRpbmctYm90dG9tOiAzMC4zMTI1cmVtO1xuICB6LWluZGV4OiAzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgLmNvbmYtYmFzZV9faGVhZGVyLXZpZGVvOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMuMTI1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICNlOWU5ZTk7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgLnJvdyB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4uY29uZi1iYXNlX19oZWFkZXItbWFpbi0tc2hhbGxvdyAuY29uZi1iYXNlX19oZWFkZXItcmVzdHJhaW50IHtcbiAgaGVpZ2h0OiAyOC4xMjVyZW07XG4gIHdpZHRoOiA2OS4xODc1cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29uZi1iYXNlX19oZWFkZXItbWFpbi0tc2hhbGxvdyAuY29uZi1iYXNlX19oZWFkZXItcmVzdHJhaW50IHtcbiAgICB3aWR0aDogOTYuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IC5jb25mLWJhc2VfX2hlYWRlci1jdXJ2ZXMge1xuICAgIHRvcDogLTkuMzc1cmVtO1xuICB9XG59XG4uY29uZi1iYXNlX19oZWFkZXItbWFpbi0tc2hhbGxvdyAuY29uZi1iYXNlX19oZWFkZXItbWFzayB7XG4gIHotaW5kZXg6IC0xO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29uZi1iYXNlX19oZWFkZXItbWFpbi0tc2hhbGxvdyAuY29uZi1iYXNlX19oZWFkZXItbWFzayB7XG4gICAgdG9wOiAtOS4zNzVyZW07XG4gIH1cbn1cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IC5jb25mLWJhc2VfX2hlYWRlci1yZXN0cmFpbnQge1xuICB6LWluZGV4OiAtMjtcbn1cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IC5tZWRpdW0tMyB7XG4gIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4tLXNoYWxsb3cgLm1lZGl1bS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTtcbiAgICBtaW4taGVpZ2h0OiAyNi41NjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNi44NzVlbSkge1xuICAuY29uZi1iYXNlX19oZWFkZXItbWFpbi0tc2hhbGxvdyAubWVkaXVtLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuYm9keS5jb25mLWJhc2Uge1xuICAvKlxuICAuY29uZi1iYXNlX19oZWFkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb25mZXJlbmNlcGFnZS9jb25mLWJhbm5lci5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDI1MCk7XG4gIH1cblxuICAuY29uZl9iYXNlX19sb2dvLWNvbHVtbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAgICovXG4gIC8qXG4gIC5jb25mLWN1cnZlX21hc2sge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxNiU7XG4gICAgfVxuICAgICYuY29uZi1jdXJ2ZV9tYXNrLS1vbmUge1xuICAgICAgd2lkdGg6IDE2MCU7XG4gICAgICByaWdodDogLTYwJTtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE4Nik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb25mLWN1cnZlX21hc2stLXR3byB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB3aWR0aDogMTIwJTtcbiAgICAgIGxlZnQ6IC0yMCU7XG4gICAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg3MCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb25mLWN1cnZlX21hc2stLXRocmVlIHtcbiAgICAgIHdpZHRoOiAxMTAlO1xuICAgICAgbGVmdDogLTEwJTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuY29uZi1jdXJ2ZV9tYXNrLS1mb3VyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmNvbmYtY3VydmVfbWFzay0tZml2ZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmNvbmYtY3VydmVfbWFzay0tbGFzdCB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIGZpbGw6ICNmN2Y3Zjc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgICAqL1xufVxuYm9keS5jb25mLWJhc2UgLndyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbn1cbmJvZHkuY29uZi1iYXNlIHAge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSBoMSB7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZWE1OTJkO1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSBoMSB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDAzYTczO1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgaDMge1xuICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgcGFkZGluZy10b3A6IDAuNmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzAwM2E3MztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgaDMgc3Ryb25nIHtcbiAgY29sb3I6ICNkZDU4Mjk7XG59XG5ib2R5LmNvbmYtYmFzZSBoNCB7XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNmVtO1xuICBwYWRkaW5nLXRvcDogMC42ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIGg0IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19jYXJ0IHtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNjI1cmVtO1xuICByaWdodDogMy43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19jYXJ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2NhcnQgYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMC44NzVyZW0gMCAwLjI1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19jYXJ0IC5mYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLm1haW5fX25hdiB7XG4gIHBhZGRpbmctdG9wOiAwLjM3NXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAubWFpbl9fbmF2IGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYgYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgb3BhY2l0eTogMTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAuNzVyZW0gIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuYm9keS5jb25mLWJhc2UgLm1haW5fX25hdiBhOmJlZm9yZSwgYm9keS5jb25mLWJhc2UgLm1haW5fX25hdiBhOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuYm9keS5jb25mLWJhc2UgLm1haW5fX25hdiBhOmhvdmVyIHtcbiAgY29sb3I6ICM1Y2UxZTY7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5ib2R5LmNvbmYtYmFzZSAubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDczLCAxNDQsIDAuOCk7XG4gIG1pbi13aWR0aDogMTguNzVyZW07XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMi4yNXJlbSAwIDEuMjVyZW0gMDtcbn1cbmJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDVweCAwIDVweCAxMHB4O1xuICBtYXJnaW46IDAgMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgLyomOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYxMDQgXCI7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAtMnB4O1xuICB9Ki9cbn1cbmJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYgbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5ib2R5LmNvbmYtYmFzZSAubWFpbl9fbmF2IGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzVjZTFlNjtcbn1cbmJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYgLm5hdjEgYSB7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICBvcGFjaXR5OiAxO1xuICBvdmVyZmxvdzogaW5pdGlhbDtcbn1cbmJvZHkuY29uZi1iYXNlIC5tYWluX19uYXYgLm5hdjEgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLm1haW5fX25hdiAubmF2MSBhOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbmJvZHkuY29uZi1iYXNlIC5oZWFkZXIgLm1lbnUtaWNvbiB7XG4gIHRvcDogMS41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5oZWFkZXIgLm1lbnUtaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmhlYWRlciAubWVudS1pY29uOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAwICMwMGE0YjEsIDAgMjRweCAwICMwMGE0YjE7XG59XG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyIC5yb3cge1xuICBtYXgtd2lkdGg6IDkxLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG59XG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyX19tYWluIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC8qXG4gICAgLmNvbmZfX2xvZ28ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTgwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTgwKTtcbiAgICAgIH1cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDE5MCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTkwKTtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDkwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMzApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwMCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgICAgIGNpcmNsZSxcbiAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAlLFxuICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNzAlXG4gICAgICAgICk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygtNzApO1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdG9wOiByZW0tY2FsYygtOTApO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDAuNSk7XG4gICAgICB9XG4gICAgfVxuICAgICovXG59XG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyX19tYWluIC5ycWFfX2xvZ28ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5oZWFkZXJfX21haW4gLnJxYV9fbG9nbyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5oZWFkZXJfX21haW4gLnJxYV9fbG9nbyBzdmcsXG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyX19tYWluIC5ycWFfX2xvZ28gaW1nIHtcbiAgd2lkdGg6IDYuMjVyZW07XG4gIGhlaWdodDogNC4zNzVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5oZWFkZXJfX21haW4gLnJxYV9fbG9nbyBzdmcsXG5ib2R5LmNvbmYtYmFzZSAuaGVhZGVyX19tYWluIC5ycWFfX2xvZ28gaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4uaGVhZGVyX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDE0MCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiKDAsIDEyMywgMTg5KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAxODBkZWcsXG4gICAgICByZ2JhKDAsIDEyMywgMTg5LCAxKSAwJSxcbiAgICAgIHJnYmEoMCwgMTIzLCAxODksIDEpIDIwJSxcbiAgICAgIHJnYmEoMCwgMTIzLCAxODksIDApIDEwMCVcbiAgICApO1xuICB9Ki9cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiBoMSB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDEge1xuICAgIGZvbnQtc2l6ZTogMi42MjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiBoMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBjb2xvcjogIzAwNDk5MDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDMge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4uaGVhZGVyX19tYWluIGg0IHtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4uaGVhZGVyX19tYWluIGg1IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6ICNlYTU5MmQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gaDUge1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gLmNvbmYtYmFzZV9fY29uZi1sb2dvIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogOS4zNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiAuY29uZi1iYXNlX19jb25mLWxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0wLjYyNXJlbTtcbiAgICBsZWZ0OiAtMS4yNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogNy41cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiAuY29uZi1iYXNlX19jb25mLWxvZ28ge1xuICAgIGhlaWdodDogMTEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNi44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gLmNvbmYtYmFzZV9fY29uZi1sb2dvIHtcbiAgICBoZWlnaHQ6IDE3Ljg3NXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4uaGVhZGVyX19tYWluIC5tZWRpdW0tMyB7XG4gIG9yZGVyOiAyO1xuICBmbG9hdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiAubWVkaXVtLTMge1xuICAgIG9yZGVyOiAxO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1pbi1oZWlnaHQ6IDI4LjgxMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDguMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gLm1lZGl1bS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTEuODc1cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNi44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gLm1lZGl1bS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTkuMzc1cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXItbWFpbi5oZWFkZXJfX21haW4gLm1lZGl1bS05IHtcbiAgb3JkZXI6IDE7XG4gIGZsb2F0OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiAubWVkaXVtLTkge1xuICAgIG9yZGVyOiAyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4uaGVhZGVyX19tYWluIC5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiAucm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5yb3cge1xuICBtYXgtd2lkdGg6IDkxLjI1cmVtO1xufVxuYm9keS5jb25mLWJhc2UgLnJvdzpmaXJzdC1jaGlsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbmJvZHkuY29uZi1iYXNlIC5jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA1NC4zNzVyZW07XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMztcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTtcbiAgcGFkZGluZzogNXJlbSAxLjg3NXJlbSA1cmVtIDEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG4gICAgcGFkZGluZzogNC4zNzVyZW0gMS44NzVyZW0gNC4zNzVyZW0gMS44NzVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLWludHJvICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1pbnRybyAuY29uZi1pbnRyb19fd3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICBtYXgtd2lkdGg6IDU0LjM3NXJlbTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtaW50cm8gKyAuY29udGVudCAuY29uZi1wcm9ncmFtbWUge1xuICBtYXJnaW4tdG9wOiAtMy4xMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmNvbmYtaW50cm8gKyAuY29udGVudCAuY29uZi1wcm9ncmFtbWUge1xuICAgIG1hcmdpbi10b3A6IC00LjM3NXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtaW50cm8tLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDY7XG4gIHBhZGRpbmc6IDAgMS44NzVyZW0gMS4yNXJlbSAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1pbnRyby0tdGV4dCB7XG4gICAgcGFkZGluZzogMCAxLjg3NXJlbSAzLjEyNXJlbSAxLjg3NXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtaW50cm8tLXRleHQgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1JbnRyb19fY291bnRkb3duIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtSW50cm9fX2NvdW50ZG93biA+IGRpdiB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW0gMCAxLjI1cmVtO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtSW50cm9fX2NvdW50ZG93biA+IGRpdiBzdHJvbmcge1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzVjZTFlNjtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1JbnRyb19fY291bnRkb3duIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBib2R5LmNvbmYtYmFzZSAuY29uZi1JbnRyb19fY291bnRkb3duID4gZGl2IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLUludHJvX19jb3VudGRvd24gPiBkaXYgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgcGFkZGluZzogMy43NXJlbSAwLjYyNXJlbSAxLjg3NXJlbSAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0O1xuICBjb2xvcjogI2ZmZjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuZm9vdGVyIHtcbiAgICBwYWRkaW5nOiA1cmVtIDAuNjI1cmVtIDEuODc1cmVtIDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmZvb3RlciB7XG4gICAgcGFkZGluZzogNy41cmVtIDAuNjI1cmVtIDEuODc1cmVtIDEuMjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5mb290ZXIgKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbmJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmNvbmZfX2xvZ28tLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogOS4zNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmNvbmZfX2xvZ28tLWZvb3RlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0xLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuZm9vdGVyIC5jb25mX19sb2dvLS1mb290ZXIge1xuICAgIHdpZHRoOiAxNC4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMy4xMjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmZvb3Rlcl9fbGlua3Mge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmZvb3Rlcl9fbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIGJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmZvb3Rlcl9fbGlua3MgbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgYm9keS5jb25mLWJhc2UgLmZvb3RlciAuZm9vdGVyX19saW5rcyBsaSBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAuZm9vdGVyIC5mb290ZXJfX3NvY2lhbCB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5mb290ZXIgLmZvb3Rlcl9fc29jaWFsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmZvb3RlciAuZm9vdGVyX19zb2NpYWwgYSBpIHtcbiAgZm9udC1zaXplOiAzNHB4O1xufVxuYm9keS5jb25mLWJhc2UgLmZvb3RlciAuZm9vdGVyLWNvcHlyaWdodCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gIG1hcmdpbjogMCAwLjI1cmVtIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuZm9vdGVyIC5mb290ZXItY29weXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgYS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjZWE1OTJkO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSBhLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC42ZW0gM2VtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSBhLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gIGNvbG9yOiAjZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29uZmVyZW5jZXBhZ2UvcHJpY2VzLWJhY2tncm91bmQuanBnXCIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIG1hcmdpbi1ib3R0b206IDYuMjVyZW07XG4gIG1hcmdpbi10b3A6IDVyZW07XG4gIHBhZGRpbmc6IDVyZW0gMS4yNXJlbSA1cmVtIDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IDcuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMS4yNXJlbTtcbiAgICBwYWRkaW5nOiA2LjI1cmVtIDEuMjVyZW0gNi4yNXJlbSAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiA5LjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNS42MjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDczLCAxNDQsIDAuOCk7XG59XG5ib2R5LmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5ib2R5LmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciB1bCBsaSBwIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5ib2R5LmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciB1bCBsaSBwOmJlZm9yZSwgYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgdWwgbGkgcDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICM1Y2UxZTY7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBsaW5lLWhlaWdodDogMC41ZW07XG4gIHRvcDogLTAuMjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgdWwgbGkgcDpiZWZvcmUsIGJvZHkuY29uZi1iYXNlIC5xdW90ZXMtc2xpZGVyIHVsIGxpIHA6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciB1bCBsaSBwOmFmdGVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC0wLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5ib2R5LmNvbmYtYmFzZSAucXVvdGVzLXNsaWRlciAub3JiaXQtYnVsbGV0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZGQ1ODI5O1xufVxuYm9keS5jb25mLWJhc2UgLnF1b3Rlcy1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5ib2R5LmNvbmYtYmFzZSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIGxpIHtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNzglO1xufVxuYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LXByZXZpb3VzIHtcbiAgICB0b3A6IGNhbGMoNTAlICsgNTBweCk7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1wcmV2aW91cyBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0IHtcbiAgcmlnaHQ6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0IHtcbiAgICB0b3A6IDUwJTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LW5leHQgaSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1uZXh0LFxuYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LXByZXZpb3VzIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWE1OTJkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogI2VhNTkyZCBzb2xpZCAycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5ib2R5LmNvbmYtYmFzZSAuZnVsbHdpZHRoLWltYWdlLXNsaWRlciAub3JiaXQtbmV4dDpob3ZlcixcbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1wcmV2aW91czpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1idWxsZXRzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbmJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gIGJvcmRlcjogIzAwYTRiMSBzb2xpZCAxcHg7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMGE0YjE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LWJ1bGxldHMge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cbiAgYm9keS5jb25mLWJhc2UgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICBib3JkZXI6ICNmZmZmZmYgc29saWQgMXB4O1xuICB9XG4gIGJvZHkuY29uZi1iYXNlIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIC5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC50d2l0dGVyLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzAwYTRiMTtcbiAgcGFkZGluZzogNXJlbSAxLjI1cmVtIDVyZW0gMS4yNXJlbTtcbiAgbWFyZ2luOiA1cmVtIDAgNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC50d2l0dGVyLWJsb2NrIHtcbiAgICBwYWRkaW5nOiA2LjI1cmVtIDEuMjVyZW0gNi4yNXJlbSAxLjI1cmVtO1xuICAgIG1hcmdpbjogOC43NXJlbSAwIDYuMjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAudHdpdHRlci1ibG9jayB7XG4gICAgbWFyZ2luOiA3LjVyZW0gMCA3LjVyZW0gMDtcbiAgICBwYWRkaW5nOiA2Ljg3NXJlbSAxLjI1cmVtIDYuMjVyZW0gMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC50d2l0dGVyLWJsb2NrIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLnR3aXR0ZXItYmxvY2sgLnJvdyAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuYm9keS5jb25mLWJhc2UgLnR3aXR0ZXItYmxvY2sgYSB7XG4gIGNvbG9yOiAjMDBhNGIxO1xufVxuYm9keS5jb25mLWJhc2UgLmltYWdlLWNhcm91c2VsLS13aWRlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtb3ZlcnZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIG1hcmdpbjogMCAwIDVyZW0gMDtcbiAgcGFkZGluZy10b3A6IDUuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmNvbmYtb3ZlcnZpZXcge1xuICAgIG1hcmdpbjogMCAwIDVyZW0gMDtcbiAgICBwYWRkaW5nLXRvcDogNi44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLW92ZXJ2aWV3IHtcbiAgICBtYXJnaW46IDAgMCA2LjI1cmVtIDA7XG4gICAgcGFkZGluZy10b3A6IDExLjg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1vdmVydmlldyB7XG4gICAgbWFyZ2luOiAwIDAgNy41cmVtIDA7XG4gICAgcGFkZGluZy10b3A6IDEyLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLW92ZXJ2aWV3IC5jb25mLWludHJvLS10ZXh0ICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1zcGVha2VycyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhNTkyZDtcbiAgbWFyZ2luOiA5LjM3NXJlbSAwIDVyZW0gMDtcbiAgcGFkZGluZzogMS44NzVyZW0gMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1zcGVha2VycyB7XG4gICAgbWFyZ2luOiA2LjI1cmVtIDAgNi4yNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIHtcbiAgICBtYXJnaW46IDkuMzc1cmVtIDAgNy41cmVtIDA7XG4gICAgcGFkZGluZzogMS44NzVyZW0gMDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtc3BlYWtlcnMgLnJvdyB7XG4gIG1heC13aWR0aDogNzMuNXJlbTtcbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIC5jb2x1bW5zIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAuY29uZi1zcGVha2VycyAuY29sdW1ucyBwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtc3BlYWtlcnMgLmNvbHVtbnMgYS5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICB3aWR0aDogMTAwJTtcbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIC5jb2x1bW5zOm50aC1jaGlsZCgyKSBoMyB7XG4gIGJhY2tncm91bmQ6ICMwMDQ5OTA7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtc3BlYWtlcnMgLmNvbHVtbnM6bnRoLWNoaWxkKDMpIGgzIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIC5jb2x1bW5zOm50aC1jaGlsZCg0KSBoMyB7XG4gIGJhY2tncm91bmQ6ICM1ODU5NWI7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtc3BlYWtlcnMgKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIC5jb25mLXNwZWFrZXJzX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE1Ljg3NXJlbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1zcGVha2VycyBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC42ZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuYm9keS5jb25mLWJhc2UgLmNvbmYtc3BlYWtlcnMgaDMge1xuICBmb250LXdlaWdodDogOTAwO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtIDAuNXJlbSAxLjI1cmVtO1xuICBjb2xvcjogIzAwM2E3MztcbiAgYmFja2dyb3VuZDogIzVjZTFlNjtcbiAgd2lkdGg6IDEwMCU7XG59XG5ib2R5LmNvbmYtYmFzZSAuY29uZi1zcGVha2VycyBwIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkuY29uZi1iYXNlIC5jb25mLXNwZWFrZXJzIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNmVtO1xuICB9XG59XG5ib2R5LmNvbmYtYmFzZSAubGFzdC13aWRlIHtcbiAgbWluLWhlaWdodDogMS4yNXJlbTtcbn1cbmJvZHkuY29uZi1iYXNlIC5sYXN0LXdpZGUgLnR3aXR0ZXItYmxvY2sge1xuICBtYXJnaW46IDcuNXJlbSAwIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAubGFzdC13aWRlIC50d2l0dGVyLWJsb2NrIHtcbiAgICBtYXJnaW46IDEyLjVyZW0gMCAwIDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmxhc3Qtd2lkZSAudHdpdHRlci1ibG9jayB7XG4gICAgbWFyZ2luOiAxOC43NXJlbSAwIDAgMDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmxhc3Qtd2lkZSAucXVvdGVzLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDYuODc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmxhc3Qtd2lkZSAucXVvdGVzLXNsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogNy41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgYm9keS5jb25mLWJhc2UgLmxhc3Qtd2lkZSAucXVvdGVzLXNsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogOS4zNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuYm9keS5jb25mLWJhc2UgLmxhc3Qtd2lkZSAuY29uZi1zcGVha2VycyB7XG4gIG1hcmdpbjogOS4zNzVyZW0gMCAwIDA7XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5LmNvbmYtYmFzZSAubGFzdC13aWRlIC5jb25mLXNwZWFrZXJzIHtcbiAgICBtYXJnaW46IDYuMjVyZW0gMCAwIDA7XG4gIH1cbn1cbmJvZHkuY29uZi1iYXNlIC5jb25mZXJlbmNlLXByb2R1Y3QgaDMge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuYm9keS5jb25mLW1pY3Jvc2l0ZS1ob21lLmNvbmYtYmFzZSAuY29uZi1iYXNlX19oZWFkZXIge1xuICBtaW4taGVpZ2h0OiAyMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmNvbmYtbWljcm9zaXRlLWhvbWUuY29uZi1iYXNlIC5jb25mLWJhc2VfX2hlYWRlciB7XG4gICAgbWluLWhlaWdodDogMTUuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIGJvZHkuY29uZi1taWNyb3NpdGUtaG9tZS5jb25mLWJhc2UgLmNvbmYtYmFzZV9faGVhZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxNS42MjVyZW07XG4gIH1cbn1cbmJvZHkuY29uZi1taWNyb3NpdGUtaG9tZS5jb25mLWJhc2UgLmhlYWRlcl9fbWFpbiB7XG4gIC8qLmNvbmZfX2xvZ28ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH0qL1xufVxuYm9keSAuY29udGVudCAuY29uZi1wcm9ncmFtbWUgdWwudGFicyB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiA4My4zNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ2Ljg3NWVtKSB7XG4gIGJvZHkgLmNvbnRlbnQgLmNvbmYtcHJvZ3JhbW1lIHVsLnRhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbmJvZHkgLmNvbnRlbnQgLmNvbmYtcHJvZ3JhbW1lIHVsLnRhYnMgbGkudGFicy10aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5IC5jb250ZW50IC5jb25mLXByb2dyYW1tZSB1bC50YWJzIGxpLnRhYnMtdGl0bGUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbmJvZHkgLmNvbnRlbnQgLmNvbmYtcHJvZ3JhbW1lIHVsLnRhYnMgbGkudGFicy10aXRsZSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgYm9keSAuY29udGVudCAuY29uZi1wcm9ncmFtbWUgdWwudGFicyBsaS50YWJzLXRpdGxlIGEge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cblxuYm9keSAuY29uZi1wcm9ncmFtbWUge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIGJhY2tncm91bmQ6ICNlOWU5ZTk7XG59XG5ib2R5IC5jb25mLXByb2dyYW1tZSAudGFicy1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogIzVjZTFlNjtcbn1cbmJvZHkgLmNvbmYtcHJvZ3JhbW1lIC50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICBib2R5IC5jb25mLXByb2dyYW1tZSAudGFicy1wYW5lbCB7XG4gICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgfVxufVxuYm9keSAuY29uZi1wcm9ncmFtbWUgLnRhYnMtcGFuZWwuaXMtYWN0aXZlIHtcbiAgbWF4LXdpZHRoOiA4My4zNzVyZW07XG4gIGJhY2tncm91bmQ6ICM1Y2UxZTY7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5ib2R5IC5jb25mLXByb2dyYW1tZSAudGFicy10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICNjOGM4Yzg7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuYm9keSAuY29uZi1wcm9ncmFtbWUgLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEge1xuICBiYWNrZ3JvdW5kOiAjNWNlMWU2O1xuICBjb2xvcjogIzAwNDk5MDtcbn1cbmJvZHkgLmNvbmYtcHJvZ3JhbW1lIC50YWJzLXRpdGxlIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmJvZHkgLmNvbmYtcHJvZ3JhbW1lIC50YWJzLXRpdGxlIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICBjb2xvcjogIzU4NTk1Yjtcbn1cblxuYm9keSAuY29uZi1zZXNzaW9ucyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX2hlYWRpbmcge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMXJlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC42MjVyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjYyNXJlbTtcbn1cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX2hlYWRpbmcgaDIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX3dyYXAge1xuICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuYm9keSAuY29uZi1zZXNzaW9uc19fd3JhcC5oYXMtdHlwZSB7XG4gIHBhZGRpbmctYm90dG9tOiAzZW07XG59XG5ib2R5IC5jb25mLXNlc3Npb25zX193cmFwIGgyLFxuYm9keSAuY29uZi1zZXNzaW9uc19fd3JhcCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDAgMCAwLjE4NzVyZW0gMDtcbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fc2Vzc2lvbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAwLjEyNXJlbSAxcmVtO1xufVxuYm9keSAuY29uZi1zZXNzaW9uc19fc2Vzc2lvbi5oYXMtdG9waWMge1xuICBwYWRkaW5nLWJvdHRvbTogMi43NXJlbTtcbn1cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX3Nlc3Npb24uaXMtZmVhdHVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX3Nlc3Npb24uaXMtZmVhdHVyZWQgaW1nLmNvbmYtc2Vzc2lvbnNfX3NwZWFrZXJpbWFnZSB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuYm9keSAuY29uZi1zZXNzaW9uc19fc2Vzc2lvbi5pcy1mZWF0dXJlZCAuY29uZi1zZXNzaW9uc19fc3BlYWtlci1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5ib2R5IC5jb25mLXNlc3Npb25zX19zZXNzaW9uIGgyLFxuYm9keSAuY29uZi1zZXNzaW9uc19fc2Vzc2lvbiBoMyB7XG4gIGNvbG9yOiAjMDA0OTkwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5ib2R5IC5jb25mLXNlc3Npb25zX19zZXNzaW9uIHAge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkgLmNvbmYtc2Vzc2lvbnNfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIH1cbn1cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX2NvbnRhaW5lciAuY29uZi1zZXNzaW9uc19fd3JhcCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSAuY29uZi1zZXNzaW9uc19fY29udGFpbmVyIC5jb25mLXNlc3Npb25zX193cmFwIHtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1iYXNpczogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSAuY29uZi1zZXNzaW9uc19fY29udGFpbmVyIC5jb25mLXNlc3Npb25zX193cmFwOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5ib2R5IC5jb25mLXNlc3Npb25zX19zcGVha2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG59XG5ib2R5IC5jb25mLXNlc3Npb25zX19zcGVha2VyIHAge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX3NwZWFrZXIgaW1nIHtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fdGltZSB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgYm9keSAuY29uZi1zZXNzaW9uc19fdGltZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuYm9keSAuY29uZi1zZXNzaW9uc19fdGltZSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHkgLmNvbmYtc2Vzc2lvbnNfX3RpbWUgcCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fZHVyYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuYm9keSAuY29uZi1zZXNzaW9uc19fZHVyYXRpb24gaW1nIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbmJvZHkgLmNvbmYtc2Vzc2lvbnNfX3BvcC11cCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG5ib2R5IC5jb25mLXNlc3Npb25zX190eXBlIHtcbiAgYmFja2dyb3VuZDogI2M4YzhjODtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC42MjVyZW07XG59XG5cbi8qIGJvZHkuY29uZi1taWNyb3NpdGUtaG9tZSB7XG4gIC5jb25mLWJhc2VfX2hlYWRlciB7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDAwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTAwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNjAwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDcyMCk7XG4gICAgfVxuICB9XG4gIC5oZWFkZXIge1xuICAgIC5jb25mLWJhc2VfX2hlYWRlci1tYWluIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg1MDApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDYwMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDExMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg3ODApO1xuICAgICAgfVxuXG4gICAgICAucnFhX19sb2dvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgICAuY29uZl9fbG9nbyB7XG4gICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB0b3A6IDI0JTtcbiAgICAgICAgICBsZWZ0OiAxOCU7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjAwKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgICAgICAgY2lyY2xlLFxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSxcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNzAlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogcmVtLWNhbGMoLTgwKTtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgNTAlKTtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC04MCk7XG4gICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWFpbl9fbG9nbyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDZlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29uZi1vdmVydmlldyB7XG4gICAgLy9wYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg4MCk7XG4gICAgLmNvbmYtaW50cm8tLXRleHQgcCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXYubWVkaXVtLTY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiAzOCU7XG4gICAgICB9XG4gICAgICBkaXYubWVkaXVtLTY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDU4JTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiovXG5AbWVkaWEgcHJpbnQge1xuICAuaGVhZGVyX190b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnByb21vQmFubmVyIGEgLmZhIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHVsLm1haW5fX25hdi5tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oZWFkZXIgLmhlYWRlcl9fbWFpbiAubWFpbl9fc2VhcmNoLnNlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY3J1bWJzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5mb290ZXJfX2JvdHRvbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc29jaWFscyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjY29va2llLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZm9vdGVyX19sb2dvOmFmdGVyLCAuaGVhZGVyIC5oZWFkZXJfX21haW4gLm1haW5fX2xvZ286YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNpZGViYXIgdWwuc2lkZWJhcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jb250ZW50IHVsLnRhYnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgYS5ibG9jay1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmV4dGVuZC1sZWZ0OmJlZm9yZSwgLmJsb2NrLWV4dGVuZC0tbGVmdDpiZWZvcmUsIC5ibG9jay1leHRlbmQtLXJpZ2h0OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaG9tZS1mZWF0dXJlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub3JiaXQsIC5hYm91dC1zdGF0cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBzZWN0aW9uLmhvbWUtYm90dG9tIGE6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnJlY29tbWVuZGVkUHJvZHVjdHMgYTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaG9tZS1mb3JtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5nb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdWwudGFicy50YWJzLS1maWx0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdWwubGlzdC1jb2x1bW5zLS10ZWFsIGxpIGEubGlzdC1jb2x1bW5zX19saW5rOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wYWdlLXRvcC0tdGFsbCwgLmJsb2NrLWxpc3QgLmJsb2NrLWxpc3RfX2ltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5ob21lLWFib3V0LCAuaG9tZS1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuICAuaGVhZGVyIC5oZWFkZXJfX21haW4gLm1haW5fX2xvZ28gaW1nIHtcbiAgICBib3JkZXI6ICMwMDQ5OTAgc29saWQgMTVweDtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbiAgLmJsb2NrLWxpc3QsIC5wYWdlLW1haW4tLWxpc3Quc21hbGxUaXRsZXMgLmNvbHVtbnMgLmJsb2NrLWxpc3Qge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuYmxvY2stbGlzdCAuYmxvY2stbGlzdF9fcHJpY2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwcHg7XG4gIH1cbiAgLm1hcENvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgYnV0dG9uLmJsb2NrLWJ1dHRvbiwgLmNvbnRlbnQgLmNvbnRlbnRfX2JvcmRlciAucmVnUm9hZG1hcCAubWFwU3RhZ2UgaDIgc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXh0ZW5kLXRvLXNpZGViYXI6YmVmb3JlLCAuZXh0ZW5kLXJpZ2h0OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIC5mb290ZXJfX3RvcCBpbWcge1xuICAgIGJvcmRlcjogIzAwNDk5MCBzb2xpZCAxNXB4O1xuICB9XG59IiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMy4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJy4uL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoJGZsZXg6IGZhbHNlKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cbn1cbiIsImh0bWwge1xuICBzY3JvbGwtcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1MCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBzY3JvbGwtcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwMCk7XG4gIH1cbn1cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgbGV0dGVyLXNwYWNpbmc6IDBweDtcbiAgLndyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMjIpO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbiAgICB9XG4gIH1cblxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIH1cbiAgaDEsXG4gIGgyLFxuICBoMyB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIH1cblxuICAuaW1hZ2UtY2Fyb3VzZWwuaW1hZ2UtY2Fyb3VzZWwtLXdpZGUge1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbGlzaCkge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogMzMuMyU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5pbWFnZS1jYXJvdXNlbCB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoNDAgMjApO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgICBwYWRkaW5nOiByZW1fY2FsYyg2MCA0MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDcwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgICB9XG4gICAgLm1lZGl1bS00IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICRycWEtdGVhbDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1lZGl1bS04IHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW1fY2FsYygyMCk7XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyMik7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMjAgMjAgMzAgMjApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzYpO1xuICAgICAgfVxuICAgICAgXG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyMCAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOiByZW1fY2FsYygwIDIwKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtX2NhbGMoMTAwKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LWhlaWdodDogcmVtX2NhbGMoMTAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg5MCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg5MCk7XG4gICAgfVxuICAgIFxuICAgIC5vcmJpdC13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBsaSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjAlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIC8vaGVpZ2h0OiByZW1fY2FsYyg0MTApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAvL2hlaWdodDogcmVtX2NhbGMoNjEwKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub3JiaXQtbmV4dCxcbiAgICAub3JiaXQtcHJldmlvdXMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM0KTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzNCk7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cbiAgICAub3JiaXQtbmV4dCB7XG4gICAgICByaWdodDogMHB4O1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgIH1cbiAgICAub3JiaXQtcHJldmlvdXMge1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgIH1cbiAgICAub3JiaXQtYnVsbGV0cyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IHJlbV9jYWxjKDMwKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHJxYS10ZWFsO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxufVxuXG4uZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDB2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbn1cbi5sYXJnZS05IHtcbiAgLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuI2FjY2Vzc2liaWxpdHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMGVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNtYWxsLTEyLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5zbWFsbC0xMi5jb2x1bW5zLS1tb2JpbGUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5mb290ZXIge1xuICAuc21hbGwtMTIuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgfVxufVxuXG4ucXVlc3Rpb24ge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogJHJxYS1ibHVlO1xufVxuLmVycm9ycyxcbnVsLmVycm9ybGlzdCBsaSB7XG4gIGNvbG9yOiByZWQ7XG4gICYuZXJyb3JzLWNlbnRyZWQge1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jY21zLXRvcCAuY21zLWRyYWdhcmVhLXN0YXRpYzpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gRXh0ZW5kIGNvbG9yIGJsb2NrXG4uZXh0ZW5kLWxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwMDBweDtcbiAgICBsZWZ0OiAtMTk3NXB4O1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gIH1cbn1cbi5leHRlbmQtcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwMDBweDtcbiAgICByaWdodDogLTE5ODVweDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gIH1cbn1cbi5leHRlbmQtdG8tc2lkZWJhciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgbGVmdDogLTQ1cHg7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICB9XG59XG4uZXh0ZW5kLWxlZnQtLWJsdWUge1xuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgfVxufVxuLmV4dGVuZC1sZWZ0LS10ZWFsIHtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gIH1cbn1cblxuLnBhZ2UtYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDMwMHB4O1xuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGhlaWdodDogNDMwcHg7XG4gIH1cbiAgJi5kZWVwZXIge1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtYmFubmVyX19jb250YWluZXIge1xuICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICB9XG4gIC5wYWdlLWJhbm5lcl9fdGV4dCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMzAgMzAgMjApO1xuICAgIC8vcmlnaHQ6MDtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxOXB4IHJnYmEoMCwwLDAsMC4xOCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDMwIDMwIDApO1xuICAgIH1cbiAgfVxuICBzcGFuIHtcbiAgICBmb250LXNpemU6IDIuNGVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2Myk7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzMjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJi5pcy13cmFwcGVkIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAyMC4yNSU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDBweDtcbiAgICAgIGJvdHRvbTogMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uY3J1bWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ3cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgei1pbmRleDogMTY7XG4gIH1cbiAgdWwuY3J1bWJzX19saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuN2VtIHJlbS1jYWxjKDMwKSAwLjdlbSByZW0tY2FsYygyNSk7XG4gICAgei1pbmRleDogMzI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogMC43ZW0gcmVtLWNhbGMoMzApIDAuN2VtIHJlbS1jYWxjKDYpO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNpZGViYXIge1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgfVxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42ZW07XG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgfVxuICAuc2lkZWJhcl9fYm9yZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IC0xNXB4O1xuICAgIH1cbiAgfVxuICAuYmxvY2stYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gIH1cbiAgLnNpZGViYXJfX2l0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLnNpZGViYXJfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5zaWRlYmFyX190ZXh0IHtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgLnNpZGViYXJfX3N1YiB7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgfVxuICB1bC5zaWRlYmFyX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgfVxuICB1bC5zaWRlYmFyX19uYXYge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogNHB4IDAgMCAyMHB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5jdXJyZW50IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdWwuc2lkZWJhcl9fc29jaWFsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDRweCA4cHggMDtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuICAgICAgYS5saW5rZWRpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMDg1Yzc7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oIzIwODVjNywgMTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS50d2l0dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzc4Y2RmMDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigjNzhjZGYwLCAxMCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLmZhY2Vib29rIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzUzN2JiZDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigjNTM3YmJkLCAxMCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLnlvdXR1YmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTk2NTRiO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCNlOTY1NGIsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEuZ29vZ2xlLXBsdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNGM0YzRiO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCM0YzRjNGIsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEucnNzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwNDk5MDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigjMDA0OTkwLCAxMCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50IHtcbiAgbWFyZ2luOiAwIDAgNjBweCAwO1xuICAuY29udGVudF9fZnVsbCB7XG4gICAgLy9tYXgtd2lkdGg6IHJlbS1jYWxjKDExMjQpO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICAuY29udGVudF9fYm9yZGVyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDAgMCAwO1xuICAgID4gaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgaDEge1xuICAgIC8vZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0Mik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjMpO1xuICAgIH1cbiAgICAmLmJvb2tpbmctaGVhZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDIpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaDIge1xuICAgXG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIG1hcmdpbjogMC44ZW0gMCAwLjJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICB9XG4gIH1cbiAgaDMge1xuICAgIFxuICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICBtYXJnaW46IDAuOGVtIDAgMC4yZW0gMDtcbiAgfVxuICBoNCB7XG4gXG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIG1hcmdpbjogMC44ZW0gMCAwLjJlbSAwO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMCAwIDFlbSAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNik7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICB0b3A6MC42ZW07XG4gICAgICAgIHdpZHRoOjAuM2VtO1xuICAgICAgICBoZWlnaHQ6IDAuM2VtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2lkX2NvbmNlc3Npb24ge1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBvbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjIpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMyk7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzIpO1xuICAgIH1cbiAgfVxuICBcblxuICBcbiAgLmNvbnRlbnRfX2xpc3QsXG4gIG9sIHtcbiAgICBsaTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgaWZyYW1lIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAuYmxvY2stZXh0ZW5kOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxudWwuY29udGVudF9fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGkge1xuICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRycWEtYmx1ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RfX2RhdGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4zZW07XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICB9XG4gIH1cbn1cblxuLndyYXBwZXItLWdyYXkge1xuICBiYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG59XG5cbi5wYWdlLXRvcCB7XG4gIGhlaWdodDogMTM0cHg7XG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMzRweDtcbiAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAyZW07XG4gIH1cbn1cbi5wYWdlLXRvcC0tdGFsbCB7XG4gIGhlaWdodDogMTgwcHg7XG4gIGgyIHtcbiAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuLnBhZ2UtbWFpbiB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBhZ2UtbWFpbi0tYmxvY2sge1xuICBwYWRkaW5nOiA2MHB4IDA7XG59XG4uc21hbGwtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnRhYnMtLWZpbHRlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICAgIGEge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29udGVudDogYXR0cih0aXRsZSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBhIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGxpLnNlbGVjdCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICB9XG59XG5cbi5wYWdlLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDcwcHggMDtcbn1cblxuLnBhZ2UtdG9wX19zZWFyY2gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgd2lkdGg6IDUxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICAuc2VhcmNoX193cmFwIHtcbiAgICB3aWR0aDogMjkwcHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGkge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG59XG4uc2VhcmNoLXRvZ2dsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zZWFyY2gtZXhwYW5kZWQge1xuICB3aWR0aDogMjkwcHg7XG59XG5cbi5maWx0ZXItd3JhcCB7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDNlbTtcbn1cblxuI21hcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM2MHB4O1xufVxuXG4uc2hvdy1mb3ItbGFyZ2UtdXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNob3ctZm9yLW1lZGl1bS11cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5zaG93LXNtYWxsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAuc21hbGwtMTIuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICB9XG4gIC5wYWdlLW1haW4tLWxpc3QgLnNtYWxsLTEyLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC4ycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMnJlbTtcbiAgfVxuICAuc21hbGwtMTIuY29sdW1ucy0tbW9iaWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuZXh0ZW5kLWxlZnQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0xOTg1cHg7XG4gICAgfVxuICB9XG4gIC5wYWdlLXRvcCB7XG4gICAgaGVpZ2h0OiAxMzRweDtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIH1cbiAgfVxuICAucGFnZS10b3AtLXRhbGwge1xuICAgIGhlaWdodDogMTgwcHg7XG4gICAgaDIge1xuICAgICAgbGluZS1oZWlnaHQ6IDE4MHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG4gIC5wYWdlLXRvcF9fc2VhcmNoIHtcbiAgICBtYXJnaW4tdG9wOiA2OHB4O1xuICAgIC5zZWFyY2hfX3dyYXAge1xuICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWJzLS1maWx0ZXIge1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgIH1cbiAgfVxuICAuc2VhcmNoLWV4cGFuZGVkIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cblxuICAuY3J1bWJzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuc2lkZWJhciB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgLnNpZGViYXJfX2JvcmRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5zaWRlYmFyX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIH1cbiAgICAuc2lkZWJhcl9fdGV4dCB7XG4gICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIH1cbiAgICAuc2lkZWJhcl9fc3ViIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgfVxuICAgIHVsLnNpZGViYXJfX25hdiB7XG4gICAgICBwYWRkaW5nOiAwIDAgM2VtIDA7XG4gICAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQge1xuICAgIG1hcmdpbjogNjBweCAwIDYwcHggMDtcbiAgICAuY29udGVudF9fYm9yZGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDMwcHg7XG4gICAgXG4gICAgfVxuICB9XG4gIC5yb3ctLW1lZGl1bS1zdGFjayB7XG4gICAgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwcHggMCA2MHB4IDA7XG4gICAgICAuY29udGVudF9fYm9yZGVyIHtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICB1bC5zaWRlYmFyX19uYXYge1xuICAgICAgcGFkZGluZzogMCAwIDNlbSAwO1xuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIC5zbWFsbC0xMi5jb2x1bW5zLS1tb2JpbGUge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgfVxuXG4gIC5leHRlbmQtbGVmdCB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAucGFnZS10b3AtLXRhbGwge1xuICAgIGhlaWdodDogMTgwcHg7XG4gICAgaDIge1xuICAgICAgbGluZS1oZWlnaHQ6IDE4MHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIH1cbiAgfVxuICAucGFnZS10b3BfX3NlYXJjaCB7XG4gICAgLnNlYXJjaF9fd3JhcCB7XG4gICAgICB3aWR0aDogNDYwcHg7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlYXJjaC1leHBhbmRlZCB7XG4gICAgd2lkdGg6IDQ2MHB4O1xuICB9XG4gIC5zaWRlYmFyIHtcbiAgICAuc2lkZWJhcl9fYm9yZGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLnNpZGViYXJfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgfVxuICAgIC5zaWRlYmFyX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxuICAgIC5zaWRlYmFyX19zdWIge1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG4gICAgdWwuc2lkZWJhcl9fbmF2IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbnRlbnQge1xuICAgIC5jb250ZW50X19ib3JkZXIge1xuICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICB9XG4gIH1cbiAgLnJvdy0tbWVkaXVtLXN0YWNrIHtcbiAgICAuY29udGVudCB7XG4gICAgICBtYXJnaW46IDgwcHggMCA2MHB4IDA7XG4gICAgICAuY29udGVudF9fYm9yZGVyIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNob3ctZm9yLWxhcmdlLXVwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnNvY2lhbHMge1xuICBjbGVhcjogYm90aDtcbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgfVxuXG4gIC5mYSB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxuXG4gICAgJi5mYS12aW1lbyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhZGVmO1xuICAgIH1cblxuICAgICYuZmEtbGlua2VkaW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIwODVjNztcbiAgICB9XG5cbiAgICAmLmZhLXR3aXR0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzc4Y2RmMDtcbiAgICB9XG5cbiAgICAmLmZhLWZhY2Vib29rIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzdiYmQ7XG4gICAgfVxuXG4gICAgJi5mYS15b3V0dWJlLXBsYXkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5NjU0YjtcbiAgICB9XG5cbiAgICAmLmZhLWdvb2dsZS1wbHVzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0YzRjNGI7XG4gICAgfVxuXG4gICAgJi5mYS1yc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDk5MDtcbiAgICB9XG5cbiAgICAmLmZhLWVudmVsb3BlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRycWEtdGVhbDtcbiAgICB9XG4gIH1cbn1cblxuLnRydXN0cGlsb3RzaGFyZSB7XG4gIHAge1xuICAgIG1hcmdpbi10b3A6IDAuOGVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgZm9udC1zaXplOiByZW1fY2FsYygxNCk7XG4gIGEge1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICB9XG59XG4ubWFwIHtcbiAgcGFkZGluZy10b3A6IDUwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLnJvdyAubmV3LW1lbWJlci1zaWdudXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgaDIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAucm93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IDFlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7XG4gIH1cbn1cblxuLmhlbHAtYnV0dG9uLW1haW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiByZW0tY2FsYygtOTgpO1xuICBib3R0b206IHJlbS1jYWxjKDE5MCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHdpZHRoOiByZW0tY2FsYygyMTApO1xuICBtaW4taGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gIHotaW5kZXg6IDEzMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuICAgIHRvcDogMjAlO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNiAxMCAxNiAxMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDYpO1xuICAgIH1cbiAgfVxufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgei1pbmRleDogMjUwO1xufVxuXG4ucXVvdGVzLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICBwYWRkaW5nOiByZW1fY2FsYygyMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoNzAgMCk7XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygyNCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoNzApO1xuICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzcpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDcwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XG4gIH1cbiAgLm9yYml0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDExMTYpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIHJlbV9jYWxjKDMwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogMCByZW1fY2FsYyg4MCk7XG4gICAgfVxuICB9XG4gIHVsIHtcbiAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDExMTYpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpdiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxOCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzcpO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFDXCI7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAxRFwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDM3KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIG1hcmdpbjogNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogMThweDtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuICB9XG59IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRm9ybXNcbi8vICAyMC4gTGFiZWxcbi8vICAyMS4gTWVkaWEgT2JqZWN0XG4vLyAgMjIuIE1lbnVcbi8vICAyMy4gTWV0ZXJcbi8vICAyNC4gT2ZmLWNhbnZhc1xuLy8gIDI1LiBPcmJpdFxuLy8gIDI2LiBQYWdpbmF0aW9uXG4vLyAgMjcuIFByb2dyZXNzIEJhclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgMjkuIFJldmVhbFxuLy8gIDMwLiBTbGlkZXJcbi8vICAzMS4gU3dpdGNoXG4vLyAgMzIuIFRhYmxlXG4vLyAgMzMuIFRhYnNcbi8vICAzNC4gVGh1bWJuYWlsXG4vLyAgMzUuIFRpdGxlIEJhclxuLy8gIDM2LiBUb29sdGlwXG4vLyAgMzcuIFRvcCBCYXJcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMzU2KTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMDA0OTkwLFxuICBzZWNvbmRhcnk6ICMwMGE0YjEsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKTtcbiRycWEtZGFyay1ibHVlOiAjMDAzYTczO1xuJHJxYS1ibHVlOiAjMDA0OTkwO1xuJHJxYS10ZWFsOiAjMDBhNGIxO1xuJHJxYS1waW5rOiAjYTQwNDc1O1xuJHJxYS1vcmFuZ2U6ICNkZDU4Mjk7XG4kcnFhLWdyZWVuOiAjNWJiZTgyO1xuJHJxYS1yZWQ6ICNjYjBlMzQ7XG4kZ3JlZW46ICM4QkMzNEE7XG5cbi8vQ09uZmVybmVjZSBjb2xvdXJzIDIwMTlcbiRjb25mLXB1cnBsZTogIzhiNmFhYztcbiRjb25mLXB1cnBsZS1idG46ICM5ZjgyYmM7XG4kY29uZi1wdXJwbGUtbGlnaHQ6ICNmMWVkZjU7XG4kY29uZi1ibHVlOiAjM2U4MWE0O1xuJGNvbmYtYmx1ZS1idG46ICM1YTkyYjQ7XG4kY29uZi1ibHVlLWxpZ2h0OiAjZDJlMmVhO1xuJGNvbmYtb3JhbmdlOiAjZDE4MjM0O1xuJGNvbmYtb3JhbmdlLWJ0bjogI2Q5OTM0YztcbiRjb25mLW9yYW5nZS1saWdodDogI2Y0ZTJkMDtcbiRjb25mLWxpZ2h0LWdyZWVuOiAjYTNiNDJlO1xuLy8kY29uZi1kYXJrLWdyZWVuOiAjNWY4YjM4O1xuJGNvbmYtc2VsZWN0LWdyZWVuOiAjMDBjMzAwO1xuJGNvbmYtZ3JheTogI2RlZGVkZTtcblxuLy9DT25mZXJuZWNlIGNvbG91cnMgMjAyMFxuJGNvbmYtZGFyay1ncmVlbjogIzA5NTA1ODtcbiRjb25mLWRhcmstZ3JlZW4tYnRuOiAjNDk5MjlhO1xuJGNvbmYtZGFyay1ncmVlbi1saWdodDogI2NmZGRkZjtcbiRjb25mLXBpbms6ICNiMjEyNjg7XG4kY29uZi1waW5rLWJ0bjogI2Q3N2JhZTtcbiRjb25mLXBpbmstbGlnaHQ6ICNmMWVkZjU7XG4kY29uZi1icm93bjogIzcyNjUwYjtcbiRjb25mLXllbGxvdzogI2YxZDUwYztcbiRjb25mLWRhcmstZ3JheTogIzg4ODg4ODtcblxuLy9Db25mZXJuZWNlIGNvbG91cnMgMjAyMVxuJGNvbmYyMS10ZWFsOiAjMDlBODkwO1xuJGNvbmYyMS1wdXJwbGU6ICM2RTE2NjE7XG4kY29uZjIxLXllbGxvdzogI0EyODczNztcblxuLy9Db25mZXJuZWNlIGNvbG91cnMgMjAyMlxuJGNvbmYyMi1ncmVlbjogI0IyRDIzNTtcbiRjb25mMjItbWFnOiAjRUQyMDdBO1xuJGNvbmYyMi1vcmFuZ2U6ICNGMTVBMjI7XG4kY29uZjIyLWxpZ2h0LW9yYW5nZTogI0Y5QTAxQjtcbiRjb25mMjItZ3JleTogIzcwNzA3MDtcblxuLy9Db25mZXJuZWNlIGNvbG91cnMgMjAyM1xuJGNvbmYyMy1saWdodC1ibHVlOiAjNjU5YWQyO1xuJGNvbmYyMy1kYXJrLWJsdWU6ICMyZTMxOTI7XG4kY29uZjIzLWdyZWVuOiAjNzI5ODk3O1xuJGNvbmYyMy1ncmV5OiAjY2FkNWRhO1xuXG5cbi8vQ29uZmVyZW5jZSBjb2xvdXJzIDIwMjRcbiRjb25mMjQteWVsbG93OiAjRkZENTBBO1xuJHJxYS10ZWFsLWJ0bjogIzM3YWViYztcbiRycWEtdGVhbC1saWdodDogI2M0ZTZlYTtcblxuLy9Db25mZXJlbmNlIGNvbG91cnMgMjAyNVxuJGNvbmYyNS1vcmFuZ2U6ICNlYTU5MmQ7XG4kY29uZjI1LXR1cnF1b2lzZTogIzVjZTFlNjtcblxuJGxpZ2h0LWdyYXk6ICNmN2Y3Zjc7XG4kcGFsZS1ncmF5OiAjYzhjOGM4O1xuJG1lZGl1bS1ncmF5OiAjZTllOWU5O1xuJGRhcmstZ3JheTogIzU4NTk1YjtcbiRibGFjazogIzBhMGEwYTtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRkYXJrLWdyYXk7XG4kYm9keS1mb250LWZhbWlseTogJ2Rpbi0yMDE0JywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZDtcbiRnbG9iYWwtcmFkaXVzOiAwO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuLy9Db25mZXJuZWNlIGNvbG91cnMgMjAyNVxuJGNvbmYyNS1yZWQ6ICNlZjA2MDQ7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgc21hbGxpc2g6IDQwMCxcbiAgc21hbGxtZWQ6IDUwMCxcbiAgbWVkaXVtOiA3NTBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2Vpc2g6IDEzMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuICB4eHhsYXJnZTogMTUzMHB4LFxuICB4eHh4bGFyZ2U6IDE4NzBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDJyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXG4vLyAxOS4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRpbnB1dC1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4kaW5wdXQtZm9udC13ZWlnaHQ6IDMwMDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogbm9uZTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IG5vbmU7XG4kaW5wdXQtc2hhZG93OiBub25lO1xuJGlucHV0LXNoYWRvdy1mb2N1czogbm9uZTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIwLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW1hcmdpbi1uZXN0ZWQ6IDFyZW07XG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogdHJhbnNwYXJlbnQ7XG4kbWVudS1ib3JkZXI6IHRyYW5zcGFyZW50O1xuXG4vLyAyMy4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI0LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI1LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjYuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gMjkuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyAzMC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzEuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAzMi4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuXG4vLyAzMy4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDM0LiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzNS4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM3LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnOyAgICBcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUgb3IgYnJlYWtwb2ludCBuYW1lIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sdW1uLWd1dHRlcigpLiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2wtZ3V0dGVyKCkuIGdyaWQtY29sLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpOyAgXG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVvY3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgY3Vyc29yOiBoZWxwO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAwKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIHRvIHJlbW92ZSB0aGUgYnVsbGV0cyBmcm9tIGFuIHVub3JkZXJlZCBsaXN0XG4gIC5uby1idWxsZXQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyKTtcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBhbiBob3ZlcmVkIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGZvciBib3JkZXJlZCBtZW51XG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIG1hcmdpbjogJG1lbnUtbWFyZ2luO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtcyBhcmUgdGFibGUgY2VsbCB0byBhbGxvdyBmb3IgdmVydGljYWwgYWxpZ25tZW50XG4gID4gbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IGxpbmUgaGVpZ2h0IHRvIG1ha2UgdGhlIGhlaWdodCBvZiB0aGUgb3ZlcmFsbCBpdGVtIGVhc2llciB0byBjYWxjdWxhdGVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW0tcGFkZGluZztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgPiBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuXG4gID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICA+IGxpICA+IGEge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gU2V0IHRvIGBudWxsYCB0byBkbyBub3QgZ2VuZXJhdGUgc3R5bGVzIGZvciBkaXJlY3Rpb24uXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0KSB7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBAaWYgJGRpciAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGRpcik7XG4gIH1cbn1cblxuLy8vIERpcmVjdGlvbiBtb2RpZmllciBmb3IgYSBzaW1wbGUgTWVudVxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudVxuQG1peGluIG1lbnUtc2ltcGxlLWRpcmVjdGlvbigkZGlyOiAkZ2xvYmFsLWxlZnQpIHtcbiAgJG5vLW1hcmdpbi1kaXI6ICRkaXI7XG4gICRtYXJnaW4tZGlyOiBkaXJlY3Rpb24tb3Bwb3NpdGUoJGRpcik7XG5cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRuby1tYXJnaW4tZGlyfTogMDtcbiAgICBtYXJnaW4tI3skbWFyZ2luLWRpcn06IGdldC1zaWRlKCRtZW51LWl0ZW0tcGFkZGluZywgJG1hcmdpbi1kaXIpO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHBhZGRpbmcgW2F1dG9dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG5AbWl4aW4gbWVudS1uZXN0ZWQoJG1hcmdpbjogJG1lbnUtbWFyZ2luLW5lc3RlZCkge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xufVxuXG4vLy8gQWRkcyBzdXBwb3J0IGZvciBpY29ucyB0byBNZW51IGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHBvc2l0aW9uIFtzaWRlXSAtIFBvc2l0aW9uaW5nIGZvciBpY29ucy4gQ2FuIGJlIGBzaWRlYCAobGVmdCwgb3IgcmlnaHQgb24gUlRMKSBvciBgdG9wYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRiYXNlIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgdGhlIHNoYXJlZCBDU1MgYmV0d2VlbiBzaWRlLSBhbmQgdG9wLWFsaWduZWQgaWNvbnMgZnJvbSBiZWluZyBwcmludGVkLiBTZXQgdGhpcyB0byBgZmFsc2VgIGlmIHlvdSdyZSBjYWxsaW5nIHRoZSBtaXhpbiBtdWx0aXBsZSB0aW1lcyBvbiB0aGUgc2FtZSBlbGVtZW50LlxuQG1peGluIG1lbnUtaWNvbnMoJHBvc2l0aW9uOiBzaWRlLCAkYmFzZTogdHJ1ZSkge1xuICBAaWYgJGJhc2Uge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgKyBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBzaWRlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtZW51LWljb24tc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkbWVudS1pY29uLXNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG4gICAgQGluY2x1ZGUgbWVudS1pY29ucztcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG5cbiAgICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlLWRpcmVjdGlvbigkZ2xvYmFsLXJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBpY29uc1xuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucyh0b3AsICRiYXNlOiBmYWxzZSk7XG4gICAgICAvLyBNYWtlIHZlcnRpY2FsIG1lbnUgd2l0aCBpY29ucyBvbiB0b3Agd29ya1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIGEgPiBzcGFuIHtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAvLyBNZW51IHdpdGggYm9yZGVyXG4gICAgJi5tZW51LWJvcmRlcmVkIHtcbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lbnUtYm9yZGVyO1xuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJhY2tncm91bmQgaG92ZXJcbiAgICAmLm1lbnUtaG92ZXIge1xuICAgICAgbGk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtdGV4dCB7XG4gICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICB9XG5cbiAgLy8gQWxpZ24gY2VudGVyXG4gIC5tZW51LWNlbnRlcmVkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICA+IC5tZW51IHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiB0b3ApO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFwcGxpZWQgdG8gbmVzdGVkIDx1bD5zXG4gIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogLTE7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2luZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgfVxuICB9XG5cbiAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcblxuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG5AbWl4aW4gbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLyBXQVJOSU5HOiBXaWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiA2LjRcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvOiBkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW8pO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1zaXplOiAyNTBweCAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYG92ZXJsYXBgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB1c2luZyB0aGUgYHJldmVhbC1mb3ItKmAgY2xhc3NlcyBvciBtaXhpbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMSAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcbiAgLy8gSGlkZXMgb3ZlcmZsb3cgb24gYm9keSB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbiAgLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgb3ZlcmxheSAoZ2VuZXJhdGVkIGJ5IEphdmFTY3JpcHQpXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICAgIFxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZTogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZSwgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgICYuaXMtb3BlbiB+IC4jeyRtYWluY29udGVudC1jbGFzc30ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgJi5pcy1vcGVuIH4gLiN7JG1haW5jb250ZW50LWNsYXNzfSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgJi5pcy1vcGVuIH4gLiN7JG1haW5jb250ZW50LWNsYXNzfSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHNpemU7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgICYuaXMtb3BlbiB+IC4jeyRtYWluY29udGVudC1jbGFzc30ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1zaGFkb3cgaXMgc2V0LCBhZGQgaXQgYXMgYSBwc2V1ZG8tZWxlbWVudC5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLXNoYWRvdyB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2g6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogJG9mZmNhbnZhcy1zaGFkb3c7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICB9XG4gIH1cblxuICAvLyBObyB0cmFuc2Zvcm0gb24gb3ZlcmxhcCB0cmFuc2l0aW9uXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4gfiAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIG9mZi1jYW52YXMtY29udGVudCgpIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgdGhhdCByZXZlYWwgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLXJldmVhbChcbiRwb3NpdGlvbjogbGVmdCxcbiR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiRjb250ZW50OiAkbWFpbmNvbnRlbnQtY2xhc3Ncbikge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG5cbiAgQGlmIG5vdCAkb2ZmY2FudmFzLWZpeGVkLXJldmVhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogJG9mZmNhbnZhcy1zaXplO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIHdyYXBwZXJcbiAgLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwcGVyO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXJcbiAgLm9mZi1jYW52YXMge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChyaWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGBleHBhbmQtbmAgY2xhc3NlcyB0byBpbmNsdWRlIGluIHRoZSBDU1MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHRhYnMtY29udGFpbmVyIChcbiAgJG1hcmdpbjogJHRhYi1tYXJnaW4sXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkbWFyZ2luO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGFpbmVyIHRvIGhhdmUgdmVydGljYWwgdGFicy4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250YWluZXIoKWAuXG5AbWl4aW4gdGFicy1jb250YWluZXItdmVydGljYWwge1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBsaW5rcyB3aXRoaW4gYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBgPGxpPmAgZWxlbWVudHMgaW5zaWRlIGEgdGFiIGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXRpdGxlIChcbiAgJHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplLFxuICAkY29sb3I6ICR0YWItY29sb3IsXG4gICRjb2xvci1hY3RpdmU6ICR0YWItYWN0aXZlLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZVxuKSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJlthcmlhLWhpZGRlbj1cImZhbHNlXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAoMSAvIDE2KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtICgxIC8gMTYpO1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzBdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbMV0gLSBPcGFjaXR5IHRvIGVuZCBvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMCxcbiAgJHRvOiAxLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIi8qISBGbGlja2l0eSB2Mi4yLjJcbmh0dHBzOi8vZmxpY2tpdHkubWV0YWZpenp5LmNvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mbGlja2l0eS1lbmFibGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mbGlja2l0eS1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIGRyYWdnYWJsZSAqL1xuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0LmlzLXBvaW50ZXItZG93biB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLyogLS0tLSBmbGlja2l0eS1idXR0b24gLS0tLSAqL1xuXG4uZmxpY2tpdHktYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjc1KTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMztcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mbGlja2l0eS1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggIzE5Rjtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjphY3RpdmUge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM7XG4gIGN1cnNvcjogYXV0bztcbiAgLyogcHJldmVudCBkaXNhYmxlZCBidXR0b24gZnJvbSBjYXB0dXJpbmcgcG9pbnRlciB1cCBldmVudC4gIzcxNiAqL1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4vKiAtLS0tIHByZXZpb3VzL25leHQgYnV0dG9ucyAtLS0tICovXG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLyogdmVydGljYWxseSBjZW50ZXIgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7IGxlZnQ6IDEwcHg7IH1cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQgeyByaWdodDogMTBweDsgfVxuLyogcmlnaHQgdG8gbGVmdCAqL1xuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4O1xufVxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIC5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDIwJTtcbiAgd2lkdGg6IDYwJTtcbiAgaGVpZ2h0OiA2MCU7XG59XG5cbi8qIC0tLS0gcGFnZSBkb3RzIC0tLS0gKi9cblxuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcGFnZS1kb3RzIHsgZGlyZWN0aW9uOiBydGw7IH1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDAgOHB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cbiIsIi5oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyODtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYigzMSwgNzMsIDEzOSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMzEsIDczLCAxMzksIDAuOCk7XG5cbiAgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNDYwKTtcbiAgfVxuICAubWFpbl9fbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTYpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTQpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMCk7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaGVhZGVyX190b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogcmlnaHQ7XG4gICAgei1pbmRleDogMTI4O1xuXG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDhweDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50b3BfX2NhcnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLXBpbms7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgICBzZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjZweCAwIDRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvc3RhdGljL2ltYWdlcy9kcm9wLWFycm93LnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9zdGF0aWMvaW1hZ2VzL2Ryb3AtYXJyb3cucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB1bC5tZW51LS10b3Age1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAvL2ZvbnQtc2l6ZTogcmVtLWNhbGMoOCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlaXNoKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNzAwcHgpIHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNzIpO1xuICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5tZW51X19hY2NvdW50IHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLm1lbnVfX2VsZWFybmluZyB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tYWluX19zZWFyY2gge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlaXNoKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xuICAgICAgICAuc2VhcmNoX193cmFwIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcblxuICAgICAgICAgIGlucHV0LnNlYXJjaF9faW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMSk7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDcyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQxKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgYmFja2dyb3VuZDogJHJxYS1kYXJrLWJsdWU7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyZW07XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2FydF9fYW1vdW50X19vdXRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXBpbms7XG4gICAgfVxuICAgIC5jYXJ0X19hbW91bnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgICAgLmZhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYS50b3BfX3NpZ24taW4ge1xuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHJxYS10ZWFsLCA1JSk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXJfX21haW4ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2Vpc2gpIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyMTcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCR3aGl0ZSwgJHJxYS10ZWFsLCAzMHB4LCAzMHB4LCA1cHgsIDMpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDMwKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlaXNoKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDE1Mik7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuICB9XG5cbiAgJi5maXhlZCB7XG4gICAgLm1haW5fX2xvZ28ge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDApO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTA2KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTIwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHVsLm1haW5fX25hdiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2Vpc2gpIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMC4xNWVtIDAgcmVtLWNhbGMoMjIpIDA7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNzAwcHgpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMC4xNWVtIDAgcmVtLWNhbGMoMjIpIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXJfX21haW4ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlaXNoKSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MDBweCkge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMzE1cHg7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgfVxufVxuLmZvb3Rlcl9fdG9wIHtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgLmZvb3Rlcl9fYnJhbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICBtYXJnaW46IDM2cHggMCAyMHB4IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMHB4O1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbjogMHB4IDAgMjBweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgfVxufVxuXG4uZm9vdGVyX19ib3R0b20ge1xuXG4gIHVsLmZvb3Rlcl9fbGlua3Mge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDoxMHB4O1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdWwuZm9vdGVyX19zb2NpYWwge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMCA4cHg7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAgIH1cbiAgICAgICAgJi50cnVzdHBpbG90LXN0YXIge1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6MjRweDtcbiAgICAgICAgICAgIGhlaWdodDoyNHB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgcG9seWdvbiB7XG4gICAgICAgICAgICAgICAgZmlsbDokcnFhLXRlYWw7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi54LWxvZ28ge1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6MjRweDtcbiAgICAgICAgICAgIGhlaWdodDoyNHB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgZmlsbDokd2hpdGU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgIGZpbGw6JHJxYS10ZWFsO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zaXRlQnkge1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52YXRNZXNzYWdlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgfVxufVxuXG5kaXYjZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcblx0XHRzZWxlY3QuZ29vZy10ZS1jb21ibyB7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdGJvcmRlcjogI2Q4ZDhkOCBzb2xpZCAxcHg7XG5cdFx0fVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAuZm9vdGVyX19ib3R0b20ge1xuICAgIC5mb290ZXJfX25hdiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICAgIHVsLmZvb3Rlcl9fbGlua3Mge1xuICAgICAgbWFyZ2luOiAwIDQwcHggMjBweCAwO1xuICAgICAgbGkge1xuICAgICAgICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICB1bC5mb290ZXJfX3NvY2lhbCB7XG4gICAgICBtYXJnaW46IDIwcHggMDtcbiAgICB9XG4gICAgLnZhdE1lc3NhZ2Uge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLmZvb3Rlcl9fdG9wIHtcbiAgICAuZm9vdGVyX19icmFuZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTYwcHg7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMzZweCAwIDU0cHggMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIG1hcmdpbjogNTBweCAwIDAgNDBweDtcbiAgICB9XG4gIH1cblxuICAuZm9vdGVyX19ib3R0b20ge1xuICAgIHVsLmZvb3Rlcl9fbGlua3Mge1xuICAgICAgbWFyZ2luOiAwIDYwcHggNDBweCAwO1xuICAgICAgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdWwuZm9vdGVyX19zb2NpYWwge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW46IDUwcHggMCAwIDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBCbG9jayBNYWluXG5cbi5ibG9jay01MC0tZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJsb2NrLTUwLS1zaG9ydCB7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBhZGRpbmc6IDAgMzBweDtcbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMHB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuYmxvY2tfX2Fycm93IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gIH1cbn1cblxuLmJsb2NrX19hcnJvdyB7XG4gIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IHNvbGlkIDJweCAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgYW5pbWF0aW9uOiBhcnJvd2JvYiAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxufVxuQGtleWZyYW1lcyBhcnJvd2JvYiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIH1cbn1cblxuLmJsb2NrLWV4dGVuZCB7XG4gIGhlaWdodDogOTZweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiBcbiAgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIFxuICAgIG1hcmdpbjogMCByZW0tY2FsYygyMCkgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgfVxuICBpLmZhLWFuZ2xlLXJpZ2h0IHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgZmxvYXQ6cmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgYW5pbWF0aW9uOiBhcnJvd3NsaWRlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwMDBweDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMjBweDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICB9XG59XG4uYmxvY2stZXh0ZW5kLS10ZWFsIHtcbiAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgfVxufVxuLmJsb2NrLWV4dGVuZC0tcGluayB7XG4gIGJhY2tncm91bmQ6ICRycWEtcGluaztcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICRycWEtcGluaztcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLXBpbms7XG4gIH1cbiAgaDMge1xuICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJHJxYS1waW5rO1xuICB9XG59XG4uYmxvY2stZXh0ZW5kLS1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiAkcnFhLW9yYW5nZTtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICB9XG59XG4uYmxvY2stZXh0ZW5kLS1ncmVlbiB7XG4gIGJhY2tncm91bmQ6ICRycWEtZ3JlZW47XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLWdyZWVuO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtZ3JlZW47XG4gIH1cbn1cbi5ibG9jay1leHRlbmQtLWxlZnQge1xuICAmOmJlZm9yZSB7XG4gICAgbGVmdDogLTIwMDBweDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICByaWdodDogLTIwcHg7XG4gIH1cbn1cbi5ibG9jay1leHRlbmQtLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAmOmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0yMDAwcHg7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgbGVmdDogLTIwcHg7XG4gIH1cbn1cblxuLmJsb2NrLTUwLS1ibHVlIHtcbiAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xufVxuLmJsb2NrLTUwLS10ZWFsIHtcbiAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xufVxuLmJsb2NrLTUwLS1ncmV5IHtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG59XG5cbi5ibG9jay01MCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMCk7XG4gIH1cbn1cblxuLmJsb2NrcyB7XG4gIC5ibG9jayB7XG4gICAgLm5ld3MtbGluayB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJsb2NrLWJvcmRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLyomOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9Ki9cbiAgICAgIC5ibG9ja19faW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEyM3B4O1xuICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB0b3A6IC0zMHB4O1xuICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tb3JhbmdlIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS1vcmFuZ2U7XG4gICAgICB9XG4gICAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICAgIH1cbiAgICAgIC5ibG9ja19fbW9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgfVxuICAgIH1cbiAgICAuYmxvY2stYm9yZGVyLS10ZXh0LmJsb2NrLWJvcmRlci0tcGluayB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtcGluaztcbiAgICAgIH1cbiAgICAgIC5qdF9qb2JfcG9zaXRpb24sXG4gICAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG4gICAgICAuanRfam9iX2xvY2F0aW9uLFxuICAgICAgLmp0X2pvYl9jb21wYW55IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgICAuanRfYWxsam9icyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgICB9XG4gICAgICAuYmxvY2tfX21vcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLXBpbms7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9jay1ib3JkZXItLXRleHQuYmxvY2stYm9yZGVyLS10ZWFsIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgICAgaDIge1xuICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgICAgLmJsb2NrX19tb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stYm9yZGVyLS1mZWF0dXJlIHtcbiAgaGVpZ2h0OiAxMjNweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYmxvY2tfX21vcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMHB4O1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQ6IGRhcmtlbigkcnFhLWJsdWUsIDEwJSk7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgLm1vcmVfX3dyYXAge1xuICAgIHdpZHRoOiAxNDVweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLm1vcmVfX3RleHQge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgd2lkdGg6IDEwOXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMzZweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgfVxuICAubW9yZV9fcGx1cyB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuICAgIGhlaWdodDogMzhweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB3aWR0aDogMTQ1cHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICAubW9yZV9fdGV4dCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAubW9yZV9fcGx1cyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxuICB9XG59XG4ud2hhdGlucHV0LXR5cGVzLXRvdWNoIC5ibG9ja19fbW9yZTpob3ZlciB7XG4gIHdpZHRoOiAzNnB4O1xufVxuLmJsb2NrLWxpc3Q6aG92ZXIgLmJsb2NrX19tb3JlLFxuLmJvb2tsZXQtbGlzdDpob3ZlciAuYmxvY2tfX21vcmUge1xuICBjb2xvcjogJHdoaXRlO1xuICB3aWR0aDogMTQ1cHg7XG4gIHJpZ2h0OiAwcHg7XG4gIC5tb3JlX190ZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5tb3JlX19wbHVzIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cbn1cbi5ibG9ja19fbW9yZS0tbGlzdCB7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgLm1vcmVfX3dyYXAge1xuICAgIHdpZHRoOiAxNDFweDtcbiAgfVxuICAubW9yZV9fdGV4dCB7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICB9XG4gIC5tb3JlX19wbHVzIHtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgd2lkdGg6IDE0MXB4O1xuICB9XG59XG5cbi5ibG9ja19fbW9yZS0tY29udGVudCB7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC00cHg7XG4gIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgJjpob3ZlciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJsb2NrLWJvcmRlci0tdGV4dCB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjAgMCAyMCk7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIC8vZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAvL2ZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNmVtO1xuICB9XG4gIGg0IHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gIH1cbiAgLmJsb2NrX19tb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uYmxvY2tzIC5ibG9jayB7XG4gIC5ibG9jay1leHRlbmQge1xuICAgICYuYmxvY2stZXh0ZW5kLS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCA4MCA0MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgXG4gIC5ibG9jay1ib3JkZXItLXR3aXR0ZXIsIC5ibG9jay1ib3JkZXItLWpvYnMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDIwMDBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICB9XG4gICAgXG4gICAgJi5ibG9jay1ib3JkZXItLXRleHQge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCA0MCA0MCk7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTIwcHgpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCA0MCA0MCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDQwIDgwIDQwKTtcbiAgICAgIH1cbiAgICAgXG4gICAgfVxuICB9XG59XG5cbi5ibG9jay1ib3JkZXItLXN0YWNrIHtcbiAgbWFyZ2luLXRvcDogNDVweDtcbn1cblxuLy8gVHdpdHRlclxuXG4uYmxvY2tfX3R3aXR0ZXIge1xuICBoNCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICAudHdpdHRlcl9fbmFtZSB7XG4gICAgY29sb3I6ICRycWEtdGVhbDtcbiAgfVxuICAudHdpdHRlcl9fdHdlZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2UtbWFpbi0tbGlzdCB7XG4gIHBhZGRpbmc6IDM1cHggMCAwIDA7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg3MCAwIDQwIDApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDcwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XG4gIH1cbiAgJi5zbWFsbFRpdGxlcyB7XG4gICAgLmNvbHVtbnMge1xuICAgICAgLmJsb2NrLWxpc3Qge1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICAuYmxvY2stbGlzdF9faW5mbyB7XG4gICAgICAgICAgLy9wYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAucm93IHtcbiAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLy8gRGlmZmVyZW50IHNpemUgZ3JpZHNcblxuICAud2lkdGgtMyB7XG4gICAgLmNvbHVtbnMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAuYmxvY2stbGlzdCB7XG4gICAgICAgICAgaGVpZ2h0OiAzNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53aWR0aC01IHtcbiAgICAuY29sdW1ucyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIC5ibG9jay1saXN0IHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoOCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgICAgICAuYmxvY2stbGlzdF9faW5mbyB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoOSk7XG4gICAgICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJvb2tsZXQgcGFnZSBzcGVjaWZpY1xuLmJvb2tsZXQtbGlzdC0tYm9va2xldHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC5ib29rbGV0LWxpc3Qge1xuICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWQpIHtcbiAgICAgIGZsZXgtYmFzaXM6IDQ5JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleC1iYXNpczogMzIlO1xuICAgIH1cbiAgICAvL2JhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDElO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgpO1xuICAgIGEuYm9va2xldC1saXN0X19MaW5rIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmJvb2tsZXQtbGlzdF9faW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjAwKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIC8vfVxuICAgIH1cbiAgICAuYm9va2xldC1saXN0X19pbmZvIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE2IDQ0IDE2IDI0KTtcbiAgICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICB9XG4gICAgICAuZmEtYW5nbGUtcmlnaHQge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgdG9wOiByZW0tY2FsYygxNik7XG4gICAgICB9XG4gICAgfVxuICAgIC5ib29rbGV0LWxpc3RfX3ByaWNlIHtcbiAgICAgIC8vd2lkdGg6MTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNSAxMCk7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vL09uIDIgY29sdW1uIGdyaWRcbi5sYXJnZS05IC5wYWdlLW1haW4tLWxpc3Qge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLndpZHRoLTMge1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTYpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTE2KTtcbiAgICAuY29sdW1ucyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5ibG9jay1saXN0IHtcbiAgICAgICAgICBoZWlnaHQ6IDI5MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53aWR0aC00IHtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTMwKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0zMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTYpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTYpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtOCk7XG4gICAgfVxuICAgIC5jb2x1bW5zIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLmJsb2NrLWxpc3Qge1xuICAgICAgICAgIGhlaWdodDogMjEwcHg7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg4KTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgICAgIC5ibG9jay1saXN0X19pbmZvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZmEtYW5nbGUtcmlnaHQge1xuICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndpZHRoLTUge1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMzApO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xNik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0xNik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtOCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC04KTtcbiAgICB9XG4gICAgLmNvbHVtbnMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAuYmxvY2stbGlzdCB7XG4gICAgICAgICAgaGVpZ2h0OiAxODBweDtcblxuICAgICAgICAgIC5ibG9jay1saXN0X19pbmZvIHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5ibG9jay1saXN0IHtcbiAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMjhweCk7XG4gIGhlaWdodDogMzEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzYpO1xuICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTQpO1xuICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE0KTtcblxuICBhLmJsb2NrLWxpc3RfX0xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAuYmxvY2stbGlzdF9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuXG4gIC5ibG9jay1saXN0X19pbmZvIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNiA0NCAxNiAyNCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzO1xuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cbiAgICAuZmEtYW5nbGUtcmlnaHQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgdG9wOiByZW0tY2FsYygxNik7XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIC5ibG9jay1saXN0X19pbmZvIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuICB9XG4gIC5ibG9jay1saXN0X19wcmljZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTRiMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA3cHggN3B4IDRweCA3cHg7XG4gIH1cbn1cblxuLy8gRmVhdHVyZWRcbi5ob21lLWZlYXR1cmVkIHtcbiAgLmJsb2NrcyB7XG4gICAgLmJsb2NrIHtcbiAgICAgICY6bnRoLWNoaWxkKDRuICsgMSkge1xuICAgICAgICAuYmxvY2stYm9yZGVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLW9yYW5nZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJsb2NrX19pbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYmxvY2tfX21vcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRycWEtb3JhbmdlLCAxMCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgIC5ibG9jay1ib3JkZXIge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJsb2NrX19pbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJsb2NrX19tb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcnFhLXRlYWwsIDEwJSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCg0biArIDMpIHtcbiAgICAgICAgLmJsb2NrLWJvcmRlciB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHJxYS1waW5rO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYmxvY2tfX2luZm8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHJxYS1waW5rO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYmxvY2tfX21vcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRycWEtcGluaywgMTAlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLmJsb2NrLWJvcmRlci0tZmVhdHVyZSB7XG4gICAgaGVpZ2h0OiAzMThweDtcbiAgfVxuICAuYmxvY2stNTAge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYmxvY2stNTAtLWVtcHR5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5ibG9ja3Mge1xuICAgIC5ibG9jayB7XG4gICAgICAubmV3cy1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ibG9ja19fcGFkZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIH1cbiAgICAgIC5ibG9jay1leHRlbmQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmxvY2stNTAtLWJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICB9XG4gICAgICAuYmxvY2stNTAtLXRlYWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICB9XG4gICAgICAuYmxvY2stNTAtLWdyZXkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgIH1cbiAgICAgIC5ibG9jay01MC0tc2hvcnQge1xuICAgICAgICBoZWlnaHQ6IDExNnB4O1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMTZweDtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrX19hcnJvdyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ibG9ja19fYXJyb3cge1xuICAgICAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICAgICAgd2lkdGg6IDU4cHg7XG4gICAgICAgIGhlaWdodDogNThweDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmxvY2stYm9yZGVyLS10ZXh0IHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCAwIDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLmJsb2NrcyB7XG4gICAgLmJsb2NrIHtcbiAgICAgIC5ibG9ja19fcGFkZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICAuYmxvY2stZXh0ZW5kIHtcbiAgIFxuICAgICAgIFxuICAgICAgICBoMiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmU7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDk2cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIGkuZmEtYW5nbGUtcmlnaHQge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgIGFuaW1hdGlvbjogYXJyb3dzbGlkZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2NrLWV4dGVuZC0tcmlnaHQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5ibG9jay1ib3JkZXIge1xuICAgICAgICAuYmxvY2tfX2luZm8ge1xuICAgICAgICAgIHdpZHRoOiAzOTBweDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI2cHg7XG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjNlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ibG9ja19fbW9yZSB7XG4gICAgICAgIHJpZ2h0OiAxMTBweDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tb3JlX193cmFwIHtcbiAgICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgICAuYmxvY2tfX21vcmUtLWxpc3QsXG4gICAgICAuYmxvY2tfX21vcmUtLWNvbnRlbnQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAuYmxvY2tzIHtcbiAgICAuYmxvY2sge1xuICAgICAgLmJsb2NrLWV4dGVuZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICAuYmxvY2stYm9yZGVyLS10ZXh0IHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCAwIDApO1xuICAgICAgfVxuICAgIFxuICAgIH1cbiAgfVxufSIsIi8vIEZvcm0gQnV0dG9uc1xuXG4uZm9ybV9fYnV0dG9uLCBmb3JtW25hbWU9XCJnbV9mb3JtXCJdIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggJHdoaXRlO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMCAxNSk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgaSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAvLyBhbmltYXRpb246IGFycm93c2xpZGUgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbiAgXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtZGFyay1ibHVlO1xuICB9XG59XG5cbmZvcm1bbmFtZT1cImdtX2Zvcm1cIl0ge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAvL2hlaWdodDogNDBweDtcbiAgfVxufVxuXG4vLyBCbG9jayBCdXR0b25zXG5cbmEuYmxvY2stYnV0dG9uLCBidXR0b24uYmxvY2stYnV0dG9uLCBpbnB1dC5ibG9jay1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS1ibHVlO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbiAgaSwgZW0ge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICBhbmltYXRpb246IGFycm93c2xpZGUgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbiAgQGtleWZyYW1lcyBhcnJvd3NsaWRlIHtcbiAgICAwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfVxuICAgIDUwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOyB9XG4gICAgMTAwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgfVxufVxuXG5cbmEuYmxvY2stYnV0dG9uLS1jb250ZW50LCBidXR0b24uYmxvY2stYnV0dG9uLS1jb250ZW50LCBpbnB1dC5ibG9jay1idXR0b24tLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuYS5ibG9jay1idXR0b24tLWNvbnRlbnQge1xuICBjbGVhcjpib3RoO1xufVxuYS5ibG9jay1idXR0b24tLWFycm93LCBidXR0b24uYmxvY2stYnV0dG9uLS1hcnJvdywgaW5wdXQuYmxvY2stYnV0dG9uLS1hcnJvdyB7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGksIGVtIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgYW5pbWF0aW9uOiBhcnJvd2JvYnNtYWxsIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG4gIEBrZXlmcmFtZXMgYXJyb3dib2JzbWFsbCB7XG4gICAgMCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7IH1cbiAgICAxMDAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTt9XG4gIH1cbn1cbmEuYmxvY2stYnV0dG9uLS10b3AsIGJ1dHRvbi5ibG9jay1idXR0b24tLXRvcCwgaW5wdXQuYmxvY2stYnV0dG9uLS10b3Age1xuICBmb250LXNpemU6IDEuOGVtO1xuICBpLCBlbSB7XG4gICAgYW5pbWF0aW9uOiBhcnJvd2JvYnVwIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG4gIEBrZXlmcmFtZXMgYXJyb3dib2J1cCB7XG4gICAgMCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOyB9XG4gICAgMTAwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7fVxuICB9XG59XG5cbmEuYmxvY2stYnV0dG9uLS1kYXJrIHtcbiAgZmxvYXQ6cmlnaHQ7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGhlaWdodDogMzhweDtcbiAgd2lkdGg6IDIwNXB4O1xuICBsaW5lLWhlaWdodDogMzhweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6MCAwIDAgNDBweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgLmJsb2NrLWJ1dHRvbl9fcGx1cyB7XG4gICAgLy8gYmFja2dyb3VuZDogZGFya2VuKCRycWEtYmx1ZSwgMTAlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICAgIH1cbiAgfVxuICAmOmhvdmVyIHtcbiAgICAuYmxvY2stYnV0dG9uX19wbHVzIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kZWxldGUsIC5lZGl0IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gICY6YmVmb3JlIHtcbiAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJ1xcZjFmOCc7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgY29sb3I6JHJxYS1ibHVlO1xuICB9XG59XG4uZWRpdCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxmMDQwJztcbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICBhLmJsb2NrLWJ1dHRvbi0tY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDVweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIGEuYmxvY2stYnV0dG9uLS1kYXJrIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCJzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xufVxuLnJlcXVpcmVkIHtcbiAgY29sb3I6ICRycWEtdGVhbDtcbn1cbi5vcmRlclN1bW1hcnksIGZvcm0ge1xuICBzZWxlY3QsIFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAjMDA0OTkwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YjliOWI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDE2O1xuICAgIG1hcmdpbjogIDAgMCAwLjVlbSAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG4gIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICBpbnB1dCNpZF9xdWFudGl0eSwgaW5wdXQucXVhbnRpdHkge1xuICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cbiAgI2lkX2NvbmNlc3Npb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgY29sb3I6ICM1ODU5NWI7XG4gICAgZGlzcGxheTppbmxpbmU7XG4gICAgY2xlYXI6cmlnaHQ7XG4gIH1cbiAgdWwge1xuICAgIHBhZGRpbmc6MHB4O1xuICAgIG1hcmdpbjowcHg7XG4gICAgbGkge1xuICAgICAgcGFkZGluZzowcHg7XG4gICAgICBtYXJnaW46MHB4O1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLm9wdGlvbnNMaXN0IHtcbiAgICB1bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgdG9wOiAxOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJpY2VURCB7XG4gICAgbWluLXdpZHRoOiAxMzBweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICB0aCB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZTRlNGU0O1xuICAgIGJvcmRlci1ib3R0b206ICNmZmYgc29saWQgNHB4O1xuICB9XG4gIHRyLmJhc2tldF9pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIGJvcmRlci1ib3R0b206ICNmZmYgc29saWQgNHB4O1xuICAgIG1heC13aWR0aDogMzc4cHg7XG4gICAgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMTBweCAxMHB4IDBweCAxMHB4O1xuICAgICAgJi5wcmljZVREIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHRyLm1lbWJlcnNoaXBfcmVuZXdhbF9kdWVfaGVhZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZWFlOTtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIubWVtYmVyc2hpcF9yZW5ld2FsX2R1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZWFlOTtcbiAgfVxuICB0Ym9keSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbmEuZW1wdHkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY29udGVudCBmb3JtIHtcbiAgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Zm9jdXMsIHNlbGVjdDpmb2N1cywgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YjtcbiAgfVxuICAuZm9ybU1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgY29sb3I6Izk5OTtcbiAgfVxuICBhLnBvc3Rjb2RlX2FueXdoZXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZm9ybVRhYmxlIHtcbiAgICB0ciB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nOjBweDtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbmRpdi5yZXF1aXJlZF9ub3RpY2UsIGRpdi52YXRfbm90aWNlIHtcbiAgbWFyZ2luOiAxZW0gYXV0bztcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5hcmVhLWZvcm0ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDAgMDtcblxuICAuc2VsZWN0LXdyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgY29udGVudDogJ1xcZjEwNyc7XG4gICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB6LWluZGV4OiAzMjtcbiAgICAgIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRycWEtYmx1ZTtcbiAgICAgIGNvbG9yOiAjOWI5YjliO1xuICAgICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgei1pbmRleDogMTY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5maWx0ZXItZm9ybSwgLmNvbnRhY3QtZm9ybSB7XG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgY29sb3I6ICM1ODU5NWI7XG4gIH1cbiAgLnNlbGVjdC13cmFwIHtcbiAgICAvL3BhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNik7XG4gICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjYpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNik7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgY29udGVudDogJ1xcZjEwNyc7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IDMyO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWxlY3Qtd3JhcC0tbGFyZ2Uge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICB9XG4gIH1cbiAgc2VsZWN0LCBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICM5YjliOWI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMTY7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5zdWJtaXQtd3JhcCB7XG4gICAgcGFkZGluZzogNTBweCAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtX19idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAvL2hlaWdodDogMzhweDtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHotaW5kZXg6IDY0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRycWEtZGFyay1ibHVlO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdC1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAuYWRkcmVzcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgIC5mYSB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRycWEtZGFyay1ibHVlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIGEge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcnFhLWRhcmstYmx1ZTtcbiAgICB9XG4gIH1cbn1cbiNpZF9vdGhlcl9yZXF1aXJlbWVudHMsICNpZF9kaWV0YXJ5X3JlcXVpcmVtZW50cywgI2lkX3JlbGV2YW50X2V4cGVyaWVuY2Uge1xuICAgIGhlaWdodDogOTBweDtcbn1cbi5jb25mZXJlbmNlLXByb2R1Y3Qge1xuICBwYWRkaW5nOiAwcHggMCAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJHJxYS10ZWFsO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgZm9ybSB7XG4gICAgcGFkZGluZzoyMHB4IDAgMCAwO1xuICAgIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICBhLmxpc3QtY29sdW1uc19fbGluayB7XG4gICAgICBtYXJnaW46IDEwcHggMCAyMHB4IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDBhNGIxO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiA0cHggMzJweCA0cHggMTBweDtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIH1cbiAgICAgIC5saXN0LWNvbHVtbnNfX3BsdXMge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDonKyc7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6NHB4O1xuICAgICAgICAgIHJpZ2h0OjZweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBmb250LXNpemU6IDEuN2VtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLW91dDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBoc2xhKDAsMCUsMTAwJSwuNSk7XG4gICAgICAgICAgLmxpc3QtY29sdW1uc19fcGx1cyB7XG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jbGlja2VkIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAubGlzdC1jb2x1bW5zX19wbHVzIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3QtY29sdW1uc19fcGx1czphZnRlciB7XG4gICAgICAgICAgY29udGVudDonLSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgfVxuICAuY29uZmVyZW5jZS1wcm9kdWN0X19kZXRhaWxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjdzIGVhc2Utb3V0O1xuICAgIGhlaWdodDphdXRvO1xuICAgIG9wYWNpdHk6MTtcbiAgICAmLmhpZGRlbiB7XG4gICAgICBoZWlnaHQ6MHB4O1xuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAuYXJlYS1mb3JtIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiA3MHB4IDAgMCAxNXB4O1xuICB9XG4gIC5vcmRlclN1bW1hcnkge1xuICAgIHRyLmJhc2tldF9pdGVtIHtcbiAgICAgIGRpc3BsYXk6dGFibGUtcm93O1xuICAgICAgdGQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nOjEwcHg7XG4gICAgICAgICYucHJpY2VURCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdHIuc2hvdy1mb3ItbWVkaXVtLXVwIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICAgIH1cbiAgICAuc2hvdy1zbWFsbCB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gIC5vcHRpb25zTGlzdCB7XG4gICAgJi5kb3VibGVMaXN0e1xuICAgICAgdWwge1xuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIHdpZHRoOjQ4JTtcbiAgICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb25mZXJlbmNlLXByb2R1Y3Qge1xuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTUwcHg7XG4gICAgfVxuICAgIGEubGlzdC1jb2x1bW5zX19saW5rIHtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgdG9wOjBweDtcbiAgICAgIHJpZ2h0OjBweDtcbiAgICAgIG1hcmdpbjogLTRweCAwIDAgMjBweDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAuYXJlYS1mb3JtIHtcbiAgICB3aWR0aDogMzgwcHg7XG4gICAgbWFyZ2luOiA3MHB4IDAgMCAxNXB4O1xuICB9XG59XG4iLCIuaG9tZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYyMHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGhlaWdodDogNTIwcHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGhlaWdodDogODIwcHg7XG4gIH1cblxuICAuaG9tZS1iYW5uZXJfX3NsaWRlIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA2MjBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY3VydmVzLmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtaW4taGVpZ2h0OiA1MjBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtaW4taGVpZ2h0OiA4MjBweDtcbiAgICB9XG4gICAgaDEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxNTApO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0NTApO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDYwMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDcpO1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDE4MCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNjAwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMzI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAzMjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgei1pbmRleDogMzI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC5ob21lLWJhbm5lcl9fY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBoZWlnaHQ6IDYyMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiA1MjBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA4MjBweDtcbiAgICAgIH1cblxuICAgICAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MDApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDEwMCk7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDUwMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhvbWUtYmFubmVyX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDIwIDMwIDIwKTtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMzAgNjAgMzApO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDAwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDAgNDAgNzAgNDApO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNTAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2stYnV0dG9uLS1iYW5uZXIge1xuICAgICAgY29sb3I6ICRycWEtb3JhbmdlO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5uYXYuc2xpZGUtZG90cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ob21lLWZlYXR1cmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyMDtcbiAgcGFkZGluZzogNDBweCAyMHB4IDAgMjBweDtcbiAgICBcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNDAgMzAgNDAgMzApO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgLmJsb2NrcyB7XG4gICAgICAuY29sdW1ucyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiBcbiAgLmhvbWUtZmVhdHVyZWRfX2NvbnRlbnQge1xuICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAuYmxvY2tzIHtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmhvbWUtZmVhdHVyZWRfX2NvbHVtbnMge1xuICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaG9tZS1mZWF0dXJlZF9fYmxvY2sge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAuaG9tZS1mZWF0dXJlZF9faW1hZ2Uge1xuICAgICAgICAgICBcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ob21lLWZlYXR1cmVkX19pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMjgwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuICAuaG9tZS1mZWF0dXJlZF9faW5mbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDUwIDIwIDIwKTtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgIH1cblxuICAgIHAuYmxvY2tfX2ZlYXR1cmVkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG4gICAgLmZhLWFuZ2xlLXJpZ2h0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICB0b3A6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbiAgLmhvbWUtZmVhdHVyZWRfX2xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG59XG5cbi5ob21lLWFib3V0IHtcbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgIH1cbiAgfVxuICBvdmVyZmxvdzogYXV0bztcbiAgcCxcbiAgdWwsXG4gIG9sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICB9XG4gIH1cbn1cblxuLmhvbWUtZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDEwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCAyMCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwIDMwKTtcbiAgfVxuICBoMiB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzcpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM3KTtcbiAgICB9XG4gIH1cbiAgc3BhbiB7XG4gICAgLy9jb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xuICB9XG4gIGZvcm0ge1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIGlucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMjIpO1xuICAgIH1cbiAgICBidXR0b24uZm9ybV9fYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxNiAxMCAxNik7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLWRhcmstYmx1ZTtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJHJxYS1kYXJrLWJsdWU7XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxOCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ob21lLWJvdHRvbSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vIFN0eWxpbmcgZm9yIEpvYiBmZWVkXG4uanRfam9iX3Bvc2l0aW9uIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZm9udC1zaXplOiAxLjk0ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuLmp0X2pvYl9sb2NhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIkxvY2F0aW9uOiBcIjtcbn1cbi5qdF9qb2JfY29tcGFueTpiZWZvcmUge1xuICBjb250ZW50OiBcIkNvbXBhbnk6IFwiO1xufVxuLmp0X2FsbGpvYnMge1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gIG5hdi5zbGlkZS1kb3RzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IC00MHB4IGF1dG8gMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDMyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgLnNsaWRlLWRvdHNfX2RvdCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICAgIC5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLndyYXBwZXItLWhvbWUge1xuICAuY29udGVudF9fZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbiIsIi5rZXktZmFjdHMge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg3MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzApO1xuICB9XG59XG5cbi5hYm91dC1zdGF0cyB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIGgyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAyLjZlbTtcbiAgfVxuICBwIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG4gIC5zdGF0cyB7XG4gICAgLypcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICAuc3RhdHNfX2xhcmdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gICAgfVxuICAgIC5zdGF0c19fc21hbGwge1xuICAgICAgZm9udC1zaXplOiAzOHB4O1xuICAgIH1cbiAgICAuc3RhdHNfX3N0YWNrIHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG4gICAgKi9cbiAgICBwYWRkaW5nLXRvcDogNDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLmFib3V0LW1vcmUge1xuICBtYXJnaW46IDcwcHggMDtcbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLmFib3V0LXN0YXRzIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgLnN0YXRzX19sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDEzMHB4O1xuICAgIH1cbiAgICAuc3RhdHNfX3NtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgICB9XG4gICAgLnN0YXRzX19zdGFjayB7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBmb250LXNpemU6IDM3cHg7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgLmFib3V0LXN0YXRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBoMiB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gICAgLnN0YXRzIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgLnN0YXRzX19sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTMwcHg7XG4gICAgICB9XG4gICAgICAuc3RhdHNfX3NtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiA1NnB4O1xuICAgICAgfVxuICAgICAgLnN0YXRzX19zdGFjayB7XG4gICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAzN3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmxpc3QtY29sdW1ucy1pbnRybyB7XG4gIGgyLCBoMywgaDQge1xuICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuLmxpc3QtY29sdW1ucy1pbnRyby0tdGVhbCB7XG4gIGgyLCBoMywgaDQge1xuICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRycWEtdGVhbDtcbiAgfVxufVxuLmxpc3QtY29sdW1ucy1oZWFkZXIge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJxYS10ZWFsO1xuICB9XG4gIGgyLCBoMywgaDQge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgaDMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxudWwubGlzdC1jb2x1bW5zIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJxYS10ZWFsO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIC5saXN0LWNvbHVtbnNfX21vYmlsZSB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICBhLmxpc3QtY29sdW1uc19fbGluayB7XG4gICAgICBtYXJnaW46IDIwcHggMCAwIDIwcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAubGlzdC1jb2x1bW5zX19wbHVzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG4gICAgICAgIC5saXN0LWNvbHVtbnNfX3BsdXMge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gICYubGlzdC1jb2x1bW5zX19jb25zdWx0YW50cyB7XG4gICAgICBsaS5saXN0LWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAxMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDIwKTtcbiAgICAgICAgfVxuICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygwKTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3QtY29sdW1uc19fbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgcGFkZGluZzogM3B4IDhweCA1cHggOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjFlbTtcbiAgICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmbG9hdDpyaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjAgMCAyMCAwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gIH1cbn1cbnVsLmxpc3QtY29sdW1ucy0tdGVhbCB7XG4gIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgbGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJHJxYS10ZWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICBhLmxpc3QtY29sdW1uc19fbGluayB7XG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDQge1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICB9XG4gICAgLmxpc3RfX2RhdGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIH1cbiAgfVxufVxudWwubGlzdC1jb2x1bW5zLS1maWx0ZXIge1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAkcnFhLWRhcmstYmx1ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogMDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgfVxuICB9XG4gIGEubGlzdF9fbW9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgIH1cbiAgfVxufVxuXG5cbi5saXN0LXBhZ2luYXRpb24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGEubGlzdC1wYWdpbmF0aW9uX19zdGVwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgfVxuICB9XG4gIHVsLmxpc3QtcGFnaW5hdGlvbl9fbnVtYmVycyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMnB4IDEwcHg7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICRycWEtYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5zZWxlY3RlZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAkcnFhLWJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5iYWNrLXRvLXRvcCB7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRycWEtYmx1ZTtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQ7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgb3BhY2l0eTogMC44O1xuXG4gICAgaSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gIC5saXN0LWNvbHVtbnMtaGVhZGVyIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAubGlzdC1jb2x1bW5zX19tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIiNzdWJuYXYsXG4ubWVudSB7XG4gID4gbGkge1xuICAgICYuY3VycmVudCxcbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgID4gYSB7XG4gICAgICAgIC8vZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAvL2Rpc3BsYXk6bm9uZTtcbn1cblxuLm1vYmlsZSB7XG4gIHotaW5kZXg6IDI1NjtcbiAgYmFja2dyb3VuZDogJHJxYS1kYXJrLWJsdWU7XG4gIC5tb2JpbGVfX3NlYXJjaCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgdG9wOiAxMnB4O1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgYS5tb2JpbGVfX3NpZ24taW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICAgIHBhZGRpbmc6IDAgMThweDtcbiAgICBtYXJnaW46IDEycHg7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcnFhLXRlYWwsIDUlKTtcbiAgICB9XG4gIH1cbiAgLm1vYmlsZV9fY2FydCBzZWxlY3Qge1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIHNwYW4uY2FydF9fYW1vdW50IHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgfVxuICB9XG4gIC5tb2JpbGVfX25hdi13cmFwIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJxYS1ibHVlO1xuICAgIHBhZGRpbmc6IDRweCAwIDI0cHggMDtcbiAgfVxuICB1bC5tb2JpbGVfX21haW4tbmF2LFxuICB1bC5tb2JpbGVfX3RvcC1uYXYge1xuICAgIGxpIHtcbiAgICAgICYuaXMtc3VibWVudS1wYXJlbnQtaXRlbSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG5cbiAgICAgIC5sb2dpbl9yZXF1aXJlZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuY3VycmVudCA+IGEge1xuICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWRhcmstYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudWwubWFpbl9fbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2Vpc2gpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA2NDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICAgIFxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgOXB4IDAgOXB4O1xuICAgICAgICBwYWRkaW5nOiAwLjc1ZW0gMCByZW0tY2FsYyg0MikgMDtcblxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICggbWF4LWhlaWdodDogNzAwcHggKXtcbiAgICAgICAgIHBhZGRpbmc6IDAuNzVlbSAwIHJlbS1jYWxjKDIyKSAwO1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDYpO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDEsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLCAxLCAxKTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMXM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXM7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtaW4taGVpZ2h0OiA3MDBweCApe1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygyNik7XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtaW4taGVpZ2h0OiA3MDBweCApe1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgfVxuICAgICAgICAucm93IHtcbiAgICAgICAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMSk7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtaW4taGVpZ2h0OiA4MDBweCApe1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4yZW07XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMmVtIDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIC8vZGlzcGxheTpibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLm1lZ2EtbWVudSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tZWRpdW0tOSB7XG4gICAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgIGNvbHVtbnM6IDM7XG4gICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm1lZGl1bS02IHtcbiAgICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gIFxuICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMCk7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoIG1pbi1oZWlnaHQ6IDgwMHB4ICl7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtaW4taGVpZ2h0OiA5MDBweCApe1xuICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWVnYS1tZW51X19jdGEge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMTIpO1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtaW4taGVpZ2h0OiA4MDBweCApe1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJsb2NrLWJ1dHRvbiB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDMwIDEwIDIwKTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKCBtYXgtaGVpZ2h0OiA2MDBweCApe1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLyp1bC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS1kYXJrLWJsdWU7XG4gICAgICAgIG1pbi13aWR0aDogMjE4cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRycWEtYmx1ZTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMC41ZW0gMDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwLjVlbSAwO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgc3Bhbi5sb2dpbl9yZXF1aXJlZCB7XG4gICAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0qL1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBsaS5jdXJyZW50IHtcbiAgICAgIGEge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgbGkge1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICBtYXJnaW46IDAgMTBweCAxMnB4IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIucHJvZHVjdEltYWdlIHtcbiAgZGlzcGxheTpub25lO1xufVxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgLnByb2R1Y3RJbWFnZSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB3aWR0aDoyMDBweDtcbiAgICBoZWlnaHQ6MjAwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICBmbG9hdDpyaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4uc2lkZWJhcl9fbWVzc2FnZSB7XG4gIGNvbG9yOiRycWEtcmVkO1xuICBkaXNwbGF5Om5vbmU7XG4gICYuc2hvdy1tZSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxufVxuLmJ1dHRvbi0tYm9vay5oaWRlLW1lIHtcbiAgZGlzcGxheTpub25lO1xufVxuIiwiXG4uY29udGVudCB7XG4gIC5jb250ZW50X19ib3JkZXIge1xuICAgIC5yZWdSb2FkbWFwIHtcbiAgICAgIGgyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS1kYXJrLWJsdWU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDYwcHggMTJweCAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgbWluLWhlaWdodDogNTBweDtcbiAgICAgICAgZW0ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDowcHg7XG4gICAgICAgICAgdG9wOjBweDtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAvKiBWZXJ0aWNhbCBsaW5lICovXG4gICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgIHRvcDogMzAlO1xuICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBob3Jpem9udGFsIGxpbmUgKi9cbiAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgbGVmdDogMzAlO1xuICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAgICAgO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWFwU3RhZ2Uge1xuICAgICAgICB1bC5tYXBMaXN0cyB7XG4gICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgIGNsZWFyOmJvdGg7XG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOjFweCAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JG1lZGl1bS1ncmF5O1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbi5ibG9jay1idXR0b24ge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWRhcmstYmx1ZTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OlwiXFxmMDYzXCI7XG4gICAgICAgICAgY29sb3I6ICRycWEtZGFyay1ibHVlO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAzZW0vMSBGb250QXdlc29tZTtcbiAgICAgICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIH1cbiAgICAgICAgJi5vcGVuU3RhZ2Uge1xuICAgICAgICAgIGVte1xuICAgICAgICAgICAgJjpiZWZvcmV7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuICAgICAgICAgICAgJjphZnRlcnsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1hcENvbnRlbnQge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAxZW0gMHB4OztcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmc6IDBweCAxZW0gMHB4IDBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubWVtYmVyU2VhcmNoIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICAgICAgbWluLWhlaWdodDogNzZweDtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDgwcHggMTJweCAxMHB4O1xuICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZW0ge1xuICAgICAgICAgICAgICB3aWR0aDogNzZweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA3NnB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLWRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogMzUlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDM1JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1hcFN0YWdlOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm1hcENvbnRlbnQge1xuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICAgICAgfVxuICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBjb2xvcjokcnFhLWJsdWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAuY29udGVudCB7XG4gICAgLmNvbnRlbnRfX2JvcmRlciB7XG4gICAgICAucmVnUm9hZG1hcCAubWFwU3RhZ2Uge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsLm1hcExpc3RzIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgIHdpZHRoOjQ5JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjElO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWFwQ29udGVudCAucm93IHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS43ZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS40ZW07XG4gICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBDb29raWViYXIgKi9cbiNjb29raWUtYmFyIHtcbiAgYmFja2dyb3VuZDogIzI5MjkyOTtcbiAgaGVpZ2h0OmF1dG87XG4gIGxpbmUtaGVpZ2h0OjI0cHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgcGFkZGluZzoxMHB4O1xuICB6LWluZGV4OiA5OTk5O1xuXHRib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsMCwwLDAuMik7XG59XG4jY29va2llLWJhci5maXhlZCB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB0b3A6MDtcbiAgbGVmdDowO1xuICB3aWR0aDoxMDAlO1xufVxuI2Nvb2tpZS1iYXIuZml4ZWQuYm90dG9tIHtcbiAgYm90dG9tOjA7XG4gIHRvcDphdXRvO1xufVxuI2Nvb2tpZS1iYXIgcCB7XG4gIG1hcmdpbjowO1xuICBwYWRkaW5nOjA7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuI2Nvb2tpZS1iYXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTBweCAxOXB4O1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbn1cbiNjb29raWUtYmFyIC5jYi1lbmFibGUge1xuICBiYWNrZ3JvdW5kOiAjMDA0OTkwO1xuXHRjb2xvcjogI2ZmZjtcblx0bWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4jY29va2llLWJhciAuY2ItZW5hYmxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDQ5OTA7XG59XG4jY29va2llLWJhciAuY2ItcG9saWN5IHtcbiAgY29sb3I6ICMwMGE0YjE7XG59XG5AbWVkaWEgaGFuZGhlbGQsIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjYwMHB4KXtcblx0I2Nvb2tpZS1iYXIgcCB7XG5cdFx0bGluZS1oZWlnaHQ6IDIycHg7XG5cdH1cblx0I2Nvb2tpZS1iYXIgYSB7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRtYXJnaW4tbGVmdDogMHB4O1xuXHR9XG5cdCNjb29raWUtYmFyIC5jYi1lbmFibGUge1xuXHRcdG1hcmdpbi1sZWZ0OiAwcHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdH1cbn1cbiIsIi5hZGRyZXNzQmxvY2sgcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICBwYWRkaW5nOiAxLjVlbTtcbiAgICBtaW4taGVpZ2h0OiAzMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xufVxudGFibGUub3JkZXJTdW1tYXJ5IHtcbiAgd2lkdGg6OTUlO1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG4jbWVtYmVyc2hpcF9yZW5ld2FsX2R1ZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDMwMHB4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgcmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVlYWU5O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuIiwiLmNvbnRlbnQge1xuICB1bC50YWJzIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogJHJxYS1ibHVlIDFweCBzb2xpZDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOjBweCAxMHB4O1xuICAgIGxpIHtcbiAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAmLnRhYnMtdGl0bGUgYSB7XG4gICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgIH1cbiAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgfVxuICAgICB9XG4gICAgICYudGFicy0tZmlsdGVyIHtcbiAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgfVxuICB9XG4gIC50YWJzLWNvbnRlbnQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICAudGFicy10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICBjb2xvcjogJHJxYS1ibHVlO1xuICB9XG4gIC50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS1ibHVlO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbnVsLnRhYnMge1xuICAgJi50YWJzLS1maWx0ZXIge1xuICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgIGJvcmRlcjogbm9uZTtcbiAgICAgbGkge1xuICAgICAgIGEsICYudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddLCAmLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAmLnRhYnMtdGl0bGUgPiBhOmFjdGl2ZSwgJi50YWJzLXRpdGxlID4gYTp2aXNpdGVkIHtcbiAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgfVxuICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5wcm9tb0Jhbm5lciB7XG4gIHdpZHRoOjEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC43NWVtIDUwcHggMC43NWVtIDAuNzVlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9raWx0cy5qcGcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTpub25lO1xuXG4gIC5vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6MC43NTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgICB6LWluZGV4OiAxXG4gIH1cbiAgcCB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzowcHg7XG4gICAgbWFyZ2luOjBweDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiRycWFfYmx1ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6MC43O1xuICAgIH1cbiAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjokcnFhX2JsdWU7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMC43NWVtO1xuICAgIHJpZ2h0OjEwcHg7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICB6LWluZGV4OiAzO1xuICB9XG4gIC5ibG9jay1idXR0b24ge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGJvcmRlcjogI2ZmZiBzb2xpZCAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eToxO1xuICAgIH1cbiAgfVxuICAuY29uZkxvZ28ge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAucHJvbW9CYW5uZXIge1xuICAgIGNvbG9yOiNmZmY7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmc6IDAuOWVtIDNlbSAwLjllbSAyMDBweDtcbiAgICAuYmxvY2stYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAub3ZlcmxheSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjojZmZmO1xuICAgIH1cbiAgICAuY29uZkxvZ28ge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGhlaWdodDo2MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgbGVmdDowcHg7XG4gICAgICB0b3A6MHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OjYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucmVuZXdhbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQzZDM7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVkIGRhc2hlZCAycHg7XG4gICAgYm9yZGVyLXRvcDogcmVkIGRhc2hlZCAycHg7XG59XG4iLCIuZmVlZGJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgcGFkZGluZzpyZW0tY2FsYygyMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIG1hcmdpbjpyZW0tY2FsYygzMCAwKTtcbiAgaDIge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgfVxuICAub3JiaXQtc2xpZGUge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMTAgMjAgMCAyMCk7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgfVxuICAgIHA6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcXDIwMUNcIjtcbiAgICB9XG4gICAgcDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6XCJcXDIwMURcIjtcbiAgICB9XG4gIH1cbiAgLm9yYml0LW5leHQsIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgY29sb3I6ICRwYWxlLWdyYXk7XG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OjAuNjtcbiAgICB9XG4gIH1cbiAgLm9yYml0LW5leHQge1xuICAgIHJpZ2h0OjEwcHg7XG4gICAgdG9wOmNhbGMoNTAlIC0gMjVweCk7XG4gIH1cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBsZWZ0OjEwcHg7XG4gICAgdG9wOmNhbGMoNTAlIC0gMjVweCk7XG4gIH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uICB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwYTRiMTtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiMwMGE0YjE7XG4gICAgfVxuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAuZmVlZGJhY2sge1xuICAgIC5vcmJpdC1uZXh0LCAub3JiaXQtcHJldmlvdXMge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIC5vcmJpdC1uZXh0IHtcbiAgICAgIHJpZ2h0OjIwcHg7XG4gICAgfVxuICAgIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgICBsZWZ0OjIwcHg7XG4gICAgfVxuICAgIC5vcmJpdC1zbGlkZSB7XG4gICAgICBwYWRkaW5nOnJlbS1jYWxjKDEwIDUwIDAgNTApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ291bnRkb3duXG5cbi5jb3VudGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1waW5rO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogcmVtX2NhbGMoMTYpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLmZhLXRpbWVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgb3BhY2l0eTogMTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cbiAgJi5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYmxvY2stYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXRlYWw7XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygxNik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjIpO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDEwKTtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygxNCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjQpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW1fY2FsYygyMCk7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICAjY2xvY2sge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIC8vY29sb3I6I2ZmZjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzApO1xuICAgICAgfVxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbiAgJi5jb3VudGRvd24tLXB1cnBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkMjA3YTtcbiAgICAuYmxvY2stYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLWxpZ2h0LWdyZWVuO1xuICAgIH1cbiAgICAjY2xvY2sge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9tZSBwYWdlXG4uY29uZi1ob21lLW5hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRycWEtdGVhbDtcbiAgdWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1heC13aWR0aDogcmVtX2NhbGMoMTEyMCk7XG4gIH1cbiAgbGkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDE2KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxOCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1waW5rO1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMTQpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoMTYgMTApO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMSkgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29uZi15ZWxsb3c7XG4gICAgICBjb2xvcjogJGNvbmYtYnJvd247XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIGEge1xuICAgICAgYmFja2dyb3VuZDogJGNvbmYtZGFyay1ncmVlbjtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMykgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29uZi1waW5rO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0KSBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb25mLWJyb3duO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCg1KSBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb25mLXllbGxvdztcbiAgICAgIGNvbG9yOiAkY29uZi1icm93bjtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoNSkgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29uZi15ZWxsb3c7XG4gICAgICBjb2xvcjogJGNvbmYtYnJvd247XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbn1cblxuLmNvbmYtZXhwYW5kIHtcbiAgbWF4LWhlaWdodDogMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuNXMgZWFzZS1vdXQ7XG4gICYuZXhwYW5kZWQge1xuICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgfVxufVxuLy8gQ29uZmVyZW5jZSBwYWdlXG4uYmFubmVyLS1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuLmNvbmYtSW50cm8ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2NvbmZlcmVuY2VwYWdlL2NvbmZlcmVuY2UtMjAyMC1iYWNrZ3JvdW5kLmpwZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNTAlIDAgMCAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KDQ2NSkge1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDIyMCkgMTAlIDAgMTAlO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogMzAuMzQlIDAgMCAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAyMDA7XG4gIH1cbiAgJi5jb25mLUludHJvLS1ob21lIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJi5jb25mLUludHJvLS1yZWR1Y2VkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA0NiUgMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbmYtSW50cm9fdGl0bGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTAlO1xuICAgICAgcmlnaHQ6IDEwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTIwNHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDU2MHB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiByZW1fY2FsYyg2ODApO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAuY29uZi1JbnRyb190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG1heC13aWR0aDogNTYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjApO1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMTUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygzMCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDIwKTtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLXB1cnBsZTtcblxuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIyKTtcbiAgICAgIH1cbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDIwKTtcbiAgICB9XG4gIH1cbiAgLmNvbmYtSW50cm9fX2NvdW50ZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE0MHB4KSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW1fY2FsYygtNTUxKTtcbiAgICAgIHdpZHRoOiByZW1fY2FsYygxMTIwKTtcbiAgICB9XG4gIH1cbiAgI2NvbmYtSW50cm9fX2Nsb2NrIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE0OCwgMTY1LCAwLjUpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDQgNCA0KTtcbiAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoNDQpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCA2IDYgNik7XG4gICAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoNTQpO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIH1cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmNvbmYtSW50cm8tLWhvbWUge1xuICAgICNzbGlkZXNob3cgPiBkaXYge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgICAmLmNvbmYtY2Fyb3VzZWwtLWRheSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAvL31cbiAgICB9XG4gICAgLmNvbmYtSW50cm9fdGl0bGUge1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgLy9tYXgtd2lkdGg6IHJlbV9jYWxjKDU2MCk7XG4gICAgICAgIC8vd2lkdGg6cmVtX2NhbGMoNTYwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW1fY2FsYyg4NjApO1xuICAgICAgICB3aWR0aDogcmVtX2NhbGMoODYwKTtcbiAgICAgIH1cbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIC8vcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAvL21hcmdpbi1sZWZ0OiAtNDcwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogc29saWQgI2ZmZiAycHg7XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDcwMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtX2NhbGMoMjApO1xuICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMDRweCByZ2JhKDAsIDAsIDAsIDEpO1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYyg1Myk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogcmVtX2NhbGMoMTkwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5jb25mLWxvZ28tLWxhcmdlIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDI1MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLyppZnJhbWUge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIHRvcDowcHg7XG4gICAgICBsZWZ0OjBweDtcbiAgICB9XG4gIH0qL1xuXG4gIC8vIFNsaWRlc2hvd1xuICAjc2xpZGVzaG93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogNjB2aDtcbiAgfVxuICAjc2xpZGVzaG93ID4gZGl2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHRvcDogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICByaWdodDogMHB4O1xuICAgIGJvdHRvbTogMHB4O1xuICB9XG5cbiAgLy8gcmVkdWNlZCBob21lcGFnZVxuICAmLmNvbmYtSW50cm8tLXJlZHVjZWQge1xuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDMwKTtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoMjApO1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgICAgei1pbmRleDogNTA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjApO1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMTApO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS1vcmFuZ2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbmYtSW50cm9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE3N3B4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY29uZi1JbnRyb19fdmlldyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3R0b206IC01MHB4O1xuICAgICAgfVxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbmYtcHVycGxlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IC0zNnB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcmlnaHQ6IDBweDtcbiAgICAgIHotaW5kZXg6IDYwO1xuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNik7XG4gICAgICAgIH1cbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbmYtaW50cm8tLXRleHQge1xuICBwYWRkaW5nOiByZW1fY2FsYygyMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoMTAwKTtcbiAgfVxuICBwIHtcbiAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDY4MCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5jb25mLXNwb25zb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgcGFkZGluZzogcmVtX2NhbGMoMjApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoNjApO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTUpO1xuICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjQpO1xuICAgIH1cbiAgfVxufVxuLmNvbmYtYmFzZSB7XG4gIC5xdW90ZXMtc2xpZGVyIHtcbiAgICBwYWRkaW5nOiByZW1fY2FsYygyMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS10ZWFsO1xuICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTgpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoNzApO1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNCk7XG4gICAgfVxuICAgIC5vcmJpdC13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogcmVtX2NhbGMoNzgwKTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIHJlbV9jYWxjKDgwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdWwge1xuICAgICAgbWF4LXdpZHRoOiByZW1fY2FsYyg2ODApO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXYge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFDXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXDIwMURcIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi50d2l0dGVyLWJsb2NrIHtcbiAgYmFja2dyb3VuZDogJGNvbmYtcGluaztcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IHJlbV9jYWxjKDQwIDIwKTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtX2NhbGMoODApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDUwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtX2NhbGMoNjAgNDApO1xuICB9XG4gIGgzLFxuICBhIHtcbiAgICBjb2xvcjogI2NjZmZmZjtcbiAgfVxuICBhOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBtYXJnaW46IHJlbV9jYWxjKDIwKSAwIDAgMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gIHAge1xuICAgIG1heC13aWR0aDogcmVtX2NhbGMoNDEwKTtcbiAgICBtYXJnaW46IDAgYXV0byByZW1fY2FsYygyMCkgYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtX2NhbGMoNDApIGF1dG87XG4gICAgfVxuICB9XG4gIGEuYWxsLXR3ZWV0cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogcmVtX2NhbGMoMjApO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgY29udGVudDogXCIgIFxcZjEwNVwiO1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJvb2tpbmcge1xuICBwYWRkaW5nLXRvcDogcmVtX2NhbGMoNjApO1xufVxuXG4uY29uZi1ib29raW5nLFxuLmNvbG91cmVkLXRhYnMge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDcwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XG4gIH1cbiAgJiA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5jb25mZXJlbmNlLWJvb2tpbmcge1xuICAgIC50ZXh0LXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMC41ZW0gcmVtX2NhbGMoNDIpIDAgMWVtO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5ib3g6YWZ0ZXIsXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAuYm94OmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5ib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxLjFzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgICAgIGJvcmRlcjogJG1lZGl1bS1ncmF5IHNvbGlkIDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbV9jYWxjKDEwKTtcblxuICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDBweDtcbiAgICAgIC8vfVxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAuY29uZi1ib29raW5nLS1kZXRhaWxzIC5ib3gge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogcmVtX2NhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgdG9wOiByZW1fY2FsYygtNTkpO1xuICAgICAgICBsZWZ0OiByZW1fY2FsYygtMTApO1xuICAgICAgfVxuICAgIH1cbiAgICAuYm94OmFmdGVyIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBoZWlnaHQ6IDQwJTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXItbGVmdDogNy41cHggc29saWQ7XG4gICAgICBib3JkZXItYm90dG9tOiA3LjVweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHJxYS1vcmFuZ2U7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDEuMXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICAgICAgbGVmdDogMTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYm90dG9tOiA1MCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG5cbiAgaDIge1xuICAgICYucHJvZ3JhbW1lX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyMik7XG5cbiAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDE4IDMwKTtcbiAgICAgIGJhY2tncm91bmQ6ICRjb25mLWRhcmstZ3JlZW47XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDMwKTtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoMTggMzApO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLXBpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLXBpbms7XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtdGVhbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgIH1cbiAgICAgICYuY29uc2VydGluYS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtcmVkO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLW9yYW5nZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWRhcmstYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRycWEtZGFyay1ibHVlO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWJsYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtc2FnZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YTk5NmI7XG4gICAgICB9XG4gICAgICAvL0NvbmZlcmVuY2UgY29sb3Vyc1xuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYtcHVycGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbmYtcHVycGxlO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYtZGFyay1ncmVlbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mLWRhcmstZ3JlZW47XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZi1vcmFuZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29uZi1vcmFuZ2U7XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZi1saWdodC1ncmVlbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mLWxpZ2h0LWdyZWVuO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYtYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLWJsdWU7XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZi1icm93biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLWJyb3duO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYteWVsbG93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbmYteWVsbG93O1xuICAgICAgICBjb2xvcjogJGNvbmYtYnJvd247XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZi1waW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbmYtcGluaztcbiAgICAgIH1cblxuICAgICAgLy9Db25mZXJlbmNlIDIwMjEgY29sb3Vyc1xuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYyMS10ZWFsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbmYyMS10ZWFsO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYyMS1wdXJwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29uZjIxLXB1cnBsZTtcbiAgICAgIH1cbiAgICAgICYuY29uc2VydGluYS1jb25mMjEteWVsbG93IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbmYyMS15ZWxsb3c7XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZjIxLXllbGxvdyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mMjEteWVsbG93O1xuICAgICAgfVxuXG4gICAgICAvL0NvbmZlcmVuY2UgMjAyMiBjb2xvdXJzXG4gICAgICAmLmNvbnNlcnRpbmEtY29uZjIyLW1hZyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mMjItbWFnO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYyMi1ncmVlbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mMjItZ3JlZW47XG4gICAgICB9XG4gICAgICAmLmNvbnNlcnRpbmEtY29uZjIyLW9yYW5nZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mMjItb3JhbmdlO1xuICAgICAgfVxuICAgICAgJi5jb25zZXJ0aW5hLWNvbmYyMi1saWdodC1vcmFuZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29uZjIyLWxpZ2h0LW9yYW5nZTtcbiAgICAgIH1cbiAgICAgICYuY29uc2VydGluYS1jb25mMjItZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb25mMjItZ3JleTtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoMCA0NiAwIDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWluLXdpZHRoOiByZW1fY2FsYyg1MDApO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDAgNDYpO1xuICAgICAgICB9XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB6LWluZGV4OiAzMjtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5vcGVuIHNwYW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwNlwiO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgc3BhbjphZnRlciB7XG4gICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZ3JhbW1lX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiByZW1fY2FsYygwIDIwKTtcbiAgfVxuXG4gIC5jb25jZXJ0aW5hLWNvbnRlbnQge1xuICAgIC5jb25jZXJ0aW5hLWNvbnRlbnRfX3dyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiByZW1fY2FsYyg5MDApO1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMjAgMTApO1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxNCk7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoNTAgMjApO1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDE2KTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRheSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAwMCk7XG4gICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoNTApIGF1dG87XG4gICAgLnNlc3Npb24tdGl0bGUge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoOCAyMCk7XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTYpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTkpO1xuICAgICAgICB9XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIyKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyOCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogcmVtX2NhbGMoMTApO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTYpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1fY2FsYygxMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYXR0ZW5kaW5nLXRhYiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbmYtc2VsZWN0LWdyZWVuO1xuICAgICAgICAgIHdpZHRoOiByZW1fY2FsYygxNSk7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogcmVtX2NhbGMoLTMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2Vzc2lvbl9kZXRhaWwge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxMCk7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygxMCAzMCAzMCAzMCk7XG4gICAgICB9XG4gICAgfVxuICAgICYuZGF5MSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXRlYWwtbGlnaHQ7XG4gICAgICAuZGF5X190aXRsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRycWEtdGVhbDtcbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLXRlYWwtbGlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zZXNzaW9uLXRpdGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgICAgLnZpZXdfZGF5X2RldGFpbHMsXG4gICAgICAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbiAgICAgIC52aWV3X3N0cmVhbV9kZXRhaWxzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsLWJ0bjtcbiAgICAgIH1cbiAgICAgIC5zdHJlYW0ge1xuICAgICAgICBoMyxcbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5kYXkyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLXBpbmstbGlnaHQ7XG4gICAgICAuZGF5X190aXRsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLXBpbms7XG4gICAgICB9XG4gICAgICAuc2Vzc2lvbi10aXRsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mLXBpbms7XG4gICAgICB9XG4gICAgICAudmlld19kYXlfZGV0YWlscyxcbiAgICAgIC50b2dnbGVfc2Vzc2lvbl9kZXRhaWxzLFxuICAgICAgLnZpZXdfc3RyZWFtX2RldGFpbHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29uZi1waW5rLWJ0bjtcbiAgICAgIH1cbiAgICAgIC5zdHJlYW0ge1xuICAgICAgICBoMyxcbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiAkY29uZi1waW5rO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuZGF5MyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1kYXJrLWdyZWVuLWxpZ2h0O1xuICAgICAgLmRheV9fdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1kYXJrLWdyZWVuO1xuICAgICAgfVxuICAgICAgLnNlc3Npb24tdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1kYXJrLWdyZWVuO1xuICAgICAgfVxuICAgICAgLnZpZXdfZGF5X2RldGFpbHMsXG4gICAgICAudG9nZ2xlX3Nlc3Npb25fZGV0YWlscyxcbiAgICAgIC52aWV3X3N0cmVhbV9kZXRhaWxzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbmYtZGFyay1ncmVlbi1idG47XG4gICAgICB9XG4gICAgICAuc3RyZWFtIHtcbiAgICAgICAgaDMsXG4gICAgICAgIGg0IHtcbiAgICAgICAgICBjb2xvcjogJGNvbmYtZGFyay1ncmVlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZXNzaW9uX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogcmVtX2NhbGMoMjApO1xuICAgIH1cbiAgfVxuICAuZGF5X190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW1fY2FsYygxNiAzMCk7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG1hcmdpbjogcmVtX2NhbGMoMCAxMCAwIDIwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjYpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiByZW1fY2FsYygwIDEwIDAgNTApO1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDMyKTtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDI0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBoNCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTYpO1xuICAgICAgbWFyZ2luOiByZW1fY2FsYygwIDEwIDEwIDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiByZW1fY2FsYygwIDEwIDAgMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjIpO1xuICAgICAgfVxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbV9jYWxjKDYwKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbV9jYWxjKDEwKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBsZWZ0OiByZW1fY2FsYygzMCk7XG4gICAgICAgIHRvcDogcmVtX2NhbGMoNzYpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmF0dGVuZGluZyB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1zZWxlY3QtZ3JlZW47XG4gICAgICAgIHdpZHRoOiByZW1fY2FsYygyMCk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IHJlbV9jYWxjKC0zMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN0cmVhbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkcnFhLWRhcmstYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW1fY2FsYygyNCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbV9jYWxjKDI0KTtcbiAgICAudGV4dC1yaWdodCB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtX2NhbGMoMjApO1xuICAgIH1cbiAgICBwLFxuICAgIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTQpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTcpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNCk7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDEwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjApO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyOCk7XG4gICAgICB9XG5cbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtX2NhbGMoMzApO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtX2NhbGMoMTApO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgIH1cbiAgICAuYm94IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogcmVtX2NhbGMoLTEwKTtcbiAgICAgIHRvcDogcmVtX2NhbGMoMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0b3A6IHJlbV9jYWxjKDgpO1xuICAgICAgfVxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6ICNhMmEyYTIgc29saWQgMXB4O1xuICAgIH1cbiAgICBzdHJvbmcge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xuICAgIH1cbiAgfVxuXG4gIC5jbG9zZV9kYXlfZGV0YWlscyxcbiAgLnZpZXdfZGF5X2RldGFpbHMsXG4gIC50b2dnbGVfc2Vzc2lvbl9kZXRhaWxzLFxuICAudmlld19zdHJlYW1fZGV0YWlscyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwMGE0YjE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBtYXJnaW4tdG9wOiByZW1fY2FsYygxMCk7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW1fY2FsYygtMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW1fY2FsYygyMCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbV9jYWxjKC0xNSk7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgICB9XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8qdWwudGFicyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOjA7XG4gICAgbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgIH1cbiAgICAudGFicy10aXRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZi1wdXJwbGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAuc2Vzc2lvbi1hdHRlbmRhbmNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzU5YzBjOTtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcblxuICAgICAgICAmLmF0dGVuZGluZyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyZWVuO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgcGFkZGluZzogcmVtX2NhbGMoNDUgMjAgMTYgMjApO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDMwIDIwIDEwIDIwKTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddLCBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgY29sb3I6ICRjb25mLXB1cnBsZTtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OlwiPlwiO1xuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDJuKSBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDNuKSBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSg0bikgc3Ryb25nIHtcbiAgICAgICAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW1fY2FsYygyNSAyMCAxNiAyMCk7XG4gICAgICAgICAgLnNlc3Npb24tYXR0ZW5kYW5jZSB7XG4gICAgICAgICAgICB0b3A6LTEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNik7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIHBhZGRpbmc6MDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIC50YWJzLWNvbnRlbnQtLWRhdGUge1xuICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICB9XG4gICAgLnRhYnMtY29udGVudC0taGVhZGluZyB7XG4gICAgICBjb2xvcjogJGNvbmYtcHVycGxlO1xuICAgIH1cbiAgICBwLCB1bCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygyNik7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzIpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbjowcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46cmVtX2NhbGMoIDAgMCAxMCAwKSA7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZXNzaW9uX2RldGFpbCB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgfVxuXG4gICAgLnNlc3Npb25fZGV0YWlsIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcblxuXG4gICAgfVxuICB9XG4gICovXG4gIC5hZGRpdGlvbmFsX3Byb2R1Y3RzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMDAwKTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDMwKSBhdXRvIHJlbS1jYWxjKDEwKSBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbC1saWdodDtcbiAgICBpbnB1dCB7XG4gICAgICBtYXgtd2lkdGg6IHJlbV9jYWxjKDUwKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbV9jYWxjKDI2KTtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbV9jYWxjKDEwKTtcbiAgICB9XG4gICAgLmJveCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMzYpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1hcmdpbjogcmVtX2NhbGMoMCAwIDEwIDApO1xuICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDI2KTtcbiAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDIwIDMwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygzMik7XG4gICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxOCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZGRpdGlvbmFsX3Byb2R1Y3RzX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmV4dC1idXR0b24ge1xuICAgIG1hcmdpbjogcmVtX2NhbGMoMjApIGF1dG87XG4gIH1cblxuICAudHdpdHRlci1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtX2NhbGMoLTYwKTtcbiAgfVxuXG4gIC5jb25mLUludHJvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtX2NhbGMoLTgwKTtcbiAgICB9XG4gIH1cblxuICAuaW5mby1ib3gge1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDQwIDIgNDYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW1fY2FsYygxMCA0MCAyIDYwKTtcbiAgICB9XG4gICAgbWFyZ2luOiByZW1fY2FsYygxMCkgMCAxZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0Nik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICB9XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGNvbnRlbnQ6IFwiaVwiO1xuICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICBsaW5lLWhlaWdodDogcmVtX2NhbGMoMzIpO1xuICAgICAgd2lkdGg6IHJlbV9jYWxjKDMyKTtcbiAgICAgIGhlaWdodDogcmVtX2NhbGMoMzIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbV9jYWxjKDQ2KTtcbiAgICAgICAgd2lkdGg6IHJlbV9jYWxjKDQ2KTtcbiAgICAgICAgaGVpZ2h0OiByZW1fY2FsYyg0Nik7XG4gICAgICB9XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcHg7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgfVxuICAgICYuZXJyb3Ige1xuICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkcnFhLXJlZDtcbiAgICAgIHAge1xuICAgICAgICAvL2NvbG9yOiRycWEtcmVkO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiFcIjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnJlYWQtbW9yZS10ZXh0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi8vTGF6eSBsb2FkaW5nXG4ubGF6eWxvYWQge1xuICB0cmFuc2l0aW9uOiBhbGwgMXM7XG59XG4uZmFkZU91dCB7XG4gIG9wYWNpdHk6IDA7XG59XG4uZmFkZUluIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy8gQ29uZmVyZW5jZSBwcmljZSBibG9ja1xuLmNvbmZlcmVuY2UtcHJpY2VzIHtcbiAgcGFkZGluZy10b3A6IHJlbV9jYWxjKDIwKTtcbiAgLmNvbmZlcmVuY2UtcHJpY2VzX19kYXkge1xuICAgIGJvcmRlcjogJG1lZGl1bS1ncmF5IHNvbGlkIDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW1fY2FsYyg0MCk7XG4gICAgJi5jb25mZXJlbmNlLXByaWNlc19fZGF5LS1kZWxlZ2F0ZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW1fY2FsYygxMCk7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRycWEtb3JhbmdlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEyKTtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDI0KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDEwIDEwIDAgMTApO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgJi5yZWR1Y2VkIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTgpO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDAgMTAgMTIgMTApO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gIH1cbiAgLmNvbmZlcmVuY2UtcHJpY2VzX19ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gIH1cbiAgLmNvbmZlcmVuY2UtcHJpY2VzX19wcmljZSB7XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygyNik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJHJxYS1vcmFuZ2U7XG4gICAgJi5yZWR1Y2VkIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjQpO1xuICAgIH1cbiAgICAmLmNvbmZlcmVuY2UtcHJpY2VzX19wcmljZS0tbm9wYWQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgfVxuICAgICYuZWFybHkgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIC5kaXNjb3VudCB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDI0KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICYuZWFybHkge1xuICAgICAgICBmb250LXNpemU6IHJlbV9jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29uZmVyZW5jZS1wcmljZXNfX2NwZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgLy9mbG9hdDpyaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IC0zNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vZmxvYXQ6bm9uZTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgLy9mbG9hdDpyaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IC0zNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yMHB4O1xuICAgIH1cbiAgfVxuICAuY29uZmVyZW5jZS1wcmljZXNfX2NwZC10ZXh0IHtcbiAgICBjb2xvcjogJHJxYS1ibHVlO1xuICB9XG4gIC5jb25mZXJlbmNlLXByaWNlc19fZGlzY291bnQge1xuICAgIGJhY2tncm91bmQ6ICRycWEtcmVkO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IHJlbV9jYWxjKDgpO1xuICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGg0IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjIpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjIpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gICAgfVxuICB9XG4gIC5jb25mZXJlbmNlLXByaWNlc19fZGF5LS0xZGF5IHtcbiAgICBoMiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXRlYWw7XG4gICAgfVxuICAgIC5jb25mZXJlbmNlLXByaWNlc19fcHJpY2Uge1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDEyMCk7XG4gICAgfVxuICB9XG4gIC5jb25mZXJlbmNlLXByaWNlc19fZGF5LS0yZGF5IHtcbiAgICBoMiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcnFhLXBpbms7XG4gICAgfVxuICAgIC5jb25mZXJlbmNlLXByaWNlc19fcHJpY2Uge1xuICAgICAgY29sb3I6ICRycWEtcGluaztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDEyMCk7XG4gICAgfVxuICB9XG4gIHNwYW4uZWFjaCB7XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygxOCk7XG4gIH1cbiAgLnNtYWxsLXByaW50IHtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDExKTtcbiAgICAmLnNtYWxsLXByaW50LS1kZWxlZ2F0ZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW1fY2FsYyg0MCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb3VudGRvd25cblxuLmNvbmYtYmFza2V0IHtcbiAgZGlzcGxheTpub25lO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHRvcDpyZW1fY2FsYygxMDApO1xuICBiYWNrZ3JvdW5kOiAkY29uZi1ncmF5O1xuICB3aWR0aDpyZW1fY2FsYygzMDApO1xuICB6LWluZGV4OiAxMDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6cmVtX2NhbGMoMTAgMjAgMzAgMjApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIHJpZ2h0OnJlbS1jYWxjKC0zMDApO1xuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbmYtYmx1ZTtcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB3aWR0aDo5MCU7XG4gICAgaGVpZ2h0OjVweDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6LTVweDtcbiAgICBsZWZ0OjA7XG4gIH1cbiAgJi5pcy1maXhlZCB7XG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgdG9wOnJlbV9jYWxjKDEwMCk7XG4gIH1cbiAgJi5vdXQge1xuICAgIHJpZ2h0OjA7XG4gICAgJi5oaW50IHtcbiAgICAgIHJpZ2h0OjA7XG4gICAgfVxuICB9XG4gICYuaGludCB7XG4gICAgcmlnaHQ6cmVtLWNhbGMoLTI5MCk7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW1fY2FsYygwKTtcbiAgICBtYXJnaW4tdG9wOiByZW1fY2FsYygxMCk7XG5cbiAgfVxuICBoNCB7XG4gICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206cmVtX2NhbGMoMCk7XG4gICAgbWFyZ2luLXRvcDpyZW1fY2FsYyg1KTtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDE4KTtcbiAgICBkaXNwbGF5Om5vbmU7XG5cbiAgfVxuICAuY29uZi1iYXNrZXRfX2Nsb3NlIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MHB4O1xuICAgIHJpZ2h0OjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjYWZhZmFmO1xuICAgIHBhZGRpbmc6cmVtX2NhbGMoOCk7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBmb250LXNpemU6IHJlbV9jYWxjKDEyKTtcbiAgICB0cmFuc2l0aW9uOmFsbCAwLjI1cztcbiAgICAmOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgIGNvbnRlbnQ6ICcgXFxmMTA1JztcbiAgICAgIGZvbnQtc2l6ZTogcmVtX2NhbGMoMTEpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29uZi1ibHVlO1xuICAgIH1cbiAgfVxuICAuY29uZi1iYXNrZXRfX3Nlc3Npb24uc2VsZWN0ZWQgaDQge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgZm9udC1zaXplOiByZW1fY2FsYygxNik7XG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgICAmLmNvbmYtYmFza2V0X19tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbV9jYWxjKDMwKTtcbiAgICB9XG4gIH1cbn1cbi5jb25mLWJhc2tldF9fY29udGVudCB7XG4gIG1pbi1oZWlnaHQ6IHJlbV9jYWxjKDE1MCk7XG59XG4uY29uZi1iYXNrZXRfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogcmVtX2NhbGMoMjIpO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbmYtYmx1ZTtcbiAgcGFkZGluZzpyZW1fY2FsYygxMCAxNik7XG4gIG1pbi1oZWlnaHQ6cmVtX2NhbGMoNDApO1xuICBtaW4td2lkdGg6IHJlbV9jYWxjKDE0MCk7XG4gIGNvbG9yOiNmZmY7XG4gIGxlZnQ6cmVtX2NhbGMoLTkxKTtcbiAgdG9wOnJlbV9jYWxjKDQ0KTtcbiAgdHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpO1xufVxuLmNvbmYtYmFza2V0X19kYXkxLCAuY29uZi1iYXNrZXRfX2RheTIsIC5jb25mLWJhc2tldF9fZGF5MyB7XG4gIGJvcmRlci1ib3R0b206IGRhc2hlZCAxcHggJGJvZHktZm9udC1jb2xvcjtcbiAgcGFkZGluZy1ib3R0b206IHJlbV9jYWxjKDEwKTtcbiAgZGlzcGxheTpub25lO1xuICAmLnNlbGVjdGVkIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG59XG4uY29uZi1iYXNrZXRfX2RheTEge1xuICBoMyxwIHtcbiAgICBjb2xvcjokY29uZi1vcmFuZ2U7XG4gIH1cbn1cbi5jb25mLWJhc2tldF9fZGF5MiB7XG4gIGgzLHAge1xuICAgIGNvbG9yOiRjb25mLXB1cnBsZTtcbiAgfVxufVxuLmNvbmYtYmFza2V0X19kYXkzIHtcbiAgaDMscCB7XG4gICAgY29sb3I6JGNvbmYtYmx1ZTtcbiAgfVxufVxuLmNvbmYtYmFza2V0X19hZGRpdGlvbmFsIHtcbiAgcGFkZGluZy10b3A6IHJlbV9jYWxjKDEwKTtcbn1cbi5jb25mLWJhc2tldF9fc3VtbWFyeSB7XG4gIGJvcmRlci1ib3R0b206IGRhc2hlZCAxcHggJGJvZHktZm9udC1jb2xvcjtcbiAgcGFkZGluZzogcmVtX2NhbGMoMTAgMCk7XG4gIHN0cm9uZyB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6NDklO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOjQ5JTtcbiAgfVxufVxuLmNvbmYtYmFza2V0X190b3RhbCB7XG4gIGJvcmRlci1ib3R0b206IGRhc2hlZCAxcHggJGJvZHktZm9udC1jb2xvcjtcbiAgcGFkZGluZzogcmVtX2NhbGMoMTAgMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbV9jYWxjKDEwKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHN0cm9uZyB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6NDklO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOjQ5JTtcbiAgfVxufVxuIiwiLy8gQ29tcG9uZW50c1xuLmNvbnRlbnQge1xuICAuc2lnbnVwLWJveCB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHotaW5kZXg6IDIwMDtcbiAgICB0b3A6NDAwcHg7XG4gICAgcmlnaHQ6MHB4O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgcGFkZGluZzpyZW1fY2FsYygxNiAyMCAyMCAyMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAwcHggMHB4IDEwcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxOHB4IDBweCByZ2JhKDAsMCwwLDAuNSk7XG4gICAgaDQscCB7XG4gICAgICBjb2xvcjojZmZmO1xuICAgICAgZm9udC1zaXplOiByZW1fY2FsYygxNik7XG4gICAgICBtYXJnaW46IDAgMCAwLjRlbSAwO1xuICAgIH1cbiAgICBhLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IHJlbV9jYWxjKDE2KTtcbiAgICAgIHBhZGRpbmc6cmVtX2NhbGMoNiAxMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBJbmxpbmUgY29udGVudCBwb3AgdXBcblxuLmNvbnRlbnQge1xuICAucG9wLXVwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgICYudmlzaWJsZSB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOjIwcHg7XG4gICAgICBsZWZ0OjA7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHotaW5kZXg6IDEwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5wb3AtdXAtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg4MDApO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDEzMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjNweCAycHggcmdiYSgwLDAsMCwwLjU1KTtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvcC11cF9fY2xvc2Uge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6MDtcbiAgICAgIHRvcDowO1xuICAgICAgcGFkZGluZzoxMHB4IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvbnRlbnQgcG9wIHVwXG5cblxuICAucG9wLXVwLWJveCB7XG4gICAgZGlzcGxheTpub25lO1xuICAgXG5cbiAgICAmLnZpc2libGUge1xuICAgICAgcG9zaXRpb246Zml4ZWQgIWltcG9ydGFudDtcbiAgICAgIHRvcDowO1xuICAgICAgYm90dG9tOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICByaWdodDowO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICB9XG4gICAgLnBvcC11cC1ib3hfX2NvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDgwMCk7XG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGhlaWdodDphdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTgpO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyM3B4IDJweCByZ2JhKDAsMCwwLDAuNTUpO1xuICAgICAgcGFkZGluZzpyZW0tY2FsYygyMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgaDEge1xuICAgICAgICBAbWVkaWEgKG1heC1oZWlnaHQ6IDg2MHB4KXtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIEBtZWRpYSAobWF4LWhlaWdodDogODYwcHgpe1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wb3AtdXAtYm94X19jbG9zZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgcmlnaHQ6MDtcbiAgICAgIHRvcDowO1xuICAgICAgcGFkZGluZzoxMHB4IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4iLCIuZXZlbnRzLWZpbHRlci1mb3JtIHtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDIwIDMwIDIwKTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCA2MCAyMCk7XG4gIH1cbiAgLmV2ZW50cy1maWx0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZG93bi1hcnJvdy5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTAlIGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjcwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgICAuZXZlbnRzLWZpbHRlcnNfX2JveCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmV2ZW50cy1maWx0ZXJfX2hlYWRpbmcge1xuICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAkcnFhLWJsdWU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICB9XG4gIH1cbiAgLmV2ZW50cy1maWx0ZXJzX19mcmVlLXNlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAuZXZlbnRzLWZpbHRlcl9fa2V5d29yZHMge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmZvcm1fX2J1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxOCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMTYwKTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuN2VtO1xuICAgICAgICAmLmZhLWNsb3NlIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMC44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjZXZlbnRfcmVzdWx0cyB7XG4gICAgcGFkZGluZzpyZW0tY2FsYygwIDEwKTtcbiAgaDMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XG4gICAgY29sb3I6JHJxYS10ZWFsO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gIH1cbiAgLmxpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgYm9yZGVyLWJvdHRvbTogIzcwNzA3MCBkb3R0ZWQgMXB4O1xuICB9XG4gIC5saXN0LWNvbHVtbnNfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMTIgMjUpO1xuICAgIGkge1xuICAgICAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIH1cbiAgfVxuICAubGlzdC1pdGVtLS1oZWFkaW5ncyB7XG4gICAgYm9yZGVyLWJvdHRvbTogIzcwNzA3MCBzb2xpZCAxcHg7XG4gICAgZGlzcGxheTpub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiRycWEtYmx1ZVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6JHJxYS1ibHVlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgfVxufVxuIiwiLmV2ZW50LWRldGFpbCB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgLmV2ZW50LWRldGFpbF9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICYuaGFzLWFjY3JlZGl0YXRpb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIC5ldmVudC1kZXRhaWxfX2FjY3JlZCB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ldmVudC1kZXRhaWxfX2xpbmtzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMTAgMTYgMTApO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgNSA1IDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAyMCAzMCAyMCk7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCA2IDYgMCk7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDkpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNSk7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR3aGl0ZSBzb2xpZCAycHg7XG4gICAgICAgIGJvcmRlci1yaWdodDogJHdoaXRlIHNvbGlkIDJweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAkd2hpdGUgc29saWQgM3B4O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogJHdoaXRlIHNvbGlkIDNweDtcbiAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjZGF0ZXMtZmVlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDZlbTtcbiAgICB9XG4gICAgLmJsb2NrLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgJi5kYXRlcy1mZWVzX19oYXMtaW1hZ2Uge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTEwMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5kYXRlcy1mZWVzX19pbWFnZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuXG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNTApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2luZm9ybWF0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCAzMCAyMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAwIDYwIDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gICAgfVxuICAgIC5pbmZvcm1hdGlvbl9fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjAgMCAyMCk7XG4gICAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAjdHV0b3JzIHtcbiAgICAudHV0b3JzLWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICAudHV0b3ItaXRlbXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnR1dG9yLWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyOTcpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgICAudHV0b3ItaXRlbV9fcG9wIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAjcHJvZ3JhbW1lIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCAzMCAyMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAwIDYwIDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gICAgfVxuICAgIC5wcm9ncmFtbWUtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjAgMCAyMCk7XG4gICAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgLnByb2dyYW1tZS1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgICA+IGgzIHtcbiAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygxNjApO1xuICAgICAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgICAgfVxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgfVxuICAgIH1cbiAgICArIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtM2VtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNWVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mdWxsd2lkdGgtaW1hZ2Utc2xpZGVyIHtcbiAgICArICNleHRyYS1pbmZvIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0zMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtNjApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtOTApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNleHRyYS1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCAwIDIwKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwIDAgMCAwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNWVtO1xuICAgIH1cbiAgICAuZXh0cmEtaW5mb19fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjAgMCAyMCk7XG4gICAgICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudGFicyB7XG4gICAgICBtYXJnaW46IDFlbSByZW0tY2FsYygtNTApIDAgcmVtLWNhbGMoLTUwKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMTAwcHgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAyZW0gMCAwIDA7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgLnRhYnMtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDMyMCk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICAgICYgPiBhW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICBjb2xvcjogJHJxYS1ibHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJzLXBhbmVsIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDIwIDAgMjApO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmV4dHJhLWluZm8taXRlbSB7XG4gICAgICAmLmhhcy1pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3BkLXBvaW50cywuZGV2ZWxvcG1lbnQtbGV2ZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCAzMCk7XG4gICAgbWluLXdpZHRoOiByZW0tY2FsYygyNjYpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCA0MCk7XG4gICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDI2Nik7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAkcnFhLXRlYWw7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMik7XG4gICAgfVxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuYmxvY2stYnV0dG9uIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG59XG4iLCJcbi5zaWRlYmFyX19kYXRlLXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICBwYWRkaW5nOnJlbS1jYWxjKDIwKTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDUwKTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuIFxuICBcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvKiBBZGQgaWYgbm90IHVzaW5nIGF1dG9wcmVmaXhlciAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiBSZW1vdmUgbW9zdCBhbGwgbmF0aXZlIGlucHV0IHN0eWxlcyAqL1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogRm9yIGlPUyA8IDE1ICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0NCQ0JDQjtcbiAgICAvKiBOb3QgcmVtb3ZlZCB2aWEgYXBwZWFyYW5jZSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBsZWZ0OjA7XG4gICAgdG9wOjAuM2VtO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICB3aWR0aDogMS4xNWVtO1xuICAgIGhlaWdodDogMS4xNWVtO1xuICAgIC8vYm9yZGVyOiAwLjE1ZW0gc29saWQgJGJsYWNrO1xuICAgXG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMDc1ZW0pO1xuICAgIFxuICAgIC8vZGlzcGxheTpmbGV4O1xuICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGxhY2UtY29udGVudDogY2VudGVyO1xuICB9XG4gIFxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTApO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTYpO1xuICAgIFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKSA7XG4gICAgLy90cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLy90cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gICAgLy90cmFuc2l0aW9uOiAxMjBtcyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG4gICAgLy9ib3gtc2hhZG93OiBpbnNldCAxZW0gMWVtICRibGFjaztcbiAgICAvKiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgTW9kZSAqL1xuICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIGJvcmRlci1yaWdodDogJGRhcmstZ3JheSBzb2xpZCA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogJGRhcmstZ3JheSBzb2xpZCA0cHg7XG4gIH1cbiAgXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICBcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gIH1cbiBcbn1cbi5zaWRlYmFyX19pdGVtLS1kZXRhaWxzLS1ldmVudCB7XG4gIGgzLnNpZGViYXJfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOGVtO1xuICAgIH1cbiAgfVxufVxuLmV2ZW50LWJvb2tpbmcge1xuICBcbiAgLmJsb2NrLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5jaGlsZF9ldmVudF9kZXRhaWxzIHtcbiAgXG4gICAgc3Ryb25nLGgzIHtcblxuICAgICAgY29sb3I6JHJxYS10ZWFsO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgICBcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgfVxuICAgIH1cbn1cblxuLmV2ZW50cy1mb3JtIHtcbiAgbGFiZWwge1xuXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG5cbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gIH1cbiAgdGV4dGFyZWFbcm93c10sc2VsZWN0IHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICB9XG4gICNpZF9kZWxlZ2F0ZV9tYXRlcmlhbHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufSIsIi5jb25mLWN1cnZlX21hc2sge1xuICAvLyBIaWRlIGZvciBibG9ja3Mgb3V0c2lkZSBvZiBjb25mIHBhZ2VzXG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY29uZi1iYXNlX19oZWFkZXItdG9wIHtcbiAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuXG4uY29uZi1iYXNlX19oZWFkZXItbWFzayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogcmVtLWNhbGMoLTE0KTtcbiAgbGVmdDogcmVtLWNhbGMoLTIpO1xuICB6LWluZGV4OiAzO1xuICBoZWlnaHQ6IHJlbS1jYWxjKDQ2MSk7XG4gIC8vaGVpZ2h0OjEwMCU7XG4gIHdpZHRoOiByZW0tY2FsYygxMTEyKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTU1OCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg2NDgpO1xuICAgIC8vZGlzcGxheTogbm9uZTtcbiAgfVxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLXJlc3RyYWludCB7XG4gIGhlaWdodDogcmVtLWNhbGMoNDUwKTtcbiAgLy9oZWlnaHQ6MTAwJTtcbiAgd2lkdGg6IHJlbS1jYWxjKDExMDcpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTU1MCk7XG4gICAgLy9kaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNjM4KTtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmNvbmYtYmFzZV9faGVhZGVyLWN1cnZlcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAzO1xuICAvL2hlaWdodDogcmVtLWNhbGMoNjUyKTtcbiAgLy9oZWlnaHQ6MTAwJTtcbiAgd2lkdGg6IHJlbS1jYWxjKDEwOTcpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHdpZHRoOiByZW0tY2FsYygxNTQwKTtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg2MzQpO1xuICB9XG4gIHN2ZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmNvbmYtYmFzZV9faGVhZGVyLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IHJlbS1jYWxjKDQyMCk7XG4gIHotaW5kZXg6IDQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC52aWRlby13cmFwcGVyIHtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvLyAxNjo5IGFzcGVjdCByYXRpb1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxNjUwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoOTI4KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICBpZnJhbWUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbmYtYmFzZV9fc3F1YXJlcyB7XG4gIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgfVxufVxuXG4uY29uZi1iYXNlX19zcXVhcmVzLWJveHMge1xuICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgLy99XG4gID4gZGl2IHtcbiAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIC8vIH1cbiAgfVxufVxuLmNvbmYtYmFzZV9fc3F1YXJlIHtcbiAgJjpudGgtY2hpbGQoMikge1xuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogJGNvbmYyNS10dXJxdW9pc2U7XG4gICAgfVxuICB9XG4gICY6bnRoLWNoaWxkKDMpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gICY6bnRoLWNoaWxkKDQpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWdyYXk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICBhLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjYgMjApICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5jb25mLWJhc2VfX3NxdWFyZS1pbWFnZSB7XG4gIGhlaWdodDogcmVtLWNhbGMoMTYwKTtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygyODApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzMTApO1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG4uY29uZi1iYXNlX19zcXVhcmVzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTYwMCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gID4gZGl2IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgJi5jb25mLWJhc2VfX3NxdWFyZXMtdGV4dCB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCAzMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCA4MCA0MCA4MCk7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgfVxuICAgICAgICAmLmNvbmYtYmFzZV9fc3BvbnNvciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbmYtYmFzZV9fc3F1YXJlcyArIC5jb25mLWJhc2VfX3ByaWNlcyB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0yMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTQwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC02MCk7XG4gIH1cbn1cblxuLmNvbmYtYmFzZSAuY29uZi1iYXNlX19wcmljZXMge1xuICBwYWRkaW5nOiByZW0tY2FsYyg2MCAyMCA2MCAyMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29uZmVyZW5jZXBhZ2UvcHJpY2VzLWJhY2tncm91bmQuanBnXCIpO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMCAyMCk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDczLCAxNDQsIDAuOCk7XG4gIH1cbiAgKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgaDIge1xuICAgIGNvbG9yOiAkY29uZjI1LXR1cnF1b2lzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjFlbTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgfVxufVxuLmNvbmYtYmFzZV9fcHJpY2VzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoNzAwKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgfVxufVxuLmNvbmYtYmFzZV9fcHJpY2VzLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuLmNvbmYtYmFzZV9fcHJpY2VzLWNlbGwge1xuICBwYWRkaW5nOiByZW0tY2FsYygyIDEwKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gIHN0cm9uZyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTkpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gIH1cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiAyMSU7XG4gICAgfVxuICB9XG4gICY6bnRoLWNoaWxkKDMpIHtcbiAgICBjb2xvcjogJGNvbmYyNS10dXJxdW9pc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiAyOSU7XG4gICAgfVxuICB9XG59XG5cbi5jb25mLWJhc2VfX2hlYWRlci1tYWluLS1zaGFsbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4gICAgei1pbmRleDogMjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNTApO1xuICAgIH1cbiAgfVxuICBoMSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDIpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5jb25mLWJhc2VfX2NvbmYtbG9nbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygxODApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eHhsYXJnZSkge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygxODApICFpbXBvcnRhbnQ7XG5cbiAgICAgIC8vIGhlaWdodDphdXRvO1xuICAgIH1cbiAgfVxuICAuY29uZi1iYXNlX19oZWFkZXItdmlkZW8ge1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0ODUpO1xuICAgIHotaW5kZXg6IDM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJvdyB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAuY29uZi1iYXNlX19oZWFkZXItcmVzdHJhaW50IHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQ1MCk7XG4gICAgLy9oZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTEwNyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxNTUwKTtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmNvbmYtYmFzZV9faGVhZGVyLWN1cnZlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoLTE1MCk7XG4gICAgfVxuICB9XG4gIC5jb25mLWJhc2VfX2hlYWRlci1tYXNrIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgdG9wOiByZW0tY2FsYygtMTUwKTtcbiAgICB9XG4gIH1cbiAgLmNvbmYtYmFzZV9faGVhZGVyLXJlc3RyYWludCB7XG4gICAgei1pbmRleDogLTI7XG4gIH1cbiAgLm1lZGl1bS0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDI1KSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eHhsYXJnZSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwMCkgIWltcG9ydGFudDtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuYm9keS5jb25mLWJhc2Uge1xuICAud3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwKTtcbiAgfVxuICBwIHtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIH1cbiAgfVxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRjb25mMjUtb3JhbmdlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNmVtO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkcnFhLWRhcmstYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgfVxuICB9XG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42ZW07XG4gICAgcGFkZGluZy10b3A6IDAuNmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRycWEtZGFyay1ibHVlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAkcnFhLW9yYW5nZTtcbiAgICB9XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICBwYWRkaW5nLXRvcDogMC42ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gIH1cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG4gIC5jb25mLWJhc2VfX2NhcnQge1xuICAgIG1hcmdpbjogMDtcbiAgICAvL3BhZGRpbmc6IHJlbS1jYWxjKDE2KSAwIDAgMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAvL2Rpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICByaWdodDogcmVtLWNhbGMoNjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE0IDAgNCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgLmZhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC5tYWluX19uYXYge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2KTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTIpICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb25mMjUtdHVycXVvaXNlO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBsaSB1bC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNzMsIDE0NCwgMC44KTtcbiAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMzAwKTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDM2IDAgMjAgMCk7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAxMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgLyomOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDQgXCI7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgIGNvbG9yOiAkcnFhLXBpbms7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICB9Ki9cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29uZjI1LXR1cnF1b2lzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdjEgYSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIC5uYXYxIGE6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9IC8qXG4gIC5jb25mLWJhc2VfX2hlYWRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvbmZlcmVuY2VwYWdlL2NvbmYtYmFubmVyLmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjUwKTtcbiAgfVxuICBcbiAgLmNvbmZfYmFzZV9fbG9nby1jb2x1bW4ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgICAqL1xuICAuaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICB0b3A6IHJlbS1jYWxjKDI0KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMnB4IDAgJHJxYS10ZWFsLCAwIDI0cHggMCAkcnFhLXRlYWw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE0NjApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAvL21heC13aWR0aDogbm9uZTtcbiAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XG4gICAgICAgIC8vbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMjApO1xuICAgICAgICAvL3BhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgLy96LWluZGV4OiAyO1xuICAgICAgICAvL2JhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGVhZGVyX19tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIC5ycWFfX2xvZ28ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgc3ZnLFxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNzApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLypcbiAgICAgIC5jb25mX19sb2dvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE4MCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNjApO1xuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxODApO1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDE5MCk7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMDApO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTkwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoOTApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjIwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTMwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwMCk7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMDApO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgICBjaXJjbGUsXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDAlLFxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3MCVcbiAgICAgICAgICApO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiByZW0tY2FsYygtNzApO1xuICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgdG9wOiByZW0tY2FsYygtOTApO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMC41KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgKi9cbiAgfVxuXG4gIC5jb25mLWJhc2VfX2hlYWRlci1tYWluLmhlYWRlcl9fbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vaGVpZ2h0OiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vbWluLWhlaWdodDogcmVtLWNhbGMoNTAwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIC8vbWluLWhlaWdodDogcmVtLWNhbGMoNzAwKTtcbiAgICB9XG4gICAgLyomOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygxNDApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMTIzLCAxODkpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAxODBkZWcsXG4gICAgICAgIHJnYmEoMCwgMTIzLCAxODksIDEpIDAlLFxuICAgICAgICByZ2JhKDAsIDEyMywgMTg5LCAxKSAyMCUsXG4gICAgICAgIHJnYmEoMCwgMTIzLCAxODksIDApIDEwMCVcbiAgICAgICk7XG4gICAgfSovXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIxKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIGNvbG9yOiAkY29uZjI1LW9yYW5nZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb25mLWJhc2VfX2NvbmYtbG9nbyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMTUwKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMjApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTEwKTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiByZW0tY2FsYygtMTApO1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygtMjApO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMjApO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE4MCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI4Nik7XG5cbiAgICAgICAgLy8gaGVpZ2h0OmF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIC5tZWRpdW0tMyB7XG4gICAgICBvcmRlcjogMjtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogNDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDYxKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEzMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxOTApO1xuICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDY2NCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzEwKTtcbiAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAubWVkaXVtLTkge1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIC8vaGVpZ2h0OjEwMCU7XG4gICAgICAvL21pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yb3cge1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTQ2MCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG4gIC5jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDg3MCk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICB9XG4gIC5jb25mLWludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoODAgMzAgODAgMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzApO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNzAgMzAgNzAgMzApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgLy9tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNDApO1xuICAgICAgLy9wYWRkaW5nOiByZW0tY2FsYygyMDAgMzAgMTAwIDMwKTtcbiAgICB9XG5cbiAgICAqIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICAgIC5jb25mLWludHJvX193cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzApO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg4NzApO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgICArIC5jb250ZW50IHtcbiAgICAgIC5jb25mLXByb2dyYW1tZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC01MCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTcwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29uZi1pbnRyby0tdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDY7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCAyMCAzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzAgNTAgMzApO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5jb25mLUludHJvX19jb3VudGRvd24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvL21hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcblxuICAgID4gZGl2IHtcbiAgICAgIC8vdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImRpbi0yMDE0XCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTAgMCAyMCk7XG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJGNvbmYyNS10dXJxdW9pc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgLmNvbmYtSW50cm9fX2NvdW50ZG93biB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuICAgICAgPiBkaXYge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgLmNvbmYtSW50cm9fX2NvdW50ZG93biB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIC8vZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgLy9mb250LXNpemU6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb290ZXIge1xuICAgIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAxMCAzMCAxMCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgLy9tYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDEwIDMwIDIwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyMCAxMCAzMCAyMCk7XG4gICAgfVxuXG4gICAgKiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAuY29uZl9fbG9nby0tZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDE1MCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0zMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjI4KTtcbiAgICAgICAgLy9tYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC01MCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290ZXJfX2xpbmtzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlcl9fc29jaWFsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWNvcHlyaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW46IDAgcmVtLWNhbGMoNCkgMCAwO1xuICAgIH1cbiAgfVxuICBhLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogJGNvbmYyNS1vcmFuZ2U7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1mYW1pbHk6IFwiZGluLTIwMTRcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDAuNmVtIDNlbTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcnFhLXRlYWw7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAucXVvdGVzLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NvbmZlcmVuY2VwYWdlL3ByaWNlcy1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMDApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDgwKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg4MCAyMCA4MCAyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxODApO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAwIDIwIDEwMCAyMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNTApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUwKTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgNzMsIDE0NCwgMC44KTtcbiAgICB9XG4gICAgKiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAvL21hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBwIHtcbiAgICAgICAgICBcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29sb3I6ICRjb25mMjUtdHVycXVvaXNlO1xuICAgICAgICAgICAgLy9mb250LWZhbWlseTogXCJkaW4tMjAxNFwiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC41ZW07XG4gICAgICAgICAgICB0b3A6IC0wLjI1ZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogLTAuNWVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vcmJpdC1idWxsZXRzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBidXR0b24ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRycWEtb3JhbmdlO1xuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHJxYS10ZWFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZ1bGx3aWR0aC1pbWFnZS1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODApO1xuICAgIC8vaGVpZ2h0OnJlbV9jYWxjKDUxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIwKTtcbiAgICAgIC8vaGVpZ2h0OnJlbV9jYWxjKDYxMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vaGVpZ2h0OnJlbV9jYWxjKDkxMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAvL21hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwMCk7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIC8vaGVpZ2h0OnJlbV9jYWxjKDUxMCk7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzglO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgLy9oZWlnaHQ6cmVtX2NhbGMoNjEwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy9oZWlnaHQ6cmVtX2NhbGMoOTEwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9yYml0LXByZXZpb3VzIHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgKyA1MHB4KTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9yYml0LW5leHQge1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUpO1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMik7XG4gICAgICB9XG4gICAgfVxuICAgIC5vcmJpdC1uZXh0LFxuICAgIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb25mMjUtb3JhbmdlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm9yZGVyOiAkY29uZjI1LW9yYW5nZSBzb2xpZCAycHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9yYml0LWJ1bGxldHMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBib3JkZXI6ICRycWEtdGVhbCBzb2xpZCAxcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0KTtcbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRycWEtdGVhbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgLy8gYm90dG9tOiByZW0tY2FsYygtMzApO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGJvcmRlcjogJHdoaXRlIHNvbGlkIDFweDtcbiAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnR3aXR0ZXItYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBjb2xvcjogJHJxYS10ZWFsO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDIwIDgwIDIwKTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDgwKSAwIHJlbS1jYWxjKDgwKSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMDAgMjAgMTAwIDIwKTtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTQwKSAwIHJlbS1jYWxjKDEwMCkgMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTIwKSAwIHJlbS1jYWxjKDEyMCkgMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDExMCAyMCAxMDAgMjApO1xuICAgIH1cblxuICAgIGEuYWxsLXR3ZWV0cyB7XG4gICAgICAvL3dpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAubWVkaXVtLTYge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRycWEtdGVhbDtcbiAgICB9XG4gIH1cblxuICAuaW1hZ2UtY2Fyb3VzZWwtLXdpZGUge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgLmNvbmYtb3ZlcnZpZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCkgMCByZW0tY2FsYyg4MCkgMDtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoOTApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDgwKSAwO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDExMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDEwMCkgMDtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOTApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMTIwKSAwO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgICAuY29uZi1pbnRyby0tdGV4dCB7XG4gICAgICAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb25mLXNwZWFrZXJzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29uZjI1LW9yYW5nZTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDE1MCkgMCByZW0tY2FsYyg4MCkgMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxMDApIDAgcmVtLWNhbGMoMTAwKSAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxNTApIDAgcmVtLWNhbGMoMTIwKSAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMCk7XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMTc2KTtcbiAgICB9XG4gICAgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcnFhLWJsdWU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHJxYS1ibHVlO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGRhcmstZ3JheTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICoge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gICAgLmNvbmYtc3BlYWtlcnNfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNTQpO1xuXG4gICAgICAvL2JvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAyMCA4IDIwKTtcbiAgICAgIGNvbG9yOiAkcnFhLWRhcmstYmx1ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRjb25mMjUtdHVycXVvaXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxhc3Qtd2lkZSB7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgIC50d2l0dGVyLWJsb2NrIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTIwKSAwIDAgMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjAwKSAwIDAgMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzAwKSAwIDAgMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucXVvdGVzLXNsaWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoODApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTIwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbmYtc3BlYWtlcnMge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygxNTApIDAgMCAwO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTAwKSAwIDAgMDtcbiAgICAgICAgLy9wYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgLy9tYXJnaW46IHJlbS1jYWxjKDEwMCkgMCAwIDA7XG4gICAgICAgIC8vcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb25mZXJlbmNlLXByb2R1Y3Qge1xuICAgIGgzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxuICAvKlxuICAuY29uZi1jdXJ2ZV9tYXNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBzdmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTYlO1xuICAgIH1cbiAgICAmLmNvbmYtY3VydmVfbWFzay0tb25lIHtcbiAgICAgIHdpZHRoOiAxNjAlO1xuICAgICAgcmlnaHQ6IC02MCU7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxODYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuY29uZi1jdXJ2ZV9tYXNrLS10d28ge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICBsZWZ0OiAtMjAlO1xuICAgICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNzApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuY29uZi1jdXJ2ZV9tYXNrLS10aHJlZSB7XG4gICAgICB3aWR0aDogMTEwJTtcbiAgICAgIGxlZnQ6IC0xMCU7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmNvbmYtY3VydmVfbWFzay0tZm91ciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb25mLWN1cnZlX21hc2stLWZpdmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5jb25mLWN1cnZlX21hc2stLWxhc3Qge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiAjZjdmN2Y3O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbn1cblxuYm9keS5jb25mLW1pY3Jvc2l0ZS1ob21lLmNvbmYtYmFzZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAuY29uZi1JbnRyb19fY291bnRkb3duIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoOTApO1xuICAgIH1cbiAgfVxuICAuY29uZi1iYXNlX19oZWFkZXIge1xuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDM1MCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjUwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDI1MCk7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlciB7XG4gICAgLmNvbmYtYmFzZV9faGVhZGVyLW1haW4ge1xuICAgICAgLy8gbWluLWhlaWdodDogcmVtLWNhbGMoMjUwKTtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgLy9wYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvLyBtaW4taGVpZ2h0OiByZW0tY2FsYygyNTApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgLy8gbWluLWhlaWdodDogcmVtLWNhbGMoMjUwKTtcbiAgICAgIH1cbiAgICAgIC5yb3cge1xuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgLy90ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIC8vIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlcl9fbWFpbiB7XG4gICAgLyouY29uZl9fbG9nbyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC8vIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9Ki9cblxuICAgIC5ycWFfX2xvZ28ge1xuICAgICAgc3ZnIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIC8vd2lkdGg6IGF1dG87XG4gICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYm9keSAuY29udGVudCAuY29uZi1wcm9ncmFtbWUgdWwudGFicyB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygxMzM0KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICBsaS50YWJzLXRpdGxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuYm9keSAuY29uZi1wcm9ncmFtbWUge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgLmNvbmYtcHJvZ3JhbW1lX19jb250YWluZXIge1xuICAgIC8vYmFja2dyb3VuZDogJGNvbmYyNS10dXJxdW9pc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuICAgICAgLy9tYXJnaW4tbGVmdDogcmVtLWNhbGMoLTEwMCk7XG4gICAgICAvL21hcmdpbi1yaWdodDogcmVtLWNhbGMoLTEwMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgIC8vbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMTApO1xuICAgICAgLy9tYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0yMTApO1xuICAgIH1cbiAgfVxuICAudGFicy1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29uZjI1LXR1cnF1b2lzZTtcbiAgfVxuICAudGFicy1wYW5lbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMzM0KTtcbiAgICAgIGJhY2tncm91bmQ6ICRjb25mMjUtdHVycXVvaXNlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAudGFicy10aXRsZSB7XG4gICAgYmFja2dyb3VuZDogJHBhbGUtZ3JheTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29uZjI1LXR1cnF1b2lzZTtcbiAgICAgICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5ib2R5IC5jb25mLXNlc3Npb25zIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19faGVhZGluZyB7XG4gIGJhY2tncm91bmQ6ICRycWEtYmx1ZTtcbiAgcGFkZGluZzogcmVtLWNhbGMoOCAxNiA4IDE2KTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoMTApO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoMTApO1xuICAvL2JvcmRlci1ib3R0b206ICRibGFjayBzb2xpZCAxMHB4O1xuICBoMiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5ib2R5IC5jb25mLXNlc3Npb25zX193cmFwIHtcbiAgYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygxMCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi5oYXMtdHlwZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTtcbiAgfVxuICBoMixcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDMgMCk7XG4gIH1cbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fc2Vzc2lvbiB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDE2IDIgMTYpO1xuICAmLmhhcy10b3BpYyB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQ0KTtcbiAgfVxuICAmLmlzLWZlYXR1cmVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGltZy5jb25mLXNlc3Npb25zX19zcGVha2VyaW1hZ2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgfVxuICAgIC5jb25mLXNlc3Npb25zX19zcGVha2VyLW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgY29sb3I6ICRycWEtYmx1ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gIH1cbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjUpO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMCAxMCk7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDEwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICB9XG4gIC5jb25mLXNlc3Npb25zX193cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYm9keSAuY29uZi1zZXNzaW9uc19fc3BlYWtlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYpO1xuICBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDM2KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgfVxufVxuYm9keSAuY29uZi1zZXNzaW9uc19fdGltZSB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgY29sb3I6ICRibGFjaztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDggMTYpO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIH1cbiAgfVxufVxuXG5ib2R5IC5jb25mLXNlc3Npb25zX19kdXJhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgfVxufVxuYm9keSAuY29uZi1zZXNzaW9uc19fcG9wLXVwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG59XG5ib2R5IC5jb25mLXNlc3Npb25zX190eXBlIHtcbiAgYmFja2dyb3VuZDogJHBhbGUtZ3JheTtcbiAgY29sb3I6ICRibGFjaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDggMTYpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYygxMCk7XG59XG4vKiBib2R5LmNvbmYtbWljcm9zaXRlLWhvbWUge1xuICAuY29uZi1iYXNlX19oZWFkZXIge1xuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDUwMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDYwMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg3MjApO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyIHtcbiAgICAuY29uZi1iYXNlX19oZWFkZXItbWFpbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0MDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTAwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg2MDApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMTApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNzgwKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnJxYV9fbG9nbyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgLmNvbmZfX2xvZ28ge1xuICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgdG9wOiAyNCU7XG4gICAgICAgICAgbGVmdDogMTglO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogMzYwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjAwKTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwMCk7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgICAgIGNpcmNsZSxcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDcwJVxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKC04MCk7XG4gICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDUwJSk7XG4gICAgICAgICAgdG9wOiByZW0tY2FsYygtODApO1xuICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1haW5fX2xvZ28ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM2VtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbmYtb3ZlcnZpZXcge1xuICAgIC8vcGFkZGluZy1ib3R0b206cmVtLWNhbGMoODApO1xuICAgIC5jb25mLWludHJvLS10ZXh0IHAge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGl2Lm1lZGl1bS02OmZpcnN0LW9mLXR5cGUge1xuICAgICAgICB3aWR0aDogMzglO1xuICAgICAgfVxuICAgICAgZGl2Lm1lZGl1bS02Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiA1OCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4qL1xuIiwiQG1lZGlhIHByaW50IHtcbiAgLmhlYWRlcl9fdG9wIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnByb21vQmFubmVyIGEgLmZhIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgdWwubWFpbl9fbmF2Lm1lbnUge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAuaGVhZGVyIC5oZWFkZXJfX21haW4gLm1haW5fX3NlYXJjaC5zZWFyY2gge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAuY3J1bWJzIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLmZvb3Rlcl9fYm90dG9tIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnNvY2lhbHMge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAjY29va2llLWJhciB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5mb290ZXJfX2xvZ286YWZ0ZXIsIC5oZWFkZXIgLmhlYWRlcl9fbWFpbiAubWFpbl9fbG9nbzphZnRlciB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5zaWRlYmFyIHVsLnNpZGViYXJfX25hdiB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5jb250ZW50IHVsLnRhYnMge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICBhLmJsb2NrLWJ1dHRvbiB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5leHRlbmQtbGVmdDpiZWZvcmUsIC5ibG9jay1leHRlbmQtLWxlZnQ6YmVmb3JlLCAuYmxvY2stZXh0ZW5kLS1yaWdodDpiZWZvcmUge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAuaG9tZS1mZWF0dXJlZCB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5vcmJpdCwgLmFib3V0LXN0YXRzIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgc2VjdGlvbi5ob21lLWJvdHRvbSBhOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5yZWNvbW1lbmRlZFByb2R1Y3RzIGE6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhvbWUtZm9ybSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5nb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICB1bC50YWJzLnRhYnMtLWZpbHRlciB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIHVsLmxpc3QtY29sdW1ucy0tdGVhbCBsaSBhLmxpc3QtY29sdW1uc19fbGluazphZnRlciB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5wYWdlLXRvcC0tdGFsbCwgLmJsb2NrLWxpc3QgLmJsb2NrLWxpc3RfX2ltYWdlIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCB7XG4gICAgZGlzcGxheTpibG9ja1xuICB9XG4gIC5ob21lLWFib3V0LCAuaG9tZS1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuICAuaGVhZGVyIC5oZWFkZXJfX21haW4gLm1haW5fX2xvZ28gaW1nIHtcbiAgICBib3JkZXI6ICMwMDQ5OTAgc29saWQgMTVweDtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbiAgLmJsb2NrLWxpc3QsIC5wYWdlLW1haW4tLWxpc3Quc21hbGxUaXRsZXMgLmNvbHVtbnMgLmJsb2NrLWxpc3Qge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuYmxvY2stbGlzdCAuYmxvY2stbGlzdF9fcHJpY2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwcHg7XG4gIH1cbiAgLm1hcENvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcbiAgfVxuICAuY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZSBidXR0b24uYmxvY2stYnV0dG9uLCAuY29udGVudCAuY29udGVudF9fYm9yZGVyIC5yZWdSb2FkbWFwIC5tYXBTdGFnZSBoMiBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5leHRlbmQtdG8tc2lkZWJhcjpiZWZvcmUsIC5leHRlbmQtcmlnaHQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbiAgLmZvb3Rlcl9fdG9wIGltZyB7XG4gICAgYm9yZGVyOiAjMDA0OTkwIHNvbGlkIDE1cHg7XG4gIH1cblxufVxuIl19 */
